IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧 ▶ 国立大学法人 東京大学の特許一覧

特許7205839データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム
<>
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図1
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図2
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図3
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図4
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図5
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図6
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図7
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図8
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図9
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図10
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図11
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図12
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図13
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図14
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図15
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図16
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図17
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図18
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図19
  • 特許-データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-06
(45)【発行日】2023-01-17
(54)【発明の名称】データ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置、データ生成モデル学習方法、潜在変数生成モデル学習方法、翻訳データ生成方法、プログラム
(51)【国際特許分類】
   G06N 3/045 20230101AFI20230110BHJP
   G06N 3/08 20230101ALI20230110BHJP
   G06F 40/44 20200101ALI20230110BHJP
   G06F 40/56 20200101ALI20230110BHJP
   G10L 15/00 20130101ALI20230110BHJP
   G10L 15/16 20060101ALI20230110BHJP
【FI】
G06N3/04 154
G06N3/08
G06F40/44
G06F40/56
G10L15/00 200C
G10L15/16
【請求項の数】 11
(21)【出願番号】P 2021522681
(86)(22)【出願日】2020-04-08
(86)【国際出願番号】 JP2020015793
(87)【国際公開番号】W WO2020241072
(87)【国際公開日】2020-12-03
【審査請求日】2021-11-17
(31)【優先権主張番号】P 2019097309
(32)【優先日】2019-05-24
(33)【優先権主張国・地域又は機関】JP
【新規性喪失の例外の表示】特許法第30条第2項適用 発行日 2018年8月29日 刊行物 一般社団法人日本音響学会 2018年秋季研究発表会講演論文集 講演要旨・講演論文 CD-ROM 2-2-1
【新規性喪失の例外の表示】特許法第30条第2項適用 ウェブサイト掲載日 2019年5月27日 ウェブサイトのアドレス 日本電信電話株式会社 ニュースリリース ウェブサイト https://www.ntt.co.jp/news2019/1905/190527b.html
【新規性喪失の例外の表示】特許法第30条第2項適用 開催日 2019年5月30日~2019年5月31日(公知日:2019年5月30日、31日) 集会名、開催場所 NTTコミュニケーション科学基礎研究所オープンハウス2019 http://www.kecl.ntt.co.jp/openhouse/2019/index.html 主催:日本電信電話株式会社 NTTコミュニケーション科学基礎研究所 開催場所 京都府相楽郡精華町光台2-4(けいはんな学研都市)NTT京阪奈ビルB棟3階大会議室
【新規性喪失の例外の表示】特許法第30条第2項適用 開催日 2019年10月25日~2019年10月26日(公知日2019年10月25日) 集会名 DCASE Workshop (予稿集) http://dcase.community/articles/dcase2019-best-paper-awards
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(73)【特許権者】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(74)【代理人】
【識別番号】100121706
【弁理士】
【氏名又は名称】中尾 直樹
(74)【代理人】
【識別番号】100128705
【弁理士】
【氏名又は名称】中村 幸雄
(74)【代理人】
【識別番号】100147773
【弁理士】
【氏名又は名称】義村 宗洋
(72)【発明者】
【氏名】柏野 邦夫
(72)【発明者】
【氏名】井川 翔太
【審査官】多賀 実
(56)【参考文献】
【文献】CALIXTO, Iacer et al.,"Latent Variable Model for Multi-modal Translation",arXiv.org [online],arXiv:1811.00357v2,Cornell University,2019年05月19日,[検索日 2020.06.04], インターネット:<URL:https://arxiv.org/pdf/1811.00357v2>
【文献】DROSSOS, Konstantinos et al.,"Automated Audio Captioning with Recurrent Neural Networks",arXiv.org [online],arXiv:1706.10006v2,Cornell University,2017年,[検索日 2020.06.04], インターネット:<URL:https://arxiv.org/pdf/1706.10006v2>
【文献】KIKUCHI, Yuta et al.,"Controlling Output Length in Neural Encoder-Decoders",arXiv.org [online],1609.09552v1,Cornell University,2016年,[検索日 2020.06.04], インターネット:<URL:https://arxiv.org/pdf/1609.09552v1>
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00-99/00
G10L 15/00-17/26
G06F 40/40-40/58
(57)【特許請求の範囲】
【請求項1】
音響信号と当該音響信号に対応する言語L1の自然言語表現と当該音響信号に対応する言語L2の自然言語表現の組である第1学習データと、当該第1学習データの要素である言語L1の自然言語表現に対する指標と、当該第1学習データの要素である言語L2の自然言語表現に対する指標とを用いて、言語Li生成モデル(i=1, 2)を学習する学習部と、
を含むデータ生成モデル学習装置であって、
前記言語Li生成モデル(i=1, 2)は、音響信号から前記音響信号に対応する潜在変数を生成する音響信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記音響信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である
データ生成モデル学習装置。
【請求項2】
音響信号から前記音響信号に対応する潜在変数を生成する音響信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記音響信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である言語Li生成モデル(i=1, 2)を用いて、音響信号から生成した、当該音響信号に対応する言語Li(i=1, 2)の自然言語表現と当該音響信号に対応する潜在変数との組を教師あり学習データとして用いる教師あり学習により、言語Li(i=1, 2)の自然言語表現から前記言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)を潜在変数生成モデルとして学習する学習部と、
を含む潜在変数生成モデル学習装置。
【請求項3】
感覚情報に基づく信号と当該信号に対応する言語L1の自然言語表現と当該信号に対応する言語L2の自然言語表現の組である第1学習データと、当該第1学習データの要素である言語L1の自然言語表現に対する指標と、当該第1学習データの要素である言語L2の自然言語表現に対する指標とを用いて、言語Li生成モデル(i=1, 2)を学習する学習部と、
を含むデータ生成モデル学習装置であって、
前記言語Li生成モデル(i=1, 2)は、感覚情報に基づく信号から前記感覚情報に基づく信号に対応する潜在変数を生成する信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記感覚情報に基づく信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である
データ生成モデル学習装置。
【請求項4】
感覚情報に基づく信号から前記感覚情報に基づく信号に対応する潜在変数を生成する信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記感覚情報に基づく信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である言語Li生成モデル(i=1, 2)を用いて、感覚情報に基づく信号から生成した、当該信号に対応する言語Li(i=1, 2)の自然言語表現と当該信号に対応する潜在変数との組を教師あり学習データとして用いる教師あり学習により、言語Li(i=1, 2)の自然言語表現から前記言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)を潜在変数生成モデルとして学習する学習部と、
を含む潜在変数生成モデル学習装置。
【請求項5】
L1、L2を互いに異なる言語とし、
言語L1の自然言語表現から、言語L1エンコーダを用いて、前記言語L1の自然言語表現に対応する潜在変数を生成する潜在変数生成部と、
前記言語L1の自然言語表現から、前記言語L1の自然言語表現に対する指標を計算する指標計算部と、
前記潜在変数と前記言語L1の自然言語表現に対する指標から、言語L2デコーダを用いて、前記言語L1の自然言語表現に対応する言語L2の自然言語表現を生成する自然言語表現生成部と、
を含む翻訳データ生成装置。
【請求項6】
データ生成モデル学習装置が、音響信号と当該音響信号に対応する言語L1の自然言語表現と当該音響信号に対応する言語L2の自然言語表現の組である第1学習データと、当該第1学習データの要素である言語L1の自然言語表現に対する指標と、当該第1学習データの要素である言語L2の自然言語表現に対する指標とを用いて、言語Li生成モデル(i=1, 2)を学習する学習ステップと、
を含むデータ生成モデル学習方法であって、
前記言語Li生成モデル(i=1, 2)は、音響信号から前記音響信号に対応する潜在変数を生成する音響信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記音響信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である
データ生成モデル学習方法。
【請求項7】
潜在変数生成モデル学習装置が、音響信号から前記音響信号に対応する潜在変数を生成する音響信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記音響信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である言語Li生成モデル(i=1, 2)を用いて、音響信号から生成した、当該音響信号に対応する言語Li(i=1, 2)の自然言語表現と当該音響信号に対応する潜在変数との組を教師あり学習データとして用いる教師あり学習により、言語Li(i=1, 2)の自然言語表現から前記言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)を潜在変数生成モデルとして学習する学習ステップと、
を含む潜在変数生成モデル学習方法。
【請求項8】
データ生成モデル学習装置が、感覚情報に基づく信号と当該信号に対応する言語L1の自然言語表現と当該信号に対応する言語L2の自然言語表現の組である第1学習データと、当該第1学習データの要素である言語L1の自然言語表現に対する指標と、当該第1学習データの要素である言語L2の自然言語表現に対する指標とを用いて、言語Li生成モデル(i=1,2)を学習する学習ステップと、
を含むデータ生成モデル学習方法であって、
前記言語Li生成モデル(i=1, 2)は、感覚情報に基づく信号から前記感覚情報に基づく信号に対応する潜在変数を生成する信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記感覚情報に基づく信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である
データ生成モデル学習方法。
【請求項9】
潜在変数生成モデル学習装置が、感覚情報に基づく信号から前記感覚情報に基づく信号に対応する潜在変数を生成する信号エンコーダと、前記潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から前記感覚情報に基づく信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)との組である言語Li生成モデル(i=1, 2)を用いて、感覚情報に基づく信号から生成した、当該信号に対応する言語Li(i=1, 2)の自然言語表現と当該信号に対応する潜在変数との組を教師あり学習データとして用いる教師あり学習により、言語Li(i=1, 2)の自然言語表現から前記言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)を潜在変数生成モデルとして学習する学習ステップと、
を含む潜在変数生成モデル学習方法。
【請求項10】
L1、L2を互いに異なる言語とし、
翻訳データ生成装置が、言語L1の自然言語表現から、言語L1エンコーダを用いて、前記言語L1の自然言語表現に対応する潜在変数を生成する潜在変数生成ステップと、
前記翻訳データ生成装置が、前記言語L1の自然言語表現から、前記言語L1の自然言語表現に対する指標を計算する指標計算ステップと、
前記翻訳データ生成装置が、前記潜在変数と前記言語L1の自然言語表現に対する指標から、言語L2デコーダを用いて、前記言語L1の自然言語表現に対応する言語L2の自然言語表現を生成する自然言語表現生成ステップと、
を含む翻訳データ生成方法。
【請求項11】
請求項1または3に記載のデータ生成モデル学習装置、請求項2または4に記載の潜在変数生成モデル学習装置、請求項5に記載の翻訳データ生成装置のいずれかとしてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ある言語の文などの自然言語表現を別の言語の自然言語表現に翻訳する技術に関する。
【背景技術】
【0002】
ある言語(例えば、英語)で書かれた文を別の言語(例えば、日本語)で書かれた文に翻訳する翻訳サービスがインターネット上で提供されている。例えば、非特許文献1にあるGoogle翻訳がその一例である。このような翻訳サービスを実現するためには、ある言語Aの文を入力とし、別の言語Bの文を出力する翻訳モデルが必要になる。この翻訳モデルは、基本的に、言語Aの文と当該文に対応する言語Bの文の組を学習データとして教師あり学習により学習する。
【先行技術文献】
【非特許文献】
【0003】
【文献】Google翻訳, [online], [平成31年3月4日検索], インターネット<URL: https://translate.google.co.jp/?hl=ja>
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の翻訳モデルの学習では、言語Aと言語Bの対応に加えて、感覚データ、例えば音を利用することは困難であった。音を翻訳モデルの学習に利用するためには、音を翻訳する(音をテキストとして表現する)必要があるが、音の翻訳では、その音が何の音であるかについては翻訳することはできても、その音がどんな音であるかなどの、詳細な描写を含めた翻訳は困難であったためと考えられる。そして、このような事情から、音を利用して、一定程度の精度を有する翻訳を実現することは難しかった。
【0005】
そこで本発明では、音を用いて、ある言語の自然言語表現を別の言語の自然言語表現に翻訳する翻訳技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様は、L1、L2を互いに異なる言語とし、言語L1の自然言語表現から、言語L1エンコーダを用いて、前記言語L1の自然言語表現に対応する潜在変数を生成する潜在変数生成部と、前記言語L1の自然言語表現から、前記言語L1の自然言語表現に対する指標を計算する指標計算部と、前記潜在変数と前記言語L1の自然言語表現に対する指標から、言語L2デコーダを用いて、前記言語L1の自然言語表現に対応する言語L2の自然言語表現を生成する自然言語表現生成部と、を含む。
【発明の効果】
【0007】
本発明によれば、音を用いて精度のよい翻訳が可能となる。
【図面の簡単な説明】
【0008】
図1】SCGを説明する図である。
図2】文の詳細度を説明する図である。
図3】文の詳細度を説明する図である。
図4】CSCGを説明する図である。
図5】実験結果を示す図である。
図6】実験結果を示す図である。
図7】実験結果を示す図である。
図8】実験結果を示す図である。
図9】データ生成モデルの概要を示す図である。
図10】データ生成モデル学習装置100の構成を示すブロック図である。
図11】データ生成モデル学習装置100の動作を示すフローチャートである。
図12】言語Li生成モデル(i=1, 2)の概要を示す図である。
図13】データ生成モデル学習装置200/500の構成を示すブロック図である。
図14】データ生成モデル学習装置200/500の動作を示すフローチャートである。
図15】データ生成モデル学習装置250/550の構成を示すブロック図である。
図16】データ生成モデル学習装置250/550の動作を示すフローチャートである。
図17】潜在変数生成モデル学習装置300/600の構成を示すブロック図である。
図18】潜在変数生成モデル学習装置300/600の動作を示すフローチャートである。
図19】翻訳データ生成装置400/700の構成を示すブロック図である。
図20】翻訳データ生成装置400/700の動作を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【0010】
各実施形態の説明に先立って、この明細書における表記方法について説明する。
【0011】
^(キャレット)は上付き添字を表す。例えば、xy^zはyzがxに対する上付き添字であり、xy^zはyzがxに対する下付き添字であることを表す。また、_(アンダースコア)は下付き添字を表す。例えば、xy_zはyzがxに対する上付き添字であり、xy_zはyzがxに対する下付き添字であることを表す。
【0012】
ある文字xに対する^xや~xのような上付き添え字の”^”や”~”は、本来”x”の真上に記載されるべきであるが、明細書の記載表記の制約上、^xや~xと記載しているものである。
【0013】
<技術的背景>
本発明の実施形態では、音響信号から、当該音響信号に対応する文を生成する際、文生成モデルを用いる。ここで、文生成モデルとは、音響信号を入力とし、対応する文を出力する関数のことである。また、音響信号に対応する文とは、例えば、当該音響信号がどのような音であるのかを説明する文(当該音響信号の説明文)のことである。
【0014】
まず、文生成モデルの一例としてSCG (Sequence-to-sequence Caption Generator)と呼ぶモデルについて説明する。
【0015】
《SCG》
SCGは、図1に示すように、デコーダに参考非特許文献1に記載のRLM(Recurrent Language Model)を採用したエンコーダ-デコーダモデルである。
(参考非特許文献1:T. Mikolov, M. Karafiat, L. Burget, J. Cernock`y, and S. Khudanpur, “Recurrent neural network based language model”, In INTERSPEECH 2010, pp.1045-1048, 2010.)
【0016】
図1を参照して、SCGを説明する。SCGは、以下のステップにより、入力された音響信号から、当該音響信号に対応する文を生成し、出力する。なお、音響信号の代わりに、音響信号から抽出された音響特徴量(Acoustic features)、例えば、メル周波数ケプストラム係数(MFCC)の系列を用いてもよい。また、テキストデータである文は、単語の列である。
(1)SCGは、エンコーダによって、音響信号から音の分散表現である潜在変数(Latent variable)zを抽出する。潜在変数zは、所定の次元(例えば、128次元)のベクトルとして表現される。この潜在変数zは、文生成のための十分な情報を含んだ音響信号の要約特徴量であるといえる。したがって、潜在変数zは音響信号と文の双方の特徴を有する固定長ベクトルであるともいえる。
(2)SCGは、デコーダによって、潜在変数zから、時刻t(t=1, 2, …)における単語wtを出力していくことにより、文を生成する。デコーダの出力層(Output layer)は、時刻tにおける単語の生成確率pt(w)から、次式により時刻tにおける単語wtを出力する。
【0017】
【数1】
【0018】
図1は、時刻t=1における単語w1が”Birds”、時刻t=2における単語w2が”are”、時刻t=3における単語w3が”singing”であり、文”Birds are singing”が生成されることを表している。なお、図1中の<BOS>、<EOS>はそれぞれ開始記号、終端記号である。
【0019】
SCGを構成するエンコーダとデコーダには、時系列データを処理することができる任意のニューラルネットワークを用いることができる。例えば、RNN(Recurrent Neural Network)やLSTM(Long Short-Term Memory)を用いることができる。なお、図1中のBLSTM、layered LSTMはそれぞれ双方向LSTM(Bi-directional LSTM)、多層LSTMを表す。
【0020】
SCGは、音響信号と当該音響信号に対応する文(この文のことを教師データという)の組を教師あり学習データとして用いる教師あり学習により学習される。時刻tにおいてデコーダが出力する単語と、教師データの文に含まれる、時刻tにおける単語とのクロスエントロピーの総和を誤差関数LSCGとして、誤差逆伝播法によりSCGを学習する。
【0021】
上記学習により得られるSCGの出力である文は、その記述の詳細さにおいて、ばらつきが生じてしまう。これは、以下のような理由による。1つの音響信号に対して正しい文は1つではない。言い換えると、1つの音響信号に対して記述の詳細さが様々に異なる多数の“正しい文”が存在しうる。例えば、“低い音が鳴る”、“楽器をしばらく鳴らしている”、“弦楽器を低い音で鳴らし始めて、その後ゆっくりと音量が下がっていく”のように、1つの音響信号に対してその音響信号の様子を記述する正しい文は複数ありえ、これらの文の中でどの文が好ましいのかは場面によって異なる。例えば、端的な記述が欲しい場面もあれば、詳しい記述が欲しい場面もある。そのため、記述の詳細さが異なる文を区別せずにSCGの学習を実行すると、SCGは、生成する文の傾向を制御することができなくなる。
【0022】
《詳細度》
上記ばらつきの問題を解決するために、文の詳細さの程度を示す指標である詳細度(Specificity)を定義する。n個の単語の列[w1, w2, …, wn]である文sの詳細度Isを次式により定義する。
【0023】
【数2】
【0024】
ただし、Iw_tは単語wtの出現確率pw_tに基づき定まる単語wtの情報量である。例えば、Iw_t=-log(pw_t)とするとよい。ここで、単語wtの出現確率pw_tは、例えば、説明文データベースを用いて求めることができる。説明文データベースとは、複数の音響信号に対して各々の音響信号を説明する文を1以上格納したデータベースであり、説明文データベースに含まれる文に含まれる単語ごとにその出現頻度を求め、当該単語の出現頻度をすべての単語の出現頻度の和で割ることにより、単語の出現確率を求めることができる。
【0025】
このように定義した詳細度は、以下のような特徴を有する。
(1)具体的な物体や動作を表す単語を用いた文は詳細度が高くなる(図2参照)。
【0026】
これは、このような単語は出現頻度が低く、情報量が大きくなるためである。
(2)使用する単語数が多い文は詳細度が高くなる(図3参照)。
【0027】
詳細度の最適値は、対象とする音の性質や用途により異なる。例えば、より詳しく音を描写したい場合は、文の詳細度は高い方が好ましいし、端的な説明が欲しい場合は、文の詳細度は低い方が好ましい。また、詳細度が高い文は不正確になりやすいという問題もある。したがって、音響信号の記述に求められる情報の粒度に応じて、詳細度を自由に制御して、音響信号に対応する文を生成できることが重要になる。このような文生成を可能とするモデルとして、CSCG (Conditional Sequence-to-sequence Caption Generator)を説明する。
【0028】
《CSCG》
CSCGは、SCGと同様、デコーダにRLMを採用したエンコーダ-デコーダモデルである。ただし、CSCGでは、デコーダに条件付けを行うことにより、生成される文の詳細度(Specificity of the sentence)を制御する(図4参照)。条件付けは、文の詳細度に関する条件(Specificitical Condition)をデコーダの入力とすることにより行う。ここで、文の詳細度に関する条件とは、生成される文の詳細度に関する条件を指定するものである。
【0029】
図4を参照して、CSCGを説明する。CSCGは、以下のステップにより、入力された音響信号と文の詳細度に関する条件から、当該音響信号に対応する文を生成し、出力する。
(1)CSCGは、エンコーダによって、音響信号から音の分散表現である潜在変数zを抽出する。
(2)CSCGは、デコーダによって、潜在変数zと文の詳細度に関する条件Cから、時刻t(t=1, 2, …)における単語を出力していくことにより、文を生成する。生成された文は文の詳細度に関する条件Cに近い詳細度を持つ文となる。図4は、生成された文s=”Birds are singing”の詳細度Isが文の詳細度に関する条件Cに近いものとなることを示している。
【0030】
CSCGは、音響信号と当該音響信号に対応する文の組である学習データ(以下、第1学習データという)を用いる教師あり学習(以下、第1学習という)により学習することができる。また、CSCGは、第1学習データを用いる第1学習と、文の詳細度と当該詳細度に対応する文の組である学習データ(以下、第2学習データという)を用いる教師あり学習(以下、第2学習という)とにより学習することもできる。この場合、例えば、第1学習と第2学習を1エポックずつ交互に実行することにより、CSCGは学習される。また、例えば、第1学習と第2学習を所定の方法で混在させながら両学習を実行することにより、CSCGは学習される。このとき、第1学習の実行回数と第2学習の実行回数は異なる値となってもよい。
【0031】
(1)第1学習
音響信号に対応する文(つまり、教師データの要素である文)は、人手により付与されたものを用いる。第1学習では、音響信号に対応する文の詳細度を求めて教師データに含める。第1学習では、生成された文と教師データの文の誤差であるLSCGと詳細度に関する誤差であるLspの最小化を同時に達成するように学習する。誤差関数LCSCGには、2つの誤差LSCGとLspを用いて定義されるものを用いることができる。例えば、誤差関数LCSCGとして、次式のような2つの誤差の線形和を用いることができる。
【0032】
【数3】
【0033】
ここで、λは所定の定数である。
【0034】
なお、誤差Lspの具体的な定義については後述する。
【0035】
(2)第2学習
第1学習データの数が少ない場合、第1学習のみによりCSCGを学習すると、CSCGが第1学習データの要素である音響信号に過剰に適合してしまい、詳細度が適切に反映されにくくなることも考えられる。そこで、第1学習データを用いる第1学習に加えて、第2学習データを用いる第2学習により、CSCGを構成するデコーダを学習する。
【0036】
第2学習では、学習中のデコーダを用いて、第2学習データの要素である詳細度cに対応する文を生成し、第2学習データの要素である文を当該生成された文に対する教師データとして、誤差Lspを最小化するようにデコーダを学習する。なお、第2学習データの要素である詳細度cは、例えば、乱数生成のように、所定の方法で生成されたものを用いればよい。また、第2学習データの要素である文は、詳細度cと近い(つまり、詳細度cとの差が所定の閾値より小さいあるいは以下である)詳細度を持つ文である。
【0037】
具体的には、生成された文と詳細度cと近い詳細度を持つ文の誤差であるLSCGを用いて正則化する。
【0038】
【数4】
【0039】
ここで、λ’はλ’<1を満たす定数である。
【0040】
第1学習に加えて、第2学習を実行することにより、CSCGの汎化性能を向上させることができる。
【0041】
誤差Lspは、第1学習の場合は、生成された文の詳細度と教師データの文の詳細度との差、第2学習の場合は、生成された文の詳細度と教師データとして与える詳細度との差として定義することもできるが、このように誤差Lspを定義すると、時刻tにおける出力を得る時点で1つの単語への離散化を行うため、誤差を逆伝播することができない。そこで、誤差逆伝播法による学習を可能とするため、生成された文の詳細度の代わりに、その推定値を用いることが有効である。例えば、生成された文sの推定詳細度^Isとして、次式で定義されるものを用いることができる。
【0042】
【数5】
【0043】
ただし、時刻tにおけるデコーダの出力層のユニットjの値p(wt,j)は、ユニットjに対応する単語wt,jの生成確率、Iw_t,jは単語wt,jの生成確率pw_t,jに基づき定まる単語wt,jの情報量である。
【0044】
そして、誤差Lspを、第1学習の場合、推定詳細度^Isと教師データの文の詳細度との差、第2学習の場合、推定詳細度^Isと教師データとして与える詳細度との差として定義する。
【0045】
《実験》
ここでは、CSCGによる文生成の効果を確認する実験の結果について説明する。実験は、以下の2つを目的として行った。
(1)詳細度による制御可能性の検証
(2)受容可能性(acceptability)に関する主観評価による生成された文の品質の評価
【0046】
まず、実験に用いたデータについて、説明する。楽器音や音声などの音響イベントを収録した(6秒以内の)音響信号から、説明文付き音源(教師あり学習データ)を392個、説明文のない音源(教師なし学習データ)を579個生成した。なお、説明文付き音源を生成する際、各音源に1~4個の説明文を付与することした。ここで、付与された説明文の総数は1113個である。また、これらの説明文は、被験者に各音源を聞いてもらいどのような音であるか説明する文を書いてもらうことにより、生成したものである。さらに、上記1113個の説明文に対して、部分的な削除や置換を行うことより、説明文を21726個に増加させ、21726個の説明文を用いて説明文データベースを構成した。
【0047】
以下、実験結果について説明する。実験結果は、SCGとCSCGの比較という形で評価することとした。実験では、学習済みのSCGと、学習済みのCSCGとを用いて、文を生成した。
【0048】
まず、目的(1)に関する実験結果について説明する。図5は、音源に対してSCGやCSCGによりどのような文が生成されたかを示す表である。例えば、指を鳴らした音源に対して、SCGにより“軽やかな音が一瞬だけ鳴る”という文(Generated caption)が生成され、詳細度を20としてCSCGにより“指が鳴らされる”という文が生成されたことを示す。また、図6は、各モデルの詳細度の平均と標準偏差を示す表である。これらの統計量は29個の音源をテストデータとして文を生成した結果から算出したものである。図6の表から、詳細度に関して以下のことがわかる。
(1)SCGは、詳細度の標準偏差はとても大きい。
(2)CSCGは、入力した詳細度cの値に応じた詳細度を持つ文を生成しており、標準偏差もSCGのそれと比較して小さい。ただし、入力した詳細度cが大きくなるにつれて標準偏差が大きくなる。これは、入力した詳細度cに近い詳細度を持ちつつ音に当てはまる説明文がないためばらつきが大きくなるものと考えられる。
【0049】
CSCGは、生成した文の詳細度のばらつきを抑制し、詳細度に応じた文を生成できていることがわかる。
【0050】
次に、目的(2)に関する実験結果について説明する。まず、SCGを用いて生成した文が主観的に受け入れられるどうかを4段階評価した。次に、SCGを用いて生成した文とCSCGを用いて生成した文とを比較評価した。
【0051】
4段階評価では、29の音源をテストデータとして用い、すべてのテストデータに対して41名の被験者が回答する形を採用した。図7にその結果を示す。平均値は1.45、分散は1.28であった。このことから、SCGを用いて生成した文は平均的に”部分的に当てはまる”より高い評価を獲得していることがわかる。
【0052】
また、比較評価では、c=20, 50, 80, 100の4通りの条件でCSCGを用いて生成した文とSCGを用いて生成した文とを比較評価し、4通りの比較評価のうち最もCSCGを高く評価した回答を選択・集計した。図8にその結果を示す。100の音源をテストデータとして、19名の被験者に回答してもらったものであり、CSCGは有意水準を1%として有意にSCGより高い評価を獲得した。なお、平均値は0.80、分散は1.07であった。
【0053】
《詳細度のバリエーション》
詳細度は、生成される文の持つ性質(具体的には情報量)を制御するための補助的な入力である。生成される文の持つ性質を制御することができるものであれば、詳細度は、単一の数値(スカラー値)であっても、数値の組(ベクトル)であってもよい。以下、いくつか例を挙げる。
【0054】
(例1)N個の単語の系列である単語N-gramの出現頻度に基づく方法
単語1個での出現頻度の代わりに、単語の系列の出現頻度を用いる方法である。この方法は、単語の順序を考慮することができるため、より適切に生成される文の持つ性質を制御できる可能性がある。単語の出現確率と同様、説明文データベースを用いて、単語N-gramの出現確率を計算することができる。また、説明文データベースの代わりに、その他利用可能なコーパスを用いてもよい。
【0055】
(例2)単語の数に基づく方法
詳細度を文に含まれる単語の数とする方法である。なお、単語の数の代わりに、文字の数を用いてもよい。
【0056】
(例3)ベクトルを用いる方法
例えば、これまでに説明した、単語の出現確率、単語N-gramの出現確率、単語の数を組とする3次元ベクトルを詳細度とすることができる。また、例えば、政治、経済、科学のように単語を分類する分野(トピック)を設け、分野ごとに次元を割り当て、各分野の単語の出現確率の組をベクトルとして詳細度を定義してもよい。これにより、各分野に特有の言い回しの反映を図ることが可能になると考えられる。
【0057】
《応用例》
SCG/CSCGの学習やSCG/CSCGを用いた文の生成の枠組みは、図5に例示した音源のように比較的単純な音以外に、例えば音楽のようにより複雑な音や、音以外のメディアに対しても適用することができる。音以外のメディアには、例えば絵画、イラスト、クリップアートのような画像や、動画がある。また、工業デザインや、味覚であってもよい。
【0058】
SCG/CSCG同様、これらのデータと当該データに対応する文を対応づけるモデルを学習し、当該モデルを用いて文を生成することも可能である。例えば、味覚の場合、味覚センサからの信号を入力として、ワインや農作物等についての記述/論評である文を生成することも可能になる。この場合、味覚センサ以外に嗅覚センサ、触覚センサ、カメラからの信号もあわせて入力とするようにしてもよい。
【0059】
なお、非時系列データを扱う場合は、例えば、CNN(Convolutional Neural Network)のようなニューラルネットワークを用いて、エンコーダやデコーダを構成するようにすればよい。
【0060】
<第1実施形態>
《データ生成モデル学習装置100》
データ生成モデル学習装置100は、学習データを用いて、学習対象となるデータ生成モデルを学習する。ここで、学習データには、音響信号と当該音響信号に対応する自然言語表現の組である第1学習データと自然言語表現に対する指標と当該指標に対応する自然言語表現の組である第2学習データがある。また、データ生成モデルは、音響信号と自然言語表現に対する指標(例えば、文の詳細度)に関する条件を入力とし、当該音響信号に対応する自然言語表現を生成し、出力する関数のことであり、音響信号から音響信号に対応する潜在変数を生成するエンコーダと、潜在変数と自然言語表現に対する指標に関する条件から音響信号に対応する自然言語表現を生成するデコーダとの組として構成される(図9参照)。自然言語表現に対する指標に関する条件とは、生成される自然言語表現に要求される指標のことであり、要求される指標は一つの数値で指定してもよいし、範囲をもって指定してもよい。なお、エンコーダ、デコーダには、時系列データを処理することができる任意のニューラルネットワークを用いることができる。また、自然言語表現の例として、<技術的背景>で説明した文の他に、主語と述語を伴わない2つ以上の単語からなる句や、擬音語(オノマトペ)がある。
【0061】
以下、図10図11を参照してデータ生成モデル学習装置100を説明する。図10は、データ生成モデル学習装置100の構成を示すブロック図である。図11は、データ生成モデル学習装置100の動作を示すフローチャートである。図10に示すようにデータ生成モデル学習装置100は、学習モード制御部110と、学習部120と、終了条件判定部130と、記録部190を含む。記録部190は、データ生成モデル学習装置100の処理に必要な情報を適宜記録する構成部である。記録部190は、例えば、学習データを学習開始前に記録しておく。
【0062】
図11に従いデータ生成モデル学習装置100の動作について説明する。データ生成モデル学習装置100は、第1学習データと当該第1学習データの要素である自然言語表現に対する指標と第2学習データとを入力とし、データ生成モデルを出力する。なお、第1学習データの要素である自然言語表現に対する指標については、入力とする代わりに、学習部120において、第1学習データの要素である自然言語表現から求めるようにしてもよい。
【0063】
S110において、学習モード制御部110は、第1学習データと、当該第1学習データの要素である自然言語表現に対する指標と、第2学習データとを入力とし、学習部120を制御するための制御信号を生成し、出力する。ここで、制御信号は、第1学習と第2学習のいずれかを実行するように学習モードを制御する信号である。制御信号は、例えば、第1学習と第2学習を交互に実行するように学習モードを制御する信号とすることができる。また、制御信号は、例えば、第1学習と第2学習を所定の方法で混在させながら両学習を実行するように学習モードを制御する信号とすることができる。この場合、第1学習の実行回数と第2学習の実行回数は、異なる値となってもよい。
【0064】
S120において、学習部120は、第1学習データと、当該第1学習データの要素である自然言語表現に対する指標と、第2学習データと、S110において出力された制御信号とを入力とし、制御信号が指定する学習が第1学習である場合は、第1学習データと当該第1学習データの要素である自然言語表現に対する指標を用いて、音響信号から音響信号に対応する潜在変数を生成するエンコーダと、潜在変数と自然言語表現に対する指標に関する条件から音響信号に対応する自然言語表現を生成するデコーダとを学習し、制御信号が指定する学習が第2学習である場合は、第2学習データを用いてデコーダを学習し、エンコーダとデコーダの組であるデータ生成モデルを、終了条件判定部130が終了条件を判定するために必要な情報(例えば、学習を行った回数)とともに出力する。学習部120は、実行する学習が第1学習、第2学習のいずれであっても、1エポックを単位として学習を実行する。また、学習部120は、誤差関数LCSCGを用いて誤差逆伝播法によりデータ生成モデルを学習する。誤差関数LCSCGは、実行する学習が第1学習である場合、λを所定の定数として、次式により定義され、
【0065】
【数6】
【0066】
実行する学習が第2学習である場合、λ’をλ’<1を満たす定数として、次式により定義される。
【0067】
【数7】
【0068】
ただし、自然言語表現に関する誤差LSCGは、実行する学習が第1学習である場合、第1学習データの要素である音響信号に対するデータ生成モデルの出力である自然言語表現と当該第1学習データの要素である自然言語表現とから計算されるクロスエントロピー、実行する学習が第2学習である場合、第2学習データの要素である指標に対するデコーダの出力である自然言語表現と当該第2学習データの要素である自然言語表現とから計算されるクロスエントロピーとする。
【0069】
なお、誤差関数LCSCGは、2つの誤差LSCGとLspを用いて定義されるものであればよい。
【0070】
また、自然言語表現が文である場合、<技術的背景>で説明した通り、自然言語表現に対する指標として、文の詳細度を用いることができる。この場合、文の詳細度は、少なくとも所定の単語データベースを用いて定義される文に含まれる単語の出現確率や単語N-gramの出現確率、文に含まれる単語の数、文に含まれる文字の数のうち、少なくとも1つを用いて定義されるものである。例えば、文の詳細度は、Isをn個の単語の列[w1, w2, …, wn]である文sの詳細度として、次式により定義してもよい。
【0071】
【数8】
【0072】
(ただし、Iw_tは単語wtの出現確率pw_tに基づき定まる単語wtの情報量である。)
【0073】
なお、詳細度Isは、情報量Iw_t(1≦t≦n)を用いて定義されるものであればよい。
【0074】
また、単語データベースは、文に含まれる単語に対して当該単語の出現確率や、文に含まれる単語N-gramに対して当該単語N-gramの出現確率を定義できるものであれば、どのようなものであってもよい。単語データベースとして、例えば、<技術的背景>で説明した説明文データベースを用いることができる。
【0075】
また、デコーダの出力である文sの推定詳細度^Isを、
【0076】
【数9】
【0077】
(ただし、時刻tにおけるデコーダの出力層のユニットjの値p(wt,j)は、ユニットjに対応する単語wt,jの生成確率、Iw_t,jは単語wt,jの生成確率pw_t,jに基づき定まる単語wt,jの情報量である)とし、文の詳細度に関する誤差Lspは、実行する学習が第1学習である場合、推定詳細度^Isと第1学習データの要素である文の詳細度との差、実行する学習が第2学習である場合、推定詳細度^Isと第2学習データの要素である詳細度との差とする。
【0078】
なお、句に対しても、文と同様、詳細度を定義することができる。
【0079】
S130において、終了条件判定部130は、S120において出力されたデータ生成モデルと終了条件を判定するために必要な情報とを入力とし、学習の終了に関する条件である終了条件が満たされている(例えば、学習を行った回数が所定の繰り返し回数に達している)か否かを判定し、終了条件が満たされている場合は、データ生成モデルを出力して、処理を終了する一方、終了条件が満たされていない場合は、S110の処理に戻る。
【0080】
本発明の実施形態によれば、自然言語表現に対する指標を補助入力とし、音響信号から、当該音響信号に対応する自然言語表現を生成するデータ生成モデルを学習することが可能となる。
【0081】
<第2実施形態>
ここでは、日本語、英語、フランス語などの言語を言語Li(i=1, 2, …, N、ただしNは2以上の整数)と表すことにする。なお、i≠jの場合、Li≠Lj、つまり、言語L1と言語L2は互いに異なる言語であるものとする。
【0082】
以下、N=2として、説明する。
【0083】
《データ生成モデル学習装置200》
データ生成モデル学習装置200は、学習データを用いて、学習対象となる言語Li生成モデル(i=1, 2)を学習する。ここで、学習データには、音響信号と当該音響信号に対応する言語L1の自然言語表現と当該音響信号に対応する言語L2の自然言語表現の組である第1学習データと自然言語表現に対する指標と当該指標に対応する言語Liの自然言語表現(i=1, 2)の組である第2学習データがある。なお、1つの音響信号に対応する言語L1の自然言語表現と言語L2の自然言語表現は、互いに翻訳された自然言語表現であるという関係にある。また、言語Li生成モデル(i=1, 2)は、音響信号と自然言語表現に対する指標に関する条件を入力とし、当該音響信号に対応する言語Liの自然言語表現を生成し、出力する関数のことであり、音響信号から音響信号に対応する潜在変数を生成する音響信号エンコーダと、潜在変数と自然言語表現に対する指標に関する条件から音響信号に対応する言語Liの自然言語表現を生成する言語Liデコーダとの組である(図12参照)。自然言語表現に対する指標に関する条件とは、生成される自然言語表現に要求される指標のことであり、要求される指標は一つの数値で指定してもよいし、範囲をもって指定してもよい。なお、音響信号エンコーダ、言語Liデコーダには、時系列データを処理することができる任意のニューラルネットワークを用いることができる。
【0084】
以下、図13図14を参照してデータ生成モデル学習装置200を説明する。図13は、データ生成モデル学習装置200の構成を示すブロック図である。図14は、データ生成モデル学習装置200の動作を示すフローチャートである。図13に示すようにデータ生成モデル学習装置200は、学習モード制御部210と、学習部220と、終了条件判定部230と、記録部290を含む。記録部290は、データ生成モデル学習装置200の処理に必要な情報を適宜記録する構成部である。記録部290は、例えば、学習データを学習開始前に記録しておく。
【0085】
図14に従いデータ生成モデル学習装置200の動作について説明する。データ生成モデル学習装置200は、第1学習データと当該第1学習データの要素である言語Li(i=1,2)の自然言語表現に対する指標と第2学習データとを入力とし、言語Li生成モデル(i=1, 2)を出力する。なお、第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標については、入力とする代わりに、学習部220において、第1学習データの要素である言語Li(i=1, 2)の自然言語表現から求めるようにしてもよい。
【0086】
S210において、学習モード制御部210は、第1学習データと、当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標と、第2学習データとを入力とし、学習部220を制御するための制御信号を生成し、出力する。ここで、制御信号は、第1学習と第2学習のいずれかを実行するように学習モードを制御する信号である。制御信号は、例えば、第1学習と第2学習を交互に実行するように学習モードを制御する信号とすることができる。また、制御信号は、例えば、第1学習と第2学習を所定の方法で混在させながら両学習を実行するように学習モードを制御する信号とすることができる。この場合、第1学習の実行回数と第2学習の実行回数は、異なる値となってもよい。
【0087】
S220において、学習部220は、第1学習データと、当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標と、第2学習データと、S210において出力された制御信号とを入力とし、制御信号が指定する学習が第1学習である場合は、第1学習データと当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標を用いて、音響信号から音響信号に対応する潜在変数を生成する音響信号エンコーダと、潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から音響信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)とを学習し、制御信号が指定する学習が第2学習である場合は、第2学習データを用いて言語Liデコーダ(i=1, 2)を学習し、音響信号エンコーダと言語Liデコーダ(i=1, 2)の組である言語Li生成モデル(i=1, 2)を、終了条件判定部230が終了条件を判定するために必要な情報(例えば、学習を行った回数)とともに出力する。学習部220は、実行する学習が第1学習、第2学習のいずれであっても、1エポックを単位として学習を実行する。また、学習部220は、データ生成モデル学習装置100で用いた誤差関数LCSCGと同様に定義される誤差関数LCSCG (i)(i=1, 2)を用いて誤差逆伝播法により言語Li生成モデル(i=1, 2)を学習する。ここで、誤差関数LCSCG (i)は、言語Li生成モデルの学習に用いられる誤差関数である。
【0088】
S230において、終了条件判定部230は、S220において出力された言語Li生成モデル(i=1, 2)と終了条件を判定するために必要な情報とを入力とし、学習の終了に関する条件である終了条件が満たされている(例えば、学習を行った回数が所定の繰り返し回数に達している)か否かを判定し、終了条件が満たされている場合は、言語Li生成モデル(i=1, 2)を出力して、処理を終了する一方、終了条件が満たされていない場合は、S210の処理に戻る。
【0089】
《データ生成モデル学習装置250》
データ生成モデル学習装置250は、学習データを用いて、学習対象となる言語Li生成モデル(i=1, 2)を学習する。データ生成モデル学習装置250は、第1学習データを用いる第1学習のみを実行する点において、データ生成モデル学習装置200と異なる。
【0090】
以下、図15図16を参照してデータ生成モデル学習装置250を説明する。図15は、データ生成モデル学習装置250の構成を示すブロック図である。図16は、データ生成モデル学習装置250の動作を示すフローチャートである。図15に示すようにデータ生成モデル学習装置250は、学習部220と、終了条件判定部230と、記録部290を含む。記録部290は、データ生成モデル学習装置250の処理に必要な情報を適宜記録する構成部である。
【0091】
図16に従いデータ生成モデル学習装置250の動作について説明する。データ生成モデル学習装置250は、第1学習データと当該第1学習データの要素である言語Li(i=1,2)の自然言語表現に対する指標とを入力とし、言語Li生成モデル(i=1, 2)を出力する。なお、第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標については、入力とする代わりに、学習部220において、第1学習データの要素である言語Li(i=1, 2)の自然言語表現から求めるようにしてもよい。
【0092】
S220において、学習部220は、第1学習データと、当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標とを入力とし、第1学習データと当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標を用いて、音響信号エンコーダと言語Liデコーダ(i=1, 2)を学習し、音響信号エンコーダと言語Liデコーダ(i=1, 2)の組である言語Li生成モデル(i=1, 2)を、終了条件判定部230が終了条件を判定するために必要な情報(例えば、学習を行った回数)とともに出力する。学習部220は、例えば、1エポックを単位として学習を実行する。また、学習部220は、誤差関数LCSCG (i)を用いて誤差逆伝播法により言語Li生成モデルを学習する。
【0093】
S230において、終了条件判定部230は、S220において出力された言語Li生成モデル(i=1, 2)と終了条件を判定するために必要な情報とを入力とし、学習の終了に関する条件である終了条件が満たされている(例えば、学習を行った回数が所定の繰り返し回数に達している)か否かを判定し、終了条件が満たされている場合は、言語Li生成モデル(i=1, 2)を出力して、処理を終了する一方、終了条件が満たされていない場合は、S220の処理に戻る。
【0094】
《潜在変数生成モデル学習装置300》
潜在変数生成モデル学習装置300は、学習データを用いて、学習対象となる潜在変数生成モデルを学習する。ここで、学習データは、データ生成モデル学習装置200またはデータ生成モデル学習装置250を用いて学習した言語Li生成モデル(i=1, 2)を用いて、音響信号から生成した、当該音響信号に対応する言語Li(i=1, 2)の自然言語表現と当該音響信号に対応する潜在変数との組(以下、教師あり学習データという)である。また、潜在変数生成モデルは、言語Li(i=1, 2)の自然言語表現から言語Li(i=1, 2)の自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)である。なお、言語Liエンコーダには、時系列データを処理することができる任意のニューラルネットワークを用いることができる。
【0095】
以下、図17図18を参照して潜在変数生成モデル学習装置300を説明する。図17は、潜在変数生成モデル学習装置300の構成を示すブロック図である。図18は、潜在変数生成モデル学習装置300の動作を示すフローチャートである。図17に示すように潜在変数生成モデル学習装置300は、学習部320と、終了条件判定部330と、記録部390を含む。記録部390は、潜在変数生成モデル学習装置300の処理に必要な情報を適宜記録する構成部である。記録部390は、例えば、教師あり学習データを学習開始前に記録しておく。
【0096】
図18に従い潜在変数生成モデル学習装置300の動作について説明する。潜在変数生成モデル学習装置300は、教師あり学習データを入力とし、潜在変数生成モデルを出力する。入力された教師あり学習データは、上述の通り、例えば、記録部390に記録しておく。
【0097】
S320において、学習部320は、記録部390に記録した教師あり学習データを入力とし、当該教師あり学習データを用いた教師あり学習により、言語Li(i=1, 2)の自然言語表現から言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)を潜在変数生成モデルとして学習し、言語Liエンコーダ(i=1, 2)を、終了条件判定部330が終了条件を判定するために必要な情報(例えば、学習を行った回数)とともに出力する。学習部320は、例えば、1エポックを単位として学習を実行する。また、学習部320は、所定の誤差関数L (i)を用いて誤差逆伝播法により言語Liエンコーダ(i=1, 2)を潜在変数生成モデルとして学習する。
【0098】
S330において、終了条件判定部330は、S320において出力された言語Liエンコーダ(i=1, 2)と終了条件を判定するために必要な情報とを入力とし、学習の終了に関する条件である終了条件が満たされている(例えば、学習を行った回数が所定の繰り返し回数に達している)か否かを判定し、終了条件が満たされている場合は、潜在変数生成モデル(つまり、言語L1エンコーダと言語L2エンコーダの組)を出力して、処理を終了する一方、終了条件が満たされていない場合は、S320の処理に戻る。
【0099】
《翻訳データ生成装置400》
翻訳データ生成装置400は、潜在変数生成モデル学習装置300を用いて学習した言語L1エンコーダと、データ生成モデル学習装置200またはデータ生成モデル学習装置250を用いて学習した言語L2デコーダとを用いて、言語L1の自然言語表現から、言語L2の自然言語表現を生成する。つまり、翻訳データ生成装置400は言語L1の自然言語表現を言語L2の自然言語表現に翻訳する。ここで、潜在変数生成モデル学習装置300を用いて学習した言語L1エンコーダを学習済み言語L1エンコーダともいう。また、データ生成モデル学習装置200またはデータ生成モデル学習装置250を用いて学習した言語L2デコーダを学習済み言語L2デコーダともいう。なお、潜在変数生成モデル学習装置300以外の潜在変数生成モデル学習装置を用いて学習した言語L1エンコーダや、データ生成モデル学習装置200、データ生成モデル学習装置250以外のデータ生成モデル学習装置を用いて学習した言語L2デコーダを用いてもよいのはもちろんである。
【0100】
以下、図19図20を参照して翻訳データ生成装置400を説明する。図19は、翻訳データ生成装置400の構成を示すブロック図である。図20は、翻訳データ生成装置400の動作を示すフローチャートである。図19に示すように翻訳データ生成装置400は、潜在変数生成部410と、指標計算部420と、自然言語表現生成部430と、記録部490を含む。記録部490は、翻訳データ生成装置400の処理に必要な情報を適宜記録する構成部である。記録部490は、例えば、学習済み言語L1エンコーダ、学習済み言語L2デコーダを事前に記録しておく。
【0101】
図20に従い翻訳データ生成装置400の動作について説明する。翻訳データ生成装置400は、言語L1の自然言語表現を入力とし、言語L2の自然言語表現を出力する。
【0102】
S410において、潜在変数生成部410は、言語L1の自然言語表現を入力とし、言語L1の自然言語表現から、言語L1エンコーダを用いて、言語L1の自然言語表現に対応する潜在変数を生成し、出力する。
【0103】
S420において、指標計算部420は、言語L1の自然言語表現を入力とし、言語L1の自然言語表現から、言語L1の自然言語表現に対する指標を計算し、出力する。自然言語表現に対する指標には、第1実施形態で説明したそれを用いるとよい。
【0104】
S430において、自然言語表現生成部430は、S410において出力された潜在変数とS420において出力された言語L1の自然言語表現に対する指標を入力とし、潜在変数と言語L1の自然言語表現に対する指標から、言語L2デコーダを用いて、言語L1の自然言語表現に対応する言語L2の自然言語表現を生成し、出力する。
【0105】
以上の議論は、Nを3以上の整数としても成り立つものである。したがって、言語Liエンコーダと言語Ljデコーダ(ただし、i≠j)とを用いると、言語Liの自然言語表現から、言語Ljの自然言語表現を生成する翻訳データ生成装置を構成することができる。これにより、任意の言語間の翻訳が可能になる。
【0106】
本発明の実施形態によれば、自然言語表現に対する指標を補助入力とし、音響信号から、当該音響信号に対応する言語Liの自然言語表現を生成する言語Li生成モデルを学習することが可能となる。本発明の実施形態によれば、言語Liの自然言語表現から言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダを学習することが可能となる。本発明の実施形態によれば、音を用いて精度のよい翻訳が可能となる。
【0107】
<変形例>
データ生成モデル学習装置200、データ生成モデル学習装置250、潜在変数生成モデル学習装置300、翻訳データ生成装置400では音響信号を用いたが、音響信号の代わりに、例えば、画像を用いることもできる。さらに言えば、人間の五感、つまり、聴覚、視覚、味覚、嗅覚、触覚に相当するセンサを用いて得られた信号(以下、感覚情報に基づく信号という)を用いて、翻訳データ生成装置を構成することができる。
【0108】
以下、感覚情報に基づく信号を用いるデータ生成モデル学習装置、潜在変数生成モデル学習装置、翻訳データ生成装置について説明する。
【0109】
《データ生成モデル学習装置500》
データ生成モデル学習装置500は、学習データを用いて、学習対象となる言語Li生成モデル(i=1, 2)を学習する。ここで、学習データには、感覚情報に基づく信号と当該信号に対応する言語L1の自然言語表現と当該信号に対応する言語L2の自然言語表現の組である第1学習データと自然言語表現に対する指標と当該指標に対応する言語Liの自然言語表現(i=1, 2)の組である第2学習データがある。なお、1つの感覚情報に基づく信号に対応する言語L1の自然言語表現と言語L2の自然言語表現は、互いに翻訳された自然言語表現であるという関係にある。また、言語Li生成モデル(i=1, 2)は、感覚情報に基づく信号と自然言語表現に対する指標に関する条件を入力とし、当該信号に対応する言語Liの自然言語表現を生成し、出力する関数のことであり、感覚情報に基づく信号から感覚情報に基づく信号に対応する潜在変数を生成する信号エンコーダと、潜在変数と自然言語表現に対する指標に関する条件から感覚情報に基づく信号に対応する言語Liの自然言語表現を生成する言語Liデコーダとの組である。なお、信号エンコーダ、言語Liデコーダには、感覚情報に基づく信号を処理することができる任意のニューラルネットワークを用いることができる。
【0110】
以下、図13図14を参照してデータ生成モデル学習装置500を説明する。図13は、データ生成モデル学習装置500の構成を示すブロック図である。図14は、データ生成モデル学習装置500の動作を示すフローチャートである。図13に示すようにデータ生成モデル学習装置500は、学習モード制御部510と、学習部520と、終了条件判定部530と、記録部590を含む。記録部590は、データ生成モデル学習装置500の処理に必要な情報を適宜記録する構成部である。記録部590は、例えば、学習データを学習開始前に記録しておく。
【0111】
図14に従いデータ生成モデル学習装置500の動作について説明する。データ生成モデル学習装置500は、第1学習データと当該第1学習データの要素である言語Li(i=1,2)の自然言語表現に対する指標と第2学習データとを入力とし、言語Li生成モデル(i=1, 2)を出力する。なお、第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標については、入力とする代わりに、学習部520において、第1学習データの要素である言語Li(i=1, 2)の自然言語表現から求めるようにしてもよい。
【0112】
S510において、学習モード制御部510は、第1学習データと、当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標と、第2学習データとを入力とし、学習部520を制御するための制御信号を生成し、出力する。
【0113】
S520において、学習部520は、第1学習データと、当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標と、第2学習データと、S510において出力された制御信号とを入力とし、制御信号が指定する学習が第1学習である場合は、第1学習データと当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標を用いて、感覚情報に基づく信号から感覚情報に基づく信号に対応する潜在変数を生成する信号エンコーダと、潜在変数と言語Li(i=1, 2)の自然言語表現に対する指標に関する条件から感覚情報に基づく信号に対応する言語Li(i=1, 2)の自然言語表現を生成する言語Liデコーダ(i=1, 2)とを学習し、制御信号が指定する学習が第2学習である場合は、第2学習データを用いて言語Liデコーダ(i=1, 2)を学習し、信号エンコーダと言語Liデコーダ(i=1, 2)の組である言語Li生成モデル(i=1, 2)を、終了条件判定部530が終了条件を判定するために必要な情報(例えば、学習を行った回数)とともに出力する。
【0114】
S530において、終了条件判定部530は、S520において出力された言語Li生成モデル(i=1, 2)と終了条件を判定するために必要な情報とを入力とし、学習の終了に関する条件である終了条件が満たされている(例えば、学習を行った回数が所定の繰り返し回数に達している)か否かを判定し、終了条件が満たされている場合は、言語Li生成モデル(i=1, 2)を出力して、処理を終了する一方、終了条件が満たされていない場合は、S510の処理に戻る。
【0115】
《データ生成モデル学習装置550》
データ生成モデル学習装置550は、学習データを用いて、学習対象となる言語Li生成モデル(i=1, 2)を学習する。データ生成モデル学習装置550は、第1学習データを用いる第1学習のみを実行する点において、データ生成モデル学習装置500と異なる。
【0116】
以下、図15図16を参照してデータ生成モデル学習装置550を説明する。図15は、データ生成モデル学習装置550の構成を示すブロック図である。図16は、データ生成モデル学習装置550の動作を示すフローチャートである。図15に示すようにデータ生成モデル学習装置550は、学習部520と、終了条件判定部530と、記録部590を含む。記録部590は、データ生成モデル学習装置550の処理に必要な情報を適宜記録する構成部である。
【0117】
図16に従いデータ生成モデル学習装置550の動作について説明する。データ生成モデル学習装置550は、第1学習データと当該第1学習データの要素である言語Li(i=1,2)の自然言語表現に対する指標とを入力とし、言語Li生成モデル(i=1, 2)を出力する。なお、第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標については、入力とする代わりに、学習部520において、第1学習データの要素である言語Li(i=1, 2)の自然言語表現から求めるようにしてもよい。
【0118】
S520において、学習部520は、第1学習データと、当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標とを入力とし、第1学習データと当該第1学習データの要素である言語Li(i=1, 2)の自然言語表現に対する指標を用いて、信号エンコーダと言語Liデコーダ(i=1, 2)を学習し、信号エンコーダと言語Liデコーダ(i=1, 2)の組である言語Li生成モデル(i=1, 2)を、終了条件判定部530が終了条件を判定するために必要な情報(例えば、学習を行った回数)とともに出力する。
【0119】
S530において、終了条件判定部530は、S520において出力された言語Li生成モデル(i=1, 2)と終了条件を判定するために必要な情報とを入力とし、学習の終了に関する条件である終了条件が満たされている(例えば、学習を行った回数が所定の繰り返し回数に達している)か否かを判定し、終了条件が満たされている場合は、言語Li生成モデル(i=1, 2)を出力して、処理を終了する一方、終了条件が満たされていない場合は、S520の処理に戻る。
【0120】
《潜在変数生成モデル学習装置600》
潜在変数生成モデル学習装置600は、学習データを用いて、学習対象となる潜在変数生成モデルを学習する。ここで、学習データは、データ生成モデル学習装置500またはデータ生成モデル学習装置550を用いて学習した言語Li生成モデル(i=1, 2)を用いて、感覚情報に基づく信号から生成した、当該信号に対応する言語Li(i=1, 2)の自然言語表現と当該信号に対応する潜在変数との組(以下、教師あり学習データという)である。また、潜在変数生成モデルは、言語Li(i=1, 2)の自然言語表現から言語Li(i=1, 2)の自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)である。なお、言語Liエンコーダには、感覚情報に基づく信号を処理することができる任意のニューラルネットワークを用いることができる。
【0121】
以下、図17図18を参照して潜在変数生成モデル学習装置600を説明する。図17は、潜在変数生成モデル学習装置600の構成を示すブロック図である。図18は、潜在変数生成モデル学習装置600の動作を示すフローチャートである。図17に示すように潜在変数生成モデル学習装置600は、学習部620と、終了条件判定部630と、記録部690を含む。記録部690は、潜在変数生成モデル学習装置600の処理に必要な情報を適宜記録する構成部である。記録部690は、例えば、教師あり学習データを学習開始前に記録しておく。
【0122】
図18に従い潜在変数生成モデル学習装置600の動作について説明する。潜在変数生成モデル学習装置600は、教師あり学習データを入力とし、潜在変数生成モデルを出力する。入力された教師あり学習データは、上述の通り、例えば、記録部690に記録しておく。
【0123】
S620において、学習部620は、記録部690に記録した教師あり学習データを入力とし、当該教師あり学習データを用いた教師あり学習により、言語Li(i=1, 2)の自然言語表現から言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダ(i=1, 2)を潜在変数生成モデルとして学習し、言語Liエンコーダ(i=1, 2)を、終了条件判定部630が終了条件を判定するために必要な情報(例えば、学習を行った回数)とともに出力する。
【0124】
S630において、終了条件判定部630は、S620において出力された言語Liエンコーダ(i=1, 2)と終了条件を判定するために必要な情報とを入力とし、学習の終了に関する条件である終了条件が満たされている(例えば、学習を行った回数が所定の繰り返し回数に達している)か否かを判定し、終了条件が満たされている場合は、潜在変数生成モデル(つまり、言語L1エンコーダと言語L2エンコーダの組)を出力して、処理を終了する一方、終了条件が満たされていない場合は、S620の処理に戻る。
【0125】
《翻訳データ生成装置700》
翻訳データ生成装置700は、潜在変数生成モデル学習装置600を用いて学習した言語L1エンコーダと、データ生成モデル学習装置500またはデータ生成モデル学習装置550を用いて学習した言語L2デコーダとを用いて、言語L1の自然言語表現から、言語L2の自然言語表現を生成する。つまり、翻訳データ生成装置700は言語L1の自然言語表現を言語L2の自然言語表現に翻訳する。ここで、潜在変数生成モデル学習装置600を用いて学習した言語L1エンコーダを学習済み言語L1エンコーダともいう。また、データ生成モデル学習装置500またはデータ生成モデル学習装置550を用いて学習した言語L2デコーダを学習済み言語L2デコーダともいう。なお、潜在変数生成モデル学習装置600以外の潜在変数生成モデル学習装置を用いて学習した言語L1エンコーダや、データ生成モデル学習装置500、データ生成モデル学習装置550以外のデータ生成モデル学習装置を用いて学習した言語L2デコーダを用いてもよいのはもちろんである。
【0126】
以下、図19図20を参照して翻訳データ生成装置700を説明する。図19は、翻訳データ生成装置700の構成を示すブロック図である。図20は、翻訳データ生成装置700の動作を示すフローチャートである。図19に示すように翻訳データ生成装置700は、潜在変数生成部710と、指標計算部720と、自然言語表現生成部730と、記録部790を含む。記録部790は、翻訳データ生成装置700の処理に必要な情報を適宜記録する構成部である。記録部790は、例えば、学習済み言語L1エンコーダ、学習済み言語L2デコーダを事前に記録しておく。
【0127】
図20に従い翻訳データ生成装置700の動作について説明する。翻訳データ生成装置700は、言語L1の自然言語表現を入力とし、言語L2の自然言語表現を出力する。
【0128】
S710において、潜在変数生成部710は、言語L1の自然言語表現を入力とし、言語L1の自然言語表現から、言語L1エンコーダを用いて、言語L1の自然言語表現に対応する潜在変数を生成し、出力する。
【0129】
S720において、指標計算部720は、言語L1の自然言語表現を入力とし、言語L1の自然言語表現から、言語L1の自然言語表現に対する指標を計算し、出力する。
【0130】
S730において、自然言語表現生成部730は、S710において出力された潜在変数とS720において出力された言語L1の自然言語表現に対する指標を入力とし、潜在変数と言語L1の自然言語表現に対する指標から、言語L2デコーダを用いて、言語L1の自然言語表現に対応する言語L2の自然言語表現を生成し、出力する。
【0131】
本発明の実施形態によれば、自然言語表現に対する指標を補助入力とし、感覚情報に基づく信号から、当該信号に対応する言語Liの自然言語表現を生成する言語Li生成モデルを学習することが可能となる。本発明の実施形態によれば、言語Liの自然言語表現から言語Liの自然言語表現に対応する潜在変数を生成する言語Liエンコーダを学習することが可能となる。本発明の実施形態によれば、感覚情報に基づく信号を用いて精度のよい翻訳が可能となる。
【0132】
<補記>
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD-ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【0133】
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくこととしてもよい)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。
【0134】
ハードウェアエンティティでは、外部記憶装置(あるいはROMなど)に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(上記、…部、…手段などと表した各構成部)を実現する。
【0135】
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【0136】
既述のように、上記実施形態において説明したハードウェアエンティティ(本発明の装置)における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
【0137】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD-RAM(Random Access Memory)、CD-ROM(Compact Disc Read Only Memory)、CD-R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP-ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
【0138】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【0139】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
【0140】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【0141】
上述の本発明の実施形態の記載は、例証と記載の目的で提示されたものである。網羅的であるという意思はなく、開示された厳密な形式に発明を限定する意思もない。変形やバリエーションは上述の教示から可能である。実施形態は、本発明の原理の最も良い例証を提供するために、そして、この分野の当業者が、熟考された実際の使用に適するように本発明を色々な実施形態で、また、色々な変形を付加して利用できるようにするために、選ばれて表現されたものである。すべてのそのような変形やバリエーションは、公正に合法的に公平に与えられる幅にしたがって解釈された添付の請求項によって定められた本発明のスコープ内である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20