(58)【調査した分野】(Int.Cl.,DB名)
前記関心度は、前記SNSに対するユーザの操作、又はSNSへの投稿の添付ファイルの有無若しくは外部サイトへのリンクの有無によってさらに重みづけされたパラメータを用いて算出される
請求項1に記載の嗜好学習方法。
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来、予め定められた単語を抽出することにより文章からユーザの興味を抽出する技術が提案されていた。しかしながら、似た嗜好を有するユーザであっても、同義語等により異なる文章で表現されることがある。
【0005】
そこで、本発明は、複数のユーザが作成する文章から統一的に嗜好を表すデータを抽出することを目的とする。
【課題を解決するための手段】
【0006】
本発明に係る嗜好学習方法は、ユーザに関連付けられた文章を読み出し、単語に分解する分解ステップと、単語に分解された文章から、所定の単語を抽出する特徴語抽出ステップと、複数の文章を用いて生成された、単語の特徴を表すベクトルをクラスタリングし、各クラスタの重心に近い単語である代表語と各クラスタに含まれる単語との対応付けを記憶しているテーブルを用いて、特徴語抽出ステップで抽出された単語を代表語に置き換える興味対象リスト生成ステップとをコンピュータが実行する。
【0007】
代表語に置き換えることにより、ユーザが自由に記載した文章の用字又は用語の不統一を吸収し、統一的に利用できる代表語を用いた嗜好情報を生成できるようになる。すなわち、複数のユーザがそれぞれ作成する文章から統一的に嗜好を表すデータを抽出することができるようになる。
【0008】
また、SNS(Social Networking Service)が公開する情報から、ユーザの識別情報
と関連付けられた文章を取得するステップと、取得した文章について、SNSごと且つユーザごとに重みづけされたパラメータを用いて所定の関心度を算出するステップとをさらに含み、興味対象リスト生成ステップにおいて、単語が抽出された文章に対して算出された関心度を、単語を置き換えた代表語に対応付けて記憶させるようにしてもよい。このようにすれば、例えばユーザのSNSの使い方等に応じてSNSごとに重みづけしたパラメータを用いて関心度を求めることができるようになる。
【0009】
また、関心度は、SNSに対するユーザの操作、又はSNSへの投稿の添付ファイルの有無若しくは外部サイトへのリンクの有無によってさらに重みづけされたパラメータを用いて算出されるようにしてもよい。このようにすれば、SNSへの投稿等のような外部サイトが公開する情報に基づいて、ユーザの操作や付随的な情報の有無等を加味した関心度を求めることができる。
【0010】
特徴語抽出ステップにおいて用いられる予め定められた単語は、所定の分野に関する単語であってもよい。このようにすれば、所定の分野に関するユーザの嗜好を学習することができるようになる。
【0011】
また、ユーザに関連付けられた文章は、ユーザに対して行われた質問への回答であり、質問の回答として期待される単語の品詞が定められており、分解ステップにおいて、回答として期待される単語の品詞に該当する単語を回答の内容として抽出するようにしてもよい。このようにすれば、文章から目的の単語を抽出する際の精度が向上する。
【0012】
なお、課題を解決するための手段に記載の内容は、本発明の課題や技術的思想を逸脱しない範囲で可能な限り組み合わせることができる。また、課題を解決するための手段の内容は、コンピュータ等の装置若しくは複数の装置を含むシステム、コンピュータが実行する方法、又はコンピュータに実行させるプログラムとして提供することができる。なお、コンピュータが読み取り可能な記録媒体を提供するようにしてもよい。
【0013】
ここで、コンピュータが読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体の内コンピュータから取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD-ROM、CD-R/W、DVD、DAT、8mmテープ、メモリカード等がある。また、コンピュータに固定された記録
媒体としてハードディスクやROM(Read Only Memory)等がある。
【発明の効果】
【0014】
複数のユーザが作成する文章から統一的に嗜好を表すデータを抽出することができるようになる。
【発明を実施するための形態】
【0016】
以下、図面を参照して本発明を実施するための形態について説明する。なお、実施形態に示す構成は例示であり、本発明は下記の構成に限定されない。
【0017】
<システム構成>
図1は、本実施形態に係るシステム構成の一例を示す図である。
図1のシステムは、ユーザ装置1と、嗜好分析装置2と、SNS(Social Networking Service)提供装置3と
を含み、これらがインターネット等のネットワーク4を介して相互に接続されている。本実施形態では、ユーザの嗜好を抽出し、例えば旅行の計画を提案するソフトウェアエージェント(「エージェントプログラム」又は単に「エージェント」とも呼ぶ)をユーザが自己のコンピュータにインストールして使用するものとする。なお、各構成要素は複数存在してもよい。ユーザ装置1は、ユーザが携帯するコンピュータ装置であって本実施形態に係るエージェントプログラムを実行する。エージェントプログラムは、ユーザの嗜好を学習するための質問を行い、例えば文章でされた回答を嗜好分析装置2へ送信する。また、ユーザは自己のアカウントでSNS等へ文章を投稿することもある。嗜好分析装置2は、ユーザの回答やSNS等への投稿を分析し、ユーザの嗜好を抽出する。なお、嗜好分析装置2又は他の装置は、抽出された嗜好に基づいてユーザへ例えば旅行等の計画を提案するようにしてもよい。SNS提供装置3は、いわゆるSNSのようなユーザ同士がコミュニケーションを行う場を提供するサーバ装置である。本実施形態では、ミニブログのようなサービスもSNSに含まれるものとする。
【0018】
図2は、本実施形態に係るエージェントの実行画面の一例を示す図である。本実施形態に係るエージェントは、ユーザ装置1の一例であるスマートフォンやタブレットPC(Personal Computer)、ラップトップ型のPC、スマートウォッチといったモバイル装置や
、デスクトップ型のPCのような据置型のコンピュータ、キオスク端末やデジタルサイネージ等の街頭コンピュータ、いわゆるパーソナルロボットのような生活空間でサービスを提供するコンピュータ等において動作するアプリケーションプログラム(単に「アプリケーション」とも呼ぶ)である。いわゆるウィジェットのように、ユーザ装置1に常駐するものであってもよい。エージェントは、ユーザや、API等のソフトウェアとの間で自律的に情報の入出力等を行う。具体的には、エージェントは、ユーザ装置1が備えるセンサによって測定される情報や、ユーザ装置1にインストールされたカメラ等のアプリケーションの使用状況、ユーザ装置1上又はいわゆるクラウド上で管理されるユーザのスケジュール等を取得してユーザの状態を認識し、所定のタイミングで情報の出力を行うようにしてもよい。また、ユーザ装置1は、マイクロフォン等の音声入力部及びスピーカ等の音声出力部を備え、エージェントは、既存の音声認識技術や音声合成技術を利用し、ユーザとの間で音声による情報の入出力を行うようにしてもよい。なお、
図2に示すように、ユーザ装置1の表示装置にはキャラクタの画像が表示されるようにしてもよい。
【0019】
<機能構成>
図3は、本実施形態に係る嗜好分析装置2の一例を示す機能ブロック図である。
図3の嗜好分析装置2は、文書取得部201と、回答取得部202と、文章記憶部203と、パラメータ記憶部204と、関心度付与部205と、形態素解析部206と、単語記憶部207と、特徴語抽出部208と、特徴語記憶部209と、特定分野辞書210と、分野限定部211と、用語記憶部212と、代表語辞書213と、代表語置換部214と、代表語記憶部215と、スコア決定部216と、嗜好情報記憶部217とを有する。
【0020】
文書取得部201は、予め記憶されているSNS等におけるユーザのアカウント情報に基づいて、ユーザがSNSに投稿等(投稿、お気に入り登録、共有(再投稿)といった操作を含む)を行った文章をSNS提供装置3から取得する。本実施形態では、ユーザがSNSへ投稿等したエントリを文書と呼ぶものとする。また、回答取得部202は、ユーザ
装置1のエージェントを介してユーザへ質問を行うとともに、ユーザが入力した回答をユーザ装置1から受信する。なお、回答はユーザが自由にテキストデータを入力するようにしてもよいし、ユーザが音声で入力した文章をユーザ装置1において既存の音声認識によりテキストデータ化してもよい。また、文章記憶部203は、主記憶装置又は補助記憶装置等からなり、文書又は回答として取得された文章を保持する。例えば、
図4又は
図5に示すような情報が文章記憶部203に記憶される。
【0021】
図4は、文章記憶部203に格納される文書テーブルの一例を示す図である。
図4のテーブルは、ユーザID、日時、SNS、操作、文章、添付、及び関心度の項目を含む。ユーザIDのフィールドには、ユーザを一意に特定する識別情報が登録される。なお、ユーザIDと関連付けて、当該ユーザが各SNSにおいて使用している識別情報(図示せず)も保持しているものとする。日時のフィールドには、投稿等の操作がなされた日時を示す情報が登録される。SNSのフィールドには、ユーザが投稿等の操作を行ったSNSを一意に特定する識別情報が登録される。操作のフィールドには、投稿、お気に入り登録、共有(再投稿)等のようなユーザがSNSに対して行った操作を示す情報が登録される。文章のフィールドには、ユーザが投稿等を行った文章が登録される。添付のフィールドには、当該投稿に添付ファイルが付加されているか否かを示す情報が登録される。関心度のフィールドには、後述する処理によって算出される関心度の値が登録される。
【0022】
図5は、文章記憶部203に格納される回答テーブルの一例を示す図である。
図5のテーブルは、質問ID、質問、回答区分、ユーザID、回答、及び関心度の項目を含む。質問IDのフィールドには、質問を管理するための識別情報が登録される。また、質問のフィールドには、エージェントからユーザに質問する内容が登録されている。質問は、ユーザの嗜好を学習するために用いられる。また、回答区分には、回答として期待される文言に関する情報(単語や品詞等)が予め登録されている。本実施形態における質問は、主として、はい又はいいえ(肯定又は否定)で回答できる質問、2以上の選択肢のいずれかで回答できる質問、名詞又は形容詞等の単語で回答できるようないわゆるファクトイド型の質問等に分類できる。
図5の回答区分にはこのような分類を示す情報が登録され、分類を示す情報はユーザから入力される回答の内容を認識する際に利用される。ユーザIDのフィールドには、ユーザを一意に特定するための識別情報が登録される。回答のフィールドには、ユーザからの回答が登録される。関心度のフィールドには、後述する処理によって設定される関心度の値が登録される。
【0023】
パラメータ記憶部204は、主記憶装置又は補助記憶装置等からなり、ユーザごと且つSNSの種類ごとに関心度の算出に用いるパラメータ(第1のパラメータとも呼ぶ)を予め記憶しているものとする。換言すれば、各ユーザが、複数のSNSのそれぞれを重要視する度合いを例えば数値化して保持している。パラメータの値は、例えば、ユーザがSNSの投稿等を行う頻度や、SNSを閲覧する頻度等に基づいて定めることができる。また、パラメータ記憶部204は、投稿、お気に入り登録、共有(再投稿)といった操作ごとに、関心度の算出に用いるパラメータ(第2のパラメータとも呼ぶ)を記憶すると共に、文章がURI(Uniform Resource Identifier)を含むか否か、添付ファイル(画像ファ
イル等)を含むか否かといった付加情報に対応付けてパラメータ(第3のパラメータとも呼ぶ)を記憶しているものとする。そして、関心度付与部205は、文書取得部201が取得した文章について、第1のパラメータ、第2のパラメータ及び第3のパラメータ、並びに所定の数式を用いて関心度を算出し、文章記憶部203に記憶されている文章に対応づけて関心度を登録する。一方、回答取得部202が取得した文章については、関心度として所定の値が付与される。なお、回答を得るために行った質問ごとに異なる値を付与してもよい。
【0024】
具体的には、SNSへの投稿等については、例えば下記のような数式(1)により関心
度を求めるようにしてもよい。
関心度=a
0+a
1×x
1+a
2×x
2+a
3×x
3 ・・・(1)
なお、a
0は、所定の係数である。また、a
1〜a
3は、上述した第1のパラメータ〜第3
のパラメータとする。また、x
1は、SNSの種類によって重みづけするための重みパラ
メータである。例えば、各ユーザにとって重要度の高いと評価されたSNSほど上述の関心度が高くなるようなパラメータが予め設定されるものとする。また、x
2は、ユーザに
よるSNSへの投稿、閲覧、お気に入り登録、共有といった操作(アクション)の回数又はこれに基づく値である。例えば、操作の種類ごとに操作の回数を示す値を含むベクトルで表される。x
3は、URIや添付ファイルといった付加情報の数又はこれに基づく値で
ある。例えば、付加情報の種類ごとに、付加情報を含む投稿等がなされた数を示す値を含むベクトルで表される。
【0025】
x
1は、SNSの種別に応じたパラメータであり、ユーザごとに例えばSNSの利用状
況に応じて重みづけされた値が定められているものとする。
図6は、パラメータ記憶部204に記憶され、第1のパラメータ(x
1)を保持する第1パラメータテーブルの一例を
示す図である。
図6のテーブルは、ユーザID、SNS、及びパラメータの項目を含む。ユーザIDのフィールドには、ユーザを一意に特定するための識別情報が登録される。SNSのフィールドには、SNSを一意に特定するための識別情報が登録される。パラメータ1のフィールドには、ユーザごと且つSNSごとに予め重みづけされる重みパラメータが登録される。そして、ユーザ毎に、複数のSNSに対する重みパラメータを所定の順序で含むベクトルを生成し、第1のパラメータ(x
1)として用いるものとする。
【0026】
x
2は、ユーザがSNSにおいて行う操作に応じて重みづけされたパラメータである。
図7は、パラメータ記憶部204に記憶され、第2のパラメータ(x
2)を保持する第2
パラメータテーブルの一例を示す図である。
図7のテーブルは、ユーザID、SNS、操作及びパラメータ2の項目を含む。ユーザIDのフィールドには、ユーザを一意に特定するための識別情報が登録される。SNSのフィールドには、SNSを一意に特定するための識別情報が登録される。操作のフィールドには、投稿、お気に入り、共有、リンク先参照、表示、引用等のようなユーザがSNSにおいて行う操作が登録される。また、パラメータ2のフィールドには、操作ごとに重みづけされた第2のパラメータが予め登録される。
【0027】
x
3は、ユーザの操作に付随する要素に応じて重みづけされたパラメータである。
図8
は、パラメータ記憶部204に記憶され、第3のパラメータ(x
3)を保持する第3パラ
メータテーブルの一例を示す図である。
図8のテーブルは、ユーザID、SNS、付加情報及びパラメータ3の項目を含む。ユーザIDのフィールドには、ユーザを一意に特定するための識別情報が登録される。SNSのフィールドには、SNSを一意に特定するための識別情報が登録される。付加情報のフィールドには、URIを含む場合、又は添付ファイルがある場合のような、操作に付随する条件が登録される。また、パラメータ3のフィールドには、付加情報ごとに重みづけされた第3のパラメータが予め登録される。
【0028】
本実施形態では、所定のSNSにおいてユーザが行った投稿等に基づき、文章に含まれる所定の単語に対するユーザの関心の度合いを表す値として、上記のような関心度が算出される。
【0029】
図3の形態素解析部206は、文章記憶部203に記憶されている、ユーザに関連付けられた文章を読み出して形態素解析を行い、単語に分解する。なお、形態素解析部206は、図示していない形態素解析用の辞書や、例えば不特定多数のユーザが編集可能なオンライン辞書サービスの見出し語のリストを用いて一般名詞や固有名詞を抽出すると共に、辞書に登録されていない固有名詞や日時表現のような固有表現も抽出する。なお、後述す
る通り、文脈を解析して辞書に登録されていない単語(「未知語」とも呼ぶ)も固有表現として抽出することができる。単語記憶部207は、主記憶装置又は補助記憶装置等からなり、形態素解析部206が分解した単語を保持する。このとき、分解前の文章に対して付与された関心度を、分解後の各単語に対応付けて記憶させておく。
【0030】
図9は、単語記憶部207に記憶される単語テーブルの一例を示す図である。
図9のテーブルは、
図4とほぼ同様であるが、文章の項目の代わりに単語の項目を含む。また、単語のフィールドには、形態素解析によって分解された、上述の文章に含まれる単語が登録される。
【0031】
図3の特徴語抽出部208は、いわゆる係り受け解析器を用いて固有表現を特定するとともに文章内で単語の重複を排除し、特定された固有表現を特徴語として抽出する。なお、係り受け解析器は、文章に含まれる単語及びその単語の品詞に基づいて(すなわち、文脈に基づいて)、固有表現であるか否か判断することができる。同時に、係り受け解析器は、固有表現であると判断された単語が表す内容を所定の項目に分類することができる。例えば、抽出された固有表現を、人物や場所、行動等といった分類項目に分けることができる。このような係り受け解析器は、既存の様々な方式を採用することができる。また、特徴語記憶部209は、主記憶装置又は補助記憶装置等からなり、抽出された特徴語を、上述した関心度と対応付けて記憶する。
【0032】
図10は、特徴語記憶部209に記憶される特徴語テーブルの一例を示す図である。
図10のテーブルは、特徴語、分類、及び関心度の項目を含む。特徴語のフィールドには、抽出された特徴語が登録される。また、分類のフィールドには、人物や場所、行動等、係り受け解析器が分類した、特徴語が表す内容の分類項目が登録される。
【0033】
特定分野辞書210は、例えば、不特定多数のユーザが編集可能なオンライン辞書サービスの特定の分野に分類された単語のリストである。なお、特定分野辞書210は嗜好分析装置2でなくネットワーク4を介して接続された他の装置が有していてもよい。本実施形態では、例えば対象のトピックである観光やこれに関連する分野にカテゴライズされた用語の辞書(図示せず)を用意しておくものとする。分野限定部211は、特定分野辞書210を用いて、特徴語記憶部209に記憶された特徴語から、所定の分野に関連する用語を抽出する。また、用語記憶部212は、主記憶装置又は補助記憶装置等からなり、分野限定部211によって抽出された用語を記憶する。例えば、
図10に示した特徴語のリストから、特定分野辞書210に登録されていない単語が削除され、
図11に示すような観光分野に関連する用語のリストが生成されて用語記憶部212へ格納される。
【0034】
代表語辞書213は、主記憶装置又は補助記憶装置等からなり、特徴語と当該特徴語と似た意味を持つ代表語との対応関係を予め保持しているものとする。代表語は、予め所定のタイミングで特徴語と対応付けて記憶される。
【0035】
具体的には、所定の分野の文章においてユーザが用いた特徴語をサンプリングし、共起関係を表す空間ベクトル(「意味ベクトル」、「分散表現」とも呼ぶ)を生成する。例えば、サンプルとして、対象となる観光分野について言及した文章を、記述したユーザを限定せずに収集し、コーパスを生成する。また、コーパスに基づいて、例えばWord2Vecのような技術を利用し、単語の意味的な特徴が反映された意味ベクトルを生成する。本実施形態では、上述した用語を含む
図12に示すような意味ベクトルが予め生成されているものとする。
図12のテーブルは、単語及び意味ベクトルの項目を含み、コーパスに含まれる文章を分解して得られた単語について、意味ベクトルが生成及び記憶される。そして、意味ベクトルをクラスタリングし、似た意味を持つと推定される特徴語を集約する。クラスタリングは、例えばK−means法のような既存の技術を利用して行うことが
できる。そして、例えば、同一のクラスタに含まれる特徴語の意味ベクトルが、当該クラスタの重心に最も近い単語を代表語に決定し、代表語と特徴語とを対応付けたリストを、代表語辞書213に保持する。本実施形態では、
図13に示すようなリストが登録されているものとする。
図13の例では、単語「キャンプ」が代表語「アウトドア」に対応付けられている。
【0036】
また、代表語置換部214は、代表語辞書213に保持されている情報を用いて特徴語記憶部209に記憶された特徴語を代表語に置き換える。上述したような代表語に置き換えることにより、ユーザが文章中で使用した単語(特徴語)が異なる場合であっても、似た意味の特徴語を代表語に置き換えることができ、用字又は用語の不統一を吸収できるようになる。代表語記憶部215は、主記憶装置又は補助記憶装置等からなり、代表語置換部214が置き換えた代表語を、上述した関心度と対応付けて記憶する。
【0037】
スコア決定部216は、代表語記憶部215が記憶している代表語と関心度とに基づいて、ユーザの嗜好情報を生成し、代表語と対応付けて嗜好情報記憶部217に格納する。嗜好情報は、代表語と関心度に基づいて生成されたスコアとの組み合わせの集合で表される。スコアは、例えば複数の特徴語が同一の代表語に置換された場合、代表語の重複を除き、置換前の特徴語に対応付けられていた関心度のうち最も値が高いものを置換後の代表語のスコアとする。本実施形態では、
図14に示すような代表語とスコアとの対応付けが格納される。ここでは、
図11の用語「キャンプ」が代表語「アウトドア」に置換され、重複する「アウトドア」のうち関心度の高い(本実施形態では関心度の値は同一)レコードに絞られている。
【0038】
このようにして生成された代表語とスコアとの組み合わせの集合(すなわち、嗜好情報)を用いれば、ユーザに対し嗜好情報に応じた情報の提供を行うことができるようになる。例えば、いわゆるコンテンツベースフィルタリングによって嗜好情報が所定の傾向を示すユーザを抽出し、何らかの情報を提供するようにしてもよい。また、例えばいわゆる協調フィルタリングによって嗜好情報の傾向が似たユーザに対し、他のユーザが興味を示した情報を提供するようにしてもよい。
【0039】
<装置構成>
なお、ユーザ装置1、嗜好分析装置2、SNS提供装置3は、
図15に示すようなコンピュータである。
図15は、コンピュータの一例を示す装置構成図である。例えば、コンピュータは、CPU(Central Processing Unit)1001、主記憶装置1002、補助
記憶装置1003、通信IF(Interface)1004、入出力IF(Interface)1005、ドライブ装置1006、通信バス1007を備えている。CPU1001は、プログラムを実行することにより本実施の形態で説明する処理を行う。主記憶装置1002は、CPU1001が読み出したプログラムやデータをキャッシュしたり、CPUの作業領域を展開したりする。主記憶装置は、具体的には、RAM(Random Access Memory)やROM(Read Only Memory)等である。補助記憶装置1003は、CPU1001により実行されるプログラムや、本実施の形態で用いる設定情報などを記憶する。補助記憶装置1003は、具体的には、HDD(Hard-disk Drive)やSSD(Solid State Drive)、フラッシュメモリ等である。主記憶装置1002や補助記憶装置1003は、嗜好情報記憶部103、観光情報記憶部107、予定情報記憶部108等として働く。通信IF1004は、他のコンピュータ装置との間でデータを送受信する。通信IF1004は、具体的には、有線又は無線のネットワークカード等である。入出力IF1005は、入出力装置と接続され、ユーザから入力を受け付けたり、ユーザへ情報を出力したりする。入出力装置は、具体的には、カメラ等の撮像装置、キーボード、マウス、ディスプレイ、タッチパネル、又はGPS受信機や磁気センサ、加速度センサ等のセンサ等である。ドライブ装置1006は、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Di
sc)、BD(Blu-ray(登録商標) Disc)等の記憶媒体に記録されたデータを読み出したり、記憶媒体にデータを書き込んだりする。以上のような構成要素が、通信バス1007で接続されている。なお、これらの構成要素は複数設けられていてもよいし、一部の構成要素(例えば、ドライブ装置1006)を設けないようにしてもよい。また、入出力装置がコンピュータと一体に構成されていてもよい。そして、ドライブ装置で読み取り可能な可搬性の記憶媒体や、USBメモリのような補助記憶装置、ネットワークIFなどを介して、本実施の形態で実行されるプログラムが提供されるようにしてもよい。そして、CPU1001がプログラムを実行することにより、上記のようなコンピュータを嗜好分析装置2として働かせる。なお、上記構成の一部を担う複数の装置によって上記機能が提供される態様であってもよい。
【0040】
<文書分析処理>
図16は文書分析処理の一例を示す処理フロー図である。嗜好分析装置2の文書取得部201は、ユーザがSNSに対して行った操作を監視し、ユーザがSNSにおいて使用するアカウントによる投稿等が行われた場合に投稿等された文章を取得して文章記憶部203に格納しておくものとする。そして、嗜好分析装置2の関心度付与部205は、文章が投稿等されたSNSの種別や、ユーザがSNSに対して行った操作、操作に付随する所定の要素の有無等に基づいて関心度を算出し、文章に対応付けて記憶させる(
図16:S1)。本ステップでは、例えば上述した数式(1)により関心度を求める。そして、
図4に示すようなデータに関心度の値が登録される。また、形態素解析部206は、文章記憶部203に記憶されている文章に対していわゆる形態素解析を行い、文章を構成する単語に分解する(S2)。本ステップでは、
図9に示すようなデータが生成される。また、特徴語抽出部208は単語から一般名詞や固有名詞である特徴語を抽出すると共に、分野限定部211は、本実施形態において対象とする分野の用語を予め保持している特定分野辞書を用いて、所定の分野における特徴語を抽出し、用語記憶部212に格納する(S3)。分野限定部211の説明で述べたように、本ステップでは、例えば観光分野に関する辞書に登録されている用語のみに絞り込む。そして、
図11に示すような、用語と関心度との組み合わせが生成される。なお、特徴語抽出部208の処理を省略し、分野限定部211が単語記憶部207の単語から特定分野の用語に絞り込むようにしてもよい。また、代表語置換部214は、予め代表語辞書213に記憶されている代表語と用語との組み合わせに基づき、用語記憶部212に格納されている用語を代表語に置き換える(S4)。そして、スコア決定部216は、代表語と関心度との組み合わせに基づいて代表語とスコアとの組み合わせの集合で表されるユーザの嗜好情報を生成し、嗜好情報記憶部217に格納する(S5)。嗜好情報は、換言すればユーザの興味の対象をリスト化すると共に、興味の程度を示すスコアを設定したデータである。
【0041】
S4において代表語へ置き換えることにより、ユーザが自由に記載した文章の用字又は用語の不統一を吸収し、統一的に利用できる代表語を用いた嗜好情報を生成できるようになる。また、代表語辞書213について説明したように、例えばクラスタリングされた意味ベクトルの重心に最も近い単語を当該クラスタに含まれる用語の代表語とすることにより、用語の意味的に適切な置き換えを行うことができるようになっている。したがって、このような処理によれば、複数のユーザが作成した文章から統一的に嗜好を表すデータを抽出できるようになる。
【0042】
<回答分析処理>
図17は、回答分析処理の一例を示す処理フロー図である。嗜好分析装置2の回答取得部202は、ネットワーク4を介してユーザ装置1にユーザへの質問を出力させる(
図17:S11)。本ステップでは、例えば
図5のQ1に示す質問「今までに行ったことのある好きな観光地はどこですか?」が出力される。そして、回答取得部202は、ネットワーク4を介してユーザ装置1からユーザの回答を取得し、文章記憶部203に記憶させる
(S12)。本ステップでは、ユーザが「○×遊園地です」と回答したものとする。なお、質問や回答はテキストや音声で入出力を行うようにしてもよいし、選択肢の提示及び選択によって入出力を行うようにしてもよい。例えば、
図2に示したようなエージェントを介して情報が収集される。また、形態素解析部206は、文章記憶部203に記憶されている文章に対していわゆる形態素解析を行い、文章を構成する単語に分解する(S13)。本ステップは、文書分析処理と同様であり、例えば上述した回答が「○×遊園地」及び「です」に分解される。また、特徴語抽出部208は単語から一般名詞や固有名詞である特徴語を抽出すると共に、分野限定部211は、本実施形態において対象とする分野の用語を予め保持している特定分野辞書を用いて、所定の分野における特徴語を抽出し、用語記憶部212に格納する(S14)。分野限定部211の説明で述べたように、本ステップでは、例えば観光分野に関する辞書に登録されている用語のみに絞り込む。本ステップでは、例えば、S13で生成された単語のうち、「○×遊園地」が抽出される。また、回答分析処理では抽出された単語に対して所定の関心度が対応付けられる。なお、質問ごとに対応付ける関心度の値を設定しておくようにしてもよい。そして、用語と関心度との組み合わせが用語記憶部212に記憶される。なお、回答分析処理においても、特徴語抽出部208の処理を省略し、分野限定部211が単語記憶部207の単語から特定分野の用語に絞り込むようにしてもよい。また、代表語置換部214は、予め代表語辞書213に記憶されている代表語と用語との組み合わせに基づき、用語記憶部212に格納されている用語を代表語に置き換える(S15)。本実施形態では、例えば用語「○×遊園地」に対応付けて代表語「テーマパーク」が代表語辞書213に登録されており、置換されるものとする。そして、スコア決定部216は、代表語と関心度との組み合わせに基づいて代表語とスコアとの組み合わせの集合で表されるユーザの嗜好情報を生成し、嗜好情報記憶部217に格納する(S16)。なお、S14において関心度を設定せず、S16においてはじめて所定のスコアを設定するようにしてもよい。回答分析処理においても、嗜好情報は、換言すればユーザの興味の対象をリスト化すると共に、興味の程度を示すスコアを設定したデータである。
【0043】
回答分析処理においても、S15で用語を代表語に置き換えることにより、ユーザが文章で行った回答の用字又は用語の不統一を吸収し、統一的に利用できる代表語を用いた嗜好情報を生成できるようになる。また、回答分析処理においては、予め回答として想定される品詞等が想定できる質問を行うことで、文章からユーザの嗜好に関連する単語を抽出する精度を向上させることができる。
【0044】
<変形例>
上述した実施形態では、1つの投稿や回答に同一の単語が出現しても、特徴語抽出部208が重複を排除する。また、異なる投稿や回答に同一の単語が出現しても、スコア決定部が最も高い関心度を採用するようにしている。しかしながら、このような態様には限定されず、同一の単語が複数出願する場合に、例えば関心度の値を高くするような数式を採用してもよい。
【0045】
上述したように、実施形態における質問は、肯定又は否定で回答できる質問や、2以上の選択肢のいずれかで回答できる質問であってもよい。この場合、ユーザの嗜好は、例えば質問と回答との組み合わせによって表すようにしてもよい。具体的には、例えば質問に対する回答を要素とする特徴ベクトルの形式でユーザの嗜好情報を生成することができる。
【0046】
また、実施の形態では、テーブルに格納する情報を、行及び列からなる一般的な表で例示したが、テーブル設計や形式は特に限定されない。例えば、テーブル設計については、ソフトウェアの性能等を考慮して適切に正規化することができる。データベースの形式については、RDBMS(Relational Database Management System)に限定されず、いわ
ゆるNoSQLと呼ばれるような、キーバリュー型等の管理システムを採用してもよい。