JP2010224623A - 関連記事推奨方法および関連記事推奨プログラム - Google Patents
関連記事推奨方法および関連記事推奨プログラム Download PDFInfo
- Publication number
- JP2010224623A JP2010224623A JP2009068146A JP2009068146A JP2010224623A JP 2010224623 A JP2010224623 A JP 2010224623A JP 2009068146 A JP2009068146 A JP 2009068146A JP 2009068146 A JP2009068146 A JP 2009068146A JP 2010224623 A JP2010224623 A JP 2010224623A
- Authority
- JP
- Japan
- Prior art keywords
- article
- feature word
- user
- calculated
- articles
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】ユーザが関心のある記事に関連する記事として、内容が実質的に重複せず、かつユーザ毎の嗜好・関心に合った関連記事を精度良く推奨する関連記事推奨方法を提供する。
【解決手段】元記事401における特徴語の重み付け値を算出して特徴語データとする第1ステップと、各購読記事204における特徴語の重み付け値を算出して特徴語データとする第2ステップと、元記事401の特徴語データと各購読記事204の特徴語データとの類似度を算出する第3ステップと、前記類似度に基づいて購読記事204から関連記事402を分類する第4ステップと、各既読記事207における特徴語の重み付け値の平均値を算出してユーザ嗜好を表す特徴語データとする第5ステップと、ユーザ嗜好を表す特徴語データと各関連記事402の特徴語データとの類似度を算出する第6ステップと、前記類似度が上位の関連記事402を優先的にユーザに提示する第7ステップとを実行する。
【選択図】図1
【解決手段】元記事401における特徴語の重み付け値を算出して特徴語データとする第1ステップと、各購読記事204における特徴語の重み付け値を算出して特徴語データとする第2ステップと、元記事401の特徴語データと各購読記事204の特徴語データとの類似度を算出する第3ステップと、前記類似度に基づいて購読記事204から関連記事402を分類する第4ステップと、各既読記事207における特徴語の重み付け値の平均値を算出してユーザ嗜好を表す特徴語データとする第5ステップと、ユーザ嗜好を表す特徴語データと各関連記事402の特徴語データとの類似度を算出する第6ステップと、前記類似度が上位の関連記事402を優先的にユーザに提示する第7ステップとを実行する。
【選択図】図1
Description
本発明は、テキスト情報のフィルタリング技術に関し、特に、特定の記事の内容に関連する内容を有する他の記事を自動で推奨する関連記事推奨方法および関連記事推奨プログラムに適用して有効な技術に関するものである。
近年、インターネット等の普及により、コンピュータを利用して非常に多くの種類の情報を入手することが可能である。例えば、各種ニュースサイトや検索エンジンを用いて多くの情報を収集することができる。また、電子メール等によっても多くの情報を得ることができる。また、インターネット上に限らず、例えば、社内のサーバに電子化されて保管されている各種の社内資料などからも多くの情報を入手することができる。これらの多くの電子情報を有効に利用するためには、ユーザが自分の関心と合致する内容の情報を精度良く見つけられるだけでなく、参照している情報に対して自分では気づかない関連する他の情報を発見できるようにしてユーザの関心の広がりをサポートするような情報のフィルタリングの仕組みが必要である。
このような要望に対して、例えば、ユーザが関心のあるニュース記事等の情報に対して、自然言語処理などを利用した記事内容の類似度の判定により、類似する記事を関連記事として提示する技術がいくつか提案されている。このような技術では、ユーザが関連記事を参照する際の効率を維持するため、ユーザが参照している元の記事の内容と実質的に内容が同一で重複する記事については関連記事から除外して提示しないようにする必要がある。このため、実質的に内容が重複する記事を特定し、これを除外したり一まとめにしてタイトルのみ一覧表示したりするなどしてユーザが認識できるようにしている。
このような関連記事を提示する技術として、例えば、特開平9−101990号公報(特許文献1)には、記事表現を自然言語処理により記事間で比較することによって記事同士の類似度を算出し、その類似度に従ってユーザに提示される記事とそれに関連する関連記事を決定し、その際、互いに類似度が高く、かつ情報源が異なる記事の集合を、重複記事の集合として分類する技術が開示されている。
また、例えば、特開2005−352857号公報(特許文献2)には、特許文献1などの分類手法では出現する単語の分布などが似ていなくても実質的な内容が同一であるような記事の集合を特定できない場合もあることを考慮し、ユーザが動向を把握したいトピック等を表すキーワードを含む複数の記事について、発信日時の差があらかじめ登録された閾値より小さく、かつ発信者が互いに異なるものを実質的に同じ内容の記事として特定する技術が開示されている。
ユーザが関心のあるニュース記事等の情報を参照して利用する場合、上述のように、ユーザはそれぞれ自分の関心、興味や嗜好に合った意外な関連記事を発見したいと要望する。しかし、特許文献1、2に記載されている技術では、関連記事を提示する際に重複記事を特定することは可能であるが、任意の記事に対して提示される関連記事はどのユーザの場合でも同じものとなり、ユーザ毎の嗜好・関心に合った関連記事を推奨するということはできない。
そこで本発明の目的は、ユーザが関心のある記事に関連する記事として、内容が実質的に重複せず、かつユーザ毎の嗜好・関心に合った関連記事を精度良く推奨する関連記事推奨方法および関連記事推奨プログラムを提供することにある。本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。
本発明の代表的な実施の形態による関連記事推奨方法は、コンピュータシステムによって、ユーザが参照しているテキストデータからなる元記事に対して、内容が関連する関連記事を提示して前記ユーザに推奨するものであって、前記コンピュータシステムは、前記ユーザ毎に、前記ユーザの参照対象である複数の購読記事と、前記各購読記事についての参照履歴とを保持し、前記元記事から所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、所定の算出条件に基づいて前記元記事における前記特徴語の重要度を示す重み付け値を算出して前記元記事の特徴語データとする第1ステップと、前記各購読記事から前記所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、前記所定の算出条件に基づいて前記各購読記事における前記特徴語の前記重み付け値を算出して前記各購読記事の特徴語データとする第2ステップと、所定の比較条件に基づいて、前記第1ステップで算出した前記元記事の特徴語データと、前記第2ステップで算出した前記各購読記事の特徴語データとの類似度を算出する第3ステップと、前記第3ステップで算出した前記類似度が所定の閾値より高くかつ前記元記事との発行日時の差が所定の時間間隔以上である前記購読記事を前記関連記事として分類し、前記第2ステップで算出した対象の前記各購読記事の特徴語データを、前記各関連記事の特徴語データとする第4ステップと、前記各購読記事と前記参照履歴とに基づいて前記ユーザの既読記事を取得し、全ての前記既読記事から前記所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、前記所定の算出条件に基づいて前記各既読記事における前記特徴語の前記重み付け値を算出し、前記既読記事全てにおけるその平均値を算出して前記ユーザの嗜好を表す特徴語データとする第5ステップと、前記所定の比較条件に基づいて、前記第5ステップで算出した前記ユーザの嗜好を表す特徴語データと、前記第4ステップで分類した前記各関連記事の特徴語データとの類似度を算出する第6ステップと、前記第6ステップで算出した前記類似度が上位の前記関連記事を優先的に前記ユーザに提示する第7ステップとを実行することを特徴とするものである。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
本発明の代表的な実施の形態によれば、ユーザ毎に過去に参照した記事の履歴を利用することにより、ユーザが関心のある記事に関連する記事として、内容が実質的に重複せず、かつユーザ毎の嗜好・関心に合った関連記事を精度良く推奨することが可能となる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一の符号を付し、その繰り返しの説明は省略する。
本発明の一実施の形態である関連記事推奨方法を適用した情報収集管理システムは、各種Webサイトや電子メール、電子文書などのテキスト情報(以下ではこれらを総称して「記事」という場合がある)を一ヶ所に収集して各ユーザから参照可能とし、各ユーザが情報を利用・参照した行動履歴を蓄積して、蓄積された行動履歴を再利用することによって各ユーザにとって価値ある情報を推奨することを可能とし、蓄積した情報を生産的に活用することができる仕組みを提供するシステムである。
本実施の形態では、各ユーザの購読の指定に基づいて収集した購読記事から、ユーザが関心のあるニュース等の記事を参照する際に、ユーザの関心・嗜好に合った関連記事を抽出して提示・推奨することにより、ユーザの嗜好に合った意外な関連記事を発見する可能性を向上させ、ユーザの関心・興味の広がりを支援することを可能としている。また、関連記事を提示する際に、実質的に内容が重複する重複記事を関連記事から除外することにより、ユーザが情報利用の活動を効率的に行うことを可能としている。
[システム構成]
図2は、本発明の一実施の形態である関連記事推奨方法を適用した情報収集管理システムの構成例の概要を示した図である。情報収集管理システムは、情報収集管理サーバ100およびデータベース200から構成される。データベース200は、情報収集管理サーバ100上に実装されてもよいし、別のデータベースサーバ等の機器上に実装されてもよい。
図2は、本発明の一実施の形態である関連記事推奨方法を適用した情報収集管理システムの構成例の概要を示した図である。情報収集管理システムは、情報収集管理サーバ100およびデータベース200から構成される。データベース200は、情報収集管理サーバ100上に実装されてもよいし、別のデータベースサーバ等の機器上に実装されてもよい。
情報収集管理サーバ100は、新着記事収集部110により、例えば、Webサーバ310上のWebサイトや、社内の文書サーバ320などから新着記事としてテキストデータを収集する。新着記事の収集方法としては、例えば、RSS(RDF Site Summary)のフィードを利用することができる。新着記事収集部110がRSSリーダーとして動作することにより、Webサイト上のニュース等の記事に限らず、文書サーバ320上に格納される社内資料等の電子データや電子メール等もRSS化することで収集対象とすることができる。
上記のRSSフィードの情報は、本実施の形態の情報収集管理システムを利用する各ユーザ毎に、各ユーザが購読したいWebサイト等についての情報である購読指定206としてデータベース200のユーザ購読情報203の一部として保持される。購読指定206の内容に基づいて新着記事収集部110により収集された新着記事は、データベース200の記事群201に記事202として格納される。
ユーザ購読情報203には、記事202のうち、対象のユーザの購読指定206に基づいて収集された記事202を特定する情報が購読記事204として保持される。すなわち、記事群201には全てのユーザの購読指定206に基づいて収集された全ての記事202が格納されており、ユーザ購読情報203には各ユーザの参照対象である購読記事204がそれぞれ格納されているということと等価である。なお、記事202および購読記事204には、RSSフィード等の購読指定206によって収集されたものだけではなく、ユーザがテキストデータを直接クリップするなどして後の参照用に登録したものなども含まれる。
データベース200のユーザ購読情報203には、さらに、対象のユーザが購読記事204を実際に参照した履歴が参照履歴205として保持される。購読記事204と参照履歴205とに基づいて、対象のユーザが過去に参照した既読記事を特定することができる。
クライアント端末400を介してユーザから自らの関心のある記事(元記事401)を参照したい旨の要求を受けた情報収集管理サーバ100は、購読記事204の中から元記事401を取得して図示しないWebサーバプログラム等を介してクライアント端末400に提示する。さらに情報収集管理サーバ100は、関連記事抽出部120によって、各購読記事204の内容(特徴語)と元記事401の内容(特徴語)との類似度を判断することにより、元記事401と関連する内容を有する関連記事402を抽出し、同様にクライアント端末400に提示する。
このとき、対象のユーザの既読記事全体の内容(特徴語)と各関連記事402の内容(特徴語)との類似度を判断することにより、関連記事402の中でもよりユーザの関心・嗜好に合った関連記事402を推奨するように提示する。また、実質的に内容が重複する重複記事は除外し、関連記事402として提示されないようにする。
なお、新着記事収集部110および関連記事抽出部120は、情報収集管理サーバ100上で稼働するソフトウェアプログラムとして実装され、例えば、図示しないWebサーバ上で稼働するアプリケーションとして実装することができる。また、関連記事抽出部120は、詳細は後述するが、例えば、特徴語データ算出部121、関連記事分類部122、類似度算出部123からなり、関連記事抽出部120における上述したような機能を実現する。
[テーブル構成]
図3は、データベース200のテーブル構成例の概要を示した図である。データベース200に格納されるテーブルは、例えば、ユーザ情報210、購読情報220、フィード一覧230、リアクション情報240、記事データ250からなる。図中のテーブル間の矢印は、例えば、A→Bである場合に、A:B=1:nの関係(A has many Bs)にあることを示している。
図3は、データベース200のテーブル構成例の概要を示した図である。データベース200に格納されるテーブルは、例えば、ユーザ情報210、購読情報220、フィード一覧230、リアクション情報240、記事データ250からなる。図中のテーブル間の矢印は、例えば、A→Bである場合に、A:B=1:nの関係(A has many Bs)にあることを示している。
ユーザ情報210は、各ユーザに関する情報を保持するテーブルであり、例えば、ユーザID、パスワード、ユーザ名などの項目を有する。ユーザ情報210は、ユーザが情報収集管理システムへログインする際の認証時などに利用される。フィード一覧230は、各種情報(記事)を自動収集するためのRSSフィードの基本的な情報を保持するテーブルであり、例えば、フィードID、サイト名、URL(Uniform Resource Locator)などの項目を有する。上述したように、Webサーバ310上のニュースサイト等から提供されるRSSフィードだけでなく、文書サーバ320等に格納されている各種電子文書や電子メールなどもRSS化することで、これらの情報を新着記事収集部110により自動的に巡回して収集することができる。
購読情報220は、各ユーザがどのRSSフィードを購読しているかの情報を保持するテーブルであり、例えば、ユーザID、フィードID、購読開始日時、未読数などの項目を有する。購読情報220は、図2における購読指定206に相当する。各ユーザは複数のRSSフィードを購読することができ、また、各RSSフィードは、複数のユーザから購読されることができる。
記事データ250は、各RSSフィードに含まれる記事やユーザがWebサイトからクリップした記事、電子文書など、収集した記事の内容を保持するテーブルであり、例えば、記事ID、フィードID、発行日時、記事内容などの項目を有する。記事データ250は図2における記事202に相当し、購読情報220のフィードIDの値で特定される記事データ250のエントリは図2における購読記事204に相当する。なお、発行日時の項目は、記事IDの項目で特定される記事202が発行もしくは発信された日時を表し、記事内容の項目は、記事IDの項目で特定される記事202の具体的なテキストデータである。
リアクション情報240は、各ユーザが各購読記事204に対してどのようなリアクションを行ったかの情報(行動履歴)を保持するテーブルであり、例えば、ユーザID、記事ID、参照日時、タグ、メモ、ハイライト範囲などの項目を有する。記事IDおよび参照日時の項目は、図2における参照履歴205に相当する。なお、購読記事204に対するリアクションとしては、購読記事204の参照の他に、例えば、購読記事204に、その内容を表す分類用のタグを付与したり、テキストのメモを付加したり、任意の範囲をハイライトしたりすることなどが可能であり、これらの内容をそれぞれタグやメモ、ハイライト範囲の項目に保持することができる。なお、上述した各テーブルの項目は一例であり、これら以外の項目を有していてもよい。
[処理フロー]
図1は、ユーザが元記事401を参照する際の関連記事抽出部120の処理フロー例の概要を説明する図である。情報収集管理サーバ100が、図示しないWebサーバプログラム等を介して、クライアント端末400からユーザによる元記事401の参照要求を受け取ると、関連記事抽出部120は関連記事402を抽出する処理を開始する。
図1は、ユーザが元記事401を参照する際の関連記事抽出部120の処理フロー例の概要を説明する図である。情報収集管理サーバ100が、図示しないWebサーバプログラム等を介して、クライアント端末400からユーザによる元記事401の参照要求を受け取ると、関連記事抽出部120は関連記事402を抽出する処理を開始する。
まず、特徴語データ算出部121により、元記事401のテキストデータから自然言語処理により1つ以上の単語を特徴語として抽出する。さらに抽出した各特徴語について後述するTF−IDF値(Term Frequency-Inverse Document Frequency)を算出して、元記事401の特徴語データとする(ステップS101)。同様に、特徴語データ算出部121により、全ての購読記事204のテキストデータから自然言語処理により1つ以上の単語を特徴語として抽出する。さらに抽出した各特徴語についてTF−IDF値を算出して、各購読記事204の特徴語データとする(ステップS102)。
次に、類似度算出部123により、ステップS101で算出した元記事401の特徴語データと、ステップS102で算出した各購読記事204の特徴語データとをそれぞれ後述するようにベクトル空間化する。さらに、元記事401の特徴語データについてのベクトルと、各購読記事204の特徴語データについてのベクトルとの内積を求め、内積の値に基づいて元記事401の特徴語データと各購読記事204の特徴語データとの類似度を算出する(ステップS103)。
次に、関連記事分類部122により、ステップS103で算出した類似度が所定の閾値より高く、かつ元記事401との発行日時の差が所定の時間間隔以上である購読記事204を、関連記事402として分類し、ステップS102で算出した対象の各購読記事204の特徴語データを、各関連記事402の特徴語データとする(ステップS104)。このとき、ステップS103で算出した類似度が所定の閾値より高く、かつ元記事401との発行日時の差が所定の時間間隔よりも小さい購読記事204は、実質的に内容が同じである重複記事403として分類する(ステップS104)。
次に、関連記事抽出部120により、ユーザの購読記事204と参照履歴205とに基づいてユーザの既読記事207を取得する。さらに、特徴語データ算出部121により、全ての既読記事207のテキストデータから自然言語処理により1つ以上の単語を特徴語として抽出する。さらに抽出した各特徴語についてTF−IDF値を算出し、各特徴語毎に既読記事207全てにおけるTF−IDF値の平均値を算出して、ユーザの嗜好を表す特徴語データとする(ステップS105)。
次に、類似度算出部123により、ステップS103と同様に、ステップS105で算出したユーザの嗜好を表す特徴語データと、ステップS104で分類した各関連記事402の特徴語データとをそれぞれベクトル空間化する。さらに、ユーザの嗜好を表す特徴語データについてのベクトルと、各関連記事402の特徴語データについてのベクトルとの内積を求め、内積の値に基づいてユーザの嗜好を表す特徴語データと各関連記事402の特徴語データとの類似度を算出する(ステップS106)。最後に、ステップS106で算出した類似度が上位の順に関連記事402を並び替えてユーザに提示して処理を終了する(ステップS107)。
[記事の特徴語データ算出]
図4は、特徴語データ算出部121における、記事のテキストデータから特徴語を抽出して特徴語データを算出する処理の例を説明する図である。ここでの処理は、上述した元記事401の特徴語データの算出処理(ステップS101)、各購読記事204の特徴語データの算出処理(ステップS102)、およびユーザ嗜好を表す特徴語データの算出処理(ステップS105)において行われる。
図4は、特徴語データ算出部121における、記事のテキストデータから特徴語を抽出して特徴語データを算出する処理の例を説明する図である。ここでの処理は、上述した元記事401の特徴語データの算出処理(ステップS101)、各購読記事204の特徴語データの算出処理(ステップS102)、およびユーザ嗜好を表す特徴語データの算出処理(ステップS105)において行われる。
まず、対象の記事のテキストデータから、形態素解析により複合名詞を抽出する。形態素解析は自然言語処理において一般的に行われており、また、形態素解析エンジンやソフトウェアも種々のものが提供されているため、これらを利用してもよい。なお、ユーザ嗜好を表す特徴語の算出処理(ステップS105)では、後述するように、全ての既読記事207から複合名詞を抽出し、これをマージして特徴語とする。
次に、抽出した各複合名詞について、記事における単語の重要度についての重み付け値であるTF−IDF値を算出する。TF−IDF値によって文章中の特徴的な単語(重要とみなされる単語)を抽出することは一般的に行われている。本実施の形態の関連記事推奨方法でもこの手法を用いて特徴語データを算出するが、特徴語データの算出手法はこれに限るものではなく、単語毎に数値(重み付け値)として評価が可能な手法であれば利用することができる。
ここで、TF(Term Frequency)は、記事中の単語(複合名詞)の出現頻度であり、この値が大きいほどこの単語はこの記事の特徴をよく表しているものと考えられる。ある記事Dにおけるある単語tのTF値は、例えば、記事D中の単語tの出現頻度をfとすると、記事Dにおける単語の種類数mおよび対数で正規化して以下の式で表される。
TFの値が大きい単語であっても、多くの記事に頻繁に出現する単語は、特定の記事の特徴を表す単語ではない一般的な単語である場合が多い。ここで、IDF(Inverse Document Frequency)は、対象の単語が出現する記事数の逆数であり、この値が大きいほどこの単語が出現する記事数が少なく、この単語は特定の記事の特徴をよく表しているものと考えられる。ある単語tのIDF値は、例えば、全記事の中で単語tが出現する文書数をDfとすると、全記事数Nで正規化して以下の式で表される。
上記のTFとIDFの両者の値が大きい単語tが、文書Dの特徴を真によく表していると考えられるため、単語tのTF−IDF値は、TFとIDFの積を整数化した以下の式で表される。
このTF−IDF値を対象の記事について特徴語(複合名詞)毎に算出する。対象の記事が異なれば、記事に含まれる特徴語も異なり、また、同じ特徴語であってもその記事中での出現頻度が異なるため、TF−IDF値はそれぞれ異なる値となる。なお、数2式において、全記事数Nは、対象の記事が多くなるほど精度が高くなると考えられるため、他のユーザの購読分も含めた記事202全体の総数とする。また、単語tが出現する文書数Dfは、記事202全体を単語tをキーとして全文検索する等によって求めることができる。
なお、本実施の形態では、短い文章の記事であっても特徴語データに内容が反映され、類似度を適切に比較することができるように、特徴語に漏れが出ないよう、記事から抽出された複合名詞全てを特徴語の対象としているが、所定の条件に基づいてTF−IDF値が小さいものを特徴語から除外するようにしてもよい。また、TF値、IDF値の算出式については種々のものが提案されており、上記の算出式に限らず精度や処理時間などに応じて適当なものを用いることができる。
[元記事と購読記事の類似度算出]
図5は、ステップS101で算出した元記事401の特徴語データと、ステップS102で算出した各購読記事204の特徴語データとの類似度を算出する処理(ステップS103)の例を説明する図である。類似度の算出に際しては、類似度算出部123により、上述した特徴語データ算出部121での処理によってステップS101、S102にて算出された元記事401の特徴語データ(TF−IDF値)と各購読記事204の特徴語データ(TF−IDF値)とを、それぞれベクトル空間化する。さらに、元記事401の特徴語データのベクトルと、各購読記事204の特徴語データのベクトルとの内積を用いることによって類似度を算出するベクトル空間法を利用する。
図5は、ステップS101で算出した元記事401の特徴語データと、ステップS102で算出した各購読記事204の特徴語データとの類似度を算出する処理(ステップS103)の例を説明する図である。類似度の算出に際しては、類似度算出部123により、上述した特徴語データ算出部121での処理によってステップS101、S102にて算出された元記事401の特徴語データ(TF−IDF値)と各購読記事204の特徴語データ(TF−IDF値)とを、それぞれベクトル空間化する。さらに、元記事401の特徴語データのベクトルと、各購読記事204の特徴語データのベクトルとの内積を用いることによって類似度を算出するベクトル空間法を利用する。
元記事401の特徴語データおよび各購読記事204の特徴語データに含まれる特徴語を全てマージした数がn個であった場合、元記事401の特徴語データdoのベクトルV(do)および、各購読記事204の特徴語データd1、d2、…のベクトルV(d1)、V(d2)、…は、それぞれ、n個の特徴語のTF−IDF値を要素とするn次元のベクトルとして表される。このとき、対象の特徴語を含まない特徴語データについては、当該特徴語に対応するベクトルの要素の値は0である。
ここで、ベクトルの方向は対象の記事の特徴を表していると考えられる。従って、元記事401の特徴語データと各購読記事204の特徴語データとの類似度は、ベクトルV(do)とベクトルV(d1)、V(d2)、…とのなす角の小ささで表すことができる。すなわち、二つのベクトルのなす角をθとした場合に、cosθが1に近いほど類似度が高いと言うことができる。cosθは二つのベクトルの内積を各ベクトルの絶対値で除算することにより求められる。従って、特徴語データda、dbの類似度sim(da,db)は、二つのベクトルV(da)、V(db)により以下の式で表される。
数4式を用いて、元記事401の特徴語データと各購読記事204の特徴語データとの類似度をそれぞれ算出する。すなわち、sim(do,d1)、sim(do,d2)、…をそれぞれ算出する。全ての購読記事204について元記事401の特徴語データとの類似度を算出すると、算出された類似度が上位の順に購読記事204を並び替える。図5の例では、類似度が上位の順に「購読記事3」、「購読記事1」、「購読記事2」の順に並び替えられたことを示している。なお、本実施の形態では、元記事401と各購読記事204との類似度をベクトル空間法を用いて算出しているが、これに限らず他の算出方法によって類似度を算出してもよい。
[関連記事と重複記事の分類]
図6は、ステップS103で算出した元記事401の特徴語データと各購読記事204の特徴語データとの類似度に基づいて、購読記事204から関連記事402と重複記事403とを分類する処理(ステップS104)の例を説明する図である。
図6は、ステップS103で算出した元記事401の特徴語データと各購読記事204の特徴語データとの類似度に基づいて、購読記事204から関連記事402と重複記事403とを分類する処理(ステップS104)の例を説明する図である。
まず、関連記事分類部122により、ステップS103で類似度が上位の順に並び替えられた購読記事204のうち、類似度が所定の閾値よりも高いもののみを抽出する。次に、抽出した各購読記事204について、元記事401との発行日時の差が所定の時間間隔以上であるか否かを判定し、所定の時間間隔以上である購読記事204を関連記事402として分類し、所定の時間間隔より小さい購読記事204を重複記事403として分類する。特許文献2などにも記載されているように、内容が類似しており、かつ発行日時が近い記事は、実質的に同じ内容である可能性が高い。従って、これらの記事については重複記事403として分類し、関連記事402からは除外する。
なお、上記の所定の閾値や時間間隔は情報収集管理サーバ100においてデータベース200や定義ファイルなどの適当な手段により保持し、状況に応じて適宜設定を変更できるようにするのが望ましい。本実施の形態では、図6に示すように所定の閾値を0.2としている。上述したステップS103でのベクトル空間法を用いた類似度の算出方法による場合、所定の閾値を0.2とすることで実用上支障のない精度で関連記事402が抽出できることを実験的に確認している。
[ユーザ嗜好を表す特徴語データ算出]
図7は、既読記事207からユーザ嗜好を表す特徴語データを算出する処理(ステップS105)の例を説明する図である。まず、対象のユーザの購読記事204と参照履歴205とに基づいて対象のユーザの既読記事207を取得し、全ての既読記事204について、上述した特徴語データ算出部121での処理によって特徴語データをそれぞれ算出する。
図7は、既読記事207からユーザ嗜好を表す特徴語データを算出する処理(ステップS105)の例を説明する図である。まず、対象のユーザの購読記事204と参照履歴205とに基づいて対象のユーザの既読記事207を取得し、全ての既読記事204について、上述した特徴語データ算出部121での処理によって特徴語データをそれぞれ算出する。
次に、既読記事207全体における、各特徴語の特徴語データ(TF−IDF値)の平均値を算出する。ここで、各特徴語は、全ての既読記事207から抽出された特徴語をマージしたものとなる。このとき、ある特徴語についてそれが含まれていない既読記事207については、当該既読記事207における当該特徴語のTF−IDF値は0である。なお、本実施の形態では、単純に全ての既読記事207での各特徴語のTF−IDF値の合計値を、既読記事207の数で除算してTF−IDF値の平均値を求めているが、平均値の算出方法はこれに限らず、例えば所定の条件により加重平均を算出するようにしてもよい。
ここで算出されたTF−IDF値の平均値は、既読記事207全体の内容の特徴を表すデータ、すなわち対象のユーザの嗜好を表すものであり、これをユーザ嗜好を表す特徴語データとする。このように、ユーザ毎の参照履歴205を保持し、これを利用することにより、ユーザの嗜好・関心を表す情報を取得することができる。
[ユーザ嗜好と関連記事の類似度算出]
図8は、ステップS105で算出したユーザ嗜好を表す特徴語データと、ステップS104で分類した各関連記事402の特徴語データとの類似度を算出する処理(ステップS106)の例を説明する図である。類似度の算出方法は、図5に示したステップS103での類似度の算出処理での算出方法と同様である。
図8は、ステップS105で算出したユーザ嗜好を表す特徴語データと、ステップS104で分類した各関連記事402の特徴語データとの類似度を算出する処理(ステップS106)の例を説明する図である。類似度の算出方法は、図5に示したステップS103での類似度の算出処理での算出方法と同様である。
すなわち、類似度算出部123により、ステップS105で算出したユーザ嗜好を表す特徴語データと、ステップS104で分類した各関連記事402の特徴語データ(ステップS102で算出した対象の各購読記事204の特徴語データ)とをそれぞれベクトル空間化する。さらに、ユーザ嗜好を表す特徴語データのベクトルと、各関連記事402の特徴語データのベクトルとの内積を用いることによって類似度を算出するベクトル空間法を利用する。
全ての関連記事402についてステップS103での算出方法と同様の手順でユーザ嗜好を表す特徴語データと関連記事402の特徴語データとの類似度を算出すると、算出された類似度が上位の順に関連記事402を並び替える。図8の例では、類似度が上位の順に「関連記事3」、「関連記事1」、「関連記事2」の順に並び替えられたことを示している。このように並び替えられた関連記事402をユーザに提示することで、ユーザに対してユーザの関心・嗜好に合った関連記事402を推奨することができる。
なお、本実施の形態では、関連記事402を類似度が上位の順に並び替えて表示することで、ユーザの嗜好に合った関連記事402を優先的に提示して推奨しているが、優先的に提示する手段はこれに限らず、例えば文字色やフォントを変更したりして強調表示するなど、種々の方法をとることができる。また、本実施の形態では重複記事403を関連記事402から除外しているが、関連記事402をユーザに提示する際に、例えば、重複記事403を一まとめにしてタイトルのみ一覧表示したりするなどしてユーザが認識できるようにしてもよい。
以上に説明したように、本実施の形態の関連記事推奨方法によれば、ユーザ毎に保持している過去に参照した購読記事204の参照履歴205を利用することにより、ユーザが関心があり参照している元記事に対してユーザ毎の嗜好・関心に合った関連記事402を推奨することが可能となる。これにより、ユーザの嗜好に合った意外な関連記事402を発見する可能性を向上させ、ユーザの関心・興味の広がりを支援することを可能としている。
また、関連記事402を提示する際に、実質的に内容が重複する重複記事403を関連記事402から除外することにより、ユーザが情報利用の活動を効率的に行うことを可能としている。さらに、継続した使用によってユーザ毎の既読記事207(参照履歴205)が多く蓄積されるほど、ユーザの嗜好に合った関連記事402の推奨の精度が向上し、より効果的にユーザが情報利用の活動を行うことが可能となる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
本発明は、特定の記事の内容に関連する内容を有する他の記事を自動で推奨する関連記事推奨方法および関連記事推奨プログラムに利用可能である。
100…情報収集管理サーバ、110…新着記事収集部、120…関連記事抽出部、121…特徴語データ算出部、122…関連記事分類部、123…類似度算出部、
200…データベース、201…記事群、202…記事、203…ユーザ購読情報、204…購読記事、205…参照履歴、206…購読指定、207…既読記事、210…ユーザ情報、220…購読情報、230…フィード一覧、240…リアクション情報、250…記事データ、
310…Webサーバ、320…文書サーバ、
400…クライアント端末、401…元記事、402…関連記事、403…重複記事。
200…データベース、201…記事群、202…記事、203…ユーザ購読情報、204…購読記事、205…参照履歴、206…購読指定、207…既読記事、210…ユーザ情報、220…購読情報、230…フィード一覧、240…リアクション情報、250…記事データ、
310…Webサーバ、320…文書サーバ、
400…クライアント端末、401…元記事、402…関連記事、403…重複記事。
Claims (8)
- コンピュータシステムによって、ユーザが参照しているテキストデータからなる元記事に対して、内容が関連する関連記事を提示して前記ユーザに推奨する関連記事推奨方法であって、
前記コンピュータシステムは、前記ユーザ毎に、前記ユーザの参照対象である複数の購読記事と、前記各購読記事についての参照履歴とを保持し、
前記元記事から所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、所定の算出条件に基づいて前記元記事における前記特徴語の重要度を示す重み付け値を算出して前記元記事の特徴語データとする第1ステップと、
前記各購読記事から前記所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、前記所定の算出条件に基づいて前記各購読記事における前記特徴語の前記重み付け値を算出して前記各購読記事の特徴語データとする第2ステップと、
所定の比較条件に基づいて、前記第1ステップで算出した前記元記事の特徴語データと、前記第2ステップで算出した前記各購読記事の特徴語データとの類似度を算出する第3ステップと、
前記第3ステップで算出した前記類似度が所定の閾値より高くかつ前記元記事との発行日時の差が所定の時間間隔以上である前記購読記事を前記関連記事として分類し、前記第2ステップで算出した対象の前記各購読記事の特徴語データを、前記各関連記事の特徴語データとする第4ステップと、
前記各購読記事と前記参照履歴とに基づいて前記ユーザの既読記事を取得し、全ての前記既読記事から前記所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、前記所定の算出条件に基づいて前記各既読記事における前記特徴語の前記重み付け値を算出し、前記既読記事全てにおけるその平均値を算出して前記ユーザの嗜好を表す特徴語データとする第5ステップと、
前記所定の比較条件に基づいて、前記第5ステップで算出した前記ユーザの嗜好を表す特徴語データと、前記第4ステップで分類した前記各関連記事の特徴語データとの類似度を算出する第6ステップと、
前記第6ステップで算出した前記類似度が上位の前記関連記事を優先的に前記ユーザに提示する第7ステップとを実行することを特徴とする関連記事推奨方法。 - 請求項1に記載の関連記事推奨方法において、
前記第4ステップでは、前記第3ステップで算出した前記類似度が所定の閾値より高くかつ前記元記事との発行日時の差が所定の時間間隔より小さい前記購読記事を、前記元記事に対して実質的に内容が重複する重複記事として分類し、
前記第7ステップでは、前記重複記事を前記ユーザが認識可能なように前記ユーザに提示することを特徴とする関連記事推奨方法。 - 請求項1または2に記載の関連記事推奨方法において、
前記重み付け値は、前記特徴語について前記特徴語が含まれる前記記事を対象として算出したTF値と、全ての前記ユーザの前記購読記事を対象として算出したIDF値とから算出したTF−IDF値であることを特徴とする関連記事推奨方法。 - 請求項1〜3のいずれか1項に記載の関連記事推奨方法において、
前記第3ステップおよび前記第6ステップにおける前記所定の比較条件は、前記類似度を算出する対象の前記特徴語データをそれぞれベクトル空間化し、両ベクトルのなす角に基づいて前記類似度を算出するものであることを特徴とする関連記事推奨方法。 - コンピュータシステムを、ユーザが参照しているテキストデータからなる元記事に対して、内容が関連する関連記事を提示して前記ユーザに推奨するよう機能させる関連記事推奨プログラムであって、
前記コンピュータシステムは、前記ユーザ毎に、前記ユーザの参照対象である複数の購読記事と、前記各購読記事についての参照履歴とを保持しており、
前記関連記事推奨プログラムは、前記元記事から所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、所定の算出条件に基づいて前記元記事における前記特徴語の重要度を示す重み付け値を算出して前記元記事の特徴語データとする第8ステップと、
前記各購読記事から前記所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、前記所定の算出条件に基づいて前記各購読記事における前記特徴語の前記重み付け値を算出して前記各購読記事の特徴語データとする第9ステップと、
所定の比較条件に基づいて、前記第8ステップで算出した前記元記事の特徴語データと、前記第9ステップで算出した前記各購読記事の特徴語データとの類似度を算出する第10ステップと、
前記第10ステップで算出した前記類似度が所定の閾値より高くかつ前記元記事との発行日時の差が所定の時間間隔以上である前記購読記事を前記関連記事として分類し、前記第9ステップで算出した対象の前記各購読記事の特徴語データを、前記各関連記事の特徴語データとする第11ステップと、
前記各購読記事と前記参照履歴とに基づいて前記ユーザの既読記事を取得し、全ての前記既読記事から前記所定の抽出条件に基づいて1つ以上の単語を特徴語として抽出し、抽出した前記各特徴語について、前記所定の算出条件に基づいて前記各既読記事における前記特徴語の前記重み付け値を算出し、前記既読記事全てにおけるその平均値を算出して前記ユーザの嗜好を表す特徴語データとする第12ステップと、
前記所定の比較条件に基づいて、前記第12ステップで算出した前記ユーザの嗜好を表す特徴語データと、前記第11ステップで分類した前記各関連記事の特徴語データとの類似度を算出する第13ステップと、
前記第13ステップで算出した前記類似度が上位の前記関連記事を優先的に前記ユーザに提示する第14ステップとを実行することを特徴とする関連記事推奨プログラム。 - 請求項5に記載の関連記事推奨プログラムにおいて、
前記第11ステップでは、前記第10ステップで算出した前記類似度が所定の閾値より高くかつ前記元記事との発行日時の差が所定の時間間隔より小さい前記購読記事を、前記元記事に対して実質的に内容が重複する重複記事として分類し、
前記第14ステップでは、前記重複記事を前記ユーザが認識可能なように前記ユーザに提示することを特徴とする関連記事推奨プログラム。 - 請求項5または6に記載の関連記事推奨プログラムにおいて、
前記重み付け値は、前記特徴語について前記特徴語が含まれる前記記事を対象として算出したTF値と、全ての前記ユーザの前記購読記事を対象として算出したIDF値とから算出したTF−IDF値であることを特徴とする関連記事推奨プログラム。 - 請求項5〜7のいずれか1項に記載の関連記事推奨プログラムにおいて、
前記第10ステップおよび前記第13ステップにおける前記所定の比較条件は、前記類似度を算出する対象の前記特徴語データをそれぞれベクトル空間化し、両ベクトルのなす角に基づいて前記類似度を算出するものであることを特徴とする関連記事推奨プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009068146A JP2010224623A (ja) | 2009-03-19 | 2009-03-19 | 関連記事推奨方法および関連記事推奨プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009068146A JP2010224623A (ja) | 2009-03-19 | 2009-03-19 | 関連記事推奨方法および関連記事推奨プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010224623A true JP2010224623A (ja) | 2010-10-07 |
Family
ID=43041780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009068146A Pending JP2010224623A (ja) | 2009-03-19 | 2009-03-19 | 関連記事推奨方法および関連記事推奨プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010224623A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014203442A (ja) * | 2013-04-10 | 2014-10-27 | 株式会社Nttドコモ | レコメンド情報生成装置及びレコメンド情報生成方法 |
JP2015069386A (ja) * | 2013-09-27 | 2015-04-13 | 大日本印刷株式会社 | サーバ装置、プログラム及び通信方法 |
KR20150076341A (ko) * | 2013-12-26 | 2015-07-07 | 주식회사 케이티 | 요약 뉴스를 생성하는 장치 및 방법 |
KR101705810B1 (ko) * | 2015-11-18 | 2017-02-10 | 고려대학교 산학협력단 | 뉴스를 추천하는 서버, 스마트 단말 및 이를 이용한 뉴스 추천 방법 |
JP2018077604A (ja) * | 2016-11-08 | 2018-05-17 | 株式会社Personal AI | 機能記述からの実現手段・方法の侵害候補を自動特定する人工知能装置 |
JP2019113943A (ja) * | 2017-12-21 | 2019-07-11 | ヤフー株式会社 | 情報提供装置、情報提供方法、およびプログラム |
KR20190097748A (ko) * | 2018-02-13 | 2019-08-21 | 국민대학교산학협력단 | 문서의 토픽 모델링 장치 및 방법, 이를 기록한 기록매체 |
US10872603B2 (en) | 2015-09-28 | 2020-12-22 | Denso Corporation | Dialog device and dialog method |
CN112579908A (zh) * | 2020-12-28 | 2021-03-30 | 济南大象信息技术有限公司 | 一种网站文章自定义推荐方法 |
-
2009
- 2009-03-19 JP JP2009068146A patent/JP2010224623A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014203442A (ja) * | 2013-04-10 | 2014-10-27 | 株式会社Nttドコモ | レコメンド情報生成装置及びレコメンド情報生成方法 |
JP2015069386A (ja) * | 2013-09-27 | 2015-04-13 | 大日本印刷株式会社 | サーバ装置、プログラム及び通信方法 |
KR20150076341A (ko) * | 2013-12-26 | 2015-07-07 | 주식회사 케이티 | 요약 뉴스를 생성하는 장치 및 방법 |
KR102205793B1 (ko) * | 2013-12-26 | 2021-01-21 | 주식회사 케이티 | 요약 뉴스를 생성하는 장치 및 방법 |
US10872603B2 (en) | 2015-09-28 | 2020-12-22 | Denso Corporation | Dialog device and dialog method |
KR101705810B1 (ko) * | 2015-11-18 | 2017-02-10 | 고려대학교 산학협력단 | 뉴스를 추천하는 서버, 스마트 단말 및 이를 이용한 뉴스 추천 방법 |
JP2018077604A (ja) * | 2016-11-08 | 2018-05-17 | 株式会社Personal AI | 機能記述からの実現手段・方法の侵害候補を自動特定する人工知能装置 |
JP2019113943A (ja) * | 2017-12-21 | 2019-07-11 | ヤフー株式会社 | 情報提供装置、情報提供方法、およびプログラム |
JP2021103542A (ja) * | 2017-12-21 | 2021-07-15 | ヤフー株式会社 | 情報提供装置、情報提供方法、およびプログラム |
JP7160980B2 (ja) | 2017-12-21 | 2022-10-25 | ヤフー株式会社 | 情報提供装置、情報提供方法、およびプログラム |
KR20190097748A (ko) * | 2018-02-13 | 2019-08-21 | 국민대학교산학협력단 | 문서의 토픽 모델링 장치 및 방법, 이를 기록한 기록매체 |
KR102028487B1 (ko) | 2018-02-13 | 2019-10-04 | 국민대학교산학협력단 | 문서의 토픽 모델링 장치 및 방법, 이를 기록한 기록매체 |
CN112579908A (zh) * | 2020-12-28 | 2021-03-30 | 济南大象信息技术有限公司 | 一种网站文章自定义推荐方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010224623A (ja) | 関連記事推奨方法および関連記事推奨プログラム | |
Kim et al. | A scientometric review of emerging trends and new developments in recommendation systems | |
US9535911B2 (en) | Processing a content item with regard to an event | |
Beel et al. | Introducing Docear's research paper recommender system | |
US8370358B2 (en) | Tagging content with metadata pre-filtered by context | |
US9990368B2 (en) | System and method for automatic generation of information-rich content from multiple microblogs, each microblog containing only sparse information | |
US8661031B2 (en) | Method and apparatus for determining the significance and relevance of a web page, or a portion thereof | |
JP2010224622A (ja) | タグ付与方法およびタグ付与プログラム | |
US8707160B2 (en) | System and method for inferring user interest based on analysis of user-generated metadata | |
WO2011080899A1 (ja) | 情報推薦方法 | |
JPWO2012118087A1 (ja) | レコメンダシステム、レコメンド方法、及びプログラム | |
WO2007143223A2 (en) | System and method for entity based information categorization | |
WO2007140364A2 (en) | Method for scoring changes to a webpage | |
US8972390B2 (en) | Identifying web pages having relevance to a file based on mutual agreement by the authors | |
JP2010257453A (ja) | サーチクエリデータを用いて文書にタグ付けするシステム | |
US20140207770A1 (en) | System and Method for Identifying Documents | |
JP5952756B2 (ja) | 予測対象コンテンツにおける将来的なコメント数を予測する予測サーバ、プログラム及び方法 | |
US20100235342A1 (en) | Tagging system using internet search engine | |
JP2008146293A (ja) | 閲覧対象情報の評価システム、方法、およびプログラム | |
US20140095465A1 (en) | Method and apparatus for determining rank of web pages based upon past content portion selections | |
JP2010224625A (ja) | キーワード二次元可視化方法およびキーワード二次元可視化プログラム | |
JP2009205588A (ja) | ページ検索システム及びプログラム | |
JP2015194955A (ja) | 入札情報検索システム | |
Ji et al. | A study on recommendation features for an RSS reader | |
US20140149378A1 (en) | Method and apparatus for determining rank of web pages based upon past content portion selections |