(58)【調査した分野】(Int.Cl.,DB名)
前記テキストデータを照合するステップが、トライ木の各ノードに割り当てられた文字が前記テキストデータ内で取得することができると判定するステップと、前記テキストデータが前記情報推薦ルールに適合していることを示すステップとを備える、請求項1〜8のいずれか一項に記載の方法。
【発明を実施するための形態】
【0020】
本願の目的、技術的解決策、及び有利な点をより明瞭にするために、本願の特定の実施の形態および対応する添付図面を参照し、本願の技術的解決策について以下に説明する。説明された実施の形態は、本願の実施の形態の全てではなくむしろいくつかのものに過ぎないことは明らかである。そして、創作工夫を伴わずに本願の実施の形態の記載に基づいて当業者によって得られた他の実施の形態は、本願の保護範囲内に入るものとする。
【0021】
本願の実施の形態によって提供される技術的解決策は、添付の図面を参照して以下に詳細に説明される。
【0022】
・実施の形態1
本願のこの実施の形態は、特定のグループの人々に情報を推薦するために多くの処理リソースを消費する必要がある従来の問題点を解決するための情報推薦方法を提供する。
【0023】
本願のこの実施の形態で提供される情報推薦方法は、スマートフォン、タブレットコンピュータ、パーソナルコンピュータ(Personal Computer、PC)、サーバなどによって実行することができる。これは、本願に対する制限を構成するものではない。説明の便宜上、本実施の形態は、例えば1つのクライアント(以下、「情報推薦クライアント」という)によって実行される。当該方法をスマートフォンで実行することは単なる一例に過ぎず、当該方法を限定していると見なされるべきではない。
【0024】
この方法の具体的な実施プロセスを示す概略図を
図1に示し、当該実施プロセスは主に以下のステップを含む。
【0025】
ステップ11:情報推薦クライアントが1つのクライアント(以下、「データ供給クライアント」という)が第1のサーバに送信するテキストデータを取得する。
【0026】
ステップ11における情報推薦クライアント及びデータ供給クライアントは、パーソナルコンピュータ、タブレットコンピュータ、スマートフォン、またはスマートテレビ等のデバイスにインストールされた任意のクライアントであり得る。
【0027】
データ供給クライアントは情報推薦クライアントであってもよく、あるいはデータ供給クライアントは情報推薦クライアントとは別のクライアントであってもよい。
【0028】
第1のサーバは、一般的にはデータ供給クライアントのバックエンドサーバである。もちろん、第1のサーバは、データ供給クライアントとのデータ伝送を実行することができる別のサーバであってもよい。
【0029】
テキストデータは、例えば、データ供給クライアントによって発行された微博(Weibo)の投稿、ログ、チャットコンテンツ等とすることができる。例えば、データ供給クライアントが携帯電話にインストールされたチャットアプリケーション(Application、APP)であるとする。ユーザがチャットアプリケーションを使用してテキストコンテンツを入力すると、情報推薦クライアントはテキストコンテンツ(このテキストコンテンツはテキストデータの一種である)を取得することができる。別の例として、ユーザが微博を使用して投稿を公開すると、情報推薦クライアントはこの投稿のテキストコンテンツを取得することができる。
【0030】
一実施の形態として、データ供給クライアントによって第1のサーバに送信されたテキストデータを取得する方法は、以下の2つの方法を含むが、これに限定されない。
【0031】
方法1:情報推薦クライアントは、データ供給クライアントから第1のサーバに送信されたテキストデータを第1のサーバから取得する。
【0032】
例えば、ユーザが携帯電話にインストールされているチャットアプリケーションを使用してチャットを行うとする。ユーザは、アプリケーションを用いてチャットコンテンツを入力し、第1のサーバを利用してこのチャットコンテンツを情報受信者の携帯電話に送信するものであるが、これにより、第1のサーバはチャットコンテンツを保存することができる。したがって、情報推薦クライアントは、チャットコンテンツの取得要求を第1のサーバに直接送信することができ(この要求には、取得する必要があるチャットコンテンツの識別子を含めることができ、この識別子には、例えばチャットコンテンツの送信時刻やユーザアカウントが含まれる)、第1のサーバは、上述の識別子に基づいて、ユーザが必要としたチャットコンテンツを特定し、このチャットコンテンツのテキストデータを情報推薦クライアントに送信することができる。
【0033】
方法2:情報推薦クライアントは、データ供給クライアントによって送信されたテキストデータを受信する。
【0034】
例えば、携帯電話にインストールされたデータ供給クライアントを利用してテキストデータを第1のサーバに送信する場合、データ供給クライアントは、テキストデータをコピーし、指定されたインターフェースを呼び出すことによって、コピーされたテキストデータをユーザの携帯電話にインストールされた情報推薦クライアントに送信することができる。上記指定されたインターフェースとしては、例えば、情報推薦クライアントのアクセスインタフェースとすることができる。もちろん、データ供給クライアントは上記指定されたインターフェースを呼び出す権限を持つことができるものである。
【0035】
なお、上記方法2では、第1のサーバを介さずに、情報推薦クライアントからテキストデータ(例えば、ユーザのチャットコンテンツ)をローカルで取得することも可能であることに留意すべきである。これにより、サーバからインターネットを介してテキストデータを取得することによる情報漏洩の可能性を回避することができる。
【0036】
さらに、データ供給クライアントによって第1のサーバに送信されるテキストデータは、前の2つの方法のうちの1つを使用することによって、以下の2つの状況において取得され得ることに留意されたい。
【0037】
状況1:ユーザが端末を使用してテキストデータを送信した後、ユーザによって送信されたテキストデータが取得される。
【0038】
例えば、ユーザが使用する端末が携帯電話であり、ユーザが携帯電話にインストールされているチャットアプリケーションを使用しているとする。ユーザがアプリケーションを使用してチャットコンテンツを入力し、ユーザが「送信」キーをタップすると、上述した2つの方法を使用して、送信キーをタップしたユーザが送信したテキストデータが取得される。
【0039】
状況2:ユーザが端末を用いてテキストデータを入力した後、そのテキストデータを送信する前に、そのテキストデータ(以下、「送信予定のテキストデータ」という)が取得される。
【0040】
例えば、ユーザが使用する端末が携帯電話であり、ユーザが携帯電話にインストールされた微博を使用すると仮定する。ユーザがアプリケーションを使用して「ナショナルデーおめでとう。7日間の良い休暇を」という投稿を公開する予定の場合において、ユーザがアプリケーションを使用してテキストを入力するが「送信」キーをタップしない場合であっても、ユーザ端末を使用してユーザによって入力されたテキストをも取得することができる。このテキストが送信予定のテキストデータである。
【0041】
ステップ12:情報推薦クライアントが所定の情報推薦ルールセットが前記テキストデータと一致する情報推薦ルールを含むか否かを特定する。所定の情報推薦ルールセットがテキストデータと一致する情報推薦ルールを含む場合は、ステップ13を実行する。また、所定の情報推薦ルールセットがテキストデータと一致する情報推薦ルールを含まない場合は、処理を終了する。
【0042】
情報推薦ルールセットは、いくつかの情報推薦ルールを含む。情報推薦ルールは、推薦する情報に基づいて設定され、推薦する情報に応じて当該推薦する情報を取得する必要があるか否かを特定するためのルールである。
【0043】
情報推薦ルールセットは、第2のサーバによって提供されてもよく、あるいは情報推薦クライアントのローカルにプリセットされていてもよいことに留意されたい。第2のサーバは、一般に、情報推薦クライアントのバックエンドサーバである。もちろん、第2のサーバは、情報推薦クライアントとのデータ伝送を実行することができる別のサーバであってよい。情報推薦クライアントは、情報推薦ルールのダウンロード要求を第2のサーバに送信し、第2のサーバは、ダウンロード要求に応じて情報推薦クライアントに設定された情報推薦ルールを送信することができる。
【0044】
一般に、推薦する情報にはテーマを設定することができ、推薦する情報の内容に基づいてテーマに対応するキーワードを特定することができる。これに対応して、本実施の形態においては、推薦する情報に基づいて情報推薦ルールを設定するための具体的な実施の方法として、推薦する情報に指定されたテーマと、このテーマに対応するキーワードとを含むように情報推薦ルールを設定するステップ;あるいはキーワードのみを含むように情報推薦ルールを設定するステップを含む。
【0045】
本願のこの実施の形態においては、情報推薦ルールは、一般に以下の2つのフォーマットを使用することができる。
フォーマット1:A、A1、A2、A3
ここで、Aは情報のテーマであり、A1、A2、及びA3はAに対応するキーワードである。
フォーマット2:B1、B2、B3
ここで、B1、B2、B3はキーワードである。
【0046】
例えば、推薦する情報がバスケットボールに関連するものであり、推薦する情報のテーマが「バスケットボール」に設定されていると仮定する。統計に基づいて、ユーザのチャットコンテンツが「コービー」、「ジョーダン」、および「NBA」という3つの単語を含むとき、ユーザのチャットコンテンツは一般にバスケットボールに関連することが識別される。次いで、バスケットボールに関する情報推薦ルールのテーマを「バスケットボール」に設定し、キーワードを「コービー」、「ジョーダン」、「NBA」に設定することができる。したがって、情報推薦ルールは、バスケットボール、コービー、ジョーダン、及びNBAとすることができる。
【0047】
この実施の形態において、情報推薦ルールと一致するテキストデータとは、テキストデータが情報推薦ルールのキーワードと同じ単語を含むことを意味する。
【0048】
例えば、ステップ11を実行して得られたテキストデータが、情報推薦ルールにおける各キーワードと同じ単語を含む場合、このテキストデータが情報推薦ルールと一致すると特定することができる。
【0049】
例えば、情報推薦ルールセットに、以下の条件を満たす情報推薦ルールが含まれているとする:
1.推薦する情報のために特定されたテーマは、「バスケットボール」である;
2.テーマである「バスケットボール」のキーワードは、「コービー」、「ジョーダン」、「NBA」である。
【0050】
したがって、ステップ11を実行してデータ供給クライアントから第1のサーバに送信されたテキストデータが得られ、且つ得られたテキストデータが「コービーとジョーダンの二人が私の好きなNBA選手です」である場合、取得されたテキストデータには上述のキーワード「コービー」、「ジョーダン」、「NBA」と同じ単語「コービー」、「ジョーダン」、「NBA」が含まれているため、取得したテキストデータが指定された情報推薦ルールに適合していると特定することができる。すなわち、この情報推薦ルールセットは、取得されたテキストデータと一致する情報推薦ルールを含むものである。
【0051】
ステップ12を実行してクライアントから送信されたテキストデータが「私のお気に入りのバスケットボール選手はレイカーズのコービーです」である場合、このテキストデータには、情報推薦ルールに含まれるキーワードである単語「コービー」とテーマの「バスケットボール」のみが含まれている。この場合、このテキストデータが情報推薦ルールに適合していないと特定することができる。
【0052】
本願のこの実施の形態では、情報推薦ルール内のキーワードを使用することによって、トライ木(Trie Tree)を構築することができることに留意されたい。このような場合、情報推薦ルールのキーワードをフィルタリングして得られたテキストデータにキーワードと一致する単語が含まれているか否かを特定し、それに応じてこのテキストデータが情報推薦ルールに適合するか否かを判断する。
【0053】
一実施の形態では、情報推薦ルール内のキーワードを使用することによって、トライ木を構築することができる。具体的には、情報推薦ルールにおいてキーワードとなる各漢字(または文字)をトライ木の各ノードに別々に割り当てることができる。次に、キーワードの中の1番目の漢字(または1番目の文字)が位置するノードをトライ木の始点ノードとし、キーワードの中の最後の漢字(または最後の文字)が位置するノードをトライ木の終点ノードとして設定する。情報推薦ルール内の少なくとも2つのキーワードの第1漢字(または少なくとも2つのキーワードの第1文字)が同じ場合、少なくとも2つのキーワードを1つのトライ木内に構築することができることに留意されたい。例えば、キーワードが「his」、「he」、「her」であるときは、
図2に示す1つのトライ木を構築できる。
【0054】
例えば、推薦される情報のテーマが漫画に関連し、テーマに特有の情報推薦ルールが「テーマ:漫画、キーワード:海賊王(ワンピース)、死神(ブリーチ)、死亡筆記(デスノート)」に設定されていると仮定する。この情報推薦ルールに基づいて構築されたトライ木を
図3に示す。
図3において、深い色のノードは終点ノードを表している。
【0055】
情報推薦ルールのキーワードが漢字であることに留意すべきである。情報推薦ルールのキーワードによって構築されたトライ木が用いられる。所定の情報推薦ルールセットにおいて、テキストデータと一致する情報推薦ルールが存在するかどうかを特定するために、プロセスは以下のものを含む:
【0056】
取得されたテキストデータに対し、トライ木の始点ノードに割り当てられた漢字と同じ漢字を検索する。ある漢字が始点ノードに割り当てられた漢字(以下、始点ノードで「一致した漢字」という)と同じものである場合、始点ノードに準ずるサブノードに割り当てられた漢字の取得を継続して行う。始点ノードで「一致した漢字」の直後にある漢字が、サブノードに割り当てられた漢字と同じであるかどうかについて、テキストデータ内においてさらに検査される(なお、テキストデータ内において、トライ木のノードに割り当てられた漢字と同じ漢字が検索された場合には、そのノードを「一致ノード」と呼び、その漢字は「一致した漢字」として参照される)。始点ノードで「一致した漢字」の直後の漢字が、そのサブノードに割り当てられた漢字と同じ場合、「一致ノード」に準ずるサブノードに割り当てられた漢字が連続的に取得される。この取得された漢字に基づいて、この漢字と同じ「一致した漢字」がテキストデータ内に存在するか否かが調べられ、以下同様に処理が行われる。トライ木の終点ノードに割り当てられたものと同じ漢字がテキストデータ内で検索されるまで、あるいは非終端ノードに一致するノードに対応するサブノードに割り当てられた漢字と同じ漢字がテキストデータ内で検索できないと判定されるまで、検索は続けられる。
【0057】
上記の方法に基づき、取得されたテキストデータがトライ木の各ノードに割り当てられた漢字と一致する漢字を検索することができると特定された場合には、一般に、この取得したテキストデータが、トライ木のキーワードを含む情報推薦ルールに適合していることを示す。
【0058】
例えば、次の条件が有効であると仮定する:
1.推薦する情報のテーマは「漫画」である;
2.特定の情報推薦ルールは「テーマ:漫画、キーワード:海賊王(ワンピース)、棋魂(ヒカルの碁)、死亡筆記(デスノート)」であり、トライ木は前述のキーワードに基づいて別々に構築される;
3.ステップ11を実行することで得られたテキストデータは「私は小畑健の「棋魂」と「死亡筆記」、そして尾田栄一郎の「海賊王」が好きです。」である。
【0059】
この場合、取得されたテキストデータは、構築されたトライ木を介して検索される。チャットテキストが情報推薦ルールに適合しているかどうかを特定する方法として、以下のステップを含むことができる:
【0060】
前記テキストデータを検索するために、キーワード「海賊王」に基づいて構築されたトライ木を使用するステップであって、このステップは、トライ木の始点ノードに割り当てられた文字「海」と同じ漢字がテキストデータ内にあるか否かを検索することができる。さらに、始点ノードに準ずるサブノードに割り当てられた漢字「賊」について、漢字「海」に直に隣接する漢字「賊」をテキストデータ内で検索することができる。類推すると、この検索は、トライ木の終点ノードに割り当てられた漢字「王」と同じ漢字がテキストデータ内で検索されるまで行われる。以上により、取得されたテキストデータは、情報推薦ルールのキーワード「海賊王」と一致すると特定される。
【0061】
このような方法により、キーワード「死亡筆記」とキーワード「棋魂」に基づいて構築されたトライ木を介して、チャットコンテンツが逐次検索される。該当する検索結果が、情報推薦ルールのキーワード「死亡筆記」及び「棋魂」と一致している場合には、チャットコンテンツが情報推薦ルールに適合していると特定することができる。
【0062】
なお、同一の対象について推薦する情報に基づいて、異なる情報推薦ルールを設定することも可能である点に留意されたい。例えば、推薦する情報のテーマが「バスケットボール」である場合について検討する。統計に基づいて、ユーザのチャットコンテンツが「コービー」、「ジョーダン」、および「NBA」という3つの単語を含む場合、ユーザのチャットコンテンツはバスケットボールに関連するものとして識別される。また、ユーザのチャットコンテンツが「スラムダンク」、「ブロックショット」、および「リバウンド」の3つの単語を含む場合にも、このユーザのチャットコンテンツはバスケットボールに関係すると考えられる。したがって、推薦する情報のための以下の2つの情報推薦ルールは、「バスケットボール」に関連するものと設定することができる:
【0063】
ルール1:テーマ:バスケットボール、キーワード:「コービー」、「ジョーダン」、「NBA」
【0064】
ルール2:テーマ:バスケットボール、キーワード:「スラムダンク」、「ブロックショット」、「リバウンド」
【0065】
さらに、同じグループのキーワードは、異なるテーマに対応することができることについても留意すべきである。例えば、キーワード「スラムダンク」と「黒子のバスケ」は、テーマ「バスケットボール」またはテーマ「漫画」に対応することができる。
【0066】
ステップ13:情報推薦クライアントが第2のサーバより提供される推薦する情報を取得する。
【0067】
ここで、第2のサーバは、推薦する情報を提供するためのサーバである。この第2のサーバは、第1のサーバ、または第1のサーバとは異なる2つ目のサーバとすることができる。
【0068】
なお、推薦する情報は、情報推薦ルールのテーマに関連する広告、ニュース、写真、映画等の情報であってもよい。
【0069】
一実施の形態において、推薦する情報を取得する方法は、以下の2つの方法を含むことができるが、これに限定されない:
【0070】
方法1:情報推薦クライアントは、推薦する情報を情報推薦クライアントにプッシュするために第2のサーバをトリガ(trigger:きっかけを与える)して第2のサーバよりプッシュされる推薦する情報を取得する。
【0071】
例えば、情報推薦クライアントが、第1のサーバに送信されたテキストデータが、テーマ「バスケットボール」を有する情報推薦ルールに適合すると特定した場合、情報推薦クライアントは、テーマ「バスケットボール」に関連する情報の取得要求を第2のサーバに送信する。第2のサーバはこの要求を受信し且つ応答し、テーマ「バスケットボール」を含む推薦する情報を情報推薦クライアントに送信する。
【0072】
別の例として、情報推薦クライアントは携帯電話にインストールされている。ステップ12が実行された後、データ供給クライアントによって送信されたテキストデータが、テーマ「バスケットボール」を有する情報推薦ルールに適合する場合、情報推薦クライアントは、テーマ「バスケットボール」を有する情報の取得要求を第2のサーバに送信する。第2のサーバはこの要求を受信し且つ応答し、テーマ「バスケットボール」を含む推薦する情報を携帯電話に送信する。
【0073】
第2のサーバが、推薦する情報を多数記憶している場合には、第2のサーバが推薦する情報を検索する処理を助けるため、情報の取得要求は、推薦する情報の特徴を含むことができる点に留意されたい。例えば、推薦する情報のテーマ、推薦する情報のキーワード、推薦する情報の数、あるいは推薦する情報に対応する情報推薦ルールの識別子等を含むことができる。すなわち、第2のサーバは、情報の取得要求を受信した後、この要求に含まれる推薦する情報の識別子に基づいて、対象となる推薦する情報を検索することができる。
【0074】
方法2:第2のサーバから推薦する情報をダウンロードする。
【0075】
ステップ12が実行された後、情報推薦クライアントが、第1のサーバに送信されたテキストデータがテーマ「バスケットボール」を含む情報推薦ルールに適合していると判定した場合、情報推薦クライアントは、第2のサーバから、テーマ「バスケットボール」を含む推薦する情報をダウンロードする。
【0076】
実際のアプリケーションでは、異なる情報推薦ルールは異なるキーワードまたは同じキーワードを持つことがある。
【0077】
一般に、同一のキーワードが異なる情報推薦ルールに設定されている場合、キーワードと情報推薦ルールとの関連性、すなわち情報推薦ルールに対応するキーワードと推薦される情報との間には関連性があるとみることができる。例えば、情報推薦ルール1(テーマ「漫画」を含む)と情報推薦ルール2(テーマ「バスケットボール」を含む)とは、キーワードを「スラムダンク」としてそれぞれ設定される。統計によれば、通常、このキーワードと情報推薦ルール1との間の関連性は、このキーワードと情報推薦ルール2との間の関連性よりも高い。したがって、情報推薦ルールのセットが、テキストデータと一致する少なくとも2つの情報推薦ルールを含むと判定された場合において、第2のサーバから取得される推薦する情報がテキストデータとの関連性が相対的に高い方の情報であることを保証するため、本願の実施の形態においては、異なる情報推薦ルールで指定されたキーワードのそれぞれに重みを設定することができる。この場合、情報の取得要求を第2のサーバに送信する情報推薦クライアントは:前記少なくとも2つの情報推薦ルールに設定されたキーワード毎に設定された重みに基づき、前記セット内のテキストデータと一致する情報推薦ルールが少なくとも2つあると判定された場合において、前記少なくとも2つの情報推薦ルールから一の情報推薦ルールを選択するステップと;前記選択された情報推薦ルールに設定されたテーマを前記情報の取得要求に含め、この情報の取得要求を前記第2のサーバに送信するステップと、を実行することを含む。その後、第2のサーバは、情報推薦クライアントに、この要求のテーマに基づいて、このテーマを含んだ推薦する情報を提供することができる。
【0078】
例えば、次の条件が有効であるとする:
a.推薦する情報Aのテーマが「バスケットボール」であり、特定される情報推薦ルールが情報推薦ルール1:「テーマ:バスケットボール、キーワード:スラムダンク」である;
b.推薦する情報Bのテーマが「漫画スラムダンク」であり、特定される情報推薦ルールが情報推薦ルール2「テーマ:漫画スラムダンク、キーワード:スラムダンク」である;
c.ステップ11を実行することにより、データ供給クライアントから送信されたテキストデータは「昨日のスラムダンクコンテストは素晴らしかった。」である;
d.情報推薦ルール1の判定結果の重みは2に設定され、情報推薦ルール2の判定結果の重みは1に設定される;
e.テキストデータと情報推薦ルールとが一致した場合はテキストデータのスコア=1、そうでなければテキストデータのスコア=0である。
【0079】
以上のことから、取得されたテキストデータが情報推薦ルール1と一致すると判定された場合、データ供給クライアントが送信するテキストデータの判定結果の点数は、スコア×重み=1×2=2点となる。同様に、テキストデータが情報推薦ルール2と一致すると判定された場合、このテキストデータの判定結果の点数は、スコア×重み=1×1=1点となる。判定結果の点数に基づき、このテキストデータと対象となるテーマ「バスケットボール」を含む推薦する情報の関連性が高いことを特定することができ、これにより、テーマ「バスケットボール」を含んだ、第2のサーバによって提供される推薦する情報を得ることができる。
【0080】
ユーザに頻繁に情報を推薦することによって引き起こされるユーザエクスペリエンスの低下を避けるために、本願のこの実施の形態においてはさらに、第2のサーバから推薦する情報を得る情報推薦クライアントを制限するための制限ポリシーを提供することについて留意すべきである。本願のこの実施の形態では、ステップ13において、以下の2つのポリシーを使用して、情報推薦クライアントが第2のサーバから推薦する情報を取得することを制限することができる。
【0081】
ポリシーa:ステップ12において、テキストデータ(通常は1つのテキストデータ)に含まれる、情報推薦ルールのキーワードと同一の単語の数が少なくとも所定の数を超える場合にのみ、情報推薦クライアントは、情報推薦ルールに対応する推薦する情報を第2のサーバから取得し、推薦する情報をユーザに提示することができる。
【0082】
ここでいう情報推薦ルールは、テキストデータと一致するいくつかの情報推薦ルールであってもよく、もしくはテキストデータと一致する少なくとも2つの情報推薦ルールから、上記した手法を用いて決定された一の情報推薦ルールであってもよい。
【0083】
例えば、次の条件が有効であるとする:
条件1:推薦する情報のテーマが「バスケットボール」であり、特定される情報推薦ルールは、情報推薦ルール1「テーマ:バスケットボール、キーワード:スラムダンク」である;
条件2:上記所定の数は「2」である;
条件3:取得されたテキストデータが「私はカーターのスラムダンクがスラムダンクコンテストで最高だと思う」である。
【0084】
この場合、取得されたテキストデータにおいて、情報推薦ルールのキーワードと同じ単語「スラムダンク」が2回出現している。したがって、情報推薦クライアントは、第2のサーバから、このテーマを含む推薦する情報を取得し、この推薦する情報をユーザに提示することができる。
【0085】
ポリシーb:同じ情報推薦ルールと一致するテキストデータの数が所定数以上である場合にのみ、情報推薦クライアントは、情報推薦ルールに対応する推薦する情報を第2のサーバから取得し、推薦する情報をユーザに提示することができる。
【0086】
ここでいう「同じ情報推薦ルール」とは、ステップ12において、テキストデータと一致するいくつかの情報推薦ルールであってもよく、もしくはテキストデータと一致する少なくとも2つの情報推薦ルールから、上記した手法を用いて決定された一の情報推薦ルールであってもよい。また、ここでいう「同じ情報推薦ルールと一致するテキストデータ」とは、一般に、ステップ12におけるテキストデータを含み、データ供給クライアントによって第1のサーバに送信される他のテキストデータをさらに含むことができる。さらに、ここでいう「同じ情報推薦ルールと一致するテキストデータの数」とは、一般に、所定時間(例えば、30分)以内にデータ供給クライアントが第1のサーバに送信するテキストデータであって、且つ同じ情報推薦ルールに一致するものの数を示す。
【0087】
例えば、次の条件が有効であるとする:
条件1:推薦される情報のテーマが「バスケットボール」であり、特定された情報推薦ルールは、情報推薦ルール1「テーマ:バスケットボール、キーワード:スラムダンク」である;
条件2:所定時間は「30分」であり、データの所定数は「2」である。
【0088】
この場合において、30分以内にデータ供給クライアントから第1のサーバに送信され、且つ情報推薦ルールと一致するテキストデータが取得されたとき、「スラムダンクコンテストはすばらしい」と「カーターのスラムダンクが最高だと思う」の2つのテキストデータが情報推薦ルールに一致する。したがって、情報推薦クライアントは、第2のサーバから前記テーマを含む推薦する情報を取得し、推薦する情報をユーザに提示することができる。
【0089】
実施の形態1で提供される方法における各ステップは、1つのデバイスによって、または異なるデバイスによって実行され得ることに留意されたい。例えば、ステップ11及びステップ12はデバイス1で実行でき、ステップ13はデバイス2で実行することができる。別の例では、ステップ11はデバイス1によって実行され、ステップ12及びステップ13はデバイス2によって実行され得る。
【0090】
本願の実施の形態1で提供される情報推薦方法によれば、クライアントが送信したテキストデータが、推薦する情報に基づいて特定された情報推薦ルールと一致する場合には、それはつまり、ユーザが、推薦する情報に感謝したり興味を持ったりする特定のグループの人々に属している可能性が高いことを示している。これにより、クライアントによって送信されたテキストデータと一致する情報推薦ルールが存在する場合にのみ、サーバによって提供される推薦する情報を得ることができ、その情報は特定の人々に推薦されることを前提とした、選択的な情報の推薦を実現することができ、これは、特定の人々に情報を推薦するために多くの処理リソースを消費する必要があるという従来の問題点を回避するものである。
【0091】
・実施の形態2
本願におけるこの実施の形態は、特定のグループの人々に情報を推薦するために多くの処理リソースを消費する必要がある従来の問題点を解決するための情報推薦装置を提供する。この装置の具体的な構成を示す模式図を
図4に示し、この装置は、テキストデータ取得部21と、情報推薦ルール決定部22と、推薦情報取得部23とを含む。
【0092】
テキストデータ取得部21は、クライアントから第1のサーバに送信されたテキストデータを取得する。
【0093】
情報推薦ルール決定部22は、予め設定された情報推薦ルールセット内にテキストデータと一致する情報推薦ルールが存在するか否かを特定し、情報推薦ルールは、推薦する情報に基づいて設定される。
【0094】
推薦情報取得部23は、所定の情報推薦ルールセットがテキストデータと一致する情報推薦ルールを含むか否かを特定し、この一致する情報推薦ルールと一致し第2のサーバによって提供された推薦する情報を取得する。
【0095】
この実施の形態では、推薦する情報はサーバによって提供されるものとすることができる。この場合、推薦情報取得部23は:推薦する情報をプッシュするために第2のサーバをトリガして第2のサーバよりプッシュされるべき推薦する情報を取得する、あるいは推薦する情報を第2のサーバからダウンロードするよう構成されている。
【0096】
この実施の形態では、推薦情報取得部23は、前記第2のサーバに直接情報の取得要求を送信し、前記情報の取得要求に応じて前記第2のサーバが送信する推薦する情報を受信するか、あるいは情報プッシュ型アプリケーションを用いて情報の取得要求を第2のサーバに送信し、情報の取得要求に応じて第2のサーバが送信する情報を受信するものである。
【0097】
第2のサーバが推薦する情報を多数記憶している場合、第2のサーバが推薦する情報を検索するのを助けるために、本実施の形態では、情報の取得要求は推薦する情報の特徴を含む。
【0098】
この実施の形態において、推薦する情報の特徴は:推薦する情報のテーマ;推薦する情報のキーワード;推薦する情報の数;及び推薦する情報に対応する情報推薦ルールの識別子;の少なくとも1つを含むものである。
【0099】
推薦情報取得部23は、第2のサーバから取得した推薦する情報が、テキストデータとの関連性が相対的に高いものであることを確実にするために:各情報推薦ルールに、テーマと当該テーマに対応する少なくとも1つのキーワードとが設定されている場合にあって、情報推薦ルールのセットに当該テキストデータと少なくとも2つの情報推薦ルールが含まれているとき、前記少なくとも2つの情報推薦ルール中のキーワードにそれぞれ設定された重みに基づいて、前記少なくとも2つの情報推薦ルールから一の情報推薦ルールを選択し;選択された情報推薦ルールで特定されたテーマを前記情報の取得要求に追加し、前記情報の取得要求を前記第2のサーバに送信するものである。
【0100】
このテキストデータは能動的に取得することができ、あるいは受動的に受信することができる。例えば、本実施の形態において、テキストデータ取得部21は、クライアントから第1のサーバに送信されたテキストデータを第1のサーバから取得するか、あるいはクライアントによって送信されたテキストデータを受信する。ここで、クライアントによって送信されたテキストデータは、クライアントによって送信されたテキストデータを第1のサーバにコピーすることによって得られる。
【0101】
より効果的かつ迅速に所定の情報推薦ルールを特定するために、前記所定の情報推薦ルールセットが前記テキストデータと一致する情報推薦ルールを含むか否かを特定し、一実施の形態においては、情報推薦ルール決定部はさらに、前記所定の情報推薦ルールセットがテキストデータと一致する情報推薦ルールを含むか否かを特定する前に、第2のサーバによって提供される前記セットを取得して保存するステップを含む。
【0102】
本願の実施の形態2に記載の情報推薦装置によれば、クライアントから送信されたテキストデータが、推薦する情報に基づいて特定された情報推薦ルールと一致する場合、それはつまり、ユーザが、推薦する情報に感謝したり興味を持ったりする特定のグループのユーザである可能性が高いことを示す。クライアントによって送信されたテキストデータと一致する情報推薦ルールが存在する場合のみ、サーバが提供する推薦する情報を取得することができるので、特定の人に推薦することを前提として選択的な情報の推薦を行うことができ、これは、特定の人々に情報を推薦するために多くの処理リソースを消費する必要があるという従来の問題点を回避するものである。
【0103】
当業者は、本願の実施の形態を、方法、システム、コンピュータプログラム製品として提供できることを理解するはずである。そのため、本願は、ハードウェアのみの実施の形態、ソフトウェアのみの実施の形態、又は、ソフトウェアとハードウェアを組み合わせた実施の形態を用いることができる。更に、本願は、コンピュータで使用できるプログラムコードを含む1つ以上のコンピュータで使用できる記憶媒体(磁気ディスクメモリ、CD−ROM、光学メモリ等を含むが、これらに限定されない)上で実施されるコンピュータプログラム製品の形態を用いることができる。
【0104】
本願は、本願の実施の形態による方法、装置(システム)、及びコンピュータプログラム製品のフローチャート及び/又はブロック図を参照して説明される。フローチャート及び/又はブロック図における各工程及び/又は各ブロック、並びにフローチャート及び/又はブロック図における工程及び/又はブロックの組み合わせを実装するためにコンピュータプログラム命令を使用できることを理解されたい。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、又は任意の別のプログラマブルデータ処理装置のプロセッサに提供されて、装置を形成することができる。その結果、コンピュータ又は任意の他のプログラマブルデータ処理装置のプロセッサによって実行される命令は、フローチャートの一の若しくは複数の工程又はブロック図の一の若しくは複数のブロックで示される特定機能を実行するための装置を生成する。
【0105】
これらのコンピュータプログラム命令は、コンピュータ又は任意のその他のプログラマブルデータ処理装置に特定の方法で働くよう命令できるコンピュータ読み取り可能メモリに格納できるため、コンピュータ読み取り可能メモリに格納された命令は、命令装置を含む中間生成物を生成する。命令装置は、フローチャートの一の若しくは複数の工程、及び/又はブロック図の一の若しくは複数のブロックで示される特定機能を実行する。
【0106】
これらのコンピュータプログラム命令は、コンピュータ又は別のプログラマブルデータ処理装置へロードすることができ、コンピュータ又は別のプログラマブル装置で一連の操作及びステップが実行され、それによってコンピュータによる実施処理が実践される。したがって、コンピュータ又は別のプログラマブルデバイス上で実行される命令は、フローチャートの一の若しくは複数の工程及び/又はブロック図の一の若しくは複数のブロックで示される特定機能を実行するステップを提供する。
【0107】
典型的な構成では、コンピュータ装置は、1つまたは複数のプロセッサ(CPU)、入力/出力インターフェイス、ネットワークインターフェイス、及びメモリを含む。
【0108】
メモリは、非永続性メモリ、ランダムアクセスメモリ(RAM)、不揮発性メモリ、及び/又は、その他の、コンピュータで読み出せる媒体の形式、例えば、リードオンリーメモリ(ROM)又はフラッシュメモリ(flash RAM)を含む。このメモリは、コンピュータ読み取り可能な媒体の一例である。
【0109】
コンピュータ読み取り可能な媒体は、任意の方法又は技術を用いて情報を記憶する永続的、非永続的、可動式、及び固定式の媒体を含む。情報は、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又はその他のデータであってよい。コンピュータ記憶媒体の例として、相変化メモリ(PRAM)、静的ランダムアクセスメモリ(SRAM)、動的ランダムアクセスメモリ(DRAM)、若しくは別タイプのランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電気的消去ができる読み取り専用メモリ(EEPROM)、フラッシュメモリ、若しくは別のメモリ技術、コンパクトディスク−リードオンリーメモリ(CD−ROM)、デジタル多用途ディスク(DVD)、若しくは別の光学記憶装置、磁気カセット、磁気テープ、磁気ディスクメモリ、若しくは別の磁気記憶デバイス、又は、コンピュータデバイスがアクセスできる情報を記憶するために用いられる別の非伝送媒体があるが、これらに限定されない。本明細書での定義によれば、コンピュータ読み取り可能な媒体には、変調したデータ信号やキャリアのような、コンピュータで読み取り可能な一時的な媒体(transitory memory)は含まれない。
【0110】
用語「含む」「包含する」、又はその何らかの他の変形体は、非排他的な包含を網羅するものとし、要素のリストを含む工程、方法、物品若しくはデバイスは、これらの要素のみを含むのではなく、明示的列挙されてはいない他の要素を含む、又は、係る工程、方法、物品又はデバイスに固有な他の要素を更に含むことにも留意されたい。「1つの〜を含む」と定義された要素は、更なる制約なしに、この要素を含む工程、方法、物品又はデバイスにおける別の同一の要素を更に含む。
【0111】
当業者は、本願の実施の形態を、方法、システム、コンピュータプログラム製品として提供できることを理解するはずである。そのため、本願は、ハードウェアのみの実施の形態、ソフトウェアのみの実施の形態、又は、ソフトウェアとハードウェアを組み合わせた実施の形態を用いることができる。更に、本願は、コンピュータで使用できるプログラムコードを含む1つ以上のコンピュータで使用できる記憶媒体(磁気ディスクメモリ、CD−ROM、光学メモリ等を含むが、これらに限定されない)上で実施されるコンピュータプログラム製品の形態を用いることができる。
【0112】
先の実施の形態は本開示の一実施の形態にすぎず、本願を限定することを意図してはいない。当業者は、本願に様々な修正及び変更を加えることができる。本願の主旨及び原理から逸脱することなくなされた修正、均等物との置換え、改良はいずれも、本開示の特許請求の範囲に含まれる。
以下、本発明の実施の態様の例を列挙する。
[第1の局面]
情報推薦方法であって:
クライアントによって第1のサーバに送信されたテキストデータを取得するステップと;
所定の情報推薦ルールセットが前記テキストデータと一致する情報推薦ルールを含むか否かを特定するステップであって、前記情報推薦ルールは、推薦する情報に基づいて設定される、ステップと;
前記所定の情報推薦ルールセットが、前記テキストデータと一致する情報推薦ルールを含む場合、前記一致する情報推薦ルールに一致し第2のサーバによって提供される推薦する情報を取得するステップと;を備える、
情報推薦方法。
[第2の局面]
前記第2のサーバによって提供される推薦する情報を取得する前記ステップは:
前記推薦する情報をプッシュするために前記第2のサーバをトリガして前記第2のサーバよりプッシュされるべき前記推薦する情報を取得するステップ;又は、前記推薦する情報を第2のサーバからダウンロードするステップ;を備える、
第1の局面に記載の情報推薦方法。
[第3の局面]
前記推薦する情報をプッシュするために前記第2のサーバをトリガする前記ステップは:
前記第2のサーバに情報の取得要求を直接送信し、前記情報の取得要求に応じて前記第2のサーバが送信する前記推薦する情報を受信するステップ;又は、情報の取得要求を前記第2のサーバに送信するように情報プッシュ型アプリケーションをトリガし、前記情報の取得要求に応じて前記第2のサーバが送信する前記推薦する情報を、前記情報プッシュ型アプリケーションを用いて受信するステップ;を備える、
第2の局面に記載の情報推薦方法。
[第4の局面]
前記情報の取得要求は、前記推薦する情報の特徴を備える、
第3の局面に記載の情報推薦方法。
[第5の局面]
前記推薦する情報の特徴は:
前記推薦する情報のテーマ;
前記推薦する情報のキーワード;
前記推薦する情報の数;
前記推薦する情報に対応する情報推薦ルールの識別子;のうちの少なくとも1つを備える、
第4の局面に記載の情報推薦方法。
[第6の局面]
前記情報推薦ルールセット内の情報推薦ルール毎に、1つのテーマ及び前記テーマに対応する少なくとも1つのキーワードが設定され;前記第2のサーバに情報の取得要求を送信する前記ステップは:
前記情報推薦ルールセットが、前記テキストデータと一致する少なくとも2つの情報推薦ルールを含む場合に、前記少なくとも2つの情報推薦ルール中のキーワードに対して個別に特定された重みに基づいて、前記少なくとも2つの情報推薦ルールから一の情報推薦ルールを選択するステップと;
前記選択された情報推薦ルールで特定されたテーマを前記情報の取得要求に追加し、この情報の取得要求を前記第2のサーバに送信するステップと;を備える、
第5の局面に記載の情報推薦方法。
[第7の局面]
クライアントによって第1のサーバに送信されるテキストデータを取得する前記ステップは:
前記クライアントによって前記第1のサーバに送信された前記テキストデータを前記第1のサーバから取得するステップ;又は、前記クライアントによって送信された前記テキストデータを受信するステップを備え、前記クライアントによって送信された前記テキストデータは、前記クライアントによって送信された前記テキストデータを前記第1のサーバにコピーすることによって得られる、
第1の局面に記載の情報推薦方法。
[第8の局面]
情報推薦ルールセットがテキストデータと一致する情報推薦ルールを含むか否かを特定するステップの前に:
前記第2のサーバによって提供される情報推薦ルールセットを取得し保存するステップを更に備える、
第1の局面に記載の情報推薦方法。
[第9の局面]
情報推薦装置であって:
クライアントから第1のサーバに送信されたテキストデータを取得するテキストデータ取得部と;
所定の情報推薦ルールセットが前記テキストデータと一致する情報推薦ルールを含むか否かを特定する情報推薦ルール決定部であって、前記情報推薦ルールが推薦する情報に基づいて設定された、前記情報推薦ルール決定部と;
前記所定の情報推薦ルールセットが前記テキストデータと一致する情報推薦ルールを含む場合に、前記一致する情報推薦ルールに一致し第2のサーバによって提供される推薦する情報を取得する推薦情報取得部と;を備える、
情報推薦装置。
[第10の局面]
前記推薦情報取得部は:
前記推薦する情報をプッシュするために前記第2のサーバをトリガして前記第2のサーバよりプッシュされるべき前記推薦する情報を取得する;又は、前記推薦する情報を前記第2のサーバからダウンロードする、
第9の局面に記載の情報推薦装置。
[第11の局面]
前記推薦情報取得部は:
前記第2のサーバに情報の取得要求を直接送信し、前記情報の取得要求に応じて、前記第2のサーバが送信する推薦する情報を受信する;又は、情報の取得要求を前記第2のサーバに送信するように情報プッシュ型アプリケーションをトリガし、前記情報の取得要求に応じて前記第2のサーバが送信する前記推薦する情報を前記情報プッシュ型アプリケーションを用いて受信する、
第10の局面に記載の情報推薦装置。
[第12の局面]
前記情報の取得要求は、前記推薦する情報の特徴を備える、
第11の局面に記載の情報推薦装置。
[第13の局面]
前記推薦する情報の特徴は:
前記推薦する情報のテーマ;
前記推薦する情報のキーワード;
前記推薦する情報の数;
前記推薦する情報に対応する情報推薦ルールの識別子;のうちの少なくとも1つを備える、
第12の局面に記載の情報推薦装置。
[第14の局面]
前記推薦情報取得部は:
前記情報推薦ルールセット内の情報推薦ルール毎に、1つのテーマと前記テーマに対応する少なくとも1つのキーワードが設定されている場合において、前記情報推薦ルールセットが、前記テキストデータと一致する情報推薦ルールを少なくとも2つ含むとき、前記少なくとも2つの情報推薦ルール中のキーワードに個別に特定された重みに基づいて、前記少なくとも2つの情報推薦ルールから一の情報推薦ルールを選択し、前記選択された情報推薦ルールで特定されたテーマを前記情報の取得要求に追加し、この情報の取得要求を前記第2のサーバに送信する、
第13の局面に記載の情報推薦装置。
[第15の局面]
前記テキストデータ取得部は;
前記クライアントから前記第1のサーバに送信された前記テキストデータを前記第1のサーバから取得し;又は、前記クライアントによって送信された前記テキストデータを受信し、前記クライアントによって送信された前記テキストデータは、前記クライアントによって送信された前記テキストデータを前記第1のサーバにコピーすることによって得られる、
第9の局面に記載の情報推薦装置。
[第16の局面]
前記情報推薦ルール決定部は:
前記情報推薦ルールセットが前記テキストデータと一致する情報推薦ルールを含むか否かを特定する前に、前記第2のサーバによって提供される情報推薦ルールセットを取得し保存する、
第9の局面に記載の情報推薦装置。