(57)【要約】【課題】データの多義性を考慮して、異なるモダリティに属するデータの類似度を算出できるようにする。【解決手段】実施形態の情報処理装置は、第１入力部と第２入力部と第１変換部と第２変換部と算出部とを備える。第１入力部は、第１のモダリティに属する第１のデータの入力を受け付ける。第２入力部は、前記第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付ける。第１変換部は、前記第１のデータを、Ｄ（Ｄは自然数）次元ベクトル空間内の点又は第１の領域を表す第１の表現に変換する。第２変換部は、前記第２のデータを、前記Ｄ次元ベクトル空間内の第２の領域を表す第２の表現に変換する。算出部は、前記第１の表現と前記第２の表現とを用いて、前記第１のデータと前記第２のデータとの間の類似度を算出する。【選択図】図１
2020086692.tif 000002
【特許請求の範囲】
【請求項１】
第１のモダリティに属する第１のデータの入力を受け付ける第１入力部と、
前記第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付ける第２入力部と、
前記第１のデータを、Ｄ（Ｄは自然数）次元ベクトル空間内の点又は第１の領域を表す第１の表現に変換する第１変換部と、
前記第２のデータを、前記Ｄ次元ベクトル空間内の第２の領域を表す第２の表現に変換する第２変換部と、
前記第１の表現と前記第２の表現とを用いて、前記第１のデータと前記第２のデータとの間の類似度を算出する算出部と、
を備える情報処理装置。
【請求項２】
前記第１及び第２の領域のそれぞれは、前記Ｄ次元ベクトル空間上の少なくとも１つ以上の超平面によって区分された領域、及び、前記Ｄ次元ベクトル空間のＫ（ＫはＤより小さい自然数）次元部分空間の少なくとも一方である、
請求項１に記載の情報処理装置。
【請求項３】
前記類似度は、前記第１の表現と前記第２の表現との間の距離が大きいほど、単調非増加する値である、
請求項１又は２に記載の情報処理装置。
【請求項４】
前記類似度は、前記第１の表現が点の場合、前記第２の領域の外側と、前記点との距離が大きいほど、単調非減少する値である、
請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記類似度は、前記第１の表現が第１の領域の場合、前記第１の領域と前記第２の領域との重なり度合いが大きいほど、単調非減少する値である、
請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記Ｄ次元ベクトル空間は、ユークリッド空間である、
請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記第１及び第２のモダリティのそれぞれは、視覚情報、音声情報、環境音情報、言語情報、動き情報、生体情報又はセンサ情報である、
請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
第１のモダリティに属する第１のデータの入力を受け付けるステップと、
前記第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付けるステップと、
前記第１のデータを、Ｄ（Ｄは自然数）次元ベクトル空間内の点又は第１の領域を表す第１の表現に変換するステップと、
前記第２のデータを、前記Ｄ次元ベクトル空間内の第２の領域を表す第２の表現に変換するステップと、
前記第１の表現と前記第２の表現とを用いて、前記第１のデータと前記第２のデータとの間の類似度を算出するステップと、
を含む情報処理方法。
【請求項９】
前記第１及び第２の領域のそれぞれは、前記Ｄ次元ベクトル空間上の少なくとも１つ以上の超平面によって区分された領域、及び、前記Ｄ次元ベクトル空間のＫ（ＫはＤより小さい自然数）次元部分空間の少なくとも一方である、
請求項８に記載の情報処理方法。
【請求項１０】
前記類似度は、前記第１の表現と前記第２の表現との間の距離が大きいほど、単調非増加する値である、
請求項８又は９に記載の情報処理方法。
【請求項１１】
前記類似度は、前記第１の表現が点の場合、前記第２の領域の外側と、前記点との距離が大きいほど、単調非減少する値である、
請求項８乃至１０のいずれか１項に記載の情報処理方法。
【請求項１２】
前記類似度は、前記第１の表現が第１の領域の場合、前記第１の領域と前記第２の領域との重なり度合いが大きいほど、単調非減少する値である、
請求項８乃至１１のいずれか１項に記載の情報処理方法。
【請求項１３】
前記Ｄ次元ベクトル空間は、ユークリッド空間である、
請求項８乃至１２のいずれか１項に記載の情報処理方法。
【請求項１４】
前記第１及び第２のモダリティのそれぞれは、視覚情報、音声情報、環境音情報、言語情報、動き情報、生体情報又はセンサ情報である、
請求項８乃至１３のいずれか１項に記載の情報処理方法。
【請求項１５】
コンピュータを、
第１のモダリティに属する第１のデータの入力を受け付ける第１入力部と、
前記第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付ける第２入力部と、
前記第１のデータを、Ｄ（Ｄは自然数）次元ベクトル空間内の点又は第１の領域を表す第１の表現に変換する第１変換部と、
前記第２のデータを、前記Ｄ次元ベクトル空間内の第２の領域を表す第２の表現に変換する第２変換部と、
前記第１の表現と前記第２の表現とを用いて、前記第１のデータと前記第２のデータとの間の類似度を算出する算出部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
テキストを入力して画像を検索する、あるいは画像を入力してテキストを検索するといったように、あるモダリティのデータを入力として、異なるモダリティのデータを検索するクロスモーダル検索が従来から知られている。高精度なクロスモーダル検索を行うためには、何らかの手段で、互いに異なるモダリティに属するデータ間の類似度を適切に算出することが重要である。
【０００３】
しかしながら、従来の技術では、各モダリティのデータを共通空間上の１点に埋め込んで類似度を算出していた。そのため、従来の技術では、データの多義性を考慮して、異なるモダリティに属するデータの類似度を算出することができなかった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１３４１７５号公報
【非特許文献】
【０００５】
【非特許文献１】Ｌ．Ｗａｎｇ，Ｙ．Ｌｉ，Ｊ．Ｈｕａｎｇ  ａｎｄ  Ｓ．Ｌａｚｅｂｎｉｋ，Ｌｅａｒｎｉｎｇ  Ｔｗｏ−Ｂｒａｎｃｈ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ  ｆｏｒ  Ｉｍａｇｅ−Ｔｅｘｔ  ｍａｔｃｈｉｎｇ，ＰＡＭＩ，２０１８．（ＤＯＩ：１０．１１０９／ＴＰＡＭＩ．２０１８．２７９７９２１）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、データの多義性を考慮して、異なるモダリティに属するデータの類似度を算出することができる情報処理装置、情報処理方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００７】
実施形態の情報処理装置は、第１入力部と第２入力部と第１変換部と第２変換部と算出部とを備える。第１入力部は、第１のモダリティに属する第１のデータの入力を受け付ける。第２入力部は、前記第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付ける。第１変換部は、前記第１のデータを、Ｄ（Ｄは自然数）次元ベクトル空間内の点又は第１の領域を表す第１の表現に変換する。第２変換部は、前記第２のデータを、前記Ｄ次元ベクトル空間内の第２の領域を表す第２の表現に変換する。算出部は、前記第１の表現と前記第２の表現とを用いて、前記第１のデータと前記第２のデータとの間の類似度を算出する。
【図面の簡単な説明】
【０００８】
【図１】実施形態の情報処理装置の機能構成の例を示す図。
【図２】従来の類似度算出方法の例を示す図。
【図３】実施形態の類似度算出方法の例を示す図。
【図４Ａ】実施形態の領域同士の距離ｄ１の例を示す図。
【図４Ｂ】実施形態の点と領域との距離ｄ１の例を示す図。
【図５】実施形態の点と領域との距離ｄ２の例を示す図。
【図６】実施形態の情報処理方法の例を示すフローチャート。
【図７】実施形態の情報処理装置のハードウェア構成の例を示す図。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、情報処理装置、情報処理方法及びプログラムの実施形態を詳細に説明する。
【００１０】
［機能構成の例］
図１は実施形態の情報処理装置１０の機能構成の例を示す図である。実施形態の情報処理装置１０は、第１入力部１１と、第２入力部１２と、第１変換部１３と、第２変換部１４と、算出部１５とを備える。
【００１１】
第１入力部１１は、第１のモダリティに属する第１のデータの入力を受け付ける。ここで、モダリティとは、ある種の情報（あるいは、その情報を表現するための形式）のことである。具体的には、モダリティは、例えば視覚情報、音声情報、環境音情報、言語情報（テキスト）、動き情報、生体情報、及び、センサ情報等である。視覚情報は、例えば静止画及び動画等である。動き情報は、モーションキャプチャデータ、及び、画像のオプティカルフロー等である。生体情報は、例えば脈拍等である。センサ情報は、例えば触覚情報、匂い情報、及び、機械の状態を表す情報等である。
【００１２】
第１のモダリティは、上述の任意の１つのモダリティを指す。第１のデータの形式は、第１のモダリティの種類によって変わるが、基本的にはテンソルデータである。例えば、グレイスケールの静止画は、２次元テンソルデータで表現できる。また例えば、グレイスケールの動画は、３次元テンソルデータで表現できる。また例えば、音声情報及び環境音情報は、１次元テンソルデータで表現できる。
【００１３】
他のモダリティに関しても同様にテンソルデータで表現できる。モダリティをテンソルデータで表現する方法について、言語情報（テキスト）を具体例にして補足する。テキストデータの例は、例えば“Ａ  ｂｉｒｄ  ｉｓ  ｆｌｙｉｎｇ  ｏｖｅｒ  ｔｈｅ  ｓｅａ．”である。もちろん、“Ａ  ｂｉｒｄ  ｉｓ  ｆｌｙｉｎｇ  ｏｖｅｒ  ｔｈｅ  ｓｅａ．”はテンソルデータではないので、テンソルデータへ変換する手段が必要となる。この変換には、一般によく知られたＷｏｒｄ２Ｖｅｃモデル及びＳｅｎｔｅｎｃｅ２Ｖｅｃ（あるいはＤｏｃ２Ｖｅｃモデル）等を用いることができる。
【００１４】
Ｗｏｒｄ２Ｖｅｃモデルは、単語をベクトル表現に変換するモデルである。Ｓｅｎｔｅｎｃｅ２Ｖｅｃは、文章をベクトル表現に変換するモデルである。
【００１５】
なお、第１入力部１１は、第１のデータの入力をテンソルデータとして受け付けてもよい。また、第１のデータがテキストデータ等の場合には、第１入力部１１が、第１のデータをテンソルデータに変換してもよい。
【００１６】
第２入力部１２は、第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付ける。例えば、第１のモダリティが静止画であれば、第２のモダリティは静止画以外のモダリティの何れかである（例えば、テキストデータ）。
【００１７】
第１変換部１３は、第１のデータを、Ｄ（Ｄは自然数）次元ベクトル空間内の点又は第１の領域を表す第１の表現Ｘに変換する。Ｄ次元ベクトル空間は、例えばユークリッド空間である。実施形態の説明では、Ｄ次元ベクトル空間がユークリッド空間である場合について説明する。
【００１８】
第１の表現Ｘが点を表す場合、第１の表現Ｘは下記式（１）により表される。
【００１９】
【数１】
2020086692.tif 000003
【００２０】
ここでＴは、ベクトルの転置を示す。また、ＲＤは、Ｄ次元ユークリッド空間を示す。
【００２１】
次に、第１の表現Ｘが領域を表す場合について説明する。実施形態では、第１の表現Ｘが領域を表す場合、Ｄ次元ユークリッド空間内の領域として表される。
【００２２】
領域による表現では、点による表現と異なり、パラメトリックに表現可能な様々なモデルを用いることができる。領域による表現は、例えば超平面、超多面体、超球、及び、これらの補集合等である。また例えば、領域による表現は、Ｋ本（ＫはＤより小さい自然数）の基底で張られるＫ次元部分空間でもよい。また例えば、領域による表現は、超平面によって区分された領域でもよく、これは下記式（２）により表現される。
【００２３】
【数２】
2020086692.tif 000004
【００２４】
ここで、θ及びｂは超平面を定めるパラメータである。さらに、領域による表現は、前述した領域による表現を複数用意し、それらを和集合あるいは積集合として組み合わせることにより表されてもよい。組み合わされる領域は、同一種類のモデルでも異なる種類のモデルでもよい。具体的には、例えば３個の超平面の積集合でもよいし、超多面体及び超球の和集合でもよい。
【００２５】
また、第１のデータから第１の表現Ｘへの変換には、ニューラルネットワークモデルの一種であるエンコーダモデルを用いればよい。例えば、上述の式（２）の領域表現を用いる場合であれば、（θＴ，ｂ）Ｔの合計Ｄ＋１個のパラメータを出力するエンコーダモデルを用いればよい。また、Ｋ次元部分空間を領域表現として用いる場合であれば、Ｋ×Ｄ個のパラメータを出力するエンコーダモデルを用いればよい。
【００２６】
一方、第２変換部１４では、第２のデータを、Ｄ次元ベクトル空間内の第２の領域を表す第２の表現Ｙに変換する。実施形態の説明では、Ｄ次元ベクトル空間は、Ｄ次元ユークリッド空間である。第２の領域の説明については、第１の領域の説明と同様なので省略する。
【００２７】
ここで、領域による表現の利点について、例を用いて説明する。
【００２８】
図２は従来の類似度算出方法の例を示す図である。図２は、各モダリティのデータを共通空間上の１点に埋め込んで類似度が算出される場合の例を示す。図２の例では、第１のモダリティが静止画２１及び２２であり、第２のモダリティがテキスト３１〜３３である。
【００２９】
静止画２１は、第１の表現Ｘ１に対応する。静止画２２は、第１の表現Ｘ２に対応する。テキスト３１は、第２の表現Ｙ１に対応する。テキスト３２は、第２の表現Ｙ２に対応する。テキスト３３は、第２の表現Ｙ３に対応する。図２の例では、第１の表現Ｘ１及びＸ２、並びに、第２の表現Ｙ１〜Ｙ３は、３次元ユークリッド空間により表された共通空間上の点である。
【００３０】
静止画２１に含まれる鳥の羽の色は、黒いが、静止画２２に含まれる鳥の羽の色は黒ではない。したがって、テキスト３１は、静止画２１及び２２の両方に対応する。一方、テキスト３２及び３３は、静止画２１に対応するが、静止画２２には対応しない。対応するペアの類似度を高くし、かつ、対応しないペアの類似度は低くすることは、従来の点による表現では難しい。具体的には、図２のような例では、例えば点同士の距離に応じて類似度を定める場合、対応するペアの類似度を高くし、かつ、対応しないペアの類似度は低くなるようにすることが難しい。
【００３１】
図３は実施形態の類似度算出方法の例を示す図である。図３は、第２変換部１４が、テキスト３１〜３３を点による表現ではなく、領域による表現に変換した場合の例を示す。
【００３２】
静止画２１は、第１の表現Ｘ１に対応する。静止画２２は、第１の表現Ｘ２に対応する。テキスト３１は、第２の表現Ｙ１に対応する。テキスト３２は、第２の表現Ｙ２に対応する。テキスト３３は、第２の表現Ｙ３に対応する。図３の例では、第１の表現Ｘ１及びＸ２は、３次元ユークリッド空間により表された共通空間上の点である。一方、第２の表現Ｙ１〜Ｙ３は、３次元ユークリッド空間により表された共通空間上の領域である。
【００３３】
第２の表現Ｙ１〜Ｙ３を領域により表現した場合には、上述の図２で説明した対応関係を満たしていることが確認できる。すなわち、テキスト３１を表す第２の表現Ｙ１は、点により表された第１の表現Ｘ１及びＸ２を含むため、静止画２１及び２２の両方に対応する。一方、テキスト３２を表す第２の表現Ｙ２は、点により表された第１の表現Ｘ１を含むため、静止画２１に対応するが、点により表された第１の表現Ｘ２を含まないため、静止画２２に対応しない。テキスト３３を表す第２の表現Ｙ３についても、テキスト３２を表す第２の表現Ｙ２と同様である。
【００３４】
図３の例に示すような性質を満たす点表現及び領域表現は、例えば前述のエンコーダモデルを、機械学習を用いて最適化することで得られる。すなわち、類似度を高くしたい第１のデータと第２のデータとのペアについて、類似度が高くなるようにエンコーダモデルのパラメータを最適化する。さらに同時に、類似度を低くしたいペアについては、類似度が低くなるように最適化することを行ってもよい。最適化には、確率的勾配法などが利用できる。
【００３５】
図１に戻り、算出部１５は、第１の表現Ｘと第２の表現Ｙとを用いて、第１のデータと第２のデータとの間の類似度ｓを算出する。類似度ｓは、例えば第１の表現Ｘと第２の表現Ｙとの間の距離ｄ１が大きいほど単調非増加する値である。距離ｄ１に関して単調非増加する値は、最も単純にはｓ＝−ｄ１であるが、もちろんこれ以外にも無数に存在する。なお、単調非増加は、ｄ１＜ｄ１’ならば、ｓ（ｄ１）≧ｓ（ｄ１’）であることを示す。ここで、ｓ（ｄ１）は、ｄ１に基づいて定められる類似度を示し、ｓ（ｄ１’）は、ｄ１’に基づいて定められる類似度を示す。
【００３６】
第１の表現Ｘと第２の表現Ｙとが領域により表現されている場合、距離ｄ１は、次式（３）で表される。
【００３７】
【数３】
2020086692.tif 000005
【００３８】
なお、｜ｘ｜２は、ｘのＬ２ノルムを表す。
【００３９】
図４Ａは実施形態の領域同士の距離ｄ１の例を示す図である。図４Ａの例は、上述の数式（３）による距離ｄ１を示す。
【００４０】
第１の表現Ｘが点による表現され、第２の表現Ｙが領域により表現される場合、点を表すベクトルをｘとすれば、上述の数式（３）は次式（４）の通り簡単になる。
【００４１】
【数４】
2020086692.tif 000006
【００４２】
図４Ｂは実施形態の点と領域との距離ｄ１の例を示す図である。図４Ｂの例は、上述の数式（４）による距離ｄ１を示す。
【００４３】
上述の数式（３）及び（４）から分かるように、距離ｄ１は、第１の表現Ｘが第２の表現Ｙに含まれる場合は０となるため、従来の場合（図２参照）に比べて距離が０となる確率が格段に高い。図４Ａ及びＢの距離ｄ１に応じた類似度を用いてクロスモーダル検索を行うと、距離０（すなわち類似度が最高）のサンプルが複数存在した場合、検索結果の順位に差が付けられないことになる。距離０のサンプルであれば、どれが検索結果として得られてもよいという場合はこのままでよいが、検索結果を順位付けしたい場合は、対策が必要である。この対策に関して、第１の表現Ｘが点表現である場合と、領域表現である場合とに分けて、述べる。
【００４４】
＜第１の表現Ｘが点表現である場合＞
まず、第１の表現Ｘが点の場合、第２の表現Ｙである領域の外側から前記点への距離ｄ２を、下記数式（５）により定義する。
【数５】
2020086692.tif 000007
【００４５】
ここで、Ｖは、Ｄ次元ユークリッド空間全体を表す。
【００４６】
図５は実施形態の点と領域との距離ｄ２の例を示す図である。図５の例は、上述の数式（５）による距離ｄ２を示す。
【００４７】
上述の数式（４）及び（５）から明らかなように、距離ｄ１及びｄ２の何れか片方は０となることに注意する。さらに、下記数式（６）により距離ｄ３を定める。
【００４８】
【数６】
2020086692.tif 000008
【００４９】
距離ｄ３は、距離ｄ１が０となる場合においても距離ｄ２によって０以外の値となり得る。したがって、距離ｄ３が大きいほど単調非増加する値を類似度ｓとして用いることで、前述の検索結果の順位付けの問題を解決できる。この場合における類似度ｓは、第１の表現Ｘと第２の表現Ｙとの間の距離ｄ１が大きいほど単調非増加し、かつ、第２の表現Ｙである領域の外側から第１の表現Ｘである点への距離ｄ２が大きいほど単調非減少する値となっていることに注意する。
【００５０】
＜第１の表現Ｘが領域表現である場合＞
次に、第１の表現Ｘが領域表現の場合について述べる。この場合、第１の表現Ｘ（第１の領域Ｘ）と、第２の表現Ｙ（第２の領域Ｙ）との重なり度合いｒを考える。例えば、重なり度合いｒとして下記数式（７）を用いることができる。
【００５１】
【数７】
2020086692.tif 000009
【００５２】
ここで、｜Ａ｜は集合Ａの体積を表す。
【００５３】
また例えば、重なり度合いｒとして、数式（７）の分母を無くした下記数式（８）を用いてもよい。
【００５４】
【数８】
2020086692.tif 000010
【００５５】
また例えば、重なり度合いｒとして、上述の数式（５）をｘに関して最大化する下記数式（９）を用いてもよい。
【００５６】
【数９】
2020086692.tif 000011
【００５７】
そして、第１の表現Ｘが領域表現の場合は、上述の数式（６）と同様にして、下記数式（１０）により距離ｄ４を定める。
【００５８】
【数１０】
2020086692.tif 000012
【００５９】
距離ｄ４は、距離ｄ１が０となる場合においても重なり度合いｒによって０以外の値となり得る。したがって、距離ｄ４が大きいほど単調非増加する値を類似度ｓとして用いることで、前述の検索結果の順位付けの問題を解決できる。この場合における類似度ｓは、第１の表現Ｘと第２の表現Ｙとの間の距離ｄ１が大きいほど単調非増加し、かつ、第１の表現Ｘ（第１の領域Ｘ）と第２の表現Ｙ（第２の領域Ｙ）との重なり度合いｒが大きいほど単調非減少する値となっていることに注意する。
【００６０】
［情報処理方法の例］
図６は実施形態の情報処理方法の例を示すフローチャートである。はじめに、第１入力部１１が、第１のモダリティに属する第１のデータの入力を受け付ける（ステップ１０１）。次に、第２入力部１２が、第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付ける（ステップ１０２）。
【００６１】
次に、第１変換部１３が、第１のデータを第１の表現Ｘに変換する（ステップ１０３）。次に、第２変換部１４が、第２のデータを第２の表現Ｙに変換する（ステップ１０４）。
【００６２】
次に、算出部１５が、第１の表現Ｘと第２の表現Ｙとを用いて、第１のデータと第２のデータとの間の類似度を算出する（ステップ１０５）。
【００６３】
以上、説明したように、実施形態の情報処理装置１０では、第１入力部１１が、第１のモダリティに属する第１のデータの入力を受け付ける。第２入力部１２が、第１のモダリティとは異なる第２のモダリティに属する第２のデータの入力を受け付ける。第１変換部１３が、第１のデータを、Ｄ（Ｄは自然数）次元ベクトル空間内の点又は第１の領域を表す第１の表現Ｘに変換する。第２変換部１４が、第２のデータを、Ｄ次元ベクトル空間内の第２の領域を表す第２の表現Ｙに変換する。そして、算出部１５が、第１の表現Ｘと第２の表現Ｙとを用いて、第１のデータと第２のデータとの間の類似度ｓを算出する。
【００６４】
これにより実施形態の情報処理装置１０によれば、データの多義性を考慮して、異なるモダリティに属するデータの類似度を算出することができる。具体的には、異なる２つのモダリティのデータのうち少なくとも一方を領域表現に変換して、共通空間（Ｄ次元ベクトル空間）上に埋め込むことにより、データに多義性がある場合においても、適切な類似度算出が可能となる。
【００６５】
最後に、実施形態の情報処理装置１０のハードウェア構成の例について説明する。
【００６６】
［ハードウェア構成の例］
図７は実施形態の情報処理装置１０のハードウェア構成の例を示す図である。
【００６７】
実施形態の情報処理装置１０は、制御装置３０１、主記憶装置３０２、補助記憶装置３０３、表示装置３０４、入力装置３０５及び通信装置３０６を備える。制御装置３０１、主記憶装置３０２、補助記憶装置３０３、表示装置３０４、入力装置３０５及び通信装置３０６は、バス３１０を介して接続されている。
【００６８】
制御装置３０１は、補助記憶装置３０３から主記憶装置３０２に読み出されたプログラムを実行する。主記憶装置３０２は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、及び、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリである。補助記憶装置３０３は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、及び、メモリカード等である。
【００６９】
表示装置３０４は表示情報を表示する。表示装置３０４は、例えば液晶ディスプレイ等である。入力装置３０５は、情報処理装置１０を操作するためのインタフェースである。入力装置３０５は、例えばキーボードやマウス等である。情報処理装置１０がスマートフォン及びタブレット型端末等のスマートデバイスの場合、表示装置３０４及び入力装置３０５は、例えばタッチパネルである。通信装置３０６は、他の装置と通信するためのインタフェースである。
【００７０】
実施形態の情報処理装置１０で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、メモリカード、ＣＤ−Ｒ及びＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等のコンピュータで読み取り可能な記憶媒体に記録されてコンピュータ・プログラム・プロダクトとして提供される。
【００７１】
また実施形態の情報処理装置１０で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また実施形態の情報処理装置１０で実行されるプログラムをダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
【００７２】
また実施形態の情報処理装置１０のプログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【００７３】
実施形態の情報処理装置１０で実行されるプログラムは、上述の機能ブロックのうち、プログラムによっても実現可能な機能ブロックを含むモジュール構成となっている。当該各機能ブロックは、実際のハードウェアとしては、制御装置３０１が記憶媒体からプログラムを読み出して実行することにより、上記各機能ブロックが主記憶装置３０２上にロードされる。すなわち上記各機能ブロックは主記憶装置３０２上に生成される。
【００７４】
なお上述した各機能ブロックの一部又は全部をソフトウェアにより実現せずに、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等のハードウェアにより実現してもよい。
【００７５】
また複数のプロセッサを用いて各機能を実現する場合、各プロセッサは、各機能のうち１つを実現してもよいし、各機能のうち２以上を実現してもよい。
【００７６】
また実施形態の情報処理装置１０の動作形態は任意でよい。実施形態の情報処理装置１０を、例えばネットワーク上のクラウドシステムとして動作させてもよい。
【００７７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７８】
１０  情報処理装置
１１  第１入力部
１２  第２入力部
１３  第１変換部
１４  第２変換部
１５  算出部
３０１  制御装置
３０２  主記憶装置
３０３  補助記憶装置
３０４  表示装置
３０５  入力装置
３０６  通信装置
３１０  バス
【図１】
2020086692.tif 000013
【図２】
2020086692.tif 000014
【図３】
2020086692.tif 000015
【図４Ａ】
2020086692.tif 000016
【図４Ｂ】
2020086692.tif 000017
【図５】
2020086692.tif 000018
【図６】
2020086692.tif 000019
【図７】
2020086692.tif 000020