以下、本明細書の実施例を添付図面に基づいて詳細に説明する。
実施例の説明において、本明細書が属する技術分野によく知られているとともに本明細書と直接的に関連がない記述内容については説明を省略する。これは不必要な説明を省略することによって本明細書の要旨をあいまいにしなくてもっと明らかに伝達するためである。
同じ理由で、添付図面において一部の構成要素は誇張するとか省略するとか概略的に示した。また、各構成要素の大きさは実際の大きさをそのまま反映するものではない。各図で同一又は対応の構成要素には同じ参照番号を付与した。
以下、図面を参照して本明細書の実施例について説明する。
本発明の一部実施例によれば、予約語は他のキーワードとの関連度情報を介して表現又は定義されるか、その特性、活用方式、性質などが表現又は定義できる文字列を意味することができる。しかし、他の方式、例えば管理者の手動入力によって定義/表現される予約語を本発明に適用することも可能である。関連度情報の詳細な構成は後述する。
図1は本明細書の一実施例による属性言語を用いた情報提供システムの網構成図である。
図1を参照すると、本明細書の一実施例による情報提供システムは、端末200、情報提供装置300及び通信網150を含むことができる。
端末200は、例えばスマートフォン、PDA、タブレットPC、ノート型パソコン、ラップトップコンピューター、個人用コンピュータ、その他の通信を遂行し、使用者の入力を受信し、画面を出力することができる電子的器機又はこれと類似した器機によって具現されることができる。
情報提供装置300は、例えばワークステーション、サーバー、一般用コンピュータ、その他の通信を遂行することができる電子的器機又はこれと類似した器機によって具現されることができる。
端末200と情報提供装置300は通信網150を介して連結され、通信網150を介して互いに通信する。
通信網150は、例えばLTE(Long Term Evolution)、LTE−A(LTE−Advanced)、WI−FI、LAN(Local Area Network)、WAN(Wide Area Network)、CDMA(Code Division Multiple Access)、TDMA(Time Division Multiple Access)、WiBro(Wireless Broadband)、GSM(登録商標)(Global System for Mobile Communications)その他の過去又は現在に開発されたとか今後に使用可能となる通信方式のうち少なくとも一部によって具現されることができる。以下では、便宜のために、通信網150を言及せず、端末200と情報提供装置300が直接通信するものとして説明する。
端末200と情報提供装置300の具体的な動作及び構成については図2〜図8を参照して後述する。
図2は本明細書の一実施例による端末200のブロック構成図である。
図2を参照すると、本明細書の一実施例による端末200は、入力部210、表示部220、通信部230、格納部240及び制御部250を含むことができる。
入力部210は使用者の入力動作を入力信号に変換して制御部250に送信する。入力部210は、例えばキーボード、マウス、タッチスクリーン上のタッチセンサー、タッチパッド、キーパッド、音声入力、その他の現在又は過去に可能であるか未来に可能となる入力処理装置によって具現されることができる。入力部210は、例えば使用者の情報提供要請入力を受信して制御部250に伝達することができる。
表示部220は制御部250の制御によって画面を出力する。表示部220は、例えばLCD(液晶表示装置)、LED(発光ダイオード)、OLED(有機発光ダイオード)、プロジエクター、その他の現在又は過去に可能であるか未来に可能となる表示装置によって具現されることができる。表示部220は、例えば情報提供のためのインターフェースページ又は情報提供結果ページを表示することができる。実施例によっては、画面出力の代わりに音声出力又は振動など、その他の使用者に情報を伝達することができる他の方式を用いる構成部が表示部220の代わりに使われることもできる。
通信部230は情報提供装置300及び/又はその他の外部装置とデータをやり取りする。通信部230は情報提供装置300から受信したデータを制御部250に伝達する。また、通信部230は制御部250の制御によってデータを情報提供装置300に伝達する。通信部230が使用する通信技術は通信網150の類型又はその他の事情によって変わることができる。
格納部240は制御部250の制御によってデータを保存し、要請されたデータを制御部250に伝達する。
制御部250は端末200の全般的な動作と各構成部を制御する。制御部250は、特に後述するように、入力部210から入力された情報によって情報提供を要請し、その他のデータを情報提供装置300に送信し、情報提供装置300から受信したページ情報によって結果ページ及び/又はインターフェースページを表示部220を介して表示する。
制御部250が行う動作は物理的に分離されている多くの演算装置によって分散処理されることができる。制御部250が行う動作の一部は第1サーバーが行い、他の動作は第2サーバーが行う方式も可能である。この場合、制御部250は物理的に分離されている演算装置の総和によって具現されることができる。
格納部240は物理的に分離されている保存装置の総和によって具現されることもできる。
制御部250又は格納部240が物理的に分離されている多くの装置の総和によって具現される場合、多くの装置間の通信が必要であることもある。ここで、説明の簡素化のために、格納部240又は制御部250が単一客体によって具現された場合を仮定して説明する。
端末200がデータを送受信する場合、観点によって制御部250の制御によって通信部230がデータを送受信すると表現することもでき、制御部250が通信部230を制御してデータを送受信すると表現することもできる。
端末200の各構成部の具体的な動作については図4〜図8を参照して後述する。
図3は本明細書の一実施例による情報提供装置300のブロック構成図である。
図3を参照すると、本明細書の一実施例による情報提供装置300は、通信部310、制御部320及び格納部330を含むことができる。
通信部310は端末200及び/又はその他の外部装置とデータをやり取りする。通信部310は端末200から受信したデータを制御部320に伝達する。また、通信部310は制御部320の制御によってデータを端末200に伝達する。通信部310が使用する通信技術は通信網150の類型又はその他の事情によって変わることができる。
格納部330は制御部320の制御によってデータを保存し、制御部320から要請されたデータを制御部320に伝達する。
制御部320は情報提供装置300の全般的な動作と各構成部を制御する。制御部320は、特に後述するように、インターフェースページ要請、情報提供結果ページ要請を行い、その他にデータを通信部310を介して受信すれば、格納部330から必要なデータを取ってきて(load)ページ情報を生成し、ページ情報を通信部310を介して端末200に伝達する。
情報提供装置300がデータを送受信する場合、観点によって制御部320の制御によって通信部310がデータを送受信すると表現することもでき、制御部320が通信部310を制御してデータを送受信すると表現することもできる。
一方、記憶部330は端末に組み込まれて地域に基づくアイテム推薦方法を実行するためのプログラムコード、及び/又はそのプログラムを組み込むための組込みパッケージ(組込みプログラムコード)を記憶する。以下、地域に基づくアイテム推薦方法を実行するためのプログラムコード、及び/又はそのプログラムを組み込むための組込みパッケージ(組込みプログラムコード)を仮想入力インターフェースプログラムという。
情報提供装置300を開発する開発者又は管理者は仮想入力インターフェースプログラムを記憶部330に記憶することができる。情報提供装置300が通信部310を介して仮想入力インターフェースプログラムを要請する要請メッセージを受信すれば、制御部320は通信部310を介して仮想入力インターフェースプログラムを端末200に伝達する。
情報提供装置300の各構成部の具体的な動作については図4〜図8を参照して後述する。
他の実施例によると、視覚的に情報を提供するためのページの代わりに音声又は他の方式で情報を提供するためのデータが送受信されることができる。
図4は本明細書の一実施例による情報提供インターフェースを介しての情報提供過程のフローチャートである。
段階410で、情報提供装置300の制御部320はインターフェースページ情報を生成する。インターフェースページ情報はインターフェースページを生成するために必要な情報である。インターフェースページは使用者の入力を誘導し、使用者の入力を受信して情報提供装置300に伝達するためのページである。例えば、インターフェースページ情報はHTML文書又はその他のマークアップ言語文書形態であり得る。他の実施例として、端末200がインターフェースページの書式情報を予め持っており、コンテンツに対応する事項のみが情報提供装置300から端末200に伝達することもできる。以下では、便宜のために、インターフェースページ情報又はその他のページ情報はHTML文書形式で伝達されると仮定して説明する。しかし、本明細書の権利範囲がこれに限定されるものではない。
段階420で、情報提供装置300の通信部310はインターフェースページ情報を端末200に伝達する。
段階430で、端末200の制御部250はインターフェースページ情報を用いてインターフェースページを構成する。例えば、制御部250はウェブブラウザーを駆動してHTML文書を解釈してウェブページの形態にインターフェースページを構成することができる。ウェブブラウザーの代わりに別個のアプリケーションを使うこともできる。
段階440で、端末200の表示部220は使用者400にインターフェースページを表示する。インターフェースページは、例えば使用者400が情報提供を要請し、情報提供のためのキーワードを入力及び/又は選択し、その他の情報提供のための設定が可能なインターフェースを含むことができる。
段階450で、端末200の入力部210はインターフェースページを介して入力された使用者400の選択入力を受信して制御部250に伝達する。
段階460で、端末200の通信部230は制御部250の制御によって使用者の選択入力を識別することができる入力情報を情報提供装置300に伝達する。
段階470で、情報提供装置300の制御部320は使用者の入力(例えば、キーワード及び/又はその他の情報提供設定)を用いて結果ページ情報を生成する。結果ページ情報を生成するための準備過程と結果ページ情報を生成する過程については図5〜図8を参照して後述する。結果ページ情報は、例えばHTML文書形式及び/又はイメージ形式で構成されることができる。
段階480で、情報提供装置300の通信部310は結果ページ情報を端末200に伝達する。
段階490で、端末200の制御部250は通信部230が受信した結果ページ情報を用いて結果ページを構成する。例えば、制御部250はHTML形式の結果ページ情報を解釈して結果ページを構成することができる。
段階495で、端末200の表示部220は結果ページを使用者400に提供する。
図4の実施例で、使用者に視覚的形態のページを提供することを仮定したが、音声でインターフェース又は結果情報を提供することも可能である。この場合、表示部220の代わりに音声出力部が用いられることができる。視覚的/聴覚的方式の代わりに現在可能であるか未来に可能となる他の方式のインターフェース方式が使用者400との関係によって使われることもできる。この場合、情報提供装置300はインターフェース方式に合うようにページ情報の代わりに他の方式で変換された情報を端末200に提供することができる。
図5以降の実施例で、使用者400は自分が関心を有する特定の関心分野の客体についての情報を受けようとする。しかし、本明細書の権利範囲がこれに限定されるものではない。
関心分野は、例えば客体の類型となり得る。例えば、関心分野が‘有名人’であれば、この関心分野に相応する客体は‘ユ シ ミン’、‘ユ ゼ ソク’、‘テイラースイフト’などを含むことができる。例えば、関心分野が‘映画’であれば、この関心分野に相応する客体は‘ダンケルク’、‘スパイダーマン:ホームコーミング’、‘スーパーバッド3’などを含むことができる。例えば、関心分野が‘放送プログラム’であれば、この関心分野に相応する客体は‘無限挑戦’、‘アメリカンアイドル’、‘王座のゲーム’などを含むことができる。
以下の実施例で、キーワードとの関係(関連度/加重値など)を評価するために文書が収集される。収集された文書はいずれも同等な価値を有するものと評価されることもでき、最新の文書がより高い価値を有するものと評価されることもできる。すなわち、評価時点基準文書の年齢とその文書内に登場するキーワード間の関連度は負の相関関係を有することができる。
後述する図5以降の過程でも文書の最新性によって価値を違って評価することができる。例えば、評価時点基準から1日が経た文書に二つのキーワードが一緒に登場した場合が、評価時点基準から10日が経た文書に二つのキーワードが一緒に登場した場合に比べて10倍高い関連度と評価されることができる。文書の年齢は、例えば秒単位/分単位/時間単位で評価されるとか日単位/月単位/年間単位などで評価されることもできる。制御部320は文書の年齢が反映される前に評価された該当文書によるが、部分関連度値を文書の年齢で分けて文書の年齢が反映された部分関連度を抽出し、このような部分関連度を累積して両キーワード間の関連度を抽出することができる。
文書の年齢を確認するための文書の生成時点は、例えば文書内に含まれた掲示時点及び/又はメタデータを用いて把握するとか、周期的なクローリングによって、以前のクローリングによって発見されなかった文書が新たに発見される場合、新しいクローリング時点に新規文書が付け加わったものと把握することもできる。
図9は本明細書の一実施例による情報提供過程のフローチャートである。
段階910で、制御部320は客体項目と代表属性キーワード対に対応する客体キーワード関連度を格納部330に保存する。
図10は本明細書の一実施例による保存された客体キーワード関連度の例示図である。
図10の実施例で、客体項目は全部でm個(i1〜im)があり、代表属性キーワードは全部でn個(k1〜kn)がある。
例えば、客体項目i5と代表属性キーワードk3の客体キーワード関連度はw5、3となる。
段階910の過程は、例えば図5〜図8の実施例の一部によって行われるとかこれと類似した過程、又はこれに相応する過程で行われることができる。他の実施例によると、段階910の過程は管理者の入力によって行われるとか外部システムで決定された客体キーワード関連度をネットワーク又は記憶媒体を介して受けて行われることができる。
図5は本明細書の一実施例による段階910の詳細フローチャートである。
図5を参照すると、段階510で、制御部320は第1集合文書から代表属性キーワード候補集合を抽出する。制御部320は、例えば第1集合文書のうち関心分野に相応する文書によく登場するキーワードを代表属性キーワード候補集合として収集することができる。
図6は本明細書の一実施例による段階510の詳細フローチャートである。
制御部320は特定分野に属する客体項目を示す客体キーワードと同一の文書に登場するキーワード及び特定分野を示す分野キーワードと同一の文書に登場するキーワードを第1属性キーワード候補集合及び第2属性キーワード候補集合と設定することができる。
例えば、情報提供サービスを提供しようとする関心分野が有名人であれば、分野キーワードは‘有名人’、‘芸能人’、‘映画俳優’、‘スター’、‘セレブリティ’などを含むことができる。分野キーワードは管理者によって設定されるとか制御部320によって推薦又は設定することができる。制御部320は、一部の分野キーワードを獲得した後、この分野キーワードとの関連度が所定値以上と分析された類似キーワードを追加的分野キーワードと推薦/設定することができる。
情報提供サービスを提供しようとする関心分野が有名人であれば、客体キーワードは該当関心分野に属する個別人物となり得る。例えば、“ユ ゼ ソク”、“テイラースイフト”、“スティープンカリー”などが関心分野有名人に相応する客体キーワードとなり得る。
分野キーワードと客体キーワードの関係を説明すると、例えば分野キーワードが客体キーワードの属性又は類型に対応することができる。分野キーワードが集合を示せば、客体キーワードはその集合に属する元素を示すものとなり得る。
客体キーワードは管理者によって設定されるとか、分野キーワードと類似した方式で選定されることができる。さらに他の実施例によると、制御部320は収集された文書の文脈を分析し、前記分野キーワードが示す集合に属する元素と判断されるキーワードを客体キーワードと選定することができる。
人気客体キーワードと不人気客体キーワードは該当客体キーワードの検索/収集量によって区分されることができる。制御部320は各客体キーワードが含まれた文書を検索/収集し、収集量が特定の閾値以上の客体キーワードを人気客体キーワードに設定し、残りの客体キーワードを不人気客体キーワードに設定することができる。
人気分野キーワードと不人気分野キーワードは該当分野キーワードの検索/収集量によって区分されることができる。制御部320は各分野キーワードが含まれた文書を検索/収集し、収集量が特定閾値以上の分野キーワードを人気分野キーワードに設定し、残りの分野キーワードを不人気分野キーワードに設定することができる。ただ、人気客体キーワードと不人気客体キーワードを区分する閾値と人気分野キーワードと不人気分野キーワードを区分する閾値は互いに異なる値となり得る。以下では、便宜のために、人気客体キーワードと人気分野キーワードをひっくるめて人気分野客体キーワードと称する。また、便宜のために、不人気客体キーワードと不人気分野キーワードをひっくるめて不人気分野客体キーワードと言う。
変形実施例では、人気分野客体キーワードの代わりに人気分野キーワード又は人気客体キーワードのみが使われることもできる。変形実施例では、不人気分野客体キーワードの代わりに不人気分野キーワード又は不人気客体キーワードのみが使われることもできる。
段階610で、制御部320は人気分野客体キーワードと同一の文書に一緒に登場するキーワードを第1属性キーワード候補集合と設定する。
制御部320は人気分野客体キーワードが含まれた文書を検索/収集し、収集された文書に含まれたキーワードを第1属性キーワード候補集合と設定することができる。他の実施例によると、制御部320は収集された文書に含まれたキーワードのうち分野キーワード及び客体キーワードを第1属性キーワード候補集合から除くことができる。また、制御部320は所定の意味ないキーワード、例えば助詞/冠詞などを第1属性キーワード候補集合から除くことができる。さらに他の実施例によると、制御部320は収集された文書に含まれたキーワードのうち所定の辞書(dictionary)に登録されたキーワードを第1属性キーワード候補集合に含ませることができる。
さらに他の実施例によると、制御部320は人気分野客体キーワードが含まれた文書を検索/収集し、収集された文書で人気分野客体キーワード又はそのキーワードが含まれた文章から所定の距離以内に配置されたキーワードを第1属性キーワード候補集合に含ませることもできる。さらに他の実施例によると、制御部320は人気分野客体キーワードが含まれた文書を検索/収集し、文脈を分析して人気分野客体キーワードを修飾/説明する用途に使用されたキーワードを第1属性キーワード候補集合に含ませることもできる。
キーワード間の距離又はキーワードと文章間の距離は、例えば二つのキーワード又はキーワードと文章間に位置する文章の個数、二つのキーワード又はキーワードと文章間に位置する単語の個数、二つのキーワード又はキーワードと文章間に位置する語節の個数、二つのキーワード又はキーワードと文章間に位置する文字の個数のいずれか一つ以上を基準に判断されることができる。
制御部320はキーワード分析のために形態素分析をまず行うことができる。
段階620で、制御部320は不人気分野客体キーワードと同一の文書に一緒に登場するキーワードを第2属性キーワード候補集合と設定する。
制御部320は不人気分野客体キーワードが含まれた文書を検索/収集し、収集された文書に含まれたキーワードを第2属性キーワード候補集合と設定することができる。他の実施例によると、制御部320は収集された文書に含まれたキーワードのうち分野キーワード及び客体キーワードを第2属性キーワード候補集合から除くことができる。また、制御部320は所定の意味ないキーワード、例えば助詞/冠詞などを第2属性キーワード候補集合から除くことができる。さらに他の実施例によると、制御部320は収集された文書に含まれたキーワードのうち所定の辞書(dictionary)に登録されたキーワードを第2属性キーワード候補集合に含ませることができる。
さらに他の実施例によると、制御部320は不人気分野客体キーワードが含まれた文書を検索/収集し、収集された文書で不人気分野客体キーワード又はそのキーワードが含まれた文章から所定の距離以内に配置されたキーワードを第2属性キーワード候補集合に含ませることもできる。さらに他の実施例によると、制御部320は不人気分野客体キーワードが含まれた文書を検索/収集し、文脈を分析して不人気分野客体キーワードを修飾/説明する用途に使用されたキーワードを第2属性キーワード候補集合に含ませることもできる。
キーワード間の距離又はキーワードと文章間の距離は、例えば二つのキーワード又はキーワードと文章間に位置する文章の個数、二つのキーワード又はキーワードと文章間に位置する単語の個数、二つのキーワード又はキーワードと文章間に位置する語節の個数、二つのキーワード又はキーワードと文章間に位置する文字の個数のいずれか一つ以上を基準に判断されることができる。
制御部320はキーワード分析のために形態素分析を先に行うことができる。
段階630で、制御部320は前記第1属性キーワード候補集合及び前記第2属性キーワード候補集合に共に属するキーワードを前記代表属性キーワード候補集合と設定することができる。すなわち、人気分野客体キーワードを修飾する表現としても使われながら不人気分野客体キーワードを修飾する表現としても使われるキーワードが代表属性キーワード候補集合に収集されることができる。
他の実施例によると、段階510で、制御部320は人気/不人気に関係なく客体キーワード及び/又は分野キーワードと一緒に登場するキーワードを代表属性キーワード候補集合に含ませることもできる。
図5に戻り、段階520で、制御部320は第2集合文書から代表属性キーワード候補集合に含まれる各代表属性キーワードに関連した二つ以上の下位キーワードを抽出する。
段階520の下位キーワード抽出に使われる第2集合文書と段階510の代表属性キーワード候補集合抽出に使われる第1集合文書は互いに異なる文書集合でもあり得、互いに同一の文書集合でもあり得る。例えば、第1集合文書は収集可能な文書全部を含む集合であり、第2集合文書は情報提供サービスを提供しようとする特定の関心分野が主なキーワードとして使用された文書のみを含む集合となり得る。制御部320は収集可能な文書を分析し、よく登場するキーワードに基づいて各文書が情報提供サービスを提供しようとする特定の関心分野が主なキーワードとして使用された文書であるかを分析することができる。他の実施例によると、第1集合文書及び第2集合文書は共に収集可能な関連文書全部を含む集合となり得る。さらに他の実施例によると、第1集合文書は収集可能な関連文書全部を含む集合であり、第2集合文書は情報提供サービスを提供しようとする特定の関心分野に係わる文書のみを含む集合となり得る。さらに他の実施例によると、第2集合文書は収集可能な関連文書全部を含む集合であり、第1集合文書は情報提供サービスを提供しようとする特定の関心分野に係わる文書のみを含む集合となり得る。
段階520のために、制御部320は、例えば情報提供サービスを提供しようとする特定の関心分野に係わる文書のみを含む集合を生成するために、該当関心分野そのものを示す分野キーワードを含む文書及び/又は該当関心分野に属する客体キーワードを含む文書を収集し、それらのうち分野キーワード/客体キーワードの比重が所定値以上の文書を抽出して特定の関心分野に係わる文書のみを含む集合を生成することができる。分野キーワード/客体キーワードの比重は分野キーワード/客体キーワードの登場頻度又は登場位置、文脈などによって判断することができる。例えば、分野キーワード/客体キーワードがよく登場するとか分野キーワード/客体キーワードが該当文書のタイトルとして使われるとか大きな文字又は強調のための字体で表示される文書は特定の関心分野に係わる文書に分類することができる。
段階520で、制御部320は、例えば前記第2集合文書の少なくとも一部を分析して各代表属性キーワードと最も関連度が高い下位キーワードを所定の個数だけ抽出して各代表属性キーワードに関連した二つ以上の下位キーワードを抽出することができる。
制御部320は、例えば下位キーワードが代表属性キーワードと同一又は類似の文脈に登場する頻度を考慮して代表属性キーワードと下位キーワード間の関連度を判断することができる。例えば、特定の文章でキーワードAの周辺に登場する単語は他の文書でもキーワードAに関連した単語の周辺に登場することができると思われる。
“思い切って旅行を行ったが7月であるから天気があまりにも暑くて苦労した。”
“思い切って旅行を行ったが7月であるから天気があまりにもじめじめして苦労した。”
前記二つの文章を調べると、同じ文脈で“暑くて”という単語が“じめじめして”という単語に取り替えられた。制御部320は“暑い”と“じめじめする”が互いに関連の単語であることを類推することができる。
“思い切って旅行を行ったが7月であるから天気があまりにも暑くて苦労した。”
“思い切ってお休みに行ったが7月であるから天気があまりにも暑くて苦労した。”
同様に、制御部320は前記二つの文章から“旅行”と“お休み”が関連の単語であることを類推することができる。
“思い切って旅行を行ったが7月であるから天気があまりにも暑くて苦労した。”
“思い切って旅行を行ったが8月であるから天気があまりにも暑くて苦労した。”
同様に、制御部320は前記二つの文章から“7月”と“8月”が関連の単語であることを類推することができる。
制御部320は以前に収集された文書から“暑い”と“じめじめする”が互いに関連の単語であり、“7月”と“8月”が互いに関連の単語であり、“旅行”と“お休み”が互いに関連の単語であることを保存しておくことができる。その後、下記のような文章を収集すると仮定する。
“思い切ってお休みに行ったが7月であるから天気があまりにもじめじめして苦労した。”
“思い切って旅行を行ったが8月であるから天気があまりにも暑くて大変であった。”
二つの文章が同じ文脈ではないが、“暑い”と“じめじめする”が互いに関連の単語であり、“7月”と“8月”が互いに関連の単語であり、“旅行”と“お休み”が互いに関連の単語であることを分かっていれば、制御部320は前記文章によって“苦労した”と“大変であった”も関連の単語であることを学習することができる。
同一又は類似の文脈に登場する頻度が高いキーワード対は互いに関連度が高いと判断することができる。また、二つのキーワードが登場する文脈の類似度が高いほど二つのキーワード間の関連度が高いと判断することができる。制御部320は収集される文書を用いて学習を進めてキーワード間の関連度を設定し、設定されたキーワード間の関連度と文章の文脈を用いて該当文章に登場するキーワードの関連度を設定する方式でキーワード間の関連度判断の正確性を高めることができる。
これと類似した学習方式として、NNLM(Neural Net Language Model)、RNNLM(Recurrent Neural Net Language Model)、word2vec、スキップグラム(skipgram)及びCBOW(Continuous Bag−of−Words)方式が知られている。特に、word2vecを用いる場合、word2vecは文書を用いて学習して各キーワードをベクターに対応させ、二つのキーワード間の類似度は二つのベクターのコサイン類似度計算によって把握することができる。
このような方式又は類似の方式で、制御部320は第2集合文書の少なくとも一部を分析して、各代表属性キーワードと最も関連度が高い下位キーワードを所定の個数だけ抽出することができる。
段階530で、制御部320は前記第2集合文書から前記代表属性キーワード候補集合内の各代表属性キーワードと下位キーワード対に対応する関連加重値を抽出することができる。
図7は本明細書の一実施例による段階530の詳細フローチャートである。
段階710で、制御部320は前記第2集合文書の少なくとも一部を分析して前記下位キーワード間の相互関連度を抽出することができる。例えば、代表属性キーワードA1に対して関連の下位キーワードとして収集されたものがB11〜B150の50個の下位キーワードであると仮定する。この場合、制御部320はこれら50個の下位キーワードに対して二つの下位キーワードが同じ文書に一緒に登場する頻度を用いて二つの下位キーワード間の相互関連度を抽出することができる。B11とB12が同じ文書に登場する頻度によってB11とB12間の相互関連度が決定される。他の実施例によると、B11とB12が同じ文書に登場する頻度が相互関連度に影響を与えることに加え、B11とB12が同じ文書に登場する場合、二つのキーワードB11とB12間の距離(又は二つのキーワードが登場する文章間の距離)が近いほど高い相互関連度が認められることができる。類似した方式で下位キーワード間の相互関連度が抽出されることができる。キーワード間の距離又はキーワードと文章間の距離は例えば二つのキーワード又はキーワードと文章間に位置する文章の個数、二つのキーワード又はキーワードと文章間に位置する単語の個数、二つのキーワード又はキーワードと文章間に位置する語節の個数、二つのキーワード又はキーワードと文章間に位置する文字の個数のいずれか一つ以上を基準に判断されることができる。
段階720で、制御部320は前記下位キーワード間の相互関連度に基づいて各代表属性キーワードと下位キーワード間の関連加重値を抽出することができる。制御部320は、例えば各代表属性キーワードに相応する下位キーワード集合に対し、前記下位キーワード集合内の特定の下位キーワードと前記下位キーワード集合内の他の下位キーワード間の相互関連度と、前記特定の下位キーワードと前記代表属性キーワード間の関連加重値が、互いに正の相関関係を有するように前記特定の下位キーワードと前記代表属性キーワード間の関連加重値を設定することができる。
例えば、代表属性キーワードA1の下位キーワードB11とA1の他の下位キーワード(B12〜B150)間の相互関連度が高いほどA1とB11間の関連加重値が高く設定されることができる。例えば、B11とA1の他の下位キーワード(B12〜B150)間の相互関連度算術平均(又は総和)がB11とA1間の関連加重値となり得る。単純な算術平均の代わりに幾何平均/調和平均が使われることもできる。下位キーワードB11とA1の他の下位キーワード(B12〜B150)間の相互関連度のうち最も高い2個(例示)と最も低い2個(例示)を除いて平均を求めるトリム平均が使われることもできる。相互関連度の算術平均の代わりに中央値(median)が使われることもできる。
いくつかの実施例によると、A1に対するB11の関連加重値を計算するために使われる“B11とB12が同じ文書に登場する頻度”は単純にB11とB12が一緒に登場する(又は同じ文章に登場する、又は近接して登場する)文書の個数によって変わるものではなく、B11とB12が一緒に登場する(又は同じ文章に登場する、又は近接して登場する)文書の個数をB11が登場する文書の個数及び/又はB12が登場する文書の個数で分けて求めることができる。類似の方式で“B11とB12が同じ文書に登場する頻度”はB11とB12が一緒に登場する(又は同じ文章に登場する、又は近接して登場する)文書の個数と正の相関関係を有し、B11が登場する文書の個数及び/又はB12が登場する文書の個数と負の相関関係を有するように設定されることができる。単純によく使われる単語が代表属性キーワードA1に高い関連加重値を有することを防止するための一種のノーマライゼーション(normalization)である。
図5に戻り、段階540で、制御部320は前記第1集合文書から客体項目と下位キーワード間の下位関連度を抽出することができる。
第1集合文書のうち、客体項目を示す客体キーワード(例えば“テイラースイフト”)のような文書、又は同じ文章又は近接した文章によく登場した下位キーワードは該当客体項目に関連したものであると判断することができる。制御部320は該当客体項目の客体キーワードが登場した文書を収集し、その文書内に一緒に登場した頻度によって下位キーワードと客体キーワード間の下位関連度を抽出することができる。特に、制御部320は下位キーワードが客体キーワードと同一の文章に登場すれば、下位キーワードが客体キーワードと違う文章に登場した場合に比べ、下位キーワードと客体項目間の関連度がもっと高いと設定することができる。
制御部320は下位キーワードの登場した文章が客体キーワードが登場した文章に近づくほど下位キーワードと該当客体キーワードの客体項目間の関連度がもっと高いと設定することができる。二つの文章の近接度は、例えば二つの文章間に位置する文章の個数、二つの文章間に位置する単語の個数、二つの文章間に位置する語節の個数、二つの文章間に位置する文字の個数のいずれか一つ以上を基準に判断されることができる。
制御部320は下位キーワードが登場した位置が客体キーワードが登場した位置に近づくほど下位キーワードと該当客体キーワードの客体項目間の関連度がもっと高いと設定することができる。下位キーワードと客体キーワード間の近接度は、例えば下位キーワードと客体キーワード間に位置する文章の個数、下位キーワードと客体キーワード間に位置する単語の個数、下位キーワードと客体キーワード間に位置する語節の個数、下位キーワードと客体キーワード間に位置する文字の個数のいずれか一つ以上を基準に判断されることができる。
段階550で、制御部320は段階540の下位関連度及び段階530の関連加重値を用いて前記客体項目と前記各代表属性キーワード間の客体キーワード関連度を抽出することができる。
例えば、客体項目Cと代表属性キーワードA1間の客体キーワード関連度はCとA1の下位キーワード(例えば、B11〜B150)間の下位関連度及び各下位キーワードの関連加重値を用いて抽出されることができる。例えば、客体項目Cと代表属性キーワードA1間の客体キーワード関連度は、客体項目CとB11〜B150間の下位関連度が高いほど高く設定されることができる。
また、A1との関係で、関連加重値がより高い下位キーワードに対して客体項目Cとの下位関連度が高ければ、関連加重値がより低い下位キーワードに対して下位関連度が高い場合に比べ、客体Cと代表属性キーワードA1間の客体キーワード関連度がより高く設定されることができる。例えば、表1の場合が表2の場合より関連加重値の高い方(B11)の下位関連度が高いので、表1の場合が表2の場合より客体Cと代表属性キーワードA1間の客体キーワード関連度が高く設定されることができる。
一実施例によると、各下位キーワードに対応する関連加重値及び下位関連度を掛けた値の総和で(又はこの総和を用いて)客体Cと代表属性キーワードA1間の客体キーワード関連度を求めることもできる。表1の場合は0.5×0.5+0.2×0.2=0.29となり、表2の場合は0.2×0.5+0.5×0.2=0.20となるので、表1の場合が表2の場合より客体Cと代表属性キーワードA1間の客体キーワード関連度が高く設定されることができる。
上述した客体キーワード関連度算定方式は例示的なものに過ぎなく、段階540のCとの下位関連度及び段階530のA1との関連加重値がC及びA1間の客体キーワード関連度と正の相関関係にあれば他の方式が使われても構わない。
その後、通信部310が特定の代表属性キーワードに関連した情報提供要請を受信すれば、制御部320は段階550で抽出した客体キーワード関連度に基づいて結果項目を通信部310を介して提供することができる。例えば、いずれか一つの代表属性キーワードを含む情報提供要請を受信した場合、制御部320は該当代表属性キーワードとの関係で客体キーワード関連度が高い順に客体項目についての情報を提供することができる。
他の実施例で、二つ以上の代表属性キーワード及びそれらに対応する加重値を含む情報提供要請を受信した場合、制御部320は各客体項目に対して情報提供要請に含まれた代表属性キーワードとの客体キーワード関連度に加重値を掛けた(又はこれと同様に加重値を付け加えた)値の総和(又は平均)が高い順に客体項目についての情報を提供することができる。
図8は本明細書の他の実施例による情報提供過程のフローチャートである。
図8の実施例は図5の実施例と同一の過程に加え、段階520と段階530間に二つの段階523、526をさらに含んでいる。ここで、重複した説明を避け、段階523及び段階526についてのみ説明する。
段階523で、制御部320は、段階520で抽出された下位キーワードのそれぞれが、感情言語(感情語)に相当するかを判断する。このために、格納部330又は外部サーバーが感情語辞書(dictionary)を保有することができる。感情語辞書はある単語(キーワード)が感情語であるかを判断するための道具であり、例えば感情語リストを保有することができる。感情語リストに含まれたキーワードは感情語と言え、そうではないキーワードは感情語ではないと判断することができる。ただ、このような判断は辞書的の意味に基づいたものであり、時代によって変わる大衆の単語使用を反映することができないことがある。したがって、制御部320は代表属性キーワードそのものの感情語であるかを判断せず、代表属性キーワードに関連した下位キーワードの感情語であるかによって代表属性キーワードを活用するかを判断する。
他の実施例で、制御部320は感情語辞書に感情語として登録された、所定の数以上の単語と関連度が高い(所定の値以上の)ものとして学習された他の単語を感情語辞書に追加することができる。
段階526で、制御部320は関連の下位キーワードの感情言語割合(又は数字)が高い順に所定の個数の代表属性キーワードのみを代表属性キーワード候補集合内に残し、残りを除去することができる。このような過程によって感情言語と距離が遠いキーワードが感情言語のように取り扱われることを防止することができる。
図9に戻り、段階920で、制御部320は予約語と代表属性キーワード対に対応する基本予約語−キーワード関連度を格納部330に保存する。
予約語は代表属性キーワードの加重値で表現可能な表現を含むことができる。例えば、“退屈だ”も予約語となり得、“かわいい”も予約語となり得る。
予約語“退屈だ”に対して基本予約語−キーワード関連度が高い代表属性キーワードは、例えば“おもしろい”、“興味津津な”、“時間つぶし用”などの退屈な状況を解決することができる代表属性キーワードを含むことができる。
予約語“かわいい”に対して基本予約語−キーワード関連度が高い代表属性キーワードは、例えば“美しい”、“愛らしい”、“人目を引く”などの“かわいい”と類似するか“かわいい”を説明する代表属性キーワードを含むことができる。
段階920の過程は、例えば管理者の入力によって行うとか外部システムで決定された基本予約語−キーワード関連度をネットワーク又は記憶媒体を介して受けて行うことができる。他の実施例によると、段階920の過程はインターネット、SNS、ニュースなどの収集可能な文書を分析して図5〜図8の過程と類似した方式で行うこともできる。また、段階920の過程は、後述するように使用者のフィードバックを反映する過程を含むことができる。
段階920の過程は図15〜図17のいずれか一つを参照して後述する方式で行うこともできる。
図11は本明細書の一実施例による基本予約語−キーワード関連度の例示図である。
図11の実施例で、予約語は全部でq個(C1〜Cq)があり、代表属性キーワードは全部でn個(k1〜kn)がある。
例えば、予約語C5と代表属性キーワードk3の基本予約語−キーワード関連度はv3、5となる。
段階930で、通信部310が端末200から受信予約語を受信して獲得し、受信予約語を制御部320に伝達する。
受信予約語は端末200が検索使用者から受信した予約語である。端末200は音声入力を電気的信号(音声信号)に変換して検索装置300に伝達することができる。検索装置300の制御部320は音声信号を分析してテキストに変換し、変換テキストを予約語とマッチさせることができる。制御部320はまた音声信号を分析して音声のイントネーション又は高低、速さ、呼吸状態などを分析して情況情報として活用することもできる。
他の実施例によると、端末200は音声入力をテキストに変換して変換テキストを検索装置300に伝達することができる。端末200は受信した音声入力のイントネーション又は高低、速さ、呼吸状態などを分析して分析情報を検索装置300に伝達することができる。検索装置300は分析情報を一種の情況情報として活用することもできる。
段階940で、制御部320は客体キーワード関連度及び基本予約語−キーワード関連度を用いて前記受信予約語と各客体項目対に対応する予約語−客体関連度を獲得する。
図12は本明細書の一実施例による段階940の詳細フローチャートである。
図12を参照すると、段階1210で制御部320は受信予約語に対する各客体項目及び代表属性キーワード対に相応する調整客体−キーワード関連度を獲得する。
一実施例によると、制御部320は、各客体項目及び代表属性キーワード対に対して前記客体項目及び前記代表属性キーワード対に相応する客体キーワード関連度に前記受信予約語及び前記代表属性キーワード対に相応する基本予約語−キーワード関連度を適用することにより、前記受信予約語に対する各客体項目及び代表属性キーワード対に相応する調整客体−キーワード関連度を獲得することができる。
特に、制御部320は、各客体項目及び代表属性キーワード対に対して前記客体項目及び前記代表属性キーワード対に相応する客体キーワード関連度に前記受信予約語及び前記代表属性キーワード対に相応する基本予約語−キーワード関連度を掛けた値を用いて前記受信予約語に対する各客体項目及び代表属性キーワード対に相応する調整客体−キーワード関連度を獲得することができる。
また、制御部320は、各客体項目及び代表属性キーワード対に対して前記客体項目及び前記代表属性キーワード対に相応する客体キーワード関連度と正の相関関係を有し、前記受信予約語及び前記代表属性キーワード対に相応する基本予約語−キーワード関連度と正の相関関係を有するように前記受信予約語に対する、各客体項目及び代表属性キーワード対に相応する調整客体−キーワード関連度を設定することもできる。
本明細書で、客体キーワード関連度、基本予約語−キーワード関連度、調整客体キーワード関連度、基本予約語−下位キーワード関連度及びその他の連関関係を示す値はいずれも値が大きいほどもっと連関関係が緊密な値であると仮定した。他の実施例で、一部の関連度値は関連度値が小さいほど連関関係が緊密であり、他の関連度値は関連度値が大きいほど連関関係が緊密な場合にはそれに合うように正の相関関係−負の相関関係を適切に取り替えて使うことができる。
例えば、制御部320は、受信予約語がC2であるとき、客体項目i4及び代表属性キーワードk3対に相応する調整客体−キーワード関連度を獲得するために、客体項目i4及び代表属性キーワードk3対に相応する客体−関連度w4、3に受信予約語C2及び代表属性キーワードk3対に相応する基本予約語−キーワード関連度v3、4を適用して調整客体−キーワード関連度を獲得することができる。
特に、関連度の適用方式は客体−関連度と基本予約語−キーワード関連度を掛ける方式となり得る。例えば、制御部320は、受信予約語がC2であるとき、客体項目i4及び代表属性キーワードk3対に相応する調整客体−キーワード関連度を獲得するために、客体項目i4及び代表属性キーワードk3対に相応する客体−関連度w4、3に受信予約語C2及び代表属性キーワードk3対に相応する基本予約語−キーワード関連度v3、2を掛けた値である(w4、3×v3、2)を用いて調整客体−キーワード関連度を獲得することができる。他の実施例で、制御部320は乗算の代わりに調整客体−キーワード関連度がw4、3及びv3、2と正の相関関係を有するようにする他の演算/利用方式を適用した関数f(w4、3、v3、2)を活用して調整客体−キーワード関連度を獲得することもできる。また(w4、3×v3、2)を調整客体−キーワード関連度として活用する方法及び(w4、3×v3、2)にその他の要因に基づいた補正を加えて調整客体−キーワード関連度として活用する方法のいずれも活用することができる。
段階1220で、制御部320は特定の客体項目に対する前記調整客体−キーワード関連度を累積した値を用いて予約語−客体関連度を獲得することができる。例えば、制御部320は特定の客体項目に対する前記調整客体−キーワード関連度の累積値と正の相関関係を有するように前記受信予約語及び前記特定の客体項目対に相応する前記予約語−客体関連度を設定することができる。客体項目i
4及び受信予約語C
2対に相応する予約語−客体関連度は、例えば
を用いて獲得することができる。f(w4、j、vj、2)は客体項目i4及び受信予約語C2、キーワードkjに対応する調整客体−キーワード関連度である。
例えば、客体項目i
4及び受信予約語C
2対に対応する予約語−客体関連度は
となり得る。他の例で、客体項目i
4及び受信予約語C
2対に対応する予約語−客体関連度は
に対してその他の要因による補正を加えた値となり得る。
図9に戻り、段階950で、制御部320は受信予約語に対応する予約語−客体関連度によって客体項目を提供することができる。例えば、受信予約語C2に対応する予約語−客体関連度が下記の表3の通りであれば、制御部320は表4の順に客体項目を提供することができる。
すなわち、制御部320は、受信予約語に対応する予約語−客体関連度が高い順に客体項目を提供することができる。客体項目を受けた端末200は表示部220を介して客体項目i
3についての情報を使用者に提供することができる。端末200は必要によって下位順の他の客体項目についての情報も提供することができる。端末200は表示部220の代わりにスピーカーを介して音声で客体項目i
3についての情報を使用者に提供することができる。
図13は本明細書の他の実施例による情報提供過程のフローチャートである。
図13〜図17の過程は図5〜図12の過程を一部用いるとか図5〜図12の過程を一部変更して行うこともできる。図13〜図17の過程を説明しながら必要な場合には図5〜図12についての説明を引用することができる。
図13を参照すると、段階1310で、制御部320は第1集合文書から代表属性キーワード候補集合を抽出する。制御部320は、例えば第1集合文書のうち関心分野に当たる文書によく登場するキーワードを代表属性キーワード候補集合として収集することができる。段階1310の過程は、例えば図5の段階510の過程と同一又は同様に進むことができる。段階1310の過程は図6の過程と同一又は類似の過程で進むことができる。図6の過程についての説明は再び繰り返さない。
段階1320で、制御部320は予約語集合を設定する。例えば、管理者が手動で入力して予約語集合を設定することができる。変形例によると、制御部320が予約語として適した語節/句節などを予約語候補として設定し、予約語候補の一つ以上を予約語として設定することができるインターフェースを提供することもできる。
図18は本明細書の変形例による段階1320の詳細フローチャートである。
段階1810で、制御部320は一つの言語単位又は二つ以上の連続した言語単位の文書集合内の登場回数を獲得する。ここで、文書集合は図5の段階510の過程で使われる文書集合と同一の文書集合ともなり得、他の文書集合ともなり得る。
言語単位は、例えば語節/単語/形態素/音節/文字のいずれか一つとなり得る。その他の文章を区分する多くの基準で分けられた単位がこの実施例での言語単位となり得る。
制御部320は、段階1810以前に文書集合の各文書が含む文書を語節単位に分けて配列又はリストなどの形態として保存することができる。制御部320は、実施例によって各語節で無意味な単語、例えば韓国語で一部の助詞又は‘この’、‘あの’などの指示形容詞、その他の分析に必要ではない単語を語節から削除するとか配列/リストから除去することができる。また、制御部320は、実施例によって語節が単一単語からなる場合、該当単語を基本形(又は所定の形式)に転換することができる。
変形例によると、制御部320は、段階1810以前に文書集合の各文書が含む文書を単語単位に分けて配列又はリストなどの形態として保存することができる。制御部320は、実施例によって各単語を基本形(又は所定の形式)に転換することができる。制御部320は、実施例によって無意味な単語、例えば韓国語で一部の助詞又は‘この’、‘あの’などの指示形容詞、その他の分析に必要ではない単語を配列/リストから除去することができる。
制御部320が文書を形態素単位に又は音節単位に又は文字単位に分割する変形例も可能である。
以下の実施例では、便宜のために制御部320が文書を語節単位に分割し、各語節が言語単位となると仮定する。
単一言語単位は予約語となり得る。変形実施例によると、二つ以上の連続した言語単位も予約語となり得る。例えば、“こぎれいな”(単一言語単位)も予約語となり得、“雰囲気良い”(二つの連続した言語単位)も予約語となり得る。ただ、二つ以上の連続した言語単位は単一言語単位に比べてよく出にくいので、実施例によって二つ以上の連続した言語単位が予約語として選定されるようにするために、予約語選定時に二つ以上の連続した言語単位に対して加重値又は追加点数を与えることができる。変形例によると、予約語選定時に二つ以上の連続した言語単位に対して予約語選定のための基準値をもっと寛大に設定することもできる。例えば、単一言語単位が少なくともa回登場すると予約語候補として推薦されることができれば、二つの連続した言語単位はaよりずっと小さい回数であるb回さえ登場しても予約語候補として推薦されるように設定されることができ、三つの連続した言語単位はbよりも小さいc回さえ登場しても予約語候補として推薦されるように設定されることもできる。以下、本明細書で二つ以上の連続した言語単位を連続言語単位と言う。
また、連続言語単位が予約語として推薦/選定される場合、その予約語(候補)に含まれた言語単位又はその予約語(候補)に含まれるとともに予約語(候補)より短い連続言語単位は予約語として推薦されないようにするとか、予約語として推薦されるための点数算定時に減点することができる。類似の予約語が多く選定されるとか推薦されることを防止するためのものである。以下では、説明を単純化するために、連続言語単位についての説明を省略するが、単一言語単位についての説明が連続言語単位に対しても全く同一に又は同様に適用されることができる。
段階1810で、言語単位の登場回数は例えば該当言語単位が登場した文書の数となり得る。一文書で該当言語単位が多数回登場しても登場回数は1回のみ認められる。他の実施例によると、該当言語単位が一文書で多数回登場する場合を全て登場回数と認めてその登場回数が言語単位の登場回数となり得る。
さらに他の実施例によると、一文書で該当言語単位が二回以上繰り返して登場する場合、2回以後の登場は1回登場に比べて低い値の登場と認めることができる。また、一文書で該当言語単位の登場が繰り返されれば繰り返されるほど後の登場はもっと低い点数と認めることができる。登場回数が増えれば点数が高くなるが、傾きが次第に緩くなるものである。例えば、登場回数の1/r二乗(rは1より大きな実数(real number))が該当文書で該当言語単位の登場点数として使われることもできる。例えば(登場回数のログ値)+1(ただ、登場回数が0の場合、登場点数は0)などが使われることもできる。また、一文書で言語単位の登場点数は所定の上限値を超えないように制限されることもできる。該当言語単位の登場点数を全ての文書に対して累積した値が該当言語単位の登場回数による登場点数となり得るであろう。そして、このような登場点数を段階1830で活用することができる。
以下では、便宜のために、言語単位の登場回数は該当言語単位が登場した文書の数であると仮定して説明する。
段階1820で、制御部320は言語単位から所定の距離以内に感情語が位置する回数を獲得する。言語単位と感情語間の距離は、例えば言語単位と感情語間に位置する単語の個数、言語単位と感情語間に位置する語節の個数、言語単位と感情語間に位置する文字の個数のいずれか一つ以上を基準に判断することができる。
また、言語単位と感情語が互いに異なる文章に属する場合、言語単位と感情語間に位置する単語/語節/文字の個数にかかわらず、制御部320は感情語が言語単位から所定の距離以内に位置しないと判断することもできる。他の変形例によると、言語単位と感情語が互いに異なる文章に属する場合、制御部320は文章に対する判断を排除して計算した距離に一定した数字を加えて距離を計算することもできる。言語単位と感情語が互いに異なる文章に属する場合、互いに連関性がない確率が比較的高くなるため、感情語間に位置する単語/語節/文字の個数より距離を遠く評価するのが好ましいからである。
特定の単語(語節)の感情語であるかは予め登録された感情語辞書で検索して確認することができる。
言語単位から一定距離以内に感情語が位置する回数は、例えば一定の距離以内に該当言語単位と感情語が一緒に位置する文書の数となり得る。一文書で該当言語単位と感情語が一定距離以内に一緒に多数回登場しても登場回数は1回のみ認められる。他の実施例によると、一文書の該当言語単位のうち一定の距離以内に感情語が位置する言語単位が多い場合、その多くの言語単位を全て言語単位から一定の距離以内に感情語が位置する回数と認めることができる。以下では、一定の距離以内に感情語が位置する言語単位を感情語位置言語単位と言う。
さらに他の実施例によると、一文書で感情語位置言語単位が2回以上繰り返し登場する場合、2回以後の登場は1回登場に比べて低い値の登場と認めることができる。また、一文書で該当感情語位置言語単位の登場が繰り返されれば繰り返されるほど後の登場はより低い点数と認められることができる。登場回数が増えれば点数が高くなるが傾きが次第に緩くなるものである。例えば、登場回数の1/r二乗(rは1より大きな実数(real number))が該当文書で該当感情語位置言語単位の登場点数として使われることもできる。例えば(登場回数のログ値)+1(ただ、登場回数が0の場合、登場点数は0)などが使われることもできる。また、一文書で感情語位置言語単位の登場点数は所定の上限値を超えないように制限されることもできる。該当感情語位置言語単位の登場点数を全ての文書に対して累積した値が該当言語単位の登場回数による登場点数となり得る。そして、このような登場点数が段階1830で活用されることができる。
さらに他の実施例によると、一つの言語単位に対して一定の距離以内に位置する感情語の個数が多いほど登場点数をもっと高く認めることもできる。また、一つの言語単位に対してもっと近い距離内に感情語がある場合、登場点数をもっと高く認めることもできる。また、一つの言語単位に対して一つではない二つ以上の所定の個数の感情語がある場合にのみ登場点数(登場回数)が認められることもできる。
以下では、便宜のために、感情語位置言語単位の登場回数は該当言語単位から所定の距離以内に感情語が登場した文書の数であると仮定して説明する。
段階1830で、制御部320は該当言語単位の登場回数及び言語単位から一定の距離以内に感情語が位置する回数を考慮して予約語候補を設定する。
例えば、制御部320は言語単位の登場回数及び一定の距離以内に感情語が位置する回数を掛けて(又はその他の二つの変数に対して正の相関関係を有する演算方式によって)感情語点数に換算することができる。そして、点数が高い順に所定の個数が予約語候補として設定されることができる。若しくは、所定の点数以上に相当する言語単位が予約語候補として設定されることもできる。
表5の例示では、第3言語単位→第2言語単位→第1言語単位→第4言語単位の順に予約語候補となり得る。制御部320が二つの予約語候補を推薦すれば、第3言語単位及び第2言語単位が推薦されるであろう。制御部320が点数3百万点以上の言語単位を予約語候補として推薦すれば、第3言語単位、第2言語単位及び第1言語単位が順に予約語候補として推薦されるであろう。
他の実施例によると、制御部320は言語単位の登場回数の順に第1個数だけの言語単位を抜き出した後、抜き出した言語単位の一定距離内に感情語が登場した回数(又は感情語点数)を基準にした順に一定個数の予約語候補を抽出することができる。表5の例示で、登場回数の順に3個の言語単位を抜き出せば、第1〜第3言語単位が抽出されることができる。感情語登場回数を基準とすれば、第2言語単位、第3言語単位及び第1言語単位の順に予約語候補が推薦されることができる。
さらに他の実施例によると、制御部320は、言語単位の登場回数の順に第1個数だけの言語単位を抜き出した後、抜き出した言語単位の一定距離内に感情語が登場した回数(又は感情語点数)を基準とした順に第2個数(ただ、第2個数は第1個数未満である)の予約語候補を抽出することができる。表5の例示で、登場回数の順に3個の言語単位を抜き出せば、第1〜第3言語単位が抽出されることができる。感情語登場回数を基準として2個の言語単位を抽出すればれ、第2言語単位及び第3言語単位の順に予約語候補が推薦されることができる。
制御部320は、上述した方式と類似するか多少相異なる方式で、予約語候補選択のための点数が段階1810の言語単位の登場回数と正の相関関係を有し、段階1820の所定の距離以内に感情語が位置する言語単位の登場回数とも正の相関関係を有するように予約語候補選択のための点数を設定し、この点数を用いて予約語候補を推薦することができる。
また、制御部320は、既に予約語集合に含まれた言語単位は予約語候補として付け加わらないように処理することができる。また、制御部320は、予約語集合に含まれた予約語と実質的に同一の言語単位は予約語候補に付け加わらないように処理することができる。
段階1840で、情報提供装置300は端末200に予約語候補情報を含む予約語選択インターフェースを生成するためのインターフェース情報を提供する。インターフェース情報は、例えばhtml形式の文書となり得る。他の実施例によると、インターフェース情報はインターフェースを生成するために必要な動的情報(推薦される予約語候補など)のみを含み、端末200はこのような動的情報を端末200に前もって保存されていたページ形態に反映する方式でインターフェースを含むページを使用者に提供することができる。
制御部320は予約語候補情報を含む予約語選択インターフェースを含むページを生成するためのページ情報を生成し、通信部310がページ情報を端末200に提供することができる。端末200は使用者に該当インターフェースを含むページをレンダリングして表示することができる。変形実施例によると、視覚的ページに含まれたインターフェースの代わりに音によるインターフェース又は現在まで知られたか未来に知られる技術によるインターフェースが提供されることもできる。以下では、便宜のために、視覚的ページに含まれたインターフェースが提供されると仮定して説明する。
図19は段階1840で提供されるインターフェース情報によって生成されたインターフェース1900の例示図である。
図19を参照すると、インターフェース1900は、チェックボックス列(column)1910、予約語候補列1920及び詳細表示列1930からなる表を含む。また、インターフェース1900は、予約語追加ボタン1940、候補削除ボタン1950及び保管箱に入れるボタン1960を含むことができる。使用者はチェックボックス列1910で所望の予約語候補(等)を選択した後、予約語追加ボタン1940、候補削除ボタン1950、保管箱に入れるボタン1960のいずれか一つを選択して予約語候補を処理することができる。ある一つのボタンが選択されれば、端末200は使用者の入力を変換した入力情報を情報提供装置300に伝達することができる。
情報提供装置300は端末200から受けた入力情報によって予約語候補を処理することができる。例えば、使用者が一部の予約語候補(以下‘選択された候補’)のチェックボックス1910を選択し、予約語追加ボタン1940を選択すれば、これに係わる入力情報を受けた情報提供装置300の制御部320は予約語集合に選択された候補を追加し、予約語候補集合から選択された候補を削除することができる。制御部320は今後の予約語候補推薦時に予約語集合に含まれた言語単位(等)及び予約語集合に含まれた言語単位(等)と実質的に同一の言語単位(等)を予約語候補として推薦しないように制御する。
他の例によると、使用者が一部の予約語候補のチェックボックス1910を選択し、予約語候補削除ボタン1950を選択すれば、これに係わる入力情報を受けた情報提供装置300の制御部320は予約語除外集合に選択された候補を追加し、予約語候補集合から選択された候補を削除することができる。制御部320は今後の予約語候補推薦時に予約語除外集合に含まれた言語単位(等)及び予約語除外集合に含まれた言語単位(等)と実質的に同一の言語単位(等)を予約語候補として推薦しないように制御する。
さらに他の例によると、使用者が一部の予約語候補のチェックボックス1910を選択し、保管箱に入れるボタン1960を選択すれば、これについての入力情報を受けた情報提供装置300の制御部320は予約語候補保管集合に選択された候補を追加し、予約語候補集合から選択された候補を削除することができる。制御部320は今後の予約語候補推薦時に予約語候補保管集合に含まれた言語単位(等)及び予約語候補保管集合に含まれた言語単位(等)と実質的に同一の言語単位(等)を予約語候補として推薦しないように制御する。
ボタン1940、1950、1960の代わりにボタンと類似した他のインターフェース、又はボタンの役目の代わりをすることができる他のインターフェースを活用することもできる。
また、制御部320は予約語集合から一部の予約語を削除するためのインターフェースを提供することができる。制御部320は、予約語除外集合の一部の言語単位が推薦から除かれないように予約語除外集合から言語単位を除去するためのインターフェースを提供することができる。制御部320は予約語候補保管集合の言語単位を図19と類似したリストインターフェースの形態として提供し、そのリストインターフェースを介して使用者が予約語候補保管集合の一部の言語単位を予約語として追加するようにすることができる。また、使用者は前記リストインターフェースを介して予約語候補保管集合の一部の言語単位を予約語除外集合に含まれるようにし、予約語候補保管集合から削除することもできる。この場合、該当言語単位はそれ以上予約語候補保管集合のリストインターフェースを介して提供されなく、図19のインターフェース1900を介しても予約語候補として推薦されない。また、使用者は前記リストインターフェースを介して予約語候補保管集合の一部の言語単位を単純に予約語候補保管集合から削除することもできる。この場合、該当言語単位はそれ以上予約語候補保管集合のリストインターフェースを介して提供されないが、図19のインターフェース1900を介して予約語候補として推薦されることはできる。
また、インターフェース1900は、予約語候補が一ページに全て見られない場合に備え、ページ移動のための前ページボタン1970及び/又は次ページボタン1980を含むことができる。前ページボタン1970及び/又は次ページボタン1980は実際候補の個数及び現在ページの位置によって選択的に提供されることができる。また、前ページボタン1970及び/又は次ページボタン1980の代わりにスクロールによって拡張されるインターフェースが提供されることもできる。一部のインターフェースでは、1910、1920、1930項目を含む表のみがスクロールされ、ボタン1940、1950、1960、1970、1980はスクロールから除かれることもできる。
使用者は詳細表示1930を選択して予約語候補が推薦された背景又は関連情報を詳細に検索することもできる。詳細表示1930を選択したとき、制御部320の提供するインターフェースは該当予約語候補についての情報及び該当予約語候補を予約語として追加するとか予約語候補保管集合に追加するとか予約語除外集合に追加するためのインターフェースを含むことができる。
その他に予約語候補を管理するためのインターフェースが制御部320によって端末200を介して使用者に提供されることができる。
図18に戻り、段階1850で、制御部320は予約語を選択する入力によって選択された予約語候補を予約語集合に追加することができる。
図13に戻り、段階1330で、制御部320は客体項目と代表属性キーワード対に対応する客体キーワード関連度を保存する。
図10は本明細書の一実施例による保存された客体キーワード関連度の例示図である。
図10の実施例で、客体項目は全部でm個(i1〜im)があり、代表属性キーワードは全部でn個(k1〜kn)がある。
例えば、客体項目i5と代表属性キーワードk3の客体キーワード関連度はw5、3になる。
段階1330の過程は、例えば図5〜図8の実施例の一部によって行うとか、これと類似した過程又はこれに相応する過程で行うことができる。他の実施例によると、段階1330の過程は管理者の入力によって行うとか外部システムで決定された客体キーワード関連度をネットワーク又は記憶媒体を介して受けて行うことができる。
図5〜図8の実施例については先に説明したので、繰り返される説明を省略する。ただ、図5及び図8の段階510で行われる過程は図13の段階1310の過程と実質的に同一である。したがって、段階1330の過程の遂行において、図5〜図8の実施例が活用されても段階510の過程は再び行わず、段階1310の結果を再活用することができる。
段階1340で、制御部320は代表属性キーワードと下位キーワード対に対応する関連加重値及び予約語と下位キーワード対に対応する基本予約語−下位キーワード関連度を用いて予約語と代表属性キーワード対に対応する基本予約語−キーワード関連度を格納部330に保存する。段階1340の過程は、例えば管理者の入力によって行うとか図15〜図17のいずれか一つ以上の実施例によって行うことができる。
段階1340の過程前に又は段階1340の過程中に下位キーワードが決定され、代表属性キーワードと下位キーワード対に対応する関連加重値が決定され、予約語と下位キーワード対に対応する基本予約語−下位キーワード関連度が決定されなければならない。
段階1340の過程に使われる下位キーワードは段階1330の過程中に段階520を行うことによって決定されることができる。この場合、段階520の下位キーワードが段階1340で使われることができる。段階1330で下位キーワードが決定されない場合、図5の段階520及びその以前の過程と同一又は類似の過程によって下位キーワードが決定されることができる。
段階1340の過程に使われる関連加重値は段階1330の過程中に段階530を行うことによって決定されることができる。この場合、段階530の関連加重値を段階1340で使うことができる。段階1330で関連加重値が決定されない場合、図5の段階530及びその以前の過程と同一又は類似の過程で関連加重値が決定されることができる。
基本予約語−下位キーワード関連度は、例えば予約語と下位キーワードが同一又は類似の文脈に登場する頻度を考慮して算出することができる。
以下、図15〜図17についての説明で、予約語C2と代表属性キーワードk3間の基本予約語−キーワード関連度v3、2を獲得する例示を説明する。例えば、代表属性キーワードk3の下位キーワードがB31〜B350であると仮定する。予約語、代表属性キーワード及び基本予約語−キーワード関連度に対しては図11を参照して上述した例示を参照する。予約語Cj及び下位キーワードBgh対に相応する基本予約語−下位キーワード関連度はxj、hであると表現する。下位キーワードBgh及び代表属性キーワードkg対に相応する関連加重値はyg、hであると表現する。予約語Cj、代表属性キーワードkg及び下位キーワードBgh組合せに相応する調整予約語−下位キーワード関連度はxj、g、hであると表現する。
図15は本明細書の第1実施例による段階1340の詳細フローチャートである。
図15を参照すると、段階1510で、制御部320は基本予約語−下位キーワード関連度に関連加重値を適用して調整予約語−下位キーワード関連度を獲得する。
段階1510で、制御部320は各予約語及び下位キーワード対に対して前記予約語及び前記下位キーワード対に相応する基本予約語−下位キーワード関連度に前記下位キーワード及び代表属性キーワード対に相応する関連加重値を適用して前記代表属性キーワードに対する各予約語及び下位キーワード対に相応する調整予約語−下位キーワード関連度を獲得することができる。
例えば、制御部320は、予約語がC2であるとき、下位キーワードB34及び代表属性キーワードk3対に相応するC2−B34間の調整予約語−下位キーワード関連度を獲得するために、予約語C2及び下位キーワードB34対に相応する基本予約語−下位キーワード関連度x2、4に下位キーワードB34及び代表属性キーワードk3対に相応する関連加重値y3、4を適用して調整予約語−下位キーワード関連度x2、3、4を獲得することができる。
特に、関連加重値の適用方式は基本予約語−下位キーワード関連度x2、4に下位キーワードB34及び代表属性キーワードk3対に相応する関連加重値y3、4を掛ける方式となり得る。例えば、制御部320は予約語がC2であるとき、下位キーワードB34及び代表属性キーワードk3対に相応するC2−B34間の調整予約語−下位キーワード関連度x2、3、4を獲得するために、予約語C2及び下位キーワードB34対に相応する基本予約語−下位キーワード関連度x2、4に下位キーワードB34及び代表属性キーワードk3対に相応する関連加重値y3、4を掛けた値である(x2、4×y3、4)を用いて調整予約語−下位キーワード関連度x2、3、4を獲得することができる。他の実施例で、制御部320は乗算の代わりに調整予約語−下位キーワード関連度x2、3、4がx2、4及びy3、4と正の相関関係を有するようにする他の演算/利用方式を適用した関数f(x2、4、y3、4)を活用して調整予約語−下位キーワード関連度x2、3、4を獲得することもできる。また、(x2、4×y3、4)を調整予約語−下位キーワード関連度x2、3、4として活用する方法及び(x2、4×y3、4)にその他の要因に基づいた補正を加えて調整予約語−下位キーワード関連度x2、3、4として活用する方法のいずれにも活用することができる。
段階1520で、制御部320は調整予約語−下位キーワード関連度x
2、3、fの累積値を用いて予約語C
2及び代表属性キーワードk
3間の基本予約語−キーワード関連度を設定することができる。すなわち、予約語C
2及び代表属性キーワードk
3間の基本予約語−キーワード関連度は
となり得る。すなわち、下位キーワードB3
1〜B3
50に対して予約語C
2との基本予約語−下位キーワード関連度x
2、fを求めた後、それぞれに対して該当下位キーワードに対する関連加重値y
3、fを反映してx
2、3、fを求め、x
2、3、fを累積して予約語C
2及び代表属性キーワードk
3間の基本予約語−キーワード関連度を求めることができる。他の実施例によると、予約語C
2及び代表属性キーワードk
3間の基本予約語−キーワード関連度は
にその他の要因による補正を加えた値となり得る。他の実施例によると、予約語C
2及び代表属性キーワードk
3間の基本予約語−キーワード関連度は
と正の相関関係を有する値となり得る。ここでは、単一代表属性キーワードに連結されている下位キーワードが50個であると仮定したが、代表属性キーワードに連結されている下位キーワードの個数が変われば、式でfの累積範囲が50ではない他の値となり得る。
図16は本明細書の他の実施例による段階1340の詳細フローチャートである。図16の段階1510、段階1520の過程は図15を参照して上述した過程と同一であるので繰り返さない。
図16を参照すると、段階1530で、制御部320は特定の予約語に対応する代表キーワードのうち前記予約語と前記対応する代表キーワード対の基本予約語−キーワード関連度が基準基本予約語−キーワード関連度以下である代表キーワードに対する基本予約語−キーワード関連度を削除することができる。特定の予約語に対応する代表キーワードは前記特定の予約語との関係で基本予約語−キーワード関連度が設定されているキーワードを示す。基準基本予約語−キーワード関連度は前もって設定されていることができる。他の実施例によると、基準基本予約語−キーワード関連度は特定の予約語に対応する基本予約語−キーワード関連度の平均値を用いて設定するとか特定の予約語に対応する基本予約語−キーワード関連度を大きさ順に配列したとき、特定順位の基本予約語−キーワード関連度を用いて設定することができる。その他に特定の予約語に対応する基本予約語−キーワード関連度と正の相関関係を有する特定値が基準基本予約語−キーワード関連度となり得る。基準基本予約語−キーワード関連度は予約語によって他に設定することもでき、全ての予約語に対して同一に設定することもできる。基本予約語−キーワード関連度が削除されることは予約語と代表キーワード間の関連度がないものに設定される。制御部は関連度を0に設定することもでき、基本予約語−キーワード関連度を示すリスト(アレイ、その他の資料構造に取り替えられることができる)で前記予約語と前記対応する代表キーワード対の基本予約語−キーワード関連度についての情報を削除する方式で基本予約語−キーワード関連度を削除することもできる。その他の基本予約語−キーワード関連度が削除されたこと(又は連関関係が削除されたこと)を知らせる情報を付け加える方式を使うこともできる。
段階1530の過程を経れば、比較的微細な関連度を有する基本予約語−キーワード関連度が削除されて(すなわち、関連度がないものに設定される)あまりにも複雑な演算を行うとか使用者/管理者に実質的に意味がない連関関係が表示されないようにすることができる。
図17は本明細書のさらに他の実施例による段階1340の詳細フローチャートである。
図17の段階1510、段階1520の過程は図15を参照して上述した過程と同一であるのでその説明を繰り返さない。図17の段階1530の過程は図16を参照して上述した過程と同一であるのでその説明を繰り返さない。
段階1540で、制御部320は削除されずに残っている基本予約語−キーワード関連度をノーマライズすることができる。例えば、特定の代表属性キーワードに連結されて保存された基本予約語−キーワード関連度の平均値を特定範囲に含まれるようにするために、特定の代表属性キーワードに連結されて保存された基本予約語−キーワード関連度に一定の計数を掛けて上昇させるとか減少させることができる。他の例を挙げれば、特定の代表属性キーワードに連結されて保存された基本予約語−キーワード関連度の総和が特定範囲に含まれるようにするために、特定の代表属性キーワードに連結されて保存された基本予約語−キーワード関連度に一定の計数を掛けて上昇させるとか減少させることができる。すなわち、どの特定の代表属性キーワードに高い値の基本予約語−キーワード関連度が集中してどの予約語を選択しても該当特定の代表属性キーワードのみが推薦/使用されるとか特定の代表属性キーワードがほぼ使われない場合を防止するために適当な調整を行うことができる。
他の実施例によると、段階1540で、制御部320は基本予約語−キーワード関連度に一定の計数を掛ける代わりに、一定の計数を加えるとか、ログ、二乗などの演算を結合してノーマライズを行うこともできる。さらに他の実施例によると、特定の基準値以上の基本予約語−キーワード関連度のみを一部減少させるとか特定の基準値以下の基本予約語−キーワード関連度のみを一部上昇させる方式でノーマライズを行うこともできる。
さらに他の実施例によると、段階1540で、制御部320は特定の予約語に連結されて保存された基本予約語−キーワード関連度の平均値(又は総和)を特定範囲に含まれるようにノーマライズを行うこともできる。
図17の過程において段階1530を省略し、基本予約語−キーワード関連度ノーマライズ過程を行う変形例も可能である。
段階1350で、通信部310が端末200から受信予約語を受信して獲得し、受信予約語を制御部320に伝達する。
受信予約語は端末200が検索使用者から受信した予約語である。端末200は音声入力を電気的信号(音声信号)に変換して検索装置300に伝達することができる。検索装置300の制御部320は音声信号を分析してテキストに変換し、変換されたテキストを予約語にマッチさせることができる。制御部320はまた音声信号を分析して音声のイントネーション又は高低、速さ、呼吸状態などを分析して情況情報として活用することもできる。
他の実施例によると、端末200は音声入力をテキストに変換し、変換されたテキストを検索装置300に伝達することができる。端末200は受信した音声入力のイントネーション又は高低、速さ、呼吸状態などを分析して分析情報を検索装置300に伝達することができる。検索装置300は分析情報を一種の情況情報として活用することもできる。
段階1360で、制御部320は客体キーワード関連度及び基本予約語−キーワード関連度を用いて前記受信予約語と各客体項目対に対応する予約語−客体関連度を獲得する。段階1360の過程は図9の段階940の方式又は図12の方式によって行うことができる。同一内容の説明は省略する。
段階1370で、制御部320は受信予約語に対応する予約語−客体関連度によって客体項目を提供することができる。段階1370の過程は段階950の過程と同一の方式で行うことができる。同一説明は省略する。
図14は本明細書のさらに他の実施例による情報提供過程のフローチャートである。
図14の段階1310、1320、1330、1340、1350、1360、1370は図13の段階1310、1320、1330、1340、1350、1360、1370と同一であるので、同一説明は繰り返さない。
図14に付け加わった段階1333は代表属性キーワードと下位キーワードが決定された後にどの時点にも行うことができる。例えば、段階1333は段階1330と同時に/並行して行うこともでき、段階1333の過程を段階1330中に行うこともできる。
段階1333で、制御部320は代表属性キーワードと下位キーワード間の関連加重値を保存する。関連加重値が設定される過程を段階1330で行わなかった場合、図5の段階530の過程と同一又は類似の過程によって代表属性キーワードと下位キーワード間の関連加重値を設定することができる。他の実施例によると、制御部320は段階1330で設定された関連加重値を呼んで来る方式で代表属性キーワードと下位キーワード間の関連加重値を保存することもできる。
段階1337で、制御部320は下位キーワードと予約語間の基本予約語−下位キーワード関連度を獲得する。
制御部320は、例えば下位キーワードが予約語と同一又は類似の文脈に登場する頻度を考慮して予約語と下位キーワード間の関連度を判断することができる。例えば、特定の文章でキーワードAの周辺に登場する単語は他の文書でもキーワードAに関連した単語の周辺に登場することがあると思われる。
“思い切って旅行を行ったが7月であるから天気があまりにも暑くて苦労した。”
“思い切って旅行を行ったが7月であるから天気があまりにもじめじめして苦労した。”
前記二つの文章を調べると、同じ文脈で“暑くて”という単語が“じめじめして”という単語に取り替えられた。制御部320は“暑い”と“じめじめする”が互いに関連の単語であることを類推することができる。
“思い切って旅行を行ったが7月であるから天気があまりにも暑くて苦労した。”
“思い切ってお休みに行ったが7月であるから天気があまりにも暑くて苦労した。”
同様に、制御部320は前記二つの文章で“旅行”と“お休み”が関連の単語であることを類推することができる。
“思い切って旅行を行ったが7月であるから天気があまりにも暑くて苦労した。”
“思い切って旅行を行ったが8月であるから天気があまりにも暑くて苦労した。”
同様に、制御部320は前記二つの文章で“7月”と“8月”が関連の単語であることを類推することができる。
制御部320は、以前に収集された文書で“暑い”と“じめじめする”が互いに関連の単語であり、“7月”と“8月”が互いに関連の単語であり、“旅行”と“お休み”が互いに関連の単語であることを保存しておくことができる。その後、下記のような文章を収集すると仮定する。
“思い切ってお休みに行ったが7月であるから天気があまりにもじめじめして苦労した。”
“思い切って旅行を行ったが8月であるから天気があまりにも暑くて大変であった。”
二つの文章が同一文脈ではないが、“暑い”と“じめじめする”が互いに関連の単語であり、“7月”と“8月”が互いに関連の単語であり、“旅行”と“お休み”が互いに関連の単語であることを知っていれば、制御部320は前記文章で“苦労した”と“大変であった”も関連の単語であることを学習することができるであろう。
同一/類似の文脈に登場する頻度が高いキーワード対は互いに関連度が高いものであると判断することができる。また、二つのキーワードが登場する文脈の類似度が高いほど二つのキーワード間の関連度が高いと判断することができる。制御部320は、収集される文書を用いて学習を進めてキーワード間の関連度を設定し、設定されたキーワード間の関連度と文章の文脈を用いて該当文章に登場するキーワードの関連度を設定する式でキーワード間の関連度判断の正確性を高めることができる。
これと類似した学習方式として、NNLM(Neural Net Language Model)、RNNLM(Recurrent Neural Net Language Model)、word2vec、スキップグラム(skipgram)及びCBOW(Continuous Bag−of−Words)方式が知られている。特に、word2vecを用いる場合、word2vecは文書を用いて学習して各キーワードをベクターに対応させ、二つのキーワード間の類似度は二つのベクターのコサイン類似度計算によって把握することができる。
図20は本明細書の一実施例による用語階層を示した図である。
図13又は図14の過程を完了すれば、予約語(C1〜Cq)と代表属性キーワード(k1〜kn)、及び下位キーワード(BX1〜BX50)間の階層関係が設定される。
予約語と代表属性キーワード間には基本予約語−キーワード関連度が設定され、代表属性キーワードと下位キーワード間には関連加重値が設定される。制御部320はこのような階層関係を用いて予約語によって適当な客体を推薦するとか新しい予約語候補を選定するなどの動作を行うことができる。また、図20の階層関係は新しい資料が反映されて図13及び図14のような過程を繰り返しながら学習によって階層関係が修正されるとか補完されることができる。
図21は本発明の一実施例による仮想入力インターフェースプログラムの組込み過程のフローチャートである。
段階2110で、端末200は情報提供装置300にパッケージ要請メッセージを送信する。パッケージ要請メッセージは仮想入力インターフェースプログラムを要請するメッセージである。段階2120で、情報提供装置300は端末200に仮想入力インターフェースプログラム(パッケージ)を伝達する。
段階2130で、端末200は受信した仮想入力インターフェースプログラム(パッケージ)を組み込む。組込みが不要で、受信した仮想入力インターフェースプログラムをそのまま実行することができる場合、段階2130は省略することができる。端末200は使用者の入力によって仮想入力インターフェースプログラムを実行して地域に基づくアイテム推薦方法を実行する。
図22は本発明の一実施例による地域に基づくアイテム推薦方法を実行するパッケージのインターフェースページを示す図である。
図4、図21及び図22を参照すると、本発明の一実施例による地域に基づくアイテム推薦方法を実行するパッケージのインターフェースページは図21の端末におけるパッケージ組込み2130によって端末に組み込まれたパッケージのインターフェースページ一であってもよい。
図22を参照すると、本発明の一実施例による地域に基づくアイテム推薦方法を実行するインターフェースページ2200は、題目表示部2210、地域入力部2220、趣向フィルター選択部2230、カテゴリー選択部2240及び検索ボタン2250を含むことができる。
趣向フィルターは予約語の一種で、図1〜図20に基づいて前述した発明の内容によるものであり、単語、構文又は文章であってもよく、使用者の趣向又は好み事項、嗜好を示す。
端末200は、表示部220に端末200に組み込まれたパッケージが組み込まれて駆動されることによってインターフェースページ2200を表示する。
インターフェースページ2200はパッケージが組み込まれて駆動されるプログラムの全部のページ又は一部のページであってもよく、端末に組み込まれたパッケージが組み込まれて駆動されるプログラムと連結される他のウェブサーバーが表示するページであってもよい。
以下で、端末200の制御部250が、表示部220を制御して表示部220が内容を出力するようにするか、通信部230を制御して情報提供装置300と通信するか、入力部210を制御して内容を入力されるか、記憶部240を制御して記憶することを端末200が動作するものとして記述する。端末200の表示部220は入力部210と一体に結合されて入力部210及び表示部220の機能を全て遂行することもでき、以下では表示部220で入力部210の機能も実行するものとして記述する。
端末200は、題目表示部2210に現在ページの題目又は現在プログラムの題目とプログラムについての説明を表示することができる。例えば、端末200は、題目表示部2210に現在プログラムの題目である“遊びに”及び“旅行者と趣向フィルターを選択してください。あなたの趣向に合う宿所をお勧め致します”と表示することができる。本発明の実施例では宿所を推薦するものとして記述されているが、本発明はこれに限定されるものではなく、宿所の他のアイテム、例えば飲食店、居酒屋、ビリヤード室、遊び施設、学院などにも適用することができる。
端末200は地域入力部2220に地域を表示し、使用者は表示された地域を選択するかあるいは使用者が旅行しようとする地域又は観光地を直接入力することができる。地域はコンボボックス又はラジオボックス、又はリストによって選択できる。また、端末200は使用者が地域を入力する必要なしにGPS(Global Positioning System)を介して使用者の位置を把握することもできる。
端末200は趣向フィルター選択部2230に使用者が入力した地域内の宿所が含む趣向フィルターを表示し、使用者から趣向フィルターに対する選択を入力される。趣向フィルターは予約語の一種であり、使用者が端末200で選択した地域を情報提供装置300が受信し、受信した地域内に位置する宿所が含む趣向フィルターを抽出する。
趣向フィルターは地域内の宿所との関連度の高い趣向フィルターの順に所定の個数が抽出されて端末200に送信されることができる。
例えば、使用者が地域入力部2220で“ソウルソンパ”を入力した場合、“ソウルソンパ”に位置する宿所が含む趣向フィルターの中で趣向フィルターと宿所の関連度の高い順に情報提供装置300から抽出され、抽出された趣向フィルターが端末200に送信されて趣向フィルター選択部2230に表示される。
情報提供装置300は各地域に対して宿所リストを獲得することができる。情報提供装置300は、上述した方式で各地域の宿所に対して各趣向フィルターとの関連度を求めることができる。特定の趣向フィルターAAを基準に該当地域内の全ての宿所との関連度を全て合わせるか、その他の特定の趣向フィルターAAと該当地域内の全ての宿所間の関連度と正の相関関係を有するように該当地域と該当趣向フィルターの関連度を設定することができる。情報提供装置300は、該当地域と関連度の高い順に趣向フィルターを選択し、趣向フィルター選択部2230に表示することができる。
趣向フィルター宿所の関連度は図1〜図20に基づいて前述した予約語客体関連度によって計算することができる。あるいは、図1〜図20に基づいて説明したように、趣向フィルターに対する下位キーワードを抽出し、下位キーワードと宿所の関連度を用いて計算することもできる。
使用者は、趣向フィルター選択部2230に表示された所定個数の趣向フィルターの中で一部を選択することができる。端末200は、使用者が趣向フィルター選択部2230に表示された趣向フィルターを選択しない場合、全てを選択したと見なし、趣向フィルター選択部2230に表示された趣向フィルターの全てを情報提供装置300に伝送する。
端末200はカテゴリー選択部2240に宿所のカテゴリーを表示する。カテゴリーはホテル、モテル、ペンション及びゲストハウスなどであってもよく、本発明の一実施例では宿所のカテゴリーとして記述されているが、本発明の実施例がこれに限定されるものではなく、アイテムの性格や特徴によってカテゴリーが分類されることができる。
使用者はカテゴリー選択部2240に表示された宿所のカテゴリーの全部又は一部を選択し、所望のカテゴリーに相当する宿所のみ検索することができる。使用者がカテゴリー選択部2240に表示されたカテゴリーを選択しない場合、全てのカテゴリーが選択されたと見なされる。
使用者が趣向フィルター選択部2230に表示された趣向フィルターとカテゴリー選択部2240に表示されたカテゴリーの選択を完了し、検索ボタン2250を選択すれば、端末200は地域、カテゴリー及び趣向フィルターを情報提供装置300に送信し、情報提供装置300から宿所に対する推薦結果を受信して表示する。
推薦結果は使用者が選択した趣向フィルターとの関連度の高い順に受信して表示されることができる。
宿所に関連した趣向フィルターは宿所と趣向フィルターとの文書内での距離、宿所と趣向フィルターが同時に記載される頻度又はword2vecに基づいて選定される。文書は、SNS、ポータルサイト、ブログ、インターネットカフェーに掲示される文書を含むことができる。
図23は本発明の一実施例による地域に基づくアイテムを推薦する方法を実行するパッケージのインターフェースページの地域入力部を示す図である。
図22及び図23を参照すると、本発明の一実施例による地域に基づくアイテムを推薦する方法を実行するインターフェースページの地域入力部2220は、地域選択部2221、観光地選択部2222及び宿所選択部2223を含むことができる。
使用者が地域入力部2220に地域や観光地名を入力すれば、入力された地域又は地域観光地名によって地域入力部2220が拡張し、地域選択部2221、観光地選択部2222及び宿所選択部2223が表示されることができる。使用者が入力した地域や観光地名によって地域選択部2221、観光地選択部2222及び宿所選択部2223が全部表示されることもでき、いずれか一つのみ表示されることもできる。
地域選択部2221には使用者が入力した地域に関連した都市や行政区域などの地域が表示され、観光地選択部2222には観光地が表示され、宿所選択部2223には使用者が入力した地域に位置する宿所が表示される。
使用者が地域選択部2221に表示された地域や観光地選択部2222に表示された観光地又は宿所選択部2223に表示された宿所を選択すれば、拡張した地域入力部2220が縮小し、趣向フィルター選択部2230に使用者が選択した項目に関連した趣向フィルターが表示されることができる。あるいは、使用者が宿所選択部2223に表示された宿所を選択する場合、該当宿所に関連した趣向フィルターが表示されるものではなく、該当宿所についての情報がすぐ表示されることもできる。
使用者は趣向フィルター選択部2230に表示された趣向フィルターの一部又は全部を選択することができ、カテゴリー選択部2240に表示されたカテゴリーの一部又は全部を選択することができる。
使用者が検索ボタン2250を選択すれば、端末200は使用者が選択した趣向フィルター、カテゴリー及び地域を情報提供装置300に伝送し、宿所に対する推薦を要請する。
図24は本発明の他の実施例による地域に基づくアイテム推薦方法を実行するパッケージのインターフェースページを示す図である。
図22及び図24を参照すると、本発明の地域に基づくアイテム推薦方法を実行するパッケージのインターフェースページ2300は、趣向フィルター表示部2310及び推薦結果表示部2320を含む。
インターフェースページ2300は、図22の検索ボタン2250を使用者が選択した場合、端末200に表示されることができる。
端末200は趣向フィルター表示部2310に検索に使用された趣向フィルターを表示する。趣向フィルター表示部2310に表示された趣向フィルターは趣向フィルターを一定時間の間に押して削除するかあるいは選択項目修正ボタン2311を選択して趣向フィルターを削除するか追加することができる。
端末200は推薦結果表示部2320に使用者が選択した趣向フィルターによる検索結果を表示する。
情報提供装置300は、使用者が趣向フィルター選択部2230で選択した趣向フィルター、地域及びカテゴリーを受信し、趣向フィルター、地域及びカテゴリーに基づいて宿所を検索した後、趣向フィルターとの関連度、すなわち趣向フィルター宿所の関連度の高い順に推薦結果を整列して端末200に送信する。あるいは端末200が情報提供装置300から推薦結果を受信し、その結果を整列することもできる。
推薦結果表示部2320は、宿所情報表示部2321及び趣向フィルター表示部2322を含む。宿所情報表示部2321には宿所の名前、宿所の写真及び地域、評価点数、レビューの個数、価格帯などが表示されることができる。宿所情報表示部2321は詳細情報を表示するための詳細情報表示ボタン2323を含むことができる。
趣向フィルター表示部2322には宿所情報表示部2321に表示された宿所が含む趣向フィルターが表示される。
推薦結果表示部2320は、推薦結果を整列するための整列ボタン2325、宿所情報表示部2321に表示される情報を変更するための簡略情報表示ボタン2326、情報未表示ボタン2327及び地図表示ボタン2328を含むことができる。
整列ボタン2325は距離順、私の趣向順、人気順、低価順、高価順、評点順、レビュー順などのさまざまな整列基準を含むことができる。整列基準が選択されれば、端末200は選択された整列基準の通りに推薦結果を整列する。
簡略情報表示ボタン2326が選択されれば、端末200は推薦結果表示部2320に宿所の名前、宿所の写真及び地域、評価点数、レビューの個数、価格帯が含まれた宿所情報表示部2321と趣向フィルター表示部2322を表示する。
情報未表示ボタン2327が選択されれば、端末200は推薦結果表示部2320に宿所の写真のみ含まれた宿所情報表示部2321と趣向フィルター表示部2322を表示する。
この場合、使用者は宿所情報表示部2321に含まれた写真を選択することにより、宿所についての詳細情報を把握することができる。
地図表示ボタン2328が選択されれば、推薦結果が地図上に表示され、地図上で推薦された宿所の位置確認が可能である。
この時、処理フローチャートの各ブロックとフローチャートの組合せはコンピュータプログラムインストラクションによって行うことができることを理解することができる。このコンピュータプログラムインストラクションは汎用コンピュータ、特殊用コンピュータ又はその他のプログラム可能なデータプロセッシング装備のプロセッサに搭載されることができるので、コンピュータ又はその他のプログラム可能なデータプロセッシング装備のプロセッサによって行われるそのインストラクションがフローチャートブロック(等)で説明した機能を行う手段を生成することになる。これらのコンピュータプログラムインストラクションは、特定の方式で機能を具現するために、コンピュータ又はその他のプログラム可能なデータプロセッシング装備を指向することができるコンピュータ利用可能又はコンピュータ可読のメモリに保存されることもできるので、そのコンピュータ利用可能又はコンピュータ可読のメモリに保存されたインストラクションはフローチャートブロック(等)で説明した機能を行うインストラクション手段を内包する品目を生産することも可能である。コンピュータプログラムインストラクションはコンピュータ又はその他のプログラム可能なデータプロセッシング装備上に搭載されることもできるので、コンピュータ又はその他のプログラム可能なデータプロセッシング装備上で一連の動作段階を行ってコンピュータで実行されるプロセスを生成してコンピュータ又はその他のプログラム可能なデータプロセッシング装備を実行するインストラクションはフローチャートブロック(等)で説明した機能をするための段階を提供することも可能である。
また、各ブロックは特定の論理的機能(等)を行うための一つ以上の実行可能なインストラクションを含むモジュール、セグメント又はコードの一部を示すことができる。また、幾つかの代替実行例においては、ブロックで言及した機能がブロック順を外れて発生することも可能であることに注目しなければならない。例えば、相次いで示されている二つのブロックは実に実質的に同時に行われることもでき、あるいはそのブロックが時々当該機能によって逆順に行われることも可能である。
この時、本実施例で使われる‘〜部’という用語はソフトウェア又はFPGA又はASICのようなハードウェア構成要素を意味し、‘〜部’はある役目をする。しかし、‘〜部’はソフトウェア又はハードウェアに限定される意味ではない。‘〜部’はアドレッシングすることができる記憶媒体に組み込まれるように構成されることもでき、一つ又はそれ以上のプロセッサを再生させるように構成されることもできる。したがって、一例として‘〜部’はソフトウェア構成要素、客体指向ソフトウェア構成要素、クラス構成要素及びタスク構成要素のような構成要素と、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバー、ファームウエア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、及び変数を含む。構成要素と‘〜部’内で提供される機能はもっと小さい数の構成要素及び‘〜部’に結合されるとか追加的な構成要素と‘〜部’にさらに分離されることができる。それだけでなく、構成要素及び‘〜部’はデバイス又は保安マルチメディアカード内の一つ又はそれ以上のCPUを再生させるように具現されることもできる。
本明細書が属する技術分野の通常の知識を有する者は本明細書がその技術的思想又は必須な特徴を変更しなくても他の具体的な形態に実施可能であることを理解することができる。したがって、以上で記述した実施例は全ての面で例示的なもので限定的なものではないと理解しなければならない。本明細書の範囲は前記詳細な説明よりは後述する特許請求範囲によって決められ、特許請求範囲の意味及び範囲そしてその均等概念から導出される全ての変更又は変形の形態が本明細書の範囲に含まれるものであると解釈されなければならない。
一方、本明細書及び図面には本明細書の好適な実施例について開示した。ここで、たとえ特定の用語を使ったが、これはただ本明細書の記述内容を易しく説明して発明の理解を助けるための一般的な意味で使ったもので、本明細書の範囲を限定しようとするものではない。これに開示した実施例の外にも本明細書の技術的思想を基にする他の変形例が実施可能であるというのは本明細書が属する技術分野で通常の知識を有する者に明らかである。