説明

情報処理装置、情報処理方法、およびプログラム

【課題】先見知識を用いず人物の名称が列記されたEPG中のフィールドを特定することができる情報処理装置を提供する。
【解決手段】情報処理装置100は、電子番組ガイド情報中の番組情報に含まれる複数のフィールドから処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得する取得部102と、取得部により取得された文字列を解析し、文字列を複数のユニットに区切るための解析結果を出力する解析部104と、解析部より出力された解析結果に基づいて、ユニットの文字列長に応じた数列をフィールド毎に生成する数列化部106と、数列の各項の値の大きさのばらつき度合いを示す分散値をフィールド毎に算出する分散値算出部108と、分散値算出部により算出された分散値に基づいて、複数のフィールドのうち人物名が列記された人物フィールドを番組毎に特定する特定部110とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【0002】
放送番組に関するメタデータから構成されるEPG(Electric Program Guide)と呼ばれる電子番組表を利用したシステムが近年普及している。例えば、EPG情報は、放送局から放送波と共に送信されることにより提供されている。また、EPG情報はインターネットを介しても提供されている。このようにして提供されるEPG情報を用いて、テレビ受像機、携帯電話、PC(Personal Computer)、などの装置においては、EPG上でユーザが指定した番組にチャンネルを切替える機能、及び、EPG上でユーザが選択した番組を録画予約する機能などが実装されている。さらに、デジタルレコーダにおいては、EPG情報に含まれる各種情報を利用して、ユーザが好みそうな番組を自動的に特定して録画する機能も実装されている。
【0003】
ところで、EPG情報は、複数の番組に関する番組情報から構成されている。そして、さらに、1つの番組に関する情報の中に複数のフィールドを有している。例えば、番組のタイトルを示すフィールド、番組の放送時間を示すフィールド、番組内容の要約を示す文章が記載されたフィールド、および番組の出演者が列記されたフィールドなどが含まれる。このうち、例えば番組のタイトル及び番組の放送開始時間など特定の情報については、EPG情報中において記載されるフィールドが予め決まっている。これに対し、例えば番組の出演者、および番組の要約を示す文章などは、EPG中において記載されるフィールドが決まっていない。このため、例えば、ある人物が出演する番組を特定するためには、まず、出演者が列記されたフィールドを特定する必要がある。
【0004】
そこで、例えば、特許文献1は、EPG情報を形態素解析し、解析結果と出演者名の所定の羅列パターンとを比較することにより番組の出演者の情報を効率よく抽出する情報処理装置を開示している。また、例えば、特許文献2は、オペレータの操作により、EPG情報に識別コードを付与したデータを作成することにより、所望の情報を識別可能とする情報処理装置を開示している。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−60567号公報
【特許文献2】特開平11−164223号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、特許文献1に記載された装置は、予め所望の情報を抽出するための条件となる羅列パターンが登録される。また、特許文献2に記載された装置は、オペレータの操作により識別コードが付与される。すなわち、特許文献1に記載された装置は、予め先見知識を検討する必要があり、手間がかかるという問題があった。特に、先見知識は言語により異なるため、言語毎に異なる先見知識を検討する必要があった。そして、特許文献2に記載された装置は、対象となる情報の内容を判断するのはオペレータであり、自動的に判断まで行える装置が望まれていた。
【0007】
そこで、本発明は上記問題に鑑みてなされたものであり、本発明の目的とするところは、先見知識を用いず、人物の名称が列記されたEPG中のフィールドを特定することが可能な、新規かつ改良された情報処理装置、情報処理方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明のある観点によれば、電子番組ガイド情報中の番組情報に含まれる複数のフィールドから処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得する取得部と、上記取得部により取得された文字列を解析し、上記文字列を複数のユニットに区切るための解析結果を出力する解析部と、上記解析部より出力された解析結果に基づいて、上記ユニットの文字列長に応じた数列を上記フィールド毎に生成する数列化部と、上記数列の各項の値の大きさのばらつき度合いを示す分散値を上記フィールド毎に算出する分散値算出部と、上記分散値算出部により算出された上記分散値に基づいて、上記複数のフィールドのうち人物名が列記された人物フィールドを上記番組毎に特定する特定部とを有する、情報処理装置が提供される。
【0009】
かかる構成により、情報処理装置は、EPG情報中のある番組についての情報である番組情報に含まれる複数のフィールドの中から人物名が列記された人物フィールドを特定することができるようになる。このとき、フィールドに含まれる文字列を区切ったユニット毎の文字列長に応じた数列を生成し、かかる数列の各項の値の分散値が最も小さいものを人物フィールドと特定する。かかる特定方法は、従来の人物フィールド特定方法と異なり、先見知識を用いずに人物フィールドを特定することができるという効果がある。また、先見知識とのマッチングにより人物フィールドを特定する従来の方法の場合には、複数のフィールドに人物リストがある場合にはどちらも抽出されてしまう。例えば、番組情報の番組の要約フィールドの文章中に出演者のリストが含まれており、番組情報がその他に出演者のフィールドも有している場合には、従来の方法はどちらも抽出する。これに対し、本実施形態に係る情報処理装置は、これらのうち分散値の小さい方のフィールドを1つ人物フィールドとして特定することができる。
【0010】
また、上記解析部は、上記取得部により取得された文字列を解析し、所定の分類基準に従って上記文字列に含まれるそれぞれの文字を有意文字と非有意文字とに分類して該分類結果を解析結果として出力し、上記数列化部は、上記解析結果を用いて、上記文字列中における上記非有意文字の位置情報を示す数列の階差数列を取ることにより上記ユニットの文字列長に応じた数列を生成してもよい。
【0011】
また、上記取得部は、フィールドから取得した文字列のサイズが所定のフィールド長範囲内であるか否かを判定し、上記フィールド長範囲内である場合には、上記解析部にフィールドから取得した文字列を入力してもよい。
【0012】
また、上記特定部は、上記フィールド毎に算出された分散値のうちその値が最小となる最小分散値を特定し、該最小分散値を有するフィールドを上記人物フィールドとして特定してもよい。
【0013】
また、上記特定部は、上記フィールド毎に算出された分散値のうちその値が最小となる最小分散値を特定し、該最小分散値が所定の判定閾値よりも小さい場合に上記最小分散値を有するフィールドを上記人物フィールドとして特定してもよい。
【0014】
また、上記特定部は、上記人物フィールドの特定に成功したか否かを示す成否情報を出力し、上記特定部の出力した上記成否情報に基づいて、上記判定閾値の値を調整するフィードバック制御部をさらに有するものであってもよい。
【0015】
また、上記特定部は、上記複数のフィールドのうち人物名が列記された人物フィールドを特定すると、上記人物フィールドと特定されたフィールドの上記数列に含まれる各値の平均値である人物名平均長を算出して記憶しておき、記憶された上記人物名平均長に基づいて、上記人物フィールドを特定してもよい。
【0016】
また、上記課題を解決するために、本発明の別の観点によれば、電子番組ガイド情報中の番組情報に含まれる複数のフィールドから人物名が列記された人物フィールドを特定する情報処理装置の、取得部が、上記電子番組ガイド情報中の上記番組情報に含まれる複数のフィールドから処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得するステップと、取得された上記文字列を解析し、上記文字列を複数のユニットに区切るための解析結果を出力するステップと、出力された上記解析結果に基づいて、上記ユニットの文字列長に応じた数列を上記フィールド毎に生成するステップと、上記数列の各項の値の大きさのばらつき度合いを示す分散値を上記フィールド毎に算出するステップと、上記分散値に基づいて、上記複数のフィールドのうち人物名が列記された人物フィールドを上記番組毎に特定するステップとを含む、情報処理方法が提供される。
【0017】
また、上記課題を解決するために、本発明の別の観点によれば、電子番組ガイド情報中の番組情報に含まれる複数のフィールドから処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得する処理と、上記文字列を解析し、上記文字列を複数のユニットに区切るための解析結果を出力する処理と、上記解析結果に基づいて、上記ユニットの文字列長に応じた数列を上記フィールド毎に生成する処理と、上記数列の各項の値の大きさのばらつき度合いを示す分散値を上記フィールド毎に算出する処理と、算出された上記分散値に基づいて、上記複数のフィールドのうち人物名が列記された人物フィールドを上記番組毎に特定する処理とをコンピュータに実行させるためのプログラムが提供される。
【発明の効果】
【0018】
以上説明したように本発明によれば、先見知識を用いず、人物の名称が列記されたEPG中のフィールドを特定することが可能となる。
【図面の簡単な説明】
【0019】
【図1】本発明の第1の実施形態にかかる情報処理装置の機能ブロック図である。
【図2】同実施形態にかかる情報処理装置の動作を示すフローチャートである。
【図3】EPG情報に含まれる番組情報の一例を示す説明図である。
【図4】本発明の第2の実施形態にかかる情報処理装置の機能ブロック図である。
【図5】同実施形態にかかる情報処理装置の動作を示すフローチャートである。
【図6】同実施形態にかかる情報処理装置のフィードバック処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0020】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0021】
なお、説明は以下の順序で行うものとする。
1.第1の実施の形態
2.第2の実施の形態(フィードバック制御を含む例)
【0022】
<第1の実施形態>
[機能構成]
まず、図1を参照して、本発明の第1の実施形態に係る情報処理装置の機能構成について説明する。図1は、本発明の第1の実施形態にかかる情報処理装置の機能ブロック図である。
【0023】
本実施形態に係る情報処理装置100は、EPG情報を取得して、EPG情報に含まれ番組に対応付けられた各種フィールドの中から人物名が列記された人物フィールドを特定する機能を有する。情報処理装置100は、例えば、PC、テレビ受像機、携帯電話、PDAなど各種の装置であってよい。
【0024】
上記の機能を実現するために、情報処理装置100は、取得部102と、解析部104と、数列化部106と、分散値算出部108と、判定部110とを主に有する。
【0025】
取得部102は、EPG情報を取得し、該EPG情報に含まれる複数のフィールドの中から処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得する機能を有する。取得部102は、取得した文字列を解析部104に入力する。ここで、取得部102は、フィールドから取得した文字列のサイズが所定のフィールド長範囲内であるか否かを判定し、取得した文字列がフィールド長範囲内である場合に、解析部104にフィールドから取得した文字列を入力するようにしてもよい。ここで用いるフィールド長範囲は、経験により人物名が列記された人物フィールドのサイズが取りうる値の範囲に基づいて予め定めておく。取得した文字列のサイズとフィールド長範囲とは、例えば、文字列長により比較されてもよいし、データサイズにより比較されてもよい。かかる構成により、フィールドに含まれる文字列が人物フィールドに含まれる文字列としては明らかに長すぎるフィールドは、処理対象から外される。このため、解析及び分散値の算出等にかかる時間が削減される。
【0026】
解析部104は、取得部102により取得された文字列を解析し、文字列を複数のユニットに区切るための解析結果を出力する機能を有する。例えば、解析部104は、取得部102により取得された文字列を形態素解析し、所定の分類基準に従って取得された文字列に含まれるそれぞれの文字が有意文字であるか非有意文字であるかを分類する。そして、該分類結果を解析結果として数列化部106に入力する。例えば分類基準は、非有意文字を“,、〔〕「」・の8つであり、非有意文字以外の文字は全て有意文字であると定められてもよい。解析部104は、例えば、取得された文字列に含まれる文字が有意文字であると分類した場合にはその文字を「1」とし、取得された文字列に含まれる文字が非有意文字であると分類した場合にはその文字を「0」と置き換える。
【0027】
例えば、下記の文字列が取得部102により取得された場合について考える。
“〔出演〕幸田未来×misomo,Perfune,レミオメロン,エレファントカジマジ,theGazettD,玉城成美,ノーズリーブス”
このとき、上記の分類基準に従って分類された結果を「1」および「0」で表すと以下の通りとなる。解析部104は、この分類結果を解析結果として数列化部106に入力する。
0011011111111111011111110111111011111111110111111111101111011111110
【0028】
数列化部106は、解析部104より入力された解析結果に基づいて、ユニットの文字列長に応じた数列をフィールド毎に生成する機能を有する。例えば、数列化部106は、解析部104から入力された解析結果を用いて、取得部102により取得された文字列中における非有意文字の位置情報を示す数列を生成する。そして、数列化部106は、さらにこの非有意文字の位置情報を示す数列の階差数列を取ることにより、ユニットの文字列長に応じた数値を各項に有する数列を生成する。
【0029】
上記例を用いて具体的に説明すると、数列化部106は、解析部104から入力された解析結果である、
0011011111111111011111110111111011111111110111111111101111011111110
において、「0」の位置を示す数値を数列化する。即ち、先頭の位置を0として、順に序数を割振り、「0」の要素に割振られた値を数列の項の要素として数列を生成する。上記例の解析結果を数列化すると、以下の数列を得ることができる。
{0,1,4,16,24,31,42,53,58,66}
【0030】
そして、数列化部106は、「0」の位置を示す数値から得られた数列の階差数列を取る。上記例の階差数列は、以下の数列となる。
{1,3,12,8,7,11,11,5,8}
【0031】
ここで得られる階差数列に含まれる数値は、実際にはフィールド内の文字列を区切ることにより得られたユニットの文字列長とは一致していない。例えば、上記例の階差数列の第4項の数字である「8」は、「Perfune」と対応する数値である。ここで、「Perfune」で表されるユニットの文字列長は7である。もちろん、階差数列を取ることにより得られた数値から1を減算して文字列長の値としてもよいが、ここで文字列長はその値そのものではなく、その値の大きさのばらつき度合いが問題とされるため、この値を用いることとする。階差数列を取ることにより得られた値は、ユニットの文字列長に応じて増減する値である。
【0032】
ユニットの文字列長は、上記の解析結果における連続する「1」の数である。従って、ユニットの文字列長に応じた数列を得るためには、この連続する「1」の数を数えることによっても得られる。しかし、「0」の位置を示す数字から数列を生成し、生成された数列の階差数列を取る本実施形態に係る方法は、単純な計算のみで済むため、処理速度が速いという効果を奏する。
【0033】
分散値算出部108は、数列化部106により生成された、ユニットの文字列長に応じた数列の各項の値の大きさのばらつき度合いを示す分散値をフィールド毎に算出する機能を有する。分散値算出部108は、つまり、取得部102により特定されたフィールドに含まれる文字列を解析部104の解析結果に従って区切られた複数のユニットそれぞれの文字列長の大きさのばらつき度合いを示す分散値を算出する。分散値は、値の大きさのばらつき度合いを示す値であれば何でもよいが、本実施形態においては、一般的に用いられる標準偏差σを以下の数式(1)を用いて算出する。ここで、nは、階差数列の総項数であり、χは、階差数列の第i番目の項の要素であり、χ(_)は、χのi=1〜nまでの平均値である。
【0034】
【数1】

【0035】
特定部110は、分散値算出部108により算出された分散値に基づいて、1つの番組に対して対応づけられた複数のフィールドから、人物名が列記された人物フィールドを特定する機能を有する。特定部110は、フィールド毎に算出された分散値のうち、その値が最小となる最小分散値を特定し、この最小分散値を有するフィールドを人物フィールドとして特定する。
【0036】
特定部110は、即ち、フィールドに含まれる文字列を区切ったユニットの文字列長のばらつきが小さく同程度の長さの文字列で構成されているフィールドを人物フィールドと特定する。人物フィールドは、人物名が区切り文字により区切って列挙されている場合が多い。このため、人物フィールドのユニットの文字列長は、人物名の文字列長に応じた値となる可能性が高いと考えられる。人物名は、通常ある範囲の文字列長となる可能性が非常に高い。例えば、日本語名は、2〜8文字程度の可能性が非常に高いと考えられる。このため、人物フィールドを区切って得られるユニットの文字列長の分散値は、他のフィールド(例えば、番組内容などの文章)と比較して小さい値となる。本発明の第1の実施形態に係る情報処理装置100は、人物フィールドがこのような性質を有していることを利用して人物フィールドを特定する。
【0037】
[動作例]
次に、本実施形態に係る情報処理装置の動作について図2を参照しながら説明する。図2は、本発明の第1の実施形態にかかる情報処理装置の人物フィールド特定動作を示すフローチャートである。なお、以下情報処理装置の動作の説明において、図3の番組情報の例について説明する。図3は、EPG情報に含まれる番組情報の一例を示す説明図である。
【0038】
図3に示す番組情報30は、番組のタイトルと、番組の内容が記述された第1のフィールド32であるLongDescription1と、出演者の情報が記述された第2のフィールド34であるLongDesctiption2とを含む。
【0039】
以下、情報処理装置100が、番組「英語でしゃべらナイツ」の番組情報30から人物名フィールドを特定する方法について、説明する。まず、情報処理装置100の取得部102は、EPG情報中の番組情報30に含まれる複数のフィールドから処理対象とするフィールドを先頭に近いものから順次特定する。この時点においては、まず、第1のフィールド32が特定される。そして、取得部102は、特定されたフィールドに含まれる文字列を取得する(S102)。本実施例において取得される文字列は、“「ペプター寿司」シリーズ第3弾。「英語はアメリカ人だけのものじゃない!」。すし屋店主クリス・ペプターのもとには、独特な発音で知られるインド英語やフィリピン英語、ニュージーランド・KIWI英語など、独特の英語を話す在日ネイティブたちが来店。アメリカ・イギリスの英語=正統と考えがちな日本人には驚きの自由で多様な英語を披露する。また、最新ヒット曲から使えるカッコイイ英語を紹介する音楽ミニコーナーも登場!”である。
【0040】
次に、取得部102は、取得したフィールドの文字列長が所定のフィールド長範囲内であるか否かを判定する(S104)。ここで、フィールド長範囲が1〜1000文字であると定められているとすると、取得部102は、取得したフィールドの文字列長である200と、フィールド長範囲とを比較する。かかる例においては、取得したフィールドの文字列長は所定のフィールド長範囲内であるため、取得部102は、取得した第1のフィールド32に含まれる文字列を解析部104に入力する。一方、ステップS104の判定において、取得したフィールドの文字列長が所定のフィールド長範囲内でない場合には、取得部102は、取得したフィールドに含まれる文字列を解析部104に入力せず、ステップS102に戻って次のフィールドを取得する。
【0041】
次に、取得部102からフィールドに含まれる文字列を入力された解析部104は、入力された文字列に対して形態素解析を実行し、有意文字と非有意文字とを分類する(S106)。そして、解析部104は、ステップS106における分類結果である解析結果を数列化部106に入力する。解析部104における解析処理の詳細は、上述したためここでは説明を省略する。
【0042】
数列化部106は、解析部104より入力された解析結果に基づいて、ユニットの文字列長に応じた数列を生成する。具体的には、まず、数列化部106は、解析部104から入力された解析結果(有意文字と非有意文字とを「1」と「0」とで分類したもの)の「0」の位置情報を表す数字により構成された数列を生成する(S108)。本実施例において生成される数列は、以下の通りである。
{0,1,8,16,17,36,37,46,56,80,89,98,119,124,162,165,201}
【0043】
数列化部106は、次に、「0」の位置情報を表す数字により構成された数列の階差数列を取る(S110)。数列化部106は、生成したユニットの文字列長に応じた数列を分散値算出部108に入力する。ここで生成されるLongDiscription1に対する階差数列LD1が以下に示される。
LD1={1,7,8,1,9,1,9,10,24,9,9,21,5,38,3,36}
【0044】
次に、分散値算出部108は、階差数列LD1の分散値σLD1を算出する(S112)。階差数列LD1の各項の値の平均値を算出すると、その値は、11.9である。また、階差数列LD1の総項数n=16である。これらの値を用いて分散値を算出すると下式のようになる。
【0045】
【数2】

【0046】
分散値算出部108は、ステップS112において算出された分散値をフィールドと対応付けて例えばメモリ部112に記憶する(S114)。そして分散値算出部108は、分散値の算出が終了したことを特定部110に通知する。
【0047】
特定部110は、分散値算出部108から分散値の算出が終了したことを示す情報が入力されると、対象フィールド全てに対する分散値の算出処理が完了したか否かを判定する(S116)。かかる判定は、例えば取得部102に対して次の処理対象フィールドが存在するか否かを問い合わせることにより判定されてもよい。本実施例においては、次の処理対象フィールドである第2のフィールド34(図3を参照)が存在するため、特定部110は人物フィールドの特定処理は行わず、ステップS102のフィールド取得処理に戻る。
【0048】
取得部102は、次に、第2のフィールド34に含まれる文字列“〔出演〕クリス・ペプター,チャタ,カウ,ジェイソン・ビル,アリス・コーデンカー,川西治男,エンタ,〔司会〕矢島智人,赤井実,〔語り〕ジョン・カヒラ”を取得する。以下、かかる文字列に対して、同様にステップS104〜ステップS114の処理が実行される。
【0049】
詳細な処理内容については、上述された処理と同様であるため、ここでは説明を省略する。ステップS110までの処理が実行されると、第2のフィールド34についての階差数列LD2が以下のように求められる。
LD2={1,3,4,5,4,3,6,3,4,7,5,4,1,3,5,4,1,3,4,4}
【0050】
ステップS112においては、同様の手順で階差数列LD2についての分散値σLD2が以下のように求められる。
【0051】
【数3】

【0052】
分散値算出部108は、上記数式(3)により算出した分散値σLD2についてもフィールドと対応づけてメモリ部112に記憶する。そして、分散値算出部108は、分散値の算出が終了したことを特定部110に通知する。
【0053】
特定部110は、ここで再び対象フィールド全てに対する分散値の算出処理が完了したか否かを判定する(S116)。本実施例に用いた番組情報は、2つの対象フィールドを有するため、この時点において次に処理対象となるフィールドは存在しない。そのため特定部110は、次に、人物フィールドの特定処理を実行する。
【0054】
特定部110は、まず、メモリ部112に記憶された分散値を参照する。本実施例においては、2つの分散値σLD1=128.2,σLD2=2.31を参照することができる。特定部110は、これらの分散値のうち値が最小となる分散値に対応づけられたフィールドを人物フィールドであると特定する。この場合、σLD1>σLD2であるため、特定部110は、第2のフィールド34を人物フィールドであると特定する。
【0055】
[効果の例]
以上、本発明の第1の実施形態に係る情報処理装置100の構成および動作について説明してきた。かかる構成によれば、情報処理装置100は、EPG情報中のある番組についての情報である番組情報に含まれる複数のフィールドの中から人物名が列記された人物フィールドを特定することができるようになる。このとき、フィールドに含まれる文字列を区切ったユニット毎の文字列長に応じた数列を生成し、かかる数列の各項の値の分散値が最も小さいものを人物フィールドと特定する。かかる特定方法は、従来の人物フィールド特定方法と異なり、先見知識を用いずに人物フィールドを特定することができるという効果がある。また、先見知識とのマッチングにより人物フィールドを特定する従来の方法の場合には、複数のフィールドに人物リストがある場合にはどちらも抽出されてしまう。例えば、番組情報の番組の要約フィールドの文章中に出演者のリストが含まれており、番組情報がその他に出演者のフィールドも有している場合には、従来の方法はどちらも抽出する。これに対し、本実施形態に係る情報処理装置100は、これらのうち分散値の小さい方のフィールドを1つ人物フィールドとして特定することができる。
【0056】
さらに、本実施形態に係る情報処理装置100は、フィールドに含まれる文字列を区切ったユニット毎の文字列長に応じた数列を生成する処理において、文字列に含まれるひとつひとつの文字を有意文字と非有意文字とに分類し、非有意文字の位置の座標をとった数列の階差数列を取ることにより、フィールドのユニット毎の文字列長に応じた数列を生成する。かかる構成により、直接ユニット毎の文字列長を数える方法を用いる場合と比較して、処理を高速化することができる。
【0057】
また、本実施形態に係る情報処理装置100は、フィールドから取得した文字列のサイズが所定のフィールド長範囲内であるか否かを判定し、フィールドに含まれる文字列のサイズがフィールド長範囲内でない場合には、そのフィールドは解析対象としない。かかる構成により、フィールドに含まれる文字列のサイズから明らかに人物フィールドとしては長すぎる場合には、そのフィールドを処理対象から外すことができる。フィールドに含まれる文字列のサイズの判定処理にかかる時間は、文字列の内容を解析する処理にかかる時間と比較して短いことは明らかである。このため、かかる構成によりフィールドに含まれる文字列のサイズから明らかに人物フィールドではないと判断できるフィールドの解析にかかる無駄な時間を低減することができるようになる。
【0058】
<第2の実施形態>
[機能構成]
次に、本発明の第2の実施形態に係る情報処理装置100の機能構成について、図4を参照しながら説明する。図4は、本発明の第2の実施形態に係る情報処理装置の機能構成図である。
【0059】
本発明の第2の実施形態に係る情報処理装置100は、第1の実施形態に係る情報処理装置100と同様に、フィールドに含まれる文字列を区切ったユニットの文字列長の分散値に基づいて人物フィールドを特定する機能を有する。しかし、第1の実施形態に係る情報処理装置100は、フィールドを解析することにより得られた分散値のうち最も小さいものを人物フィールドとして特定するため、人物フィールドが存在しない番組情報が入力された場合であっても、そのうち最も小さい分散値を有するフィールドを人物フィールドと特定してしまう。そこで、第2の実施形態に係る情報処理装置は、人物フィールドが存在しない番組情報が入力された場合であっても人物フィールドが存在しないことを特定することができるよう改良された人物フィールド特定機能を提供する。
【0060】
上記の機能を提供するために、本実施形態に係る情報処理装置100は、取得部102と、解析部104と、数列化部106と、分散値算出部108と、特定部110と、メモリ部112と、フィードバック制御部114とを主に有する。
【0061】
取得部102、解析部104、数列化部106、及び分散値算出部108の機能は、第1の実施形態と同様であるためここでは説明を省略する。以下、第1の実施形態と比較して異なる部分について主に説明する。
【0062】
本実施形態において特定部110は、フィールド毎に分散値算出部108により算出された分散値のうち、その値が最小となる最小分散値を特定する。そして、特定部110は、所定の判定閾値αの値と特定した最小分散値の値とを比較して、最小分散値が判定閾値よりも小さい場合にその最小分散値を有するフィールドを人物フィールドと特定する。一方、最小分散値が判定閾値よりも大きい場合には、特定部110は、その番組情報は人物フィールドを有していないと認識する。入力された番組情報が人物フィールドを有していない場合には、全てのフィールドに対する分散値は人物フィールドから得られる分散値と比較すると大きい値となる可能性が高い。しかし、本発明の第1の実施形態に係る情報処理装置100の特定部110は、その中で一番小さい分散値を有するフィールドを人物フィールドであると誤認識する場合がある。そこで、本実施形態の特定部110は、予め判定閾値αを定め、この判定閾値の値よりも最小分散値が小さい場合にその最小分散値を有するフィールドを人物フィールドと特定する。つまり、判定閾値の値αは、人物フィールドの分散値が取り得る値に基づいて定められる。
【0063】
また、特定部110は、番組情報に含まれる複数のフィールドから人物名が列記された人物フィールドを特定すると、数列化部106により生成された数列のうち人物フィールドと特定されたフィールドに対応づけられた数列に含まれる各値の平均値を人物名平均長として算出し、メモリ部112に記憶する。この人物名平均長は、例えば、特定部110が人物フィールドの特定に成功する毎に算出および更新される。そして、特定部110は、記憶された人物名平均長に基づいて人物フィールドを特定することもできる。例えば、特定部110は、記憶された人物名平均長に基づいて、人物名が取り得る値の範囲を定める。このとき、例えば人物名が取り得る値の範囲は、人物名平均長の2倍以内であるとしてもよい。そして、フィールドに対応づけられた数列の各項の値が人物名が取り得る値の範囲として定められた範囲内である場合に当該フィールドを人物フィールドであると特定してもよい。
【0064】
以上の処理により人物フィールドの特定処理が終わると、特定部110は、人物フィールドの特定に成功したか否かを示す成否情報をフィードバック制御部114に出力する。
【0065】
フィードバック制御部114は、特定部110から入力された成否情報に基づいて、判定閾値αの値を調整する機能を有する。フィードバック制御部114は、特定部110から入力された成否情報が人物フィールドの特定に成功したことを示す場合にその値が増加される成功値と、特定部110から入力された成否情報が人物フィールドの特定に失敗したことを示す場合にその値が増加される失敗値とを用いて、成功値が所定の成功閾値を超えた場合、及び、失敗値が所定の失敗閾値を超えた場合に、判定閾値αの値を調整する。
【0066】
フィードバック制御部114は、成功値が所定の成功閾値を超えた場合には、判定閾値αの値を減少させる。例えば、αから所定の調整値を減算してもよい。つまり、成功値が成功閾値を超えた場合は、そのフィールドが人物フィールドであると判定される基準となる分散値の条件が厳しくなるよう変更される。また、フィードバック制御部114は、失敗値が所定の失敗閾値を超えた場合には、判定閾値αの値を増加させる。例えば、αに所定の調整値を加算してもよい。つまり、失敗値が失敗閾値を越えた場合には、そのフィールドが人物フィールドであると判定される基準となる分散値の条件を緩和するよう変更される。
【0067】
[動作例]
次に、本発明の第2の実施形態に係る情報処理装置の動作について図5および図6を参照しながら説明する。図5は、本発明の第2の実施形態にかかる情報処理装置の人物フィールド特定動作を示すフローチャートである。図6は、図5の閾値フィードバック処理の詳細な動作を示すサブフローチャートである。
【0068】
図5において、ステップS202〜ステップS216までの処理は、図2における第1の実施形態のステップS102〜ステップS116と同様であるため、ここでは説明を省略する。
【0069】
ステップS216の判定において、特定部110が対象フィールド全てに対して分散値の算出処理が完了したと判定した場合、特定部110は、まずメモリ部112に記憶された分散値を参照し、記憶された分散値のうちその値が最小となる最小分散値を特定する(S218)。そして、特定部110は、特定された最小分散値が、所定の判定閾値αより小さいか否かを判定する(S220)。
【0070】
そして、ステップS220の判定において、最小分散値が判定閾値αよりも小さいと判定された場合に、特定部110は、最小分散値に対応するフィールドを人物フィールドと特定する(S222)。ここで、特定部220は、図示しないが、さらに最小分散値を有するフィールドと対応する数列の各項の値が、予め算出された人物名平均長に基づいた範囲内であるか否かを判定し、範囲内であると判定された場合に最小分散値に対応するフィールドを人物フィールドと特定してもよい。人物フィールドが特定されると、特定部110は、人物フィールドの特定に成功したことを示す成否情報を生成し、フィードバック制御部114に入力する。
【0071】
一方、ステップS220の判定において、最小分散値は判定閾値以上であると判定された場合に、特定部110は、人物フィールドの特定に失敗したことを示す成否情報を生成し、フィードバック制御部114に入力する。
【0072】
特定部110がフィードバック制御部114に成否情報を入力すると、閾値フィードバック処理が実行される(S226)。閾値フィードバック処理の詳細な動作については、図6を参照しながら説明する。
【0073】
まず、フィードバック制御部114は、特定部110から入力された成否情報に基づいて人物フィールドの特定が成功であるか否かを判定する(S232)。そして、特定部110から入力された成否情報が人物フィールドの特定に成功したことを示す場合には、フィードバック制御部114は、成功値を増加させる(S234)。一方、特定部110から入力された成否情報が人物フィールドの特定に失敗したことを示す場合には、フィードバック制御部114は、失敗値を増加させる(S236)。
【0074】
このようにして、人物フィールド特定の成否情報を成功値または失敗値に反映させると、フィードバック制御部114は、次に、失敗値が失敗閾値を超えたか否かを判定する(S238)。そして、ステップS238の判定において、失敗値が失敗閾値を超えたと判定された場合には、フィードバック制御部114は、判定閾値を所定の値増加させる(S240)。一方、ステップS238の判定において、失敗値が失敗閾値を超えていないと判定された場合には、次に、フィードバック制御部114は、成功値が成功閾値を超えたか否かを判定する(S242)。そして、ステップS242の判定において、成功値が成功閾値を超えたと判定された場合には、フィードバック制御部114は、判定閾値αを所定の値減少させる(S244)。一方、ステップS242の判定において、成功値が成功閾値を超えていないと判定された場合には、閾値フィードバック処理を終了する。
【0075】
[効果の例]
以上、本発明の第2の実施形態に係る情報処理装置100の構成および動作について説明してきた。かかる構成によれば、情報処理装置100は、第1の実施形態において説明した効果に加えて、以下に説明する効果を奏することができる。
【0076】
まず、本実施形態に係る情報処理装置100は、特定部110が、所定の判定閾値αを用いて判定閾値より小さい分散値を有するフィールドが存在するか否かを判定する。そして、判定閾値より小さい分散値を有するフィールドが存在しない場合には、特定部110は、人物フィールドに該当するフィールドが存在しないと判定する。かかる構成により、人物フィールドを有しない番組情報について、人物フィールドでないフィールドを人物フィールドであると誤判定される確率を低減することができるようになる。
【0077】
さらに、特定部110が人物フィールドの特定に成功したか否かを示す成否情報を出力し、フィードバック制御部114は、成否情報に基づいて、判定閾値αの値を調整する。例えば、人物フィールドの特定に連続して失敗している場合には、実際には対象の番組情報には人物フィールドが含まれているにも関わらず、判定閾値αの値が適切でないために人物フィールドの特定に失敗している場合も考えられるが、かかる構成により、判定閾値αの値を特定の成否情報に基づいて動的に調整することができるようになる。
【0078】
また、特定部110は、人物フィールドを特定すると、特定した人物フィールドに含まれる人物名の平均長に応じた値である人物名平均長を算出および記憶する。そして、特定部110は、この値に基づいて人物フィールドを特定することもできる。かかる構成により、同程度の文字列長を有する文字列が列挙されたフィールドであって、人物フィールドではないフィールドが番組情報中に含まれている場合に、かかるフィールドが人物フィールドであると誤判定されるのを低減することができるようになる。このため、人物フィールドの特定性能が向上するという効果がある。
【0079】
また、フィールド内の文字列を区切って生成されるユニット毎の文字列長の分散値を用いる本実施形態の方法は、先見知識とのマッチングを必要とする従来の方法と比べて、多種の言語に共通して用いることができるという効果がある。先見知識は、言語毎、また同じ言語であっても国毎に異なる可能性もあるため、その都度用いる先見知識を検討する必要がある。ところが、人物名の文字列長は、言語によって文字列長およびその分散度合いは異なるものの、人物フィールドの分散値は他のフィールドの分散値と比較して小さい値となるという性質は共通している。このため、言語毎、または国毎に先見知識を検討する必要がないという効果がある。本実施形態において用いられる判定閾値、および、人物名平均長は、言語毎に異なる可能性が高いが、本実施形態に係る情報処理装置100は、かかる値を自動的に調整する構成を有しているため、開発者やユーザがこれらの値を調整する必要がない。
【0080】
なお、上記第1および第2の実施形態において説明した情報処理装置100の各部の機能は、実際には、図示しないCPU(Central Processing Unit)などの演算装置がこれらの機能を実現する処理手順を記述した制御プログラムを記憶したROM(Read Only Memory)やRAM(Random Access Memory)などの記憶媒体から制御プログラムを読出し、そのプログラムを解釈して実行することにより達成される。例えば、上記第1および第2の実施形態に係る情報処理装置100においては、取得部102、解析部104、数列化部106、分析値算出部108、特定部110、およびフィードバック制御部114の各機能は、実際には、CPUがこれらの機能を実現する処理手順を記述したプログラムを実行することにより達成される。
【0081】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【0082】
例えば、上記第1および第2の実施形態では、解析部104は、予め非有意文字と見なす文字を列挙して定めておき、非有意文字以外の文字を有意文字であると定義したが、本発明はかかる例に限定されない。例えば、有意文字を漢字、仮名、数字、アルファベットであると定義し、有意文字以外の文字が非有意文字であると定義してもよい。
【0083】
また、例えば、上記第1および第2の実施形態では、分散値算出部108は、値のばらつき度合いを示す数値として標準偏差を用いたが、本発明はかかる例に限定されない。例えば、分散値は、範囲、四分位数範囲など値のばらつき度合いを示す指標であればよい。
【0084】
また、上記第2の実施形態では、フィードバック制御部114は、αに所定の調整値を加算する、または、αから所定の調整値を減算することにより、判定閾値αの値を調整することとしたが、本発明はかかる例に限定されない。例えば、フィードバック制御部114は、判定閾値を所定の調整値で乗算する、あるいは、判定閾値を所定の調整値で除算することにより、判定閾値αの値を調整してもよい。
【0085】
また、上記第2の実施形態では、フィードバック制御部114は、成否情報に基づいて成功値が成功閾値を超えた場合、または、失敗値が失敗閾値を超えた場合に判定閾値αの値を調整することとしたが、本発明はかかる例に限定されない。例えば、ある一定回数以上連続して人物フィールドの特定に成功した場合、あるいは、ある一定回数以上連続して人物フィールドの特定に失敗した場合に、判定閾値の値を調整してもよい。
【0086】
尚、本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的に又は個別的に実行される処理をも含む。また時系列的に処理されるステップでも、場合によっては適宜順序を変更することが可能であることは言うまでもない。
【符号の説明】
【0087】
100 情報処理装置
102 取得部
104 解析部
106 数列化部
108 分散値算出部
110 判定部
112 メモリ部



【特許請求の範囲】
【請求項1】
電子番組ガイド情報中の番組情報に含まれる複数のフィールドから処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得する取得部と、
前記取得部により取得された文字列を解析し、前記文字列を複数のユニットに区切るための解析結果を出力する解析部と、
前記解析部より出力された解析結果に基づいて、前記ユニットの文字列長に応じた数列を前記フィールド毎に生成する数列化部と、
前記数列の各項の値の大きさのばらつき度合いを示す分散値を前記フィールド毎に算出する分散値算出部と、
前記分散値算出部により算出された前記分散値に基づいて、前記複数のフィールドのうち人物名が列記された人物フィールドを前記番組毎に特定する特定部と、
を備える、情報処理装置。
【請求項2】
前記解析部は、前記取得部により取得された文字列を解析し、所定の分類基準に従って前記文字列に含まれるそれぞれの文字を有意文字と非有意文字とに分類して該分類結果を解析結果として出力し、
前記数列化部は、前記解析結果を用いて、前記文字列中における前記非有意文字の位置情報を示す数列の階差数列を取ることにより前記ユニットの文字列長に応じた数列を生成する、請求項1に記載の情報処理装置。
【請求項3】
前記取得部は、フィールドから取得した文字列のサイズが所定のフィールド長範囲内であるか否かを判定し、前記フィールド長範囲内である場合には、前記解析部にフィールドから取得した文字列を入力する、請求項1または2のいずれかに記載の情報処理装置。
【請求項4】
前記特定部は、前記フィールド毎に算出された分散値のうちその値が最小となる最小分散値を特定し、該最小分散値を有するフィールドを前記人物フィールドとして特定する、請求項1〜3のいずれか1項に記載の情報処理装置。
【請求項5】
前記特定部は、前記フィールド毎に算出された分散値のうちその値が最小となる最小分散値を特定し、該最小分散値が所定の判定閾値よりも小さい場合に前記最小分散値を有するフィールドを前記人物フィールドとして特定する、請求項1〜3のいずれか1項に記載の情報処理装置。
【請求項6】
前記特定部は、前記人物フィールドの特定に成功したか否かを示す成否情報を出力し、
前記特定部の出力した前記成否情報に基づいて、前記判定閾値の値を調整するフィードバック制御部、
をさらに備える、請求項5に記載の情報処理装置。
【請求項7】
前記特定部は、前記複数のフィールドのうち人物名が列記された人物フィールドを特定すると、前記人物フィールドと特定されたフィールドの前記数列に含まれる各値の平均値である人物名平均長を算出して記憶しておき、記憶された前記人物名平均長に基づいて、前記人物フィールドを特定する、請求項1〜6に記載の情報処理装置。
【請求項8】
電子番組ガイド情報中の番組情報に含まれる複数のフィールドから人物名が列記された人物フィールドを特定する情報処理装置の、
取得部が、前記電子番組ガイド情報中の前記番組情報に含まれる複数のフィールドから処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得するステップと、
取得された前記文字列を解析し、前記文字列を複数のユニットに区切るための解析結果を出力するステップと、
出力された前記解析結果に基づいて、前記ユニットの文字列長に応じた数列を前記フィールド毎に生成するステップと、
前記数列の各項の値の大きさのばらつき度合いを示す分散値を前記フィールド毎に算出するステップと、
前記分散値に基づいて、前記複数のフィールドのうち人物名が列記された人物フィールドを前記番組毎に特定するステップと、
を含む、情報処理方法。
【請求項9】
電子番組ガイド情報中の番組情報に含まれる複数のフィールドから処理対象とするフィールドを順次特定し、特定されたフィールドに含まれる文字列を取得する処理と、
前記文字列を解析し、前記文字列を複数のユニットに区切るための解析結果を出力する処理と、
前記解析結果に基づいて、前記ユニットの文字列長に応じた数列を前記フィールド毎に生成する処理と、
前記数列の各項の値の大きさのばらつき度合いを示す分散値を前記フィールド毎に算出する処理と、
算出された前記分散値に基づいて、前記複数のフィールドのうち人物名が列記された人物フィールドを前記番組毎に特定する処理と、
をコンピュータに実行させるためのプログラム。



【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2011−160278(P2011−160278A)
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願番号】特願2010−21370(P2010−21370)
【出願日】平成22年2月2日(2010.2.2)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】