(57)【要約】【課題】データの特徴を抽出するアルゴリズムをより高速に構築する。【解決手段】特徴量抽出部１３１は、新たに構築する新規アルゴリズムの構築に用いる新規教師データに含まれ、過去に構築された構築済アルゴリズムの構築に用いた過去教師データに含まれない未含有課題データの特徴量を、構築済アルゴリズムを用いて抽出し、未含有課題データに対する正解データとして過去教師データに追加する。類似度算出部１３２は、過去教師データと新規教師データの類似度を算出する。選択部１３３は、教師データの類似度に基づいて、新規アルゴリズムの構築に用いる遺伝子に利用する構築済アルゴリズムを選択し、選択した構築アルゴリズムを利用して、第１世代の遺伝子を生成する。本発明は、音声データの記録再生装置に適用できる。【選択図】図５
2008123180.tif 000002
【特許請求の範囲】
【請求項１】
GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理装置において、
過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度を算出する算出手段と、
前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する選択手段と
を含む情報処理装置。
【請求項２】
前記教師データは、前記入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む
請求項１に記載の情報処理装置。
【請求項３】
前記算出手段は、同じ前記課題データに対する前記過去教師データの前記正解データと前記新規教師データの前記正解データとの類似度を、前記過去教師データと前記新規教師データとの前記類似度として算出する
請求項２に記載の情報処理装置。
【請求項４】
前記新規教師データに含まれ、前記過去教師データに含まれない前記課題データである未含有課題データの特徴を表す特徴量を、前記過去教師データを用いて構築された前記構築済アルゴリズムを用いて抽出し、抽出した前記特徴量を前記未含有データに対する前記正解データとして前記過去教師データに追加する抽出手段を
さらに含み、
前記算出手段は、同じ前記課題データに対する、前記正解データが追加された前記過去教師データの前記正解データと前記新規教師データの前記正解データとの類似度を、前記過去教師データと前記新規教師データとの前記類似度として算出する
請求項３に記載の情報処理装置。
【請求項５】
GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理方法において、
過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度を算出し、
前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する
ステップを含む情報処理方法。
【請求項６】
GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理をコンピュータに実行させるプログラムにおいて、
過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度を算出し、
前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する
ステップを含むプログラム。
【請求項７】
入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理装置において、
新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量を、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出する抽出手段と、
抽出された前記特徴量と前記新規教師データの前記正解データとの類似度を算出する算出手段と、
前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する選択手段と
を含む情報処理装置。
【請求項８】
入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理方法において、
新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量を、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出し、
抽出された前記特徴量と前記新規教師データの前記正解データとの類似度を算出し、
前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する
ステップを含む情報処理方法。
【請求項９】
入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理をコンピュータに実行させるプログラムにおいて、
新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量を、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出し、
抽出された前記特徴量と前記新規教師データの前記正解データとの類似度を算出し、
前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、並びに、プログラムに関し、特に、データの特徴を抽出するアルゴリズムを構築する情報処理装置および方法、並びに、プログラムに関する。
【背景技術】
【０００２】
従来、GA（Genetic Algorithm、遺伝的アルゴリズム）またはGP（Genetic Programming、遺伝的プログラミング）により、与えられたデータ（以下、入力データとも称する）の特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを自動的に構築することが提案されている（例えば、特許文献１参照）。
【０００３】
図１は、GAまたはGPにより入力データの特徴量を抽出する、従来の情報処理装置の構成の例を示すブロック図である。図１の情報処理装置１は、アルゴリズム構築部１１および特徴量抽出部１２を含むように構成される。
【０００４】
アルゴリズム構築部１１は、入力データと同様の形式の課題データと、その課題データから抽出されるべき特徴量、すなわち、その課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GAまたはGPに基づく学習を行うことにより、入力データの所定の特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを自動的に構築する。例えば、教師データは、課題データ、および、課題データが所定の特徴を有するか否かをtrueまたはfalseの２値により表す正解データの組み合わせを含む。
【０００５】
特徴量抽出部１２は、アルゴリズム構築部１１により構築された特徴量抽出アルゴリズムを用いて、入力データの特徴量を抽出し、出力する。
【０００６】
【特許文献１】米国特許出願公報  ＵＳ２００４／０１８１４０１Ａ１
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特徴量抽出アルゴリズムを自動構築する場合、特徴量抽出アルゴリズムを人手により構築し、特徴量抽出アルゴリズムで用いる各種のパラメータのみをGPまたはGAを用いて自動推定する場合と比較して、計算量が膨大になり、特徴量抽出アルゴリズムを構築するまでにより多くの時間を要するときがある。
【０００８】
本発明は、このような状況に鑑みてなされたものであり、データの特徴を抽出するアルゴリズムをより高速に構築できるようにするものである。
【課題を解決するための手段】
【０００９】
本発明の第１の側面の情報処理装置は、GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理装置において、過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度を算出する算出手段と、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する選択手段とが設けられている。
【００１０】
前記教師データは、前記入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含むようにすることができる。
【００１１】
前記算出手段には、同じ前記課題データに対する前記過去教師データの前記正解データと前記新規教師データの前記正解データとの類似度を、前記過去教師データと前記新規教師データとの前記類似度として算出させることができる。
【００１２】
前記新規教師データに含まれ、前記過去教師データに含まれない前記課題データである未含有課題データの特徴を表す特徴量を、前記過去教師データを用いて構築された前記構築済アルゴリズムを用いて抽出し、抽出した前記特徴量を前記未含有データに対する前記正解データとして前記過去教師データに追加する抽出手段をさらに設け、前記算出手段には、同じ前記課題データに対する、前記正解データが追加された前記過去教師データの前記正解データと前記新規教師データの前記正解データとの類似度を、前記過去教師データと前記新規教師データとの前記類似度として算出させることができる。
【００１３】
本発明の第１の側面の情報処理方法またはプログラムは、GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理方法、または、GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理をコンピュータに実行させるプログラムにおいて、過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度を算出し、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択するステップを含む。
【００１４】
本発明の第２の側面の情報処理装置は、入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理装置において、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量を、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出する抽出手段と、抽出された前記特徴量と前記新規教師データの前記正解データとの類似度を算出する算出手段と、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する選択手段とが設けられている。
【００１５】
本発明の第２の側面の情報処理方法またはプログラムは、入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理方法、または、入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理をコンピュータに実行させるプログラムにおいて、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量を、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出し、抽出された前記特徴量と前記新規教師データの前記正解データとの類似度を算出し、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択するステップを含む。
【００１６】
本発明の第１の側面においては、過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度が算出され、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択される。
【００１７】
本発明の第２の側面においては、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量が、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出され、抽出された前記特徴量と前記新規教師データの前記正解データとの類似度が算出され、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムが選択される。
【発明の効果】
【００１８】
本発明の第１の側面または第２の側面によれば、アルゴリズムの構築に用いる遺伝子が選択される。また、本発明の第１の側面または第２の側面によれば、データの特徴を抽出するアルゴリズムをより高速に構築することができる。
【発明を実施するための最良の形態】
【００１９】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２０】
本発明の第１の側面の情報処理装置（例えば、図３のアルゴリズム構築部１１１）は、第１に、GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理装置において、過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度を算出する算出手段（例えば、図５の類似度算出部１３２）と、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する選択手段（例えば、図５の選択部１３３）とを備える。
【００２１】
本発明の第１の側面の情報処理装置は、第２に、前記新規教師データに含まれ、前記過去教師データに含まれない前記課題データである未含有課題データの特徴を表す特徴量を、前記過去教師データを用いて構築された前記構築済アルゴリズムを用いて抽出し、抽出した前記特徴量を前記未含有データに対する前記正解データとして前記過去教師データに追加する抽出手段（例えば、図５の特徴量抽出部１３１）をさらに設け、前記算出手段は、同じ前記課題データに対する、前記正解データが追加された前記過去教師データの前記正解データと前記新規教師データの前記正解データとの類似度を、前記過去教師データと前記新規教師データとの前記類似度として算出するようにすることができる。
【００２２】
本発明の第１の側面の情報処理方法またはプログラムは、GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理方法、または、GP（Genetic Programming）またはGA（Genetic Algorithm）により、入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理をコンピュータに実行させるプログラムにおいて、過去に構築されたアルゴリズムである構築済アルゴリズムの構築に用いた教師データである過去教師データと、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる教師データである新規教師データとの類似度を算出し（例えば、図７のステップＳ６）、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する（例えば、図７のステップＳ８）ステップを含む。
【００２３】
本発明の第２の側面の情報処理装置（例えば、図３のアルゴリズム構築部１１１）は、入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理装置において、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量を、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出する抽出手段（例えば、図５の特徴量抽出部１３１）と、抽出された前記特徴量と前記新規教師データの前記正解データとの類似度を算出する算出手段（例えば、図５の類似度算出部１３２）と、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する選択手段（例えば、図５の選択部１３３）とを備える。
【００２４】
本発明の第２の側面の情報処理方法またはプログラムは、入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理方法、または、入力データと同様の形式の課題データと前記課題データの特徴を表す特徴量の正しい値を示す正解データとの組み合わせを含む教師データを用いて、GP（Genetic Programming）またはGA（Genetic Algorithm）により、前記入力データの特徴を表す特徴量を抽出するアルゴリズムを構築する情報処理をコンピュータに実行させるプログラムにおいて、新たに構築するアルゴリズムである新規アルゴリズムの構築に用いる前記教師データである新規教師データの前記課題データの特徴を表す特徴量を、過去に構築されたアルゴリズムである構築済アルゴリズムを用いて抽出し（例えば、図５のステップＳ５）、抽出された前記特徴量と前記新規教師データの前記正解データとの類似度を算出し（例えば、図５のステップＳ６）、前記類似度に基づいて、前記新規アルゴリズムの構築に用いる遺伝子に利用する前記構築済アルゴリズムを選択する（例えば、図５のステップＳ８）ステップを含む。
【００２５】
以下、図を参照して、本発明の実施の形態について説明する。
【００２６】
図２は、本発明を適用した情報処理装置の一実施の形態を示すブロック図である。図２の情報処理装置１０１は、アルゴリズム構築部１１１および特徴量抽出部１１２を含むように構成される。
【００２７】
アルゴリズム構築部１１１は、GAまたはGPにより、入力データの特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを自動構築し、特徴量抽出部１１２に供給する。
【００２８】
アルゴリズム構築部１１１は、１種類目の特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを構築する場合、図３に示されるように、従来と同様に、外部から与えられた教師データのみを用いて、GAまたはGPに基づく学習を行うことにより、特徴量抽出アルゴリズムを構築する。そして、アルゴリズム構築部１１１は、２種類目以降の特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを構築する場合、図４に示されるように、外部から与えられた教師データに加えて、以前構築した特徴量抽出アルゴリズムおよびその特徴量抽出アルゴリズムの構築に用いた教師データを用いて、GAまたはGPに基づく学習を行うことにより、特徴量抽出アルゴリズムを構築する。
【００２９】
特徴量抽出部１１２は、アルゴリズム構築部１１１により構築された特徴量抽出アルゴリズムを用いて、入力データの特徴を表す特徴量を抽出し、出力する。
【００３０】
図５は、図２のアルゴリズム構築部１１１の機能的構成を示すブロック図である。アルゴリズム構築部１１１は、第１世代遺伝子生成部１２１、遺伝子評価部１２２、第２世代以降遺伝子生成部１２３、推定式生成部１２４、および、教師データ記憶部１２５を含むように構成される。
【００３１】
第１世代遺伝子生成部１２１は、各種の関数の組み合わせを示す遺伝子の第１世代を生成する。第１世代遺伝子生成部１２１は、特徴量抽出部１３１、類似度算出部１３２、選択部１３３、交差部１３４、突然変異部１３５、ランダム生成部１３６、および、学習結果記憶部１３７を含むように構成される。
【００３２】
特徴量抽出部１３１は、過去にアルゴリズム構築部１１１により構築された特徴量抽出アルゴリズム（以下、構築済アルゴリズムとも称する）、および、その特徴量抽出アルゴリズムの構築に用いた教師データ（以下、過去教師データとも称する）を学習結果記憶部１３７から取得する。また、特徴量抽出部１３１は、新たに構築する特徴量抽出アルゴリズム（以下、新規アルゴリズムとも称する）の構築に用いる教師データ（以下、新規教師データとも称する）を教師データ記憶部１２５から取得する。
【００３３】
特徴量抽出部１３１は、図７および図８などを参照して後述するように、学習結果記憶部１３７に記憶されている各過去教師データについて、新規教師データに含まれ、過去教師データに含まれない課題データ（以下、未含有課題データと称する）に対する特徴量を、構築済アルゴリズムを用いて抽出し、抽出した特徴量を未含有課題データに対する正解データとして、その構築済アルゴリズムの構築に用いた過去教師データに追加する。特徴量抽出部１３１は、未含有課題データに対する正解データを追加した過去教師データを類似度算出部１３２に供給する。
【００３４】
また、特徴量抽出部１３１は、学習結果蓄積部１３７に学習結果が蓄積されていない場合、学習結果が蓄積されていないことをランダム生成部１３６に通知する。
【００３５】
類似度算出部１３２は、図７および図８などを参照して後述するように、各構築済アルゴリズムについて、対応する過去教師データと新規教師データとの類似度を算出する。類似度算出部１３２は、構築済アルゴリズム、および、算出した類似度を選択部１３３に供給する。
【００３６】
選択部１３３は、図７および図８などを参照して後述するように、類似度に基づいて、新規アルゴリズムの構築に用いる遺伝子に利用する構築済アルゴリズムを選択する。選択部１３３は、選択した構築済アルゴリズムを構築する関数の組み合わせを示す遺伝子を生成し、交差部１３４および突然変異部１３５に供給する。また、選択部１３３は、生成した遺伝子を第１世代の遺伝子として遺伝子評価部１２２に供給する。さらに、選択部１３３は、生成した遺伝子の数に応じた数の遺伝子の生成をランダム生成部１３６に指示する。
【００３７】
交差部１３４は、図７および図８などを参照して後述するように、選択部１３３から供給された遺伝子の中からランダムに選択した２つの遺伝子間で関数の一部を交換し、各遺伝子の関数を組み替えることにより、２つの遺伝子を交差させる。交差部１３４は、交差させた遺伝子を第１世代の遺伝子として遺伝子評価部１２２に供給する。
【００３８】
突然変異部１３５は、図７および図８などを参照して後述するように、選択部１３３から供給された遺伝子の中からランダムに選択した遺伝子の関数の一部をランダムに変形することにより、遺伝子を突然変異させる。突然変異部１３５は、突然変異させた遺伝子を第１世代の遺伝子として遺伝子評価部１２２に供給する。
【００３９】
ランダム生成部１３６は、図７および図８などを参照して後述するように、各種の関数をランダムに組み合わせることにより、新たな遺伝子を生成する。ランダム生成部１３６は、生成した遺伝子を遺伝子評価部１２２に供給する。
【００４０】
遺伝子評価部１２２は、第１世代遺伝子生成部１２１または第２世代以降遺伝子生成部１２３により生成された各遺伝子について、新規教師データの課題データから、どの程度の精度で正しい特徴量を抽出できるかを評価する。遺伝子評価部１２２は、実行部１４１、および、評価部１４２を含むように構成される。
【００４１】
実行部１４１は、新規教師データの各課題データに対して、各遺伝子に示される関数の処理を順に実行することにより、各課題データに対する遺伝子の計算値を求める。実行部１４１は、求めた計算値を評価部１４２に供給する。
【００４２】
評価部１４２は、図７および図８などを参照して後述するように、第１世代遺伝子生成部１２１または第２世代以降遺伝子生成部１２３により生成された各遺伝子について、新規教師データの課題データから、どの程度の精度で正しい特徴量を抽出できるかを示す評価値を算出する。評価部１４２は、評価した遺伝子、および、その評価値を示す情報を、第２世代以降遺伝子生成部１２３の選択部１５１、交差部１５２、および、突然変異部１５３に供給する。また、評価部１４２は、所定の数の遺伝子の生成をランダム生成部１５４に指示する。さらに、評価部１４２は、評価値が安定し、遺伝子の進化が収束したと判定した場合、進化が収束したと判定した世代の遺伝子、各遺伝子の評価値、および、新規教師データを選択部１５１に供給する。
【００４３】
第２世代以降遺伝子生成部１２３は、第２世代以降の遺伝子を生成する。第２世代以降遺伝子生成部１２３は、選択部１５１、交差部１５２、突然変異部１５３、および、ランダム生成部１５４を含むように構成される。
【００４４】
選択部１５１は、図７および図８などを参照して後述するように、評価部１４２により求められた評価値に基づいて、現在の世代の中から次の世代に継承する遺伝子を選択し、選択した遺伝子を次の世代の遺伝子として遺伝子評価部１２２に供給する。また、選択部１５１は、遺伝子の進化が収束したと判定された場合、評価値が最も高い遺伝子を選択し、選択した遺伝子（以下、最終選択遺伝子とも称する）、および、新規教師データを推定式生成部１２４に供給する。
【００４５】
交差部１５２は、図７および図８などを参照して後述するように、現在の世代の遺伝子のうち評価値が高い遺伝子の中からランダムに選択した２つの遺伝子間で関数の一部を交換し、各遺伝子の関数を組み替えることにより、２つの遺伝子を交差させる。交差部１５２は、交差させた遺伝子を次の世代の遺伝子として遺伝子評価部１２２に供給する。
【００４６】
突然変異部１５３は、図７および図８などを参照して後述するように、現在の世代の遺伝子のうち評価値が高い遺伝子の中からランダムに選択した遺伝子の関数の一部をランダムに変形することにより、遺伝子を突然変異させる。突然変異部１５３は、突然変異させた遺伝子を、次の世代の遺伝子として遺伝子評価部１２２に供給する。
【００４７】
ランダム生成部１５４は、図７および図８などを参照して後述するように、各種の関数をランダムに組み合わせることにより、新たな遺伝子を生成する。ランダム生成部１５４は、生成した遺伝子を次の世代の遺伝子として遺伝子評価部１２２に供給する。
【００４８】
推定式生成部１２４は、図７および図８などを参照して後述するように、最終選択遺伝子により計算される計算値に基づいて特徴量を推定するための推定式を生成する。推定式生成部１２４は、最終選択遺伝子に示される関数の組み合わせに、求めた推定式を組み合わせることにより特徴量抽出アルゴリズム（新規アルゴリズム）を生成し、特徴量抽出部１１２に出力する。また、推定式生成部１２４は、新規アルゴリズムおよび新規教師データを関連づけて、新たな学習結果として学習結果記憶部１３７に記憶させる。
【００４９】
教師データ記憶部１２５は、外部から入力される教師データを記憶する。
【００５０】
図６は、図２の特徴量抽出部１１２の機能的構成の一例を示すブロック図である。図６の特徴量抽出部１１２は、明るさ抽出部２１１、速さ抽出部２１２、エネルギー感抽出部２１３、リズムの割合抽出部２１４、および、ジャンル判別部２１５などを含むように構成される。
【００５１】
明るさ抽出部２１１は、アルゴリズム構築部１１１により構築された特徴量抽出アルゴリズムを用いて、楽曲の波形データから楽曲の明るさを特徴量として抽出し、後段に出力する。
【００５２】
速さ抽出部２１２は、アルゴリズム構築部１１１により構築された特徴量抽出アルゴリズムを用いて、楽曲の波形データから楽曲を聴いたときに感じる楽曲の速さの度合いを特徴量として抽出し、後段に出力する。
【００５３】
エネルギー感抽出部２１３は、アルゴリズム構築部１１１により構築された特徴量抽出アルゴリズムを用いて、楽曲の波形データから楽曲を聴いたときに感じるエネルギー感を特徴量として抽出し、後段に出力する。
【００５４】
リズムの割合抽出部２１４は、アルゴリズム構築部１１１により構築された特徴量抽出アルゴリズムを用いて、楽曲の波形データから楽曲全体のエネルギーのうちリズム楽器によるエネルギーが占める割合を表すリズムの割合を特徴量として抽出し、後段に出力する。
【００５５】
ジャンル判別部２１５は、アルゴリズム構築部１１１により構築された特徴量抽出アルゴリズムを用いて、楽曲の波形データから楽曲のジャンルを判別し、後段に出力する。
【００５６】
次に、図７乃至図２２を参照して、情報処理装置１０１の処理について説明する。
【００５７】
まず、図７および図８のフローチャートを参照して、アルゴリズム構築部１１１により実行されるアルゴリズム構築処理について説明する。
【００５８】
まず、１種類目の特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを構築する場合のアルゴリズム構築処理について説明する。
【００５９】
ステップＳ１において、アルゴリズム構築部１１１は、ユーザにより入力された教師データを取得し、教師データ記憶部１２５に記憶させる。
【００６０】
図９は、教師データの一例を示している。図９の教師データは、楽曲の波形データから楽曲の明るさを表す特徴量を抽出する抽出特徴量抽出アルゴリムの構築に用いられる教師データであり、楽曲を識別するための識別子（例えば、タイトルなど）、図６の特徴量抽出部１１２に入力される入力データと同様の形式の波形データであって、楽曲の音声の振幅の時系列の変化を示す波形データである課題データ、および、課題データの特徴である明るさを表す特徴量の正しい値を示す正解データの組み合わせを含む。正解データは、trueまたはfalseの２値で表され、明るい曲調の楽曲にはtrueが設定され、暗い曲調の楽曲にはfalseが設定される。
【００６１】
ステップＳ２において、特徴量抽出部１３１は、学習結果が蓄積されているかを判定する。いまの場合、１種類目の特徴量抽出アルゴリズムを構築する処理を行っており、過去に特徴量抽出アルゴリズムが構築されておらず、過去の学習結果が学習結果記憶部１３７に記憶されていないので、学習結果が蓄積されていないと判定され、処理はステップＳ３に進む。
【００６２】
ステップＳ３において、ランダム生成部１３６は、遺伝子をランダムに生成する。具体的には、特徴量抽出部１３１は、学習結果が蓄積されていないことをランダム生成部１３６に通知する。ランダム生成部１３６は、フーリエ変換（FFT）、ウェーブレット変換、メル周波数ケプストラム係数（MFCC）変換などの各種変換関数、LPF（Low Pass filter）、HPF（High Pass filter）、BPF（Band Pass Filter）、各種の窓関数などの各種フィルタ、平均、標準偏差などを計算する各種統計関数、および、四則演算、絶対値演算、各種の正規化、対数演算、指数演算、微積分などのその他の関数をランダムに組み合わせることにより、所定の数の遺伝子を生成する。
【００６３】
遺伝子は、例えば、[処理軸#]関数名[(係数[,係数2…])]のフォーマットで表される関数が、実行順に左から並べられた形式で表される。
【００６４】
図１０は、遺伝子の表記の例を示している。図１０の上側の遺伝子２５１は、５個の関数を組み合わせることにより構成される。遺伝子２５１は、入力データに対して、１番目の関数であるTime#Split(2048,1024)により、時間軸方向に1024サンプルずつオーバーラップさせながら2048サンプルずつデータを切り出し、２番目の関数であるTime#Window_Hunningにより、ハニング窓をかけ、３番目の関数であるTime#FFTにより、時間軸をFFT（高速フーリエ変換）し、４番目の関数であるFreq#LogAxis(32)により、周波数軸を32次元のログ軸に変換し、５番目の関数であるFreq#StDevにより、周波数方向の標準偏差を取る処理を行う。
【００６５】
また、図１０の下側の遺伝子２５２は、７個の関数を組み合わせることにより構成される。遺伝子２５２は、入力データに対して、１番目の関数であるTime#Split(256,8)により、8サンプルずつオーバーラップさせながら256サンプルずつデータを切り出し、２番目の関数であるTime#Window_Hunningにより、ハニング窓をかけ、３番目の関数であるTime#FFTにより、時間軸をFFTし、４番目の関数であるFreq#Meanにより、周波数軸方向の平均を取り、５番目の関数であるTime2#Split(256,8)により、再び8フレームずつオーバーラップさせながら256フレームずつデータを切り出し、６番目の関数であるTime2#FFTにより、１番目の関数により切り出されたデータの時間軸をFFTし、７番目の関数であるTime3#Meanにより、５番目の関数により切り出されたデータを時間軸方向の平均を取る処理を行う。
【００６６】
ランダム生成部１３６は、生成した遺伝子を第１世代の遺伝子として遺伝子評価部１２２に供給する。
【００６７】
その後、処理はステップＳ１２に進む。
【００６８】
ステップＳ１２において、実行部１４１は、まだ評価していない遺伝子を１つ選択する。いまの場合、実行部１４１は、ランダム生成部１３６により生成された第１世代の遺伝子の中から、まだ評価していない遺伝子を評価対象として１つ選択する。
【００６９】
ステップＳ１３において、実行部１４１は、新規教師データの中から未処理の課題データを１つ選択する。具体的には、実行部１４１は、教師データ記憶部１２５に記憶されている新規教師データの中から、評価対象の遺伝子による処理が実行されていない課題データを１つ選択する。
【００７０】
ステップＳ１４において、実行部１４１は、選択した課題データに対する評価対象の遺伝子の計算値を求める。具体的には、実行部１４１は、選択した課題データに対して、評価対象の遺伝子に示される関数の処理を順に実行することにより、課題データに対する遺伝子の計算値を求める。実行部１４１は、求めた計算値を評価部１４２に供給する。
【００７１】
ステップＳ１５において、実行部１４１は、全ての課題データについて処理したかを判定する。実行部１４１は、新規教師データの課題データのうち、評価対象の遺伝子の示す処理が実行されていない課題データがある場合、まだ全ての課題データについて処理していないと判定し、処理はステップＳ１３に戻る。その後、ステップＳ１５において、全ての課題データについて処理したと判定されるまで、ステップＳ１３乃至Ｓ１５の処理が繰り返し実行される。
【００７２】
これにより、例えば、図１１に示されるように、新規教師データに含まれる全楽曲について、課題データである各楽曲の波形データに対して、評価対象の遺伝子に示される関数の処理を実行することにより、各課題データに対する遺伝子の計算値が求められる。
【００７３】
ステップＳ１５において、全ての課題データについて処理したと判定された場合、処理はステップＳ１６に進む。
【００７４】
ステップＳ１６において、評価部１４２は、遺伝子を評価する。具体的には、評価部１４２は、図１２に示されるように、新規教師データの各課題データに対して、評価対象の遺伝子により求めた計算値に基づいて、どの程度の精度で正しい特徴量を推定することができるかを示す評価値を算出する。すなわち、この評価値は、評価対象の遺伝子に示される関数の組み合わせを利用して、新規教師データの課題データから、どの程度の精度で正しい特徴量を抽出できるかを示す。
【００７５】
新規教師データの正解データに示される特徴量が連続した数値（numericalな値）で表される場合、例えば、正解データに示される特徴量が、0.0乃至1.0の範囲内の連続した数値で表される楽曲のスピード感である場合、例えば、ピアソンの相関係数の絶対値が遺伝子の評価値として用いられる。具体的には、新規教師データの各課題データに対する正解データの値を変数Ｘとし、各課題データについて評価対象の遺伝子により求めた計算値を変数Ｙとした場合、変数Xと変数Yとの間の相関係数ｒは、次の式（１）により求められる。
【００７６】
【数１】
2008123180.tif 000003
【００７７】
図１３乃至図１５は、正解データの値を横軸とし、評価対象の遺伝子により求めた計算値を縦軸とした散布図の例を示している。評価対象の遺伝子により求めた計算値と正解データの値との相関が弱いほど、図１３に示されるように、散布図においてデータがランダムに分布するようになり、相関係数ｒは0または0に近い値となる。一方、評価対象の遺伝子により求めた計算値と正解データの値との相関が強いほど、図１５に示されるように、散布図においてデータがほぼ一直線かつ右肩上がりに分布するか、または、図示はしていないが、散布図においてデータがほぼ一直線かつ右肩下がりに分布するようになり、相関係数ｒは1.0もしくは1.0に近い値、または、-1.0もしくは-1.0に近い値となる。
【００７８】
なお、評価対象の遺伝子により求めた計算値と正解データの値との相関が強いほど、評価対象の遺伝子による計算値に基づいて推定される入力データの特徴量の精度は高くなり、評価対象の遺伝子の示す関数の組み合わせを利用して抽出される入力データの特徴量の精度が高くなる可能性は高くなる。従って、相関係数ｒの絶対値が1.0に近いほど、評価対象の遺伝子の示す関数の組み合わせを利用して、入力データの特徴量を精度よく抽出できる可能性は高くなり、相関係数ｒの絶対値が0.0に近いほど、評価対象の遺伝子の示す関数の組み合わせを利用して、入力データの特徴量を精度よく抽出できる可能性は低くなる。
【００７９】
また、新規教師データの正解データに示される特徴量が所定のクラスに分類される場合、例えば、正解データに示される特徴量が、MajorまたはMinorの２つのクラスに分類されたり、ロック、ジャズ、クラシックなどの複数のジャンルに分類される場合、例えば、フィッシャーの分散分析（FDR（Fisher Discriminant Ratio））が評価値として用いられる。
【００８０】
例えば、特徴量が２つのクラスに分類される場合、換言すれば、特徴量が２値で表される場合、評価対象の遺伝子による計算値を、その計算値に対応する課題データの正解データの値により２つの集合に分類し、一方の集合Ｘ、もう一方の集合Ｙとしたとき、FDRは、以下の式（２）により求められる。
【００８１】
【数２】
2008123180.tif 000004
【００８２】
図１６乃至図１８は、集合Ｘに属する計算値の確率分布と、集合Ｙに属する計算値の確率分布を示すグラフである。
【００８３】
評価対象の遺伝子により求めた計算値と属する集合との相関が弱いほど、すなわち、評価対象の遺伝子により求めた計算値と正解データの値との相関が弱いほど、図１６に示されるように、集合Ｘの確率分布の山と集合Ｙの確率分布の山が重なる部分が多くなり、FDRの値は小さくなる。一方、評価対象の遺伝子により求めた計算値と属するクラスとの相関が強いほど、すなわち、評価対象の遺伝子により求めた計算値と正解データの値との相関が強いほど、図１８に示されるように、集合Ｘの確率分布の山と集合Ｙの確率分布の山が重なる部分が少なくなり、FDRの値は大きくなる。
【００８４】
上述したように、評価対象の遺伝子により求めた計算値と正解データの値との相関が強いほど、評価対象の遺伝子の示す関数の組み合わせに基づいて抽出される入力データの特徴量の精度が高くなる可能性は高くなるので、FDRの値が大きいほど、評価対象の遺伝子の示す関数の組み合わせを利用して、入力データの特徴量を精度よく抽出できる可能性は高くなり、FDRの値が小さいほど、評価対象の遺伝子の示す関数の組み合わせを利用して、入力データの特徴量を精度よく抽出できる可能性は低くなる。
【００８５】
なお、上述した遺伝子の評価値の算出方法はその一例であり、上述した算出方法に限定されるものではなく、遺伝子により求められる計算値、および、特徴量の性質などに応じた適切な方法を用いることが望ましい。
【００８６】
ステップＳ１７において、評価部１４２は、全ての遺伝子を評価したかを判定する。まだ全ての遺伝子を評価していないと判定された場合、処理はステップＳ１２に戻り、ステップＳ１７において、全ての遺伝子を評価したと判定されるまで、ステップＳ１２乃至Ｓ１７の処理が繰り返し実行される。
【００８７】
ステップＳ１７において、全ての遺伝子を評価したと判定された場合、いまの場合、第１世代の全ての遺伝子の評価が終了した場合、処理はステップＳ１８に進む。
【００８８】
ステップＳ１８において、評価部１４２は、過去の世代の遺伝子と現在の世代の遺伝子の評価値を比較する。いまの場合、第１世代の遺伝子の評価が行われており、過去の世代の遺伝子の評価値は記憶されていないため、評価部１４２は、第１世代の遺伝子の評価値の最大値を、現時点の遺伝子の評価値として記憶する。
【００８９】
ステップＳ１９において、評価部１４２は、評価値が所定の世代の間更新されていないかを判定する。いまの場合、直前のステップＳ１８において、評価値が更新されているので、処理はステップＳ２０に進む。
【００９０】
ステップＳ２０において、選択部１５１は、遺伝子を選択する。具体的には、評価部１４２は、現在の世代の全ての遺伝子、および、各遺伝子の評価値を示す情報を選択部１５１に供給する。選択部１５１は、評価値が高いものから順に所定の数の遺伝子を選択し、選択した遺伝子を次の世代の遺伝子として遺伝子評価部１２２に供給する。
【００９１】
ステップＳ２１において、交差部１５２は、遺伝子を交差させる。具体的には、評価部１４２は、現在の世代の全ての遺伝子、および、各遺伝子の評価値を示す情報を交差部１５２に供給する。交差部１５２は、評価値が所定の値以上の遺伝子の中から２つの遺伝子をランダムに選択し、選択した遺伝子間で関数の交換を行い、各遺伝子の関数を組み替えることにより、２つの遺伝子を交差させる。交差部１５２は、所定の数の遺伝子を交差させ、交差させた遺伝子を、次の世代の遺伝子として遺伝子評価部１２２に供給する。
【００９２】
ステップＳ２２において、突然変異部１５３は、遺伝子を突然変異させる。具体的には、評価部１４２は、現在の世代の全ての遺伝子、および、各遺伝子の評価値を示す情報を突然変異部１５３に供給する。突然変異部１５３は、評価値が所定の値以上の遺伝子の中から所定の数の遺伝子をランダムに選択し、選択した遺伝子の関数の一部をランダムに変形することにより、遺伝子を突然変異させる。突然変異部１５３は、突然変異させた遺伝子を、次の世代の遺伝子として遺伝子評価部１２２に供給する。
【００９３】
ステップＳ２３において、ランダム生成部１５４は、遺伝子をランダムに生成する。具体的には、評価部１４２は、所定の数の遺伝子の生成をランダム生成部１５４に指示する。ランダム生成部１５４は、ステップＳ３のランダム生成部１３６による処理と同様に、各種の関数をランダムに組み合わせた所定の数の遺伝子を生成する。ランダム生成部１５４は、生成した遺伝子を、次の世代の遺伝子として遺伝子評価部１２２に供給する。
【００９４】
その後、処理はステップＳ１２に戻り、ステップＳ１７において、全ての遺伝子を評価したと判定されるまで、ステップＳ１２乃至Ｓ１７の処理が繰り返され、第２世代の遺伝子の評価が行われる。
【００９５】
ステップＳ１７において、全ての遺伝子を評価したと判定された場合、すなわち、第２世代の全ての遺伝子の評価が終了した場合、処理はステップＳ１８に進む。
【００９６】
ステップＳ１８において、いまの場合、評価部１４２は、記憶している１世代前における遺伝子の評価値、すなわち、第１世代における遺伝子の評価値と、第２世代の遺伝子の評価値の最大値を比較する。評価部１４２は、第２世代の遺伝子の評価値の最大値の方が第１世代における遺伝子の評価値より大きい場合、現時点の遺伝子の評価値を第２世代の遺伝子の評価値の最大値に更新し、第２世代の遺伝子の評価値の最大値が第１世代における遺伝子の評価値以下である場合、遺伝子の評価値を更新せず、そのまま現時点の遺伝子の評価値とする。
【００９７】
その後、ステップＳ１９において、評価値が所定の世代の間更新されていないと判定されるまで、ステップＳ１２乃至Ｓ２３の処理が繰り返し実行される。すなわち、遺伝子の評価値が所定の世代にわたって更新されなくなるまで、新たな世代の遺伝子が生成され、生成された遺伝子が評価され、１世代前における遺伝子の評価値と、新たな世代の遺伝子の評価値の最大値とが比較され、新たな世代の遺伝子の評価値の最大値の方が大きい場合、遺伝子の評価値を更新する処理が繰り返される。
【００９８】
ステップＳ１９において、評価値が所定の世代の間更新されていないと判定された場合、すなわち、遺伝子の評価値が安定し、遺伝子の進化が収束したと判定された場合、処理はステップＳ２４に進む。
【００９９】
なお、ステップＳ１９において、現在の世代の遺伝子の評価値の最大値が所定の閾値以上であるか否かを判定するようにしてもよい。この場合、ステップＳ１９において、現在の世代の遺伝子の評価値の最大値が所定の閾値未満であると判定された場合、すなわち、現在の世代の遺伝子に示される関数の組み合わせを用いて抽出される特徴量の精度が所望の値に達していないと判定された場合、処理はステップＳ２０に進み、現在の世代の遺伝子の評価値の最大値が所定の閾値以上であると判定された場合、すなわち、現在の世代の遺伝子に示される関数の組み合わせを用いて抽出される特徴量の精度が所望の値に達していると判定された場合、処理はステップＳ２４に進む。
【０１００】
ステップＳ２４において、選択部１５１は、特徴量抽出アルゴリズムに用いる遺伝子を選択する。具体的には、評価部１４２は、現在の世代の全ての遺伝子、各遺伝子の評価値を示す情報、および、新規教師データを選択部１５１に供給する。選択部１５１は、評価値が最も高い遺伝子、すわなち、最終選択遺伝子を選択し、最終選択遺伝子および新規教師データを推定式生成部１２４に供給する。
【０１０１】
ステップＳ２５において、推定式生成部１２４は、特徴量を推定するための推定式を生成する。具体的には、推定式生成部１２４は、特徴量が連続した数値で表される場合、新規教師データの正解データ、および、新規教師データの各課題データに対して最終選択遺伝子を用いて求められる計算値に基づいて、例えば、統計回帰解析の手法を用いて、計算値から教師データの正解データを推定するための回帰式を推定式として生成する。
【０１０２】
また、推定式生成部１２４は、特徴量が所定のクラスに分類される場合、新規教師データの正解データ、および、新規教師データの各課題データに対して最終選択遺伝子を用いて求められる計算値に基づいて、例えば、線形判別の手法を用いて、計算値から教師データの正解データを推定するための判別式を推定式として生成する。
【０１０３】
推定式生成部１２４は、最終選択遺伝子に示される関数の組み合わせに、求めた推定式を組み合わせることにより特徴量抽出アルゴリズム（新規アルゴリズム）を生成し、特徴量抽出部１１２に出力する。特徴量抽出部１１２は、新規アルゴリズムを用いて、入力データの所定の特徴を示す特徴量を抽出する抽出部（例えば、図１の明るさ抽出部２１１など）を生成する。
【０１０４】
なお、推定式を求める方法は、上述した方法に限定されるものではなく、計算値および特徴量の性質などに応じた適切な方法を用いることが望ましい。
【０１０５】
また、推定式生成部１２４は、最終選択遺伝子を用いて計算される計算値をそのまま特徴量として用いることができる場合、最終選択遺伝子に示される関数の組み合わせをそのまま新規アルゴリズムとして特徴量抽出部１１２に出力する。
【０１０６】
ステップＳ２６において、推定式生成部１２４は、学習結果を蓄積し、特徴量抽出アルゴリズム構築処理は終了する。具体的には、推定式生成部１２４は、新規アルゴリズムおよび新規教師データを関連づけて、新たな学習結果として学習結果記憶部１３７に記憶させる。
【０１０７】
次に、図７および図８のフローチャートを参照して、２種類目以降の特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを構築する場合のアルゴリズム構築処理について説明する。
【０１０８】
ステップＳ１において、上述したように教師データが取得される。
【０１０９】
ステップＳ２において、いまの場合、過去に特徴量抽出アルゴリズムが構築されており、過去の学習結果が学習結果記憶部１３７に記憶されているので、学習結果が蓄積されていると判定され、処理はステップＳ４に進む。
【０１１０】
ステップＳ４において、特徴量抽出部１３１は、特徴量抽出アルゴリズムを１つ選択する。具体的には、特徴量抽出部１３１は、学習結果記憶部１３７に記憶されている特徴量抽出アルゴリズム（構築済アルゴリズム）のうち、まだ処理していないものを１つ選択する。
【０１１１】
ステップＳ５において、特徴量抽出部１３１は、選択した特徴抽出アルゴリズムを用いて、新規教師データの課題データの特徴量を抽出する。具体的には、特徴量抽出部１３１は、選択した特徴抽出アルゴリズム（以下、選択アルゴリズムとも称する）の構築に用いた過去教師データを学習結果記憶部１３７から取得する。また、特徴量抽出部１３１は、新規教師データを教師データ記憶部１２５から取得する。特徴量抽出部１３１は、新規教師データに含まれ、過去教師データに含まれない課題データ（未含有課題データ）を新規教師データから抽出する。特徴量抽出部１３１は、選択アルゴリズムを用いて未含有課題データの特徴量を抽出し、抽出した特徴量を未含有課題データに対する正解データとして過去教師データに追加する。
【０１１２】
ここで、図１９を参照して、ステップＳ５の処理の例を説明する。新規教師データ３０１は、各楽曲の波形データである図示せぬ課題データ、および、各課題データの特徴である楽曲のリズムの多さをtrue（リズムが多い、リズミックである）またはfalse（リズムが少ない、リズミックでない）の２値で表す特徴量の正しい値を示す正解データの組み合わせを含む。過去教師データ３０２は、各楽曲の波形データである図示せぬ課題データ、および、各課題データの特徴である楽曲のエネルギッシュさをtrue（エネルギッシュである）またはfalse（エネルギッシュでない）の２値で表す特徴量の正しい値を示す正解データの組み合わせを含む。
【０１１３】
例えば、図１９に示されるように、新規教師データ３０１が楽曲３に対する正解データを含み、過去教師データ３０２が楽曲３に対する正解データを含まない場合、特徴量抽出部１３１は、過去に構築されている、楽曲のエネルギッシュさを表す特徴量を抽出する構築済アルゴリズムを用いて、楽曲３のエネルギッシュさを表す特徴量を抽出する。特徴量抽出部１３１は、抽出した特徴量を、過去教師データ３０２における楽曲３に対する正解データであると推定し、過去教師データ３０２に追加する。特徴量抽出部１３１は、他にも、新規教師データ３０１に含まれ、過去教師データ３０２に含まれない楽曲がある場合、同様の方法により、それらの全ての楽曲に対する正解データを推定し、過去教師データ３０２に追加する。これにより、過去教師データ３０２Ａが生成される。
【０１１４】
なお、このとき、過去教師データに追加した正解データに対応する未含有課題データを過去教師データに追加するようにしてもよいし、新規教師データのどの課題データ（未含有課題データ）に対応する正解データであるかを示すデータ（例えば、データの番号や楽曲のタイトル名などを）未含有課題データの代わりに、過去課題データに追加するようにしてもよい。
【０１１５】
また、特徴量抽出部１３１は、新規教師データに含まれる課題データに対する正解データが全て過去教師データに含まれる場合、学習結果記憶部１３７から取得した過去教師データをそのまま類似度算出部１３２に供給する。
【０１１６】
なお、ステップＳ５において、特徴量抽出部１３１が、過去教師データに含まれ、新規課題データに含まれない課題データに対する正解データを過去教師データから削除してから、類似度算出部１３２に供給するようにしてもよい。
【０１１７】
ステップＳ６において、類似度算出部１３２は、過去教師データと新規教師データの類似度を算出する。類似度算出部１３２は、同じ課題データに対する過去教師データの正解データと新規教師データの正解データとの類似度を、過去教師データと新規教師データの類似度として算出する。例えば、類似度算出部１３２は、同じ課題データに対して過去教師データの正解データと新規教師データの正解データの一致する割合を、過去教師データと新規教師データの類似度として算出する。
【０１１８】
例えば、図１９の新規教師データ３０１と過去教師データ３０２Ａの類似度を算出する場合、新規教師データ３０１と過去教師データ３０２Ａとで共通の課題データに対する両者の正解データを比較し、正解データが一致する数を共通する課題データの総数で割った値、すなわち、同じ課題データに対して過去教師データの正解データと新規教師データの正解データの一致する割合を、新規教師データ３０１と過去教師データ３０２Ａの類似度として算出する。
【０１１９】
例えば、図２０においては、新規教師データ３０１と過去教師データ３０２Ａの類似度が８３％になることが示されている。また、図２０においては、新規教師データ３０１と、各楽曲の波形データである図示せぬ課題データ、および、各課題データの特徴である楽曲の速さをtrue（速い）またはfalse（遅い）の２値で表す特徴量の正しい値を示す正解データの組み合わせを含む過去教師データ３１１との類似度が７０％になることが示されている。
【０１２０】
また、例えば、過去教師データと新規教師データとで共通の課題データに対する正解データを、両者からそれぞれ抽出し、抽出した正解データを要素とする２つのベクトル間のユークリッド距離などに基づいて、過去教師データと新規教師データとの類似度を算出するようにしてもよい。
【０１２１】
なお、類似度の計算方法は、特定の手法に限定されるものではなく、正解データの性質等に応じて、類似度の計算に適した計算方法を用いることが望ましい。
【０１２２】
ステップＳ７において、特徴量抽出部１３１は、全ての特徴量抽出アルゴリズムについて処理したかを判定する。特徴量抽出部１３１は、学習結果記憶部１３７に記憶されている構築済アルゴリズムのうち、まだステップＳ４乃至Ｓ６の処理を行っていない構築済アルゴリズムがある場合、まだ全ての特徴量抽出アルゴリズムについて処理していないと判定し、処理はステップＳ４に戻る。
【０１２３】
その後、ステップＳ７において、全ての特徴量抽出アルゴリズムについて処理したと判定されるまで、ステップＳ４乃至Ｓ７の処理が繰り返し実行され、学習結果記憶部１３７に記憶されている全ての構築済アルゴリズムについて、その構築済アルゴリズムの構築に用いられた過去教師データと新規教師データの類似度が計算される。
【０１２４】
ステップＳ７において、全ての特徴量抽出アルゴリズムについて処理したと判定された場合、処理はステップＳ８に進む。
【０１２５】
ステップＳ８において、選択部１３３は、教師データの類似度に基づいて、第１世代の遺伝子に利用する特徴量抽出アルゴリズムを選択する。例えば、選択部１３３は、新規教師データとの類似度が所定の閾値以上となる過去教師データを用いて構築された構築済アルゴリズムを、第１世代の遺伝子に利用する特徴量抽出アルゴリズムとして選択する。また、例えば、選択部１３３は、新規教師データとの類似度が上位のものから所定の数または割合に入る過去教師データを用いて構築された構築済アルゴリズムを、第１世代の遺伝子に利用する特徴量抽出アルゴリズムとして選択する。
【０１２６】
選択部１３３は、選択した構築済アルゴリズムを構築する関数の組み合わせを示す遺伝子を生成し、交差部１３４および突然変異部１３５に供給する。また、選択部１３３は、生成した遺伝子を第１世代の遺伝子として遺伝子評価部１２２に供給する。
【０１２７】
ステップＳ９において、交差部１３４は、遺伝子を交差させる。具体的には、交差部１３４は、上述したステップＳ２１の交差部１５２による処理と同様の処理により、選択部１３３から供給された遺伝子の数に応じた個数の遺伝子を交差させ、交差させた遺伝子を第１世代の遺伝子として遺伝子評価部１２２に供給する。
【０１２８】
ステップＳ１０において、突然変異部１３５は、遺伝子を突然変異させる。具体的には、突然変異部１３５は、上述したステップＳ２２の突然変異部１５３による処理と同様の処理により、選択部１３３から供給された遺伝子の数に応じた個数の遺伝子を突然変異させ、突然変異させた遺伝子を第１世代の遺伝子として遺伝子評価部１２２に供給する。
【０１２９】
ステップＳ１１において、ランダム生成部１３６は、遺伝子をランダムに生成する。具体的には、選択部１３３は、生成した遺伝子の数に応じた数の遺伝子の生成をランダム生成部１３６に指示する。ランダム生成部１３６は、指示された数の遺伝子をランダムに生成し、生成した遺伝子を、第１世代の遺伝子として遺伝子評価部１２２に供給する。
【０１３０】
その後、上述したステップＳ１２乃至Ｓ２６の処理が実行され、新規教師データに基づいて、特徴量抽出アルゴリズムが生成され、特徴抽出部１１２に出力される。
【０１３１】
以上のように、新規教師データとの類似度が高い過去教師データを用いて構築された構築済アルゴリズムを用いて第１世代の遺伝子を生成した場合、その構築済アルゴリズムは、新規教師データを用いた学習により構築される特徴量抽出アルゴリズムに近い可能性が高いため、第１世代から遺伝子の評価値が高くなる可能性が高く、その結果、早い世代において遺伝子の進化が収束する可能性が高い。従って、少ない計算量で、より高速に特徴量抽出アルゴリズムを構築することができる。
【０１３２】
また、構築済アルゴリズムの数が増え、過去の学習結果の蓄積が増えるほど、最終的に構築される特徴量抽出アルゴリズムの関数の組み合わせにより近い遺伝子を第１世代から生成することができるようになり、さらに処理の高速化を期待することができる。
【０１３３】
なお、上述したステップＳ５の処理において、特徴量抽出部１３１が、過去教師データに含まれるか否かに関わらず、新規教師データの全ての課題データデータについて、選択アルゴリズムを用いて類似度を算出し、抽出した特徴量を未含有課題データに対する正解データとする仮想の過去教師データを生成するようにしてもよい。
【０１３４】
この場合、例えば、図２１に示されるように、過去にアルゴリズムＡおよびＢが構築されている場合、新規教師データ３０１の全ての課題データについて、アルゴリズムＡを用いて抽出した特徴量を正解データとする仮想の過去教師データ３２１、および、アルゴリズムＢを用いて抽出した特徴量を正解データとする仮想の過去教師データ３２２が生成される。
【０１３５】
そして、例えば、ステップＳ６において、類似度算出部１３２により、新規教師データ３０１の正解データと仮想の過去教師データ３２１の正解データとが一致する割合に基づいて、新規教師データ３０１と仮想の過去教師データ３２１の類似度が８２％と算出され、新規教師データ３０１の正解データと仮想の過去教師データ３２２の正解データとが一致する割合に基づいて、新規教師データ３０１と仮想の過去教師データ３２２の類似度が７３％と算出される。
【０１３６】
また、例えば、過去教師データと新規教師データとの間で共通する課題データが多い場合、上述したステップＳ５の処理をスキップして、過去教師データに正解データを追加せずに、過去教師データと新規教師データとで課題データが共通する正解データの類似度を算出するようにしてもよい。
【０１３７】
次に、図２２を参照して、特徴量抽出部１１２により実行される特徴抽出処理について説明する。
【０１３８】
ステップＳ４１において、特徴量抽出部１１２は、入力データを取得する。
【０１３９】
ステップＳ４２において、特徴量抽出部１１２は、特徴量を抽出する。具体的には、特徴量抽出部１１２の各抽出部は、設定されている特徴量抽出アルゴリズムに基づく処理を入力データに対して行うことにより、入力データの特徴量を抽出する。
【０１４０】
ステップＳ４３において、特徴量抽出部１１２の各抽出部は、抽出した特徴量を出力し、特徴抽出処理は終了する。
【０１４１】
なお、以上の説明では、各アルゴリズム構築処理において構築された特徴量抽出アルゴリズム、および、対応する教師データのみを学習結果として蓄積する例を示したが、その他の評価値の高い遺伝子に基づく特徴量抽出アルゴリズムも学習結果として蓄積するようにしてもよい。例えば、各世代の遺伝子の評価が終わるごとに、評価値が所定の閾値以上の遺伝子を選択し、選択した遺伝子に対する推定式を生成し、選択した遺伝子に示される関数の組み合わせに、生成した推定式を組み合わせることにより特徴量抽出アルゴリズムを生成し、対応する教師データとともに、学習結果として蓄積するようにしてもよい。
【０１４２】
また、以上の説明では、主に楽曲の波形データの特徴量を抽出する例を示したが、本発明は、データの形式や種類などに関わらず、GPまたはGAによりデータの特徴を表す特徴量を抽出する特徴量抽出アルゴリズムを構築する装置やソフトウエアなどに適用することができる。例えば、本発明は、音声データまたは動画像の画像データを記録し再生する記録再生装置、音声データまたは動画像の画像データを記録する記録装置、音声データまたは動画像の画像データを再生する再生装置などに適用することができる。
【０１４３】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１４４】
図２３は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータ４００の構成の例を示すブロック図である。CPU（Central Processing Unit）４０１は、ROM（Read Only Memory）４０２、または記録部４０８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）４０３には、CPU４０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU４０１、ROM４０２、およびRAM４０３は、バス４０４により相互に接続されている。
【０１４５】
CPU４０１にはまた、バス４０４を介して入出力インタフェース４０５が接続されている。入出力インタフェース４０５には、キーボード、マウス、マイクロホンなどよりなる入力部４０６、ディスプレイ、スピーカなどよりなる出力部４０７が接続されている。CPU４０１は、入力部４０６から入力される指令に対応して各種の処理を実行する。そして、CPU４０１は、処理の結果を出力部４０７に出力する。
【０１４６】
入出力インタフェース４０５に接続されている記録部４０８は、例えばハードディスクからなり、CPU４０１が実行するプログラムや各種のデータを記憶する。通信部４０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０１４７】
また、通信部４０９を介してプログラムを取得し、記録部４０８に記憶してもよい。
【０１４８】
入出力インタフェース４０５に接続されているドライブ４１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア４１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部４０８に転送され、記憶される。
【０１４９】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図２３に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア４１１、または、プログラムが一時的もしくは永続的に格納されるROM４０２や、記録部４０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部４０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０１５０】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１５１】
さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１５２】
【図１】従来の情報処理装置の構成の例を示すブロック図である。
【図２】本発明を適用した情報処理装置の一実施の形態を示すブロック図である。
【図３】図２の情報処理装置の処理の概要を説明するための図である。
【図４】図２の情報処理装置の処理の概要を説明するための図である。
【図５】図２のアルゴリズム構築部の一実施の形態を示すブロック図である。
【図６】図２の特徴抽出部の一実施の形態を示すブロック図である。
【図７】図２のアルゴリズム構築部により実行されるアルゴリズム構築処理を説明するためのフローチャートである。
【図８】図２のアルゴリズム構築部により実行されるアルゴリズム構築処理を説明するためのフローチャートである。
【図９】教師データの例を示す図である。
【図１０】遺伝子の表記の例を示す図である。
【図１１】遺伝子の計算値を説明するための図である。
【図１２】遺伝子の評価について説明するための図である。
【図１３】正解データの値と評価対象の遺伝子を用いて求めた計算値との相関を示す散布図の例を示す図である。
【図１４】正解データの値と評価対象の遺伝子を用いて求めた計算値との相関を示す散布図の他の例を示す図である。
【図１５】正解データの値と評価対象の遺伝子を用いて求めた計算値との相関を示す散布図のさらに他の例を示す図である。
【図１６】遺伝子を用いて求めた計算値のクラスごとの確率分布の例を示す図である。
【図１７】遺伝子を用いて求めた計算値のクラスごとの確率分布の他の例を示す図である。
【図１８】遺伝子を用いて求めた計算値のクラスごとの確率分布のさらに他の例を示す図である。
【図１９】図７のステップＳ５の処理を説明するための図である。
【図２０】過去教師データと新規教師データとの類似度を説明するための図である。
【図２１】過去教師データと新規教師データとの類似度を説明するための図である。
【図２２】図２の特徴量抽出部により実行される特徴量抽出処理を説明するためのフローチャートである。
【図２３】パーソナルコンピュータの構成の例を示すブロック図である。
【符号の説明】
【０１５３】
１０１  情報処理装置，  １１１  アルゴリズム構築部，  １１２  特徴量抽出部，  １２１  第１世代遺伝子生成部，  １２２  遺伝子評価部，  １２３  第２世代以降遺伝子生成部，  １２４  推定式生成部，  １２５  教師データ記憶部，  １３１  特徴量抽出部，  １３２  類似度算出部，  １３３  選択部，  １３４  交差部，  １３５  突然変異部，  １３６  ランダム生成部，  １３７  学習結果記憶部，  １４１  実行部，  １４２  評価部，  １５１  選択部，  １５２  交差部，  １５３  突然変異部，  １５４  ランダム生成部
【図１】
2008123180.tif 000005
【図２】
2008123180.tif 000006
【図３】
2008123180.tif 000007
【図４】
2008123180.tif 000008
【図５】
2008123180.tif 000009
【図６】
2008123180.tif 000010
【図７】
2008123180.tif 000011
【図８】
2008123180.tif 000012
【図９】
2008123180.tif 000013
【図１０】
2008123180.tif 000014
【図１１】
2008123180.tif 000015
【図１２】
2008123180.tif 000016
【図１３】
2008123180.tif 000017
【図１４】
2008123180.tif 000018
【図１５】
2008123180.tif 000019
【図１６】
2008123180.tif 000020
【図１７】
2008123180.tif 000021
【図１８】
2008123180.tif 000022
【図１９】
2008123180.tif 000023
【図２０】
2008123180.tif 000024
【図２１】
2008123180.tif 000025
【図２２】
2008123180.tif 000026
【図２３】
2008123180.tif 000027