Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7803482B2 - 説明文生成装置、方法、及びプログラム - Google Patents
[go: Go Back, main page]

JP7803482B2 - 説明文生成装置、方法、及びプログラム - Google Patents

説明文生成装置、方法、及びプログラム

Info

Publication number
JP7803482B2
JP7803482B2 JP2021162960A JP2021162960A JP7803482B2 JP 7803482 B2 JP7803482 B2 JP 7803482B2 JP 2021162960 A JP2021162960 A JP 2021162960A JP 2021162960 A JP2021162960 A JP 2021162960A JP 7803482 B2 JP7803482 B2 JP 7803482B2
Authority
JP
Japan
Prior art keywords
features
video
unit
action
ingredient
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021162960A
Other languages
English (en)
Other versions
JP2023053742A (ja
Inventor
敦史 橋本
祥孝 牛久
信介 森
博貴 亀甲
太一 西村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Kyoto University NUC
Original Assignee
Omron Corp
Kyoto University NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp, Kyoto University NUC filed Critical Omron Corp
Priority to JP2021162960A priority Critical patent/JP7803482B2/ja
Priority to PCT/JP2022/035263 priority patent/WO2023054136A1/ja
Priority to EP22876003.9A priority patent/EP4411589A4/en
Priority to US18/694,898 priority patent/US20240404284A1/en
Priority to CN202280063439.1A priority patent/CN117980910A/zh
Publication of JP2023053742A publication Critical patent/JP2023053742A/ja
Application granted granted Critical
Publication of JP7803482B2 publication Critical patent/JP7803482B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • G06V20/47Detecting features for summarising video content

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Processing Or Creating Images (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、説明文生成装置、説明文生成方法、及び説明文生成プログラムに関する。
従来、料理のレシピや部品の組み立て等の作業に関する情報を、ニューラルネットワーク等のモデルを利用して理解する技術が提案されている。例えば、文章(テキストデータ)で記述された作業の情報から、行動によるエンティティの変化をシミュレートし、文章を理解するモデルが提案されている(非特許文献1参照)。また、時間的に順序付けられた複数のイベントセグメントを持つ動画が与えられた場合に、各セグメントのコンテンツを説明する複数の文章により、ビデオ全体を説明する一貫した段落を生成する技術が提案されている(非特許文献2参照)。
Antoine Bosselut, Omer Levy, Ari Holtzman, Corin Ennis, Dieter Fox, Yejin Choi, "SIMULATING ACTION DYNAMICS WITH NEURAL PROCESS NETWORKS", ICLR2018. Jie Lei, Liwei Wang, Yelong Shen, Dong Yu, Tamara L. Berg, Mohit Bansal, "MART: Memory-Augmented Recurrent Transformer for Coherent Video Paragraph Captioning", arXiv:2005.05402v1 [cs.CL] 11 May 2020.
しかしながら、非特許文献1に記載の技術は、テキストデータから文章を理解することを前提としているため、作業を撮影した動画からその作業の手順を説明する文章を生成する技術に適用することはできない。また、非特許文献2に記載の技術は、ビデオから文章を生成するものではあるが、作業を撮影した動画を対象としていないため、作業の手順を説明する文章を生成する技術に適用することは困難である。
本発明は、上記の点に鑑みてなされたものであり、コンピュータが作業を撮影した動画を入力として、コンピュータ内の演算により、その作業の手順を説明する文章を生成することを目的とする。
上記目的を達成するために、本開示の第1の態様に係る説明文生成装置は、複数の工程を含む作業について、前記作業に用いられる材料の各々を表す材料特徴量と、前記作業を撮影した前記工程毎の動画の各々から抽出される動画特徴量とを取得する取得部と、前記工程毎の動画の各々の動画特徴量に基づいて、前記工程毎の動画に含まれる材料に対する動作を特定し、特定した材料の前記材料特徴量を、特定した動作に応じて更新する更新部と、更新された前記材料特徴量と、特定された前記動作と、前記動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成する生成部と、を含んで構成される。
また、前記更新部は、更新の対象となる前記材料特徴量を、前記作業における前記工程の時系列順に前の工程の動画について更新された材料特徴量としてよい。
また、前記更新部は、更新した前記材料特徴量に対して、材料特徴量の追加、削除、及びマージの少なくとも1つを行ってもよい。
また、前記更新部は、動画特徴量から動作を特定すると共に、特定した動作に基づいて前記材料特徴量を更新するように予め訓練された第1モデルを用いて、前記材料特徴量を更新し、前記生成部は、材料特徴量と動作と動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成するように予め訓練された第2モデルを用いて、前記文章を生成してもよい。
また、第1の態様に係る説明文生成装置は、材料リスト及び工程毎の動画と、前記材料リスト及び前記工程毎の動画に対応する正解の文章とを訓練データとして、前記第1モデル及び前記第2モデルを訓練する訓練部を含んで構成されてもよい。
また、前記訓練部は、前記生成部により生成された文章と、前記正解の文章との比較に基づく第1損失と、前記更新部で特定された前記動作及び前記材料特徴量と、前記工程毎の動画に含まれる正解の動作及び材料との比較に基づく第2損失とを含む総損失を最小化するように、前記第1モデル及び前記第2モデルを訓練してもよい。
また、前記訓練部は、前記正解の文章を言語解析することにより、前記正解の動作及び材料を取得してもよい。
また、前記訓練部は、前記生成部により生成された文章から、材料特徴量及び動作を推定するように予め訓練された第3モデルの出力と、前記正解の動作及び材料との比較に基づく第3損失をさらに含む前記総損失を最小化するように、前記第1モデル、前記第2モデル、及び前記第3モデルを訓練してもよい。
また、本開示の第2の態様に係る説明文生成方法は、取得部が、複数の工程を含む作業について、前記作業に用いられる材料の各々を表す材料特徴量と、前記作業を撮影した前記工程毎の動画の各々から抽出される動画特徴量とを取得し、更新部が、前記工程毎の動画の各々の動画特徴量に基づいて、前記工程毎の動画に含まれる材料に対する動作を特定し、特定した材料の前記材料特徴量を、特定した動作に応じて更新し、生成部が、更新された前記材料特徴量と、特定された前記動作と、前記動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成する方法である。
また、本開示の第3の態様に係る説明文生成プログラムは、コンピュータを、複数の工程を含む作業について、前記作業に用いられる材料の各々を表す材料特徴量と、前記作業を撮影した前記工程毎の動画の各々から抽出される動画特徴量とを取得する取得部、前記工程毎の動画の各々の動画特徴量に基づいて、前記工程毎の動画に含まれる材料に対する動作を特定し、特定した材料の前記材料特徴量を、特定した動作に応じて更新する更新部、及び、更新された前記材料特徴量と、特定された前記動作と、前記動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成する生成部として機能させるためのプログラムである。
本発明に係る説明文生成装置、方法、及びプログラムによれば、作業を撮影した動画からその作業の手順を説明する文章を生成することができる。
本実施形態に係る概要を説明するための図である。 説明文生成装置のハードウェア構成を示すブロック図である。 説明文生成装置の機能構成の例を示すブロック図である。 各機能構成の概略及び機能構成間でのデータの流れを説明するための図である。 材料ベクトルの取得を説明するための図である。 動画ベクトルの取得を説明するための図である。 更新部の状態推定器を説明するための図である。 生成部の説明文生成器を説明するための図である。 訓練部の再推定器を説明するための図である。 損失の計算を説明するための図である。 訓練処理の流れを示すフローチャートである。 生成処理の流れを示すフローチャートである。 本開示の手法と参考手法との性能比較の結果を示す図である。 レシピ動画から説明文を生成した結果の一例を示す図である。 材料ベクトルをベクトル空間にプロットした一例を示す図である。 材料ベクトルの加減算の一例を示す図である。
以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法及び比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
まず、本実施形態に係る説明文生成装置の概要について説明する。
本実施形態に係る説明文生成装置は、複数の工程を含む作業を撮影した動画を、工程毎に区切った動画の部分の系列と、その作業に用いられる材料を羅列した材料リストとから、その作業の手順を説明する文章を生成する。以下、工程毎の動画の部分を「クリップ」、クリップの系列を「クリップ列」、作業の手順を説明する文章を「説明文」という。本実施形態に係る説明文生成装置は、作業の過程を状態変化として表現するネットワークモデルを利用することにより、材料の中間状態を表す特徴量を、その状態を表すラベルなしで得られるモデルを訓練する。
図1を参照して具体的に説明する。図1の例では、作業は工程1~3を含み、材料リストには「butter」、「eggs」、及び「cheese」が含まれている。説明文生成装置は、各クリップから、材料に対する動作を特定する。図1の例では、工程1のクリップから、材料「butter」に対する動作「add」が特定されている。また、工程2のクリップから、材料「eggs」に対する動作「cracked」及び動作「stirred」が特定されている。また、工程3のクリップから、材料「butter」、「eggs」、及び「cheese」に対する動作「add」及び動作「stirred」が特定されている。
説明文生成装置は、特定した動作に基づいて、材料の特徴量を更新することにより、材料の中間状態を表す特徴量を生成する。例えば、説明文生成装置は、材料「butter」の特徴量を、動作「add」に基づいて更新することにより、「added butter」のような中間状態を表す特徴量を生成する。そして、説明文生成装置は、各クリップの特徴量、各クリップから特定された動作、及び更新された材料の特徴量に基づいて、工程毎の説明文を生成する。
以下、本実施形態に係る説明文生成装置について詳述する。以下の詳細な説明においても、具体例を説明する際には、図1の例と同様に、作業は工程1~3を含み、材料リストには「butter」、「eggs」、及び「cheese」が含まれている例を用いて説明する。なお、材料リストには、材料の画像データ、材料を表すIDが含まれていてもよい。
図2は、本実施形態に係る説明文生成装置10のハードウェア構成を示すブロック図である。図2に示すように、説明文生成装置10は、CPU(Central Processing Unit)12、メモリ14、記憶装置16、入力装置18、出力装置20、記憶媒体読取装置22、及び通信I/F(Interface)24を有する。各構成は、バス26を介して相互に通信可能に接続されている。
記憶装置16には、後述する訓練処理及び生成処理を実行するための説明文生成プログラムが格納されている。CPU12は、中央演算処理ユニットであり、各種プログラムを実行したり、各構成を制御したりする。すなわち、CPU12は、記憶装置16からプログラムを読み出し、メモリ14を作業領域としてプログラムを実行する。CPU12は、記憶装置16に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。
メモリ14は、RAM(Random Access Memory)により構成され、作業領域として一時的にプログラム及びデータを記憶する。記憶装置16は、ROM(Read Only Memory)、及びHDD(Hard Disk Drive)、SSD(Solid State Drive)等により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
入力装置18は、例えば、キーボードやマウス等の、各種の入力を行うための装置である。出力装置20は、例えば、ディスプレイやプリンタ等の、各種の情報を出力するための装置である。出力装置20として、タッチパネルディスプレイを採用することにより、入力装置18として機能させてもよい。記憶媒体読取装置22は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、ブルーレイディスク、USB(Universal Serial Bus)メモリ等の各種記憶媒体に記憶されたデータの読み込みや、記憶媒体に対するデータの書き込み等を行う。通信I/F24は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
次に、本実施形態に係る説明文生成装置10の機能構成について説明する。
図3は、説明文生成装置10の機能構成の例を示すブロック図である。図3に示すように、説明文生成装置10は、機能構成として、取得部30と、更新部40と、生成部50と、訓練部60とを含む。各機能構成は、CPU12が記憶装置16に記憶された説明文生成プログラムを読み出し、メモリ14に展開して実行することにより実現される。
ここで、図4を参照して、各機能構成の概略及び機能構成間でのデータの流れについて説明し、その後、各機能構成について詳述する。図4において、実線の矢印は、訓練時及び説明文の生成時の両方におけるデータの流れを表し、一点鎖線の矢印は、訓練時のみに生じるデータの流れを表し、太線の両矢印は、訓練時の損失の計算に関する部分を表す。
取得部30は、材料エンコーダ31と、動画エンコーダ32とを含む。取得部30は、テキストデータである材料リストを材料エンコーダ31へ入力し、材料リストに記述された材料の各々を表す材料特徴量を取得する。また、取得部30は、クリップ列に含まれる各クリップを動画エンコーダ32へ入力し、クリップの各々から抽出される動画特徴量を取得する。図4では、工程1のクリップから動画特徴量1、工程2のクリップから動画特徴量2、工程3のクリップから動画特徴量3が取得された例を示している。取得部30は、取得した材料特徴量及び動画特徴量を更新部40へ受け渡す。
更新部40は、作業に含まれる工程数分の状態推定器41A、41B、41Cを含む。図4の例では、状態推定器41Aは工程1に対応し、状態推定器41Bは工程2に対応し、状態推定器41Cは工程3に対応している。以下、状態推定器41A、41B、41Cの各々を区別なく説明する場合には、単に「状態推定器41」と表記する。状態推定器41は、各クリップの動画特徴量に基づいて、そのクリップに含まれる材料に対する動作を特定し、特定した材料の材料特徴量を、特定した動作に応じて更新する。更新部40は、各状態推定器41で特定された動作及び更新された状態特徴量を取得し、動画特徴量と共に生成部50へ受け渡す。
なお、状態推定器41において更新の対象となる材料特徴量は、クリップ列における前のクリップ、すなわち作業における工程の時系列順に前の工程のクリップに対応する状態推定器41で更新された材料特徴量である。すなわち、状態推定器41Aには、取得部30から受け渡された材料特徴量と動画特徴量1とが入力される。状態推定器41Bには、状態推定器41Aで更新された材料特徴量と動画特徴量2とが入力される。状態推定器41Cには、状態推定器41Bで更新された材料特徴量と動画特徴量3とが入力される。
生成部50は、作業に含まれる工程数分の説明文生成器51A、51B、51Cを含む。図4の例では、説明文生成器51Aは工程1に対応し、説明文生成器51Bは工程2に対応し、説明文生成器51Cは工程3に対応している。以下、説明文生成器51A、51B、51Cの各々を区別なく説明する場合には、単に「説明文生成器51」と表記する。説明文生成器51は、更新部40から受け渡された、更新された材料特徴量と、特定された動作と、動画特徴量とに基づいて、工程毎の説明文を生成する。生成部50は、各説明文生成器51で生成された説明文を結合して、作業全体を示す説明文として出力する。
訓練部60は、材料リスト及びクリップ列が表す正解文章と、生成部50から出力される説明文との比較に基づく損失を計算する。また、訓練部60は、各クリップに含まれる材料に対する動作、すなわち正解の材料を表す材料ラベル、及び正解の動作を表す動作ラベルを取得する。訓練部60は、取得した材料ラベル及び動作ラベルと、更新部40で取得される動作及び更新された材料特徴量との比較に基づく損失を計算する。
さらに、訓練部60は、作業に含まれる工程数分の再推定器61A、61B、61Cを含む。図4の例では、再推定器61Aは工程1に対応し、再推定器61Bは工程2に対応し、再推定器61Cは工程3に対応している。以下、再推定器61A、61B、61Cの各々を区別なく説明する場合には、単に「再推定器61」と表記する。再推定器61は、工程が対応する説明文生成器51により生成された説明文及び材料リストから、各工程における材料に対する動作を推定する。訓練部60は、推定した材料に対する動作と、材料ラベル及び動作ラベルとの比較に基づく損失を計算する。訓練部60は、計算した各損失を統合した総損失を最小化するように、状態推定器41、説明文生成器51、及び再推定器61を訓練する。
以下、各機能構成についてより具体的に説明する。なお、以下で説明する各機能構成の具体例は一例であり、各機能構成の実現方法は、下記具体例の例に限定されない。
取得部30は、説明文生成装置10に入力された材料リストG=(g,・・・,g,・・・,g)、及びクリップ列V=(v,・・・,v,・・・,v)を取得する。gは、材料リストGにおけるm番目の材料を表す単語であり、Mは、材料リストに含まれる材料の総数である。vは、クリップ列におけるn番目のクリップであり、Nは、作業に含まれる工程の総数である。取得部30は、図5に示すように、材料リストGを材料エンコーダ31に入力し、図6に示すように、クリップ列Vを動画エンコーダ32に入力する。
材料エンコーダ31は、材料リストから各材料の特徴を表す材料特徴量を抽出するために事前に訓練された、ニューラルネットワークで構成されたエンコーダである。例えば、材料エンコーダ31は、GloVe(global vectors)等の、単語埋め込みとReLU活性化関数とを備えた多層パーセプトロン(MLP)の連結ニューラルネットワークとしてよい。材料エンコーダ31は、図5に示すように、材料リストGに含まれる各材料を表す単語gを単語埋め込みによりベクトル化し、位置エンコーディングを追加して、初期材料ベクトルE=(e ,・・・,e ,・・・,e )として出力する。本実施形態の例では、E=(e ,e ,e )である。なお、材料ベクトルは、材料特徴量の一例である。
動画エンコーダ32は、クリップ列から各クリップの内容的特徴を表す動画特徴量を抽出するために事前に訓練された、例えばトランスフォーマー等のニューラルネットワークで構成されたエンコーダである。クリップ列Vには複数のクリップvが含まれ、各クリップvは連続したフレームで構成されている。すなわち、クリップ列Vは階層的である。したがって、動画エンコーダ32を、クリップ列Vを効果的にエンコードするために、シーケンスデータのエンコードに適した2ステージトランスフォーマーとしてよい。この場合、前段のトランスフォーマーは、BERT(Bidirectional Encoder Representations from Transformers)のCLSトークンに対応するベクトルを抽出することにより、各クリップvを特徴ベクトルにエンコードする。そして、後段のトランスフォーマーは、シーケンス全体で訓練されている。図6に示すように、動画エンコーダ32は、動画ベクトルH=(h,・・・,h,・・・,h)を出力する。本実施形態の例では、H=(h,h,h)である。なお、動画ベクトルは、動画特徴量の一例である。
更新部40は、材料ベクトルE及び動画ベクトルHに基づいて、各工程での材料の状態変化を繰り返し推定する。具体的には、更新部40は、図7に示すように、n番目のステップで、(1)動作選択、(2)材料選択、及び(3)更新の処理を実行する状態推定器41に、クリップvの動画ベクトルhと、材料ベクトルEn-1とを与える。状態推定器41の各処理の詳細については後述する。n番目のステップの後、状態推定器41は、状態推定ベクトルuを出力する。状態推定ベクトルuは、動画ベクトルh、選択されたアクション ̄f、及び材料ベクトル ̄eを連結したベクトルである。なお、「 ̄X」の表記は、図中及び式中では「X」の上に「 ̄(バー)」で表されている。状態推定器41は、クリップ列Vの最後のクリップvの処理を終了するまで、上記の処理を繰り返し実行する。
以下、n番目のステップにおける状態推定器41の(1)動作選択、(2)材料選択、及び(3)更新の各処理について詳述する。
まず、(1)動作選択について説明する。状態推定器41は、動画ベクトルhが与えられると、事前に定義された動作埋め込みFから、クリップvで実行される動作を選択する。動作埋め込みFは、事前に定義された動作を表す単語を単語埋め込みによりベクトル化したものである。例えば、動作「crack」及び「stir」がクリップvで実行されている場合、fcrack及びfstirの両方が選択される必要がある。そこで、状態推定器41は、複数の動作が選択されるようにするために、下記(1)式に示すように、動画ベクトルhから、例えばMLPにより、動作埋め込みFの各動作のうち、クリップvで実行されている動作の確率wを計算する。次に、状態推定器41は、下記(2)式及び(3)式に示すように、選択された動作を示す動作ベクトル ̄fを、動作の確率wと動作埋め込みFとの加重和として計算する。なお、(1)式~(3)式において、MLP(・)は、シグモイド関数を持つ2層MLPを表し、wは、動作埋め込みFに含まれる動作の中で取り得る動作の注意(Attention)分布である。
次に、(2)材料選択について説明する。状態推定器41は、動作の確率w及び動作ベクトルhに基づいて、材料ベクトルEn-1から、クリップvに含まれる材料を選択することにより、選択した材料を示す材料ベクトル ̄eを出力する。例えば、図1の例で、工程3(n=3)では、原材料の「cheese」と、操作された「butter」及び「eggs」が選択される必要がある。このように、原材料及び操作された材料を組み合わせて選択できるようにするために、状態推定器41は、Clip attention及びRecurrent attentionという2つのアテンションモジュールを持つ。
Clip attentionは、動画ベクトルh及び動作の確率wに基づいて、下記(4)式及び(5)式により、材料ベクトルe n-1に対する注意の重みdを計算する。なお、(4)式及び(5)式において、W及びWは線形及び双線形マッピング、b及びbはバイアスである。
Recurrent attentionは、現在と以前との両方のクリップからの情報、及びClip attentionの出力を使用して、下記(6)式及び(7)式により、材料ベクトルEn-1のうち、クリップvで実行されている動作に関連する材料の確率aを計算する。なお、(6)式及び(7)式において、Wは線形マッピング、bはバイアス、c∈実数Rは選択分布、a n-1は、前のクリップvn-1における材料ベクトルe の注意の重み、a は各材料ベクトルの最終的な分布、0は材料を選択しないことを表すゼロベクトルである。
次に、状態推定器41は、下記(8)式に示すように、選択された材料を示す材料ベクトル ̄eを、材料ベクトルの最終的な分布a と材料ベクトルe n-1との加重和として計算する。
次に、(3)更新について説明する。状態推定器41は、選択した動作及び材料ベクトルに基づいて、材料の状態変化を表す、更新された材料ベクトル^eを計算する。なお、「^X」の表記は、図中及び式中では「X」の上に「^(ハット)」で表されている。具体的には、状態推定器41は、下記(9)式に示すように、選択した動作 ̄f及び材料ベクトル ̄eの双一次変換(Bilinear)を使用して、材料に対する動作提案ベクトルlを計算する。なお、(9)式において、Wは双線形写像、bはバイアスである。
次に、状態推定器41は、下記(10)式に示すように、材料の確率aに基づいて、動作提案ベクトルlと現在の材料ベクトルe n-1とを補間することにより、更新された材料ベクトル^eを計算する。状態推定器41は、更新された材料ベクトル^eを材料ベクトルE に割り当て、次の(n+1)番目の処理へ転送する。
生成部50は、図8に示すように、状態推定器41から出力された状態推定ベクトルuを、対応するn番目の説明文生成器51へ入力する。説明文生成器51は、状態推定ベクトルuから工程毎の説明文yを繰り返し生成し、全工程分の説明文Y=(y,・・・,y,・・・,y)を生成する。説明文生成器51は、事前に訓練された、例えばトランスフォーマー等のニューラルネットワークで構成されたデコーダとしてよい。
具体的には、説明文生成器51は、材料リストGを参照し、説明文に含める単語として材料を表す単語の生成を促すために、コピーメカニズムを有する。説明文生成器51は、n番目の工程の説明文のk番目の単語を生成する際に、更新された材料ベクトルe ∈Eが与えられると、コピーメカニズムにより、下記(11)式に示すように、説明文生成器51の出力on,kと材料ベクトルe との双線形内積を使用して、注意確率βn,k を計算する。なお、(11)式において、Wは双線形写像を表す。
次に、説明文生成器51は、下記(12)式に示すように、材料リストから材料を選択するか、予め用意された語彙から単語を生成するかを選択するためのコピーゲートgn,k(0≦gn,k≦1)を計算する。なお、(12)式において、[・]は連結関数、σ(・)はシグモイド関数、Wは線形写像、bはバイアスを表す。
次に、説明文生成器51は、コピーゲートgn,kに基づいて、下記(13)式に示すように、最終的な予測単語確率Pn,k(w)を、材料リストからコピーする確率と、語彙から生成する確率との加重和として計算する。なお、(13)式において、Pn,k VOC(w)は、語彙のn番目の文のk番目の単語wの確率、|g|は、材料リストのm番目の材料の単語数を表す。
説明文生成器51は、予測単語確率Pn,k(w)に基づいて順次単語を生成することにより、工程毎の説明文yを生成し、全工程分の説明文Yを生成する。
訓練部60に含まれる再推定器61は、図9に示すように、文章エンコーダ62及び推定器63の2つのサブモジュールを含む。文章エンコーダ62は、生成部50で生成された説明文Yを、各工程に対応した文章ベクトルS=(s,・・・,s,・・・,s)に変換する。具体的には、まず、文章エンコーダ62は、例えば、Gumbelソフトマックスリサンプリングのストレートバージョンを適用して、微分可能なチェーンを維持しながら、説明文をサンプリングする。文章エンコーダ62は、サンプリングされた説明文を、各ステップで埋め込まれた単語の平均ベクトルを計算することにより、特徴ベクトルに変換する。単語の埋め込みは、説明文生成器51と文章エンコーダ62との間で共有される。次に、文章エンコーダ62は、例えばBiLSTMを使用して、特徴ベクトルを各工程に対応した文章ベクトルSに変換する。
推定器63は、状態推定器41と同様の構成であり、文章ベクトルS及び初期材料ベクトルEに基づいて、材料の状態変化を再度推定する。
また、訓練部60は、状態推定器41、説明文生成器51、及び再推定器61の各々を訓練するために、図10に示すように、文章生成損失Lsent、状態推定損失Lv_sim、及び再推定損失Lt_simを計算する。
文章生成損失Lsentは、説明文生成器51に関する損失である。具体的には、訓練部60は、取得部30が取得した材料リストG及びクリップ列Vに対応する正解文章Y’=(y’,・・・,y’,・・・,y’)を取得する。材料リストG及びクリップ列Vと正解文章Y’との組み合わせが訓練データであり、訓練部60は複数の訓練データを取得する。そして、訓練部60は、全ての訓練データについて、入力(V,G)に対する出力である説明文Yと、正解文章Y’との誤差、例えば、|y-y’|の負の対数尤度のN個分の合計を損失Lsentとして計算する。
状態推定損失Lv_simは、状態推定器41に関する損失であり、材料選択の損失と動作選択の損失とで構成される。訓練部60は、正解文章を言語解析し、正解文章に含まれる材料を表す単語を材料ラベルとして取得し、正解文章に含まれる品詞が動詞の単語を動作ラベルとして取得する。例えば、正解文章「crack the eggs and stir」から、材料ラベルとして「eggs」が取得され、動作ラベルとして「crack」及び「stir」が取得される。訓練部60は、材料ラベルを、全工程の正解文章から取得された材料ラベル数分の要素を含むベクトルに変換し、各工程の正解文章から取得された材料ラベルに相当する要素の値を1、それ以外の要素の値を0とする。同様に、訓練部60は、動作ラベルを、全工程の正解文章から取得された動作ラベル数分の要素を含むベクトルに変換し、各工程の正解文章から取得された動作ラベルに相当する要素の値を1、それ以外の要素の値を0とする。工程毎に、正解文章から材料ラベル及び動作ラベルを取得することにより、人手により材料ラベル及び動作ラベルを用意する負荷を削減することができる。
訓練部60は、状態推定器41で計算された材料の確率aと材料ラベルとの誤差、例えば、確率aと対応する材料ラベルの要素の値との差の負の対数尤度の合計を、材料選択の損失として計算する。また、訓練部60は、状態推定器41で計算された動作の確率wと動作ラベルとの誤差、例えば、確率wと対応する動作ラベルの要素の値との差の負の対数尤度の合計を、動作選択の損失として計算する。なお、動作ラベルについては、正の動作(値が1の動作)と負の動作(値が0の動作)との比率の不均衡が大きいため、重み付けされた負の対数尤度である非対称損失を使用して、不均衡を解消するようにしてもよい。訓練部60は、材料選択の損失と動作選択の損失との和を状態推定損失Lv_simとして計算する。
再推定損失Lt_simは、再推定器61に関する損失である。訓練部60は、上記状態推定損失Lv_simと同様に、再推定器61で材料の状態変化の推定の際に選択した動作及び材料と、材料ラベル及び動作ラベルとの誤差に関する再推定損失Lt_simを計算する。
訓練部60は、計算した文章生成損失Lsent、状態推定損失Lv_sim、及び再推定損失Lt_simの合計を、総損失Ltotal(=Lsent+Lv_sim+Lt_sim)として計算する。そして、訓練部60は、総損失Ltotalを最小化するように、状態推定器41、説明文生成器51、及び再推定器61の各々のパラメータを更新することを、訓練の終了条件を満たすまで繰り返すことにより、状態推定器41、説明文生成器51、及び再推定器61を訓練する。訓練の終了条件は、例えば、パラメータの更新の繰り返し回数が所定回数に到達した場合、総損失Ltotalが所定値以下となった場合、前回計算した総損失Ltotalと今回計算した総損失Ltotalとの差が所定値以下となった場合等としてよい。
次に、本実施形態に係る説明文生成装置10の作用について説明する。
図11は、説明文生成装置10のCPU12により実行される訓練処理の流れを示すフローチャートである。CPU12が記憶装置16から説明文生成プログラムを読み出して、メモリ14に展開して実行することにより、CPU12が説明文生成装置10の各機能構成として機能し、図11に示す訓練処理が実行される。
ステップS10で、取得部30が、説明文生成装置10に入力された材料リストG及びクリップ列Vを取得し、訓練部60が、説明文生成装置10に入力された、材料リストG及びクリップ列Vに対する正解文章Y’を取得する。次に、ステップS12で、取得部30が、材料リストGを材料エンコーダ31に入力し、初期材料ベクトルEを取得すると共に、クリップ列Vを動画エンコーダ32に入力し、動画ベクトルHを取得する。
次に、ステップS14で、更新部40が、初期材料ベクトルE及び動画ベクトルHを状態推定器41に入力する。状態推定器41は、事前に定義された動作埋め込みFから、クリップvで実行される動作を選択し、選択した動作を示す動作ベクトル ̄fを計算する。また、状態推定器41は、材料ベクトルEn-1から、クリップvに含まれる材料を選択し、選択した材料を示す材料ベクトル ̄eを計算する。そして、状態推定器41は、状態推定ベクトルu=(h, ̄f, ̄e)を出力する。
次に、ステップS16で、状態推定器41が、選択した動作及び材料ベクトルに基づいて、材料の状態変化を表す、更新された材料ベクトル^eを計算する。そして、状態推定器41が、更新された材料ベクトル^eを材料ベクトルE に割り当て、次の(n+1)番目の処理へ転送する。
次に、ステップS18で、生成部50が、状態推定器41から出力された状態推定ベクトルuを、対応するn番目の説明文生成器51へ入力する。説明文生成器51は、状態推定ベクトルuから工程毎の説明文yを繰り返し生成し、全工程分の説明文Yを生成する。
次に、ステップS20で、訓練部60が、再推定器61により、生成された説明文Y及び初期材料ベクトルEから、動作ベクトル ̄f及び材料ベクトルEn-1を再推定する。そして、訓練部60が、文章生成損失Lsent、状態推定損失Lv_sim、及び再推定損失Lt_simを計算し、総損失Ltotal(=Lsent+Lv_sim+Lt_sim)を計算する。そして、訓練部60が、総損失Ltotalを最小化するように、状態推定器41、説明文生成器51、及び再推定器61の各々のパラメータを更新する。
次に、ステップS22で、訓練部60が、訓練の終了条件を満たしたか否かを判定する。終了条件を満たしていない場合には、ステップS14に戻り、満たした場合には、ステップS24へ移行する。ステップS24では、訓練部60が、終了条件を満たした際の状態推定器41、説明文生成器51、及び再推定器61の各々のパラメータを出力し、訓練処理は終了する。
図12は、説明文生成装置10のCPU12により実行される生成処理の流れを示すフローチャートである。CPU12が記憶装置16から説明文生成プログラムを読み出して、メモリ14に展開して実行することにより、CPU12が説明文生成装置10の各機能構成として機能し、図12に示す生成処理が実行される。なお、生成処理の開始前には、訓練処理において出力されたパラメータがそれぞれ状態推定器41、説明文生成器51、及び再推定器61に設定される。
ステップS30で、取得部30が、説明文生成装置10に入力された、説明文を生成する対象となる材料リストG及びクリップ列Vを取得する。以下、訓練処理と同様に、ステップS12~S18が実行され、上記ステップS30で取得された材料リストG及びクリップ列Vに対応する説明文Yが生成され、出力され、生成処理は終了する。
以上説明したように、本実施形態に係る説明文生成装置は、複数の工程を含む作業について、作業に用いられる材料の各々を表す材料特徴量と、作業を撮影した工程毎の動画の各々から抽出される動画特徴量とを取得する。また、説明文生成装置は、工程毎の動画の各々の動画特徴量に基づいて、工程毎の動画に含まれる材料に対する動作を特定し、特定した材料の材料特徴量を、特定した動作に応じて更新する。この際、更新の対象となる材料特徴量は、作業における工程の時系列順に前の工程の動画について更新された材料特徴量である。そして、説明文生成装置は、更新された材料特徴量と、特定された動作と、動画特徴量とに基づいて、工程毎の作業内容を説明する文章を生成する。作業を撮影した動画から、その作業の手順を説明する説明文を正確に生成するためには、工程毎の動画の時系列順に材料の状態変化を追跡することが不可欠である。本実施形態の説明文生成装置は、上記のように材料特徴量を更新することで、作業を撮影した動画からその作業の手順を説明する文章を生成することができる。
なお、上記実施形態では、再推定器が、生成された説明文から材料の状態変化を再推定した結果もモデルの訓練に利用する場合について説明したが、この構成は必須ではなく、再推定器を含まない構成としてもよい。この場合、訓練部は、総損失を、Ltotal=Lsent+Lv_simとすればよい。
ここで、図13を参照して、本開示の手法と、参考手法との性能比較の結果について説明する。図13において、「Baseline」の4手法及び「Ours」の「Video only(V)」及び「V+Ingredients(VI)」が参考手法、「Ours」の「VI+Visual simulator(VIV)」及び「VIV+Textual re-simulator(VIVT)」が本開示の手法である。本開示の手法のVIVTは上記実施形態の手法、VIVは再推定の結果を用いない場合である。参考手法のVは、本実施形態のクリップ列のみを用いた手法、VIは、Vに加え、材料リストも用いた手法である。すなわち、V及びVIでは、材料の状態変化の推定、すなわち材料特徴量の更新は行っていない。また、図13において、B、B、M、C、RLはそれぞれ単語重複評価のスコアであり、B=BLEU、M=METEOR、C=CIDEr-D、RL =ROUGE-Lである。また、「Baseline」の手法は、本来、材料リストを用いる手法ではないが、本開示の手法と比較する際の平等性を考慮して、従来の手法を、材料リストを用いるよう改変した手法を含めた。図13において、「I」の項目にチェックが入っている手法が、材料リストを用いる手法であることを表している。また、図13において、太字の数値は、該当の単語重複評価において、最高のスコアを表している。
図13に示すように、本開示の手法VIV又はVIVTは、いずれの評価においても、参考手法の性能を大幅に上回っている。また、VIとVIVとを比較すると、VIVがVIよりも優れた性能を発揮し、VIVTがVIVの性能をさらに改善することを示している。これは、状態変化の推定及び再推定の両方が、手順を正確に説明する文章の生成に効果的であることを示している。
また、図14に、本開示の手法及び参考手法の各々により、レシピ動画から説明文を生成した結果の一例を示す。図14において、一重下線の単語は、正解文章(Ground truth)内に含まれる材料と一致する材料を表す。また、波線下線の単語は、正解文章内に含まれる材料と一致しない材料、又は正解文章には含まれるが、生成された説明文には含まれていない材料を表す。
図14に示すように、参考手法「MART-I」は、例えば、工程(step)1及び2において、「eggs」及び「milk」が見落とされているなど、正確な説明文を生成できていない。VIにも同様の傾向が見られ、これらの手法では、材料リスト(Ingredients)にリストされている材料を示す単語を過剰に生成している。本開示の手法のVIVは、例えば、工程3の「batter」のように、これらの問題が解消されている。さらに、再推定を行う手法であるVIVTは、例えば、工程1の「baking soda」及び「pepper」、工程2の「water」のように、VIVでは見逃されている材料を示す単語を生成することができている。
また、本実施形態に係る説明文生成装置は、説明文を生成する過程で、材料に対する動作に基づいて更新された材料ベクトルが取得される。これにより、訓練後は、説明文の生成だけでなく、材料の状態変化のシミュレーションも可能になる。また、人手で行った場合には大変な労力となる、材料の中間状態に対するアノテーションを、正解データなしで、自動で行うことができる。
さらに、更新された材料ベクトルを取得できる効果を説明するために、図15に、材料ベクトルをベクトル空間にプロットした例を示す。なお、図15では、説明を簡単にするため、多次元の材料ベクトルを2次元空間に投影している。淡いプロットで表される材料ベクトル(ベクトル空間の概ね右側に位置する材料ベクトル)は、元の材料ベクトル、濃いプロットで表される材料ベクトル(概ね左側に位置する材料ベクトル)は、更新された材料ベクトルである。図15に示すように、元の材料ベクトルと、更新された材料ベクトルとが、ベクトル空間で2つの主要なクラスタに明確に分割されていることが分かる。
また、更新された材料ベクトルから取得された上位2つの最も近い材料ベクトルを使用して材料の軌跡を調査した(図15の拡大部分)。各クリップに含まれる材料に対して予め定義されているレシピカテゴリの違いに関係なく、類似した状態の材料ベクトルがベクトル空間の同じクラスタに属している。例えば、動作「beat」で更新された「eggs」の材料ベクトルの近くに、例えば、「mix」や「stir」等の「beat」に類似する動作で更新された「eggs」の材料ベクトルが存在する。「flour」にも同じ傾向が見られる。
上記のような材料ベクトルは、図16に示すように、加減算が可能なベクトル表現となる。例えば、図16の(a)に示すように、材料の状態遷移は、v(cut potatoes)=v(potatoes)+v(cut tomatoes)-v(tomatoes)として計算される。ここで、vはベクトル空間へのマップを表す。なお、図16では、第1項の材料ベクトルが元の材料ベクトル(更新されていない材料ベクトル)の場合を示しているが、この項の材料ベクトルは、更新された材料ベクトルであってもよい。例えば、v(added chopped shallot)=v(chopped shallot)+v(add egg)-v(egg)のような計算も可能である。
本開示の技術は、例えば、テキストによる映像検索の検索性を高めるために有効な技術である。
なお、上記実施形態では、更新の前後で、材料ベクトルEに割り当てられる材料ベクトル^eの数が同数の場合について説明したが、これに限定されない。材料ベクトルEに割り当てる材料ベクトル^eに対して、材料ベクトルの追加、削除、及びマージの少なくとも1つを行うようにしてもよい。このような処理は、例えば、メモリネットワークを適用して実現してよい。
また、上記実施形態では、具体例の説明において、動画がレシピ動画(料理の手順を説明する動画)であり、材料は、その料理に利用される食材等である場合について説明したが、本開示の技術の適用範囲は上記の例に限定されない。例えば、工場における作業や、生化学実験の動画に対しても適用可能である。前者の場合、例えば、作業に使用される部品が上記実施形態における材料に相当し、部品の組み付け等が上記実施形態における動作に相当する。後者の場合、例えば、薬剤や検体が材料に相当し、加える、攪拌する等が動作に相当する。
なお、上記実施形態では、1つのコンピュータで、訓練機能と生成機能とを有する説明文生成装置を実現する場合について説明したが、これに限定されない。訓練装置と生成装置とを異なるコンピュータでそれぞれ実現してもよい。この場合、訓練装置から出力されるパスワードを、生成装置の状態推定器、説明文生成器、及び再推定器に設定するようにすればよい。
また、上記実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した説明文生成処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、説明文生成処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
また、上記実施形態では、説明文生成プログラムが記憶装置に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM、DVD-ROM、ブルーレイディスク、USBメモリ等の記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
10 説明文生成装置
12 CPU
14 メモリ
16 記憶装置
18 入力装置
20 出力装置
22 記憶媒体読取装置
24 通信I/F
26 バス
30 取得部
31 材料エンコーダ
32 動画エンコーダ
40 更新部
41、41A、41B、41C 状態推定器
50 生成部
51、51A、51B、51C 説明文生成器
60 訓練部
61、61A、61B、61C 再推定器
62 文章エンコーダ
63 推定器

Claims (9)

  1. 複数の工程を含む作業について、前記作業に用いられる材料の各々を表す単語をベクトル化した材料特徴量と、前記作業を撮影した前記工程毎の動画の各々から抽出される、前記工程毎の動画の各々の内容的特徴を表す動画特徴量とを取得する取得部と、
    動画特徴量から動作を特定すると共に、特定した動作に基づいて材料特徴量を更新するように予め訓練された第1モデルを用いて、前記取得部で取得された前記工程毎の動画の各々の動画特徴量に基づいて、前記工程毎の動画に含まれる材料に対する動作を特定し、特定した材料の前記材料特徴量を、特定した動作に応じて更新する更新部と、
    材料特徴量と動作と動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成するように予め訓練された第2モデルを用いて、前記更新部により更新された前記材料特徴量と、特定された前記動作と、前記取得部により取得された前記動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成する生成部と、
    を含む説明文生成装置。
  2. 前記更新部は、更新の対象となる前記材料特徴量を、前記作業における前記工程の時系列順に前の工程の動画について更新された材料特徴量とする請求項1に記載の説明文生成装置。
  3. 前記更新部は、更新した前記材料特徴量に対して、材料特徴量の追加、削除、及びマージの少なくとも1つを行う請求項1又は請求項2に記載の説明文生成装置。
  4. 材料リスト及び工程毎の動画と、前記材料リスト及び前記工程毎の動画に対応する正解の文章とを訓練データとして、前記第1モデル及び前記第2モデルを訓練する訓練部を含む請求項1~請求項3のいずれか1項に記載の説明文生成装置。
  5. 前記訓練部は、前記生成部により生成された文章と、前記正解の文章との比較に基づく第1損失と、前記更新部で特定された前記動作及び前記材料特徴量と、前記工程毎の動画に含まれる正解の動作及び材料との比較に基づく第2損失とを含む総損失を最小化するように、前記第1モデル及び前記第2モデルを訓練する請求項に記載の説明文生成装置。
  6. 前記訓練部は、前記正解の文章を言語解析することにより、前記正解の動作及び材料を取得する請求項に記載の説明文生成装置。
  7. 前記訓練部は、前記生成部により生成された文章から、材料特徴量及び動作を推定するように予め訓練された第3モデルの出力と、前記正解の動作及び材料との比較に基づく第3損失をさらに含む前記総損失を最小化するように、前記第1モデル、前記第2モデル、及び前記第3モデルを訓練する請求項及び請求項に記載の説明文生成装置。
  8. コンピュータによって実行される説明文生成方法であって、
    前記コンピュータに実装された取得部が、複数の工程を含む作業について、前記作業に用いられる材料の各々を表す単語をベクトル化した材料特徴量と、前記作業を撮影した前記工程毎の動画の各々から抽出される、前記工程毎の動画の各々の内容的特徴を表す動画特徴量とを取得し、
    前記コンピュータに実装された更新部が、動画特徴量から動作を特定すると共に、特定した動作に基づいて材料特徴量を更新するように予め訓練された第1モデルを用いて、前記取得部で取得された前記工程毎の動画の各々の動画特徴量に基づいて、前記工程毎の動画に含まれる材料に対する動作を特定し、特定した材料の前記材料特徴量を、特定した動作に応じて更新し、
    前記コンピュータに実装された生成部が、材料特徴量と動作と動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成するように予め訓練された第2モデルを用いて、前記更新部により更新された前記材料特徴量と、特定された前記動作と、前記取得部により取得された前記動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成する
    説明文生成方法。
  9. コンピュータを、
    複数の工程を含む作業について、前記作業に用いられる材料の各々を表す単語をベクトル化した材料特徴量と、前記作業を撮影した前記工程毎の動画の各々から抽出される、前記工程毎の動画の各々の内容的特徴を表す動画特徴量とを取得する取得部、
    動画特徴量から動作を特定すると共に、特定した動作に基づいて材料特徴量を更新するように予め訓練された第1モデルを用いて、前記取得部で取得された前記工程毎の動画の各々の動画特徴量に基づいて、前記工程毎の動画に含まれる材料に対する動作を特定し、特定した材料の前記材料特徴量を、特定した動作に応じて更新する更新部、及び、
    材料特徴量と動作と動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成するように予め訓練された第2モデルを用いて、前記更新部により更新された前記材料特徴量と、特定された前記動作と、前記取得部により取得された前記動画特徴量とに基づいて、前記工程毎の作業の手順を説明する文章を生成する生成部
    として機能させるための説明文生成プログラム。
JP2021162960A 2021-10-01 2021-10-01 説明文生成装置、方法、及びプログラム Active JP7803482B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2021162960A JP7803482B2 (ja) 2021-10-01 2021-10-01 説明文生成装置、方法、及びプログラム
PCT/JP2022/035263 WO2023054136A1 (ja) 2021-10-01 2022-09-21 説明文生成装置、方法、及びプログラム
EP22876003.9A EP4411589A4 (en) 2021-10-01 2022-09-21 DESCRIPTION GENERATING DEVICE, METHOD AND PROGRAM
US18/694,898 US20240404284A1 (en) 2021-10-01 2022-09-21 Description generation device, method, and program
CN202280063439.1A CN117980910A (zh) 2021-10-01 2022-09-21 说明文生成装置、方法以及程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021162960A JP7803482B2 (ja) 2021-10-01 2021-10-01 説明文生成装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2023053742A JP2023053742A (ja) 2023-04-13
JP7803482B2 true JP7803482B2 (ja) 2026-01-21

Family

ID=85780677

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021162960A Active JP7803482B2 (ja) 2021-10-01 2021-10-01 説明文生成装置、方法、及びプログラム

Country Status (5)

Country Link
US (1) US20240404284A1 (ja)
EP (1) EP4411589A4 (ja)
JP (1) JP7803482B2 (ja)
CN (1) CN117980910A (ja)
WO (1) WO2023054136A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4730823A1 (en) * 2023-08-23 2026-04-22 Samsung Electronics Co., Ltd. Method and apparatus for providing recipe image
JP2025161193A (ja) * 2024-04-11 2025-10-24 トヨタ自動車株式会社 情報処理装置、方法、及びプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210118447A1 (en) 2019-10-18 2021-04-22 Lg Electronics Inc. Artificial intelligence apparatus for generating recipe information and method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210118447A1 (en) 2019-10-18 2021-04-22 Lg Electronics Inc. Artificial intelligence apparatus for generating recipe information and method thereof

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
藤井竜希 他3名,深層学習を用いた料理動画からの全体的な整合性を考慮したレシピ文の自動生成,電子情報通信学会技術研究報告,2018年11月30日,Vol.118 No.350,37-41頁,AI2018-32
西村太一 他4名,手順構造を考慮した作業映像からの手順書生成,言語処理学会第27回年次大会 発表論文集 ,日本,2021年03月08日,992-996頁

Also Published As

Publication number Publication date
EP4411589A1 (en) 2024-08-07
EP4411589A4 (en) 2025-09-17
WO2023054136A1 (ja) 2023-04-06
JP2023053742A (ja) 2023-04-13
CN117980910A (zh) 2024-05-03
US20240404284A1 (en) 2024-12-05

Similar Documents

Publication Publication Date Title
Anderson et al. General strategies for the analysis of ringing data
US20200342953A1 (en) Target molecule-ligand binding mode prediction combining deep learning-based informatics with molecular docking
JP6910012B2 (ja) 文章評価装置、及び文章評価方法
JP7803482B2 (ja) 説明文生成装置、方法、及びプログラム
US20080256009A1 (en) System for temporal prediction
CN111033490A (zh) 用于认知实例的认知调解器
EP4118658B1 (en) Retrosynthesis using neural networks
JP7821525B2 (ja) 予測モデル生成装置、予測モデル生成方法、異常検知装置、異常検知方法、およびプログラム
JP2018538254A5 (ja)
JP2019149030A (ja) 学習品質推定装置、方法、及びプログラム
US20210217501A1 (en) Learning device and learning method
WO2023008172A1 (ja) 探索方法、探索システム、プログラム、予測モデル構築方法、及び予測モデル構築装置
Pillay et al. Exploring graph neural networks for stock market prediction on the JSE
CN108241625B (zh) 预测学生成绩变化趋势的方法及系统
CN113096756A (zh) 病情演变分类方法、装置、电子设备和存储介质
JP7439923B2 (ja) 学習方法、学習装置及びプログラム
CN118468024B (zh) 基于神经网络的船舶运动姿态预测装置
JP6605997B2 (ja) 学習装置、学習方法及びプログラム
JP2022184048A (ja) 相互作用推定方法、相互作用推定装置および相互作用推定プログラム
JP6981860B2 (ja) 系列データ解析装置、系列データ解析方法及びプログラム
Patel et al. Estimator vectors: OOV word embeddings based on subword and context clue estimates
JP7672844B2 (ja) 性能予測装置、性能予測方法及び性能予測プログラム
JP6705506B2 (ja) 学習プログラム、情報処理装置および学習方法
JP7521382B2 (ja) 行動認識学習装置、行動認識装置、行動認識学習方法、行動認識方法、及び行動認識学習プログラム
Sasage et al. Enhancing Temporal Action Segmentation with Large Language Models

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20251104

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20251216

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20251224

R150 Certificate of patent or registration of utility model

Ref document number: 7803482

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150