JP5974663B2 - 分析装置、分析方法及び分析プログラム - Google Patents

分析装置、分析方法及び分析プログラム Download PDF

Info

Publication number
JP5974663B2
JP5974663B2 JP2012140007A JP2012140007A JP5974663B2 JP 5974663 B2 JP5974663 B2 JP 5974663B2 JP 2012140007 A JP2012140007 A JP 2012140007A JP 2012140007 A JP2012140007 A JP 2012140007A JP 5974663 B2 JP5974663 B2 JP 5974663B2
Authority
JP
Japan
Prior art keywords
topic
information indicating
tweet
link destination
content
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.)
Active
Application number
JP2012140007A
Other languages
English (en)
Other versions
JP2014006584A (ja
Inventor
聡子 志賀
聡子 志賀
井形 伸之
伸之 井形
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012140007A priority Critical patent/JP5974663B2/ja
Publication of JP2014006584A publication Critical patent/JP2014006584A/ja
Application granted granted Critical
Publication of JP5974663B2 publication Critical patent/JP5974663B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ソーシャルメディアに記録された文書としてのつぶやきを分析するための技術に関し、特に、ソーシャルメディア内で話題となっているトピックの注目度を測るための分析装置、分析方法及び分析プログラムに関する。
近年、マイクロブログ、SNS(Social Networking Service:ソーシャルネットワーキングサービス)、ブログ、掲示板等のソーシャルメディアを用いたサービスが急速に普及している。例えば、マイクロブログの一つであるTwitter(登録商標)は、ユーザがつぶやきとして入力した文字列等を、インターネット等の通信ネットワークを介して送受信し、公衆に閲覧可能に記憶するものである。また、所定のユーザのつぶやきを閲覧したり(フォロー)、あるユーザのつぶやきに対して他のユーザがそれを引用して自らのつぶやきとしたり(リツイート)、所定のユーザのつぶやきに自らのコメントを追加して投稿したり(クオートツイート)することができる。
ソーシャルメディアが持つ自由な意見発信と即時性という特徴により、ソーシャルメディアを一種の人間センサーとして用い、「今、社会で起きていることを知る」ための様々なソーシャルメディア分析サービスが提供されている。例えば、世の中で注目されている話題を知るために、つぶやき中に記載されたURL(Uniform Resource Locator:統一資源位置指定子)に着目し、その数を集計しランキングする分析方法がある。
しかし、同一のURLが必ずしもいつも同一の内容(トピック)を指しているとは限らない。例えば、記載されているURLがニュースのトップ記事のURLであれば、時刻によって指している内容が書き換わることがある。そのため、抽出をしたURLを集計してもソーシャルメディア内で話題となっていることを抽出できることにはならない。
図1は、同一URLが指し示すトピックの内容が変遷する例を示す図である。
図1に示すように、時刻9:00と時刻11:00につぶやかれた2つの「つぶやき」は、同じURL(http://a.com/)を含んでいる。しかしながら、時刻9:00のつぶやき「超嬉しい http://a.com/」時のトピックは、「アイドルグループAをCMに起用」である。これに対して、時刻11:00のつぶやき「許せない http://a.com/」時のトピックは、「社長スキャンダル」である。すなわち、これらのつぶやきには同一のURLが含まれているが、そのトピックは、全く異なっている。これは、時間の経過に伴い、URLが指し示すコンテンツが書き換えられたからである。
そのため、つぶやきから抽出したURLの分析を行うのではなく、つぶやき分析時にURLに一度アクセスし、URLが参照しているトピックそのものを取得して、トピックを集計するという方法が考えられる。マイクロブログでは、ユーザは見たり聞いたりしたことをすぐにつぶやく傾向にあるため、つぶやかれてすぐにつぶやき内のURLが指し示しているトピックを取得すれば、ユーザが参照したトピックを取得できると考えられる。
しかし、つぶやき時刻と分析処理時刻のずれにより、つぶやかれてすぐにトピックを取得できなかった場合は、トピック側はすでに更新されて違うものになってしまい、ユーザが参照したトピックを正しく取得できない可能性がある。
図2は、つぶやきと、つぶやきが参照するトピックの組み合わせを正しく取得できない例を示す図である。
図2に示すように、例えば、時刻9:00に分析処理を行い、つぶやきが参照するトピックを取得した後、次は時刻11:00に分析処理(トピック取得)をしたとする。もし、その間の10:00にもつぶやきが存在していた場合、10:00の時点では分析処理が行われなかったため、つぶやきが参照するトピックは取得されない。しかし、過去に戻ってトピックを取得することはできないので、このような場合、10:00のつぶやき「CDプレゼントだって http://a.com/」はトピック取得失敗、つぶやきとトピックの組み合わせなし、となってしまう。
このような状況は、例えば、過去のつぶやきデータを後から入手した場合などにも発生する。
しかし、ソーシャルメディア上での話題の流行は寿命が短いと言う特徴があり、つぶやき側の分析とは別に、あらゆるURLについて、トピックの変化を常に監視し続け、どの時刻にどのトピックであったかを管理し続ける方法は現実的ではない。
そこで、つぶやきとそれに対応するトピックを組み合わせで取得することに失敗した場合に、できるだけ、足りないトピックを推定して補う方法が考えられる。これまでの分析処理で取得した手持ちのトピックデータの中に、対象となるつぶやきが参照していたトピックがないか、推定する。例えば、図2の場合は、つぶやき「CDプレゼントだって http://a.com/」に含まれるURL(http://a.com/)が指していた他のトピックとして、「アイドルグループAをCMに起用」もしくは「社長スキャンダル」がある。つぶやき「CDプレゼントだって」がこのどちらかのトピックと関係があるか推定を行い、関係が高いと推定されたトピックを、つぶやきが参照していたトピックだと推定する。
つぶやきとトピックの間の関係性を推定する方法として、例えば、文書間の文字列、すなわちこの場合はつぶやき文字列とトピックの文字列の類似度を計算する技術が開示されている(例えば、非特許文献1、2参照。)。
また、機械学習法(例えば、非特許文献3、4参照。)を用いて、文書間の関係性を推定する方法も開示されている。この方法は、つぶやきとトピックの間に関係がある事例(正例)、関係がない事例(負例)を事前に学習して、関係ありかなしかの推定規則を自動で生成し、その規則を用いて、新しいつぶやきとトピックの間の関係ありかなしかを推定する方法である。
例えば、事前に「CDプレゼントだって http://b.com/」というつぶやきと「アイドルグループBをCMに起用」というトピックが対応付けられているという事例を学習していたとする。このような場合、「CDプレゼントだって http://a.com/」というつぶやきと「アイドルグループAをCMに起用」というトピックとの組合せは、学習していた組合せと類似しているので、例えば、確信度90で関係があると判定される。
Salton、 G.、 "The Vector Space Model、 Automatic Text Processing." Addison Wesley Publishing、 1985、 pp.312-325 北研二、津田和彦、獅子掘正幹 著、「情報検索アルゴリズム」、共立出版、2002、4.2 ベクトル空間モデル pp.60-63 Quinlan、 J. R. C4.5: "Programs for Machine Learning." Morgan Kaufmann Publishers、 1993 pp.15-33 奥村学監修、高村大也著、「言語処理のための機械学習入門」、コロナ社、2010 pp.101-117
しかしながら、文字列同士の類似度を計算する方法をつぶやきとトピックの対応関係の推定に適用しても、実はつぶやき文字列とトピックの文字列には類似性があるとは限らないため、対応付けが難しいという問題がある。マイクロブログでは特に、つぶやきの文字数は140文字まで、といった制限があるため、つぶやき中にトピックの内容は記載されないことが多い。例えば、図2のつぶやき「超嬉しい http://a.com/」の例では、トピック「アイドルグループAをCMに起用」という内容を記述するのを省略するためにトピックのURLを引用しているのであり、つぶやき文字列とトピック文字列の間には類似性が見られない。
他方、機械学習法による関係有無の推定では、つぶやきとトピックの間で文字列に必ずしも類似性がなくても推定が行えるが、推定の結果、確信度が高い場合に限られる。確信度が低い場合は対応付けができなかった。
本発明は、上述のような実状に鑑みたものであり、ソーシャルメディア内のURLに着目して、世の中で注目されている話題を発見するにあたり、つぶやき内に記載されたURLが指しているトピックが常時固定ではなく時刻に応じて変化することにより、つぶやきとそれが参照しているトピックの対応関係が明確でない場合でも、つぶやきとトピックの対応関係を推定することが可能な分析装置、分析方法及び分析プログラムを提供することを目的とする。
本発明は、上記課題を解決するため、下記のような構成を採用した。
1つの案では、分析装置が、リンク先を示す情報を含むコンテンツが登録をされた日時と、該リンク先を示す情報と、該リンク先の内容を示す情報と、該リンク先の内容を示す情報の確からしさを示す情報と、を関連付けて記録をしたデータベースを格納する記憶部と、前記データベースを参照して、前記リンク先を示す情報が同一のデータについてコンテンツが登録をされた日時の時系列で並べた場合に、リンク先の内容を示す情報が同一で、且つ、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータに挟まれた、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えないデータについて、リンク先の内容を示す情報を、該データを挟む、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータのリンク先の内容を示す情報に変更をする変更部とを有することを特徴とする。
本発明によれば、1つのつぶやきと、そこに記載されたURLが示す1つのトピックを対応づけるにあたり、対応関係の有無を推定する必要がある際に、従来手法のように、つぶやきとトピックの1対1で個別に推定を行って、推定結果の確信度が低く対応付けが行えない場合であっても、他のつぶやきとトピックの対応関係も含めて、時刻情報の前後関係および推定の確信度を用いることにより、対応関係の有無を推定することができる、という効果を奏する。
これにより、ソーシャルメディア分析において、つぶやきに記載されたURLが同一でも異なるトピックを指すことがある場合においても、世間で多くの人に注目されているトピックを精度よく抽出できる、という効果を奏する。
同一URLが指し示すトピックの内容が変遷する例を示す図である。 つぶやきと、つぶやきが参照するトピックの組み合わせを正しく取得できない例を示す図である。 本実施の形態の概略を説明するための図(その1)である。 本実施の形態の概略を説明するための図(その2)である。 トピックの推定結果の変更のパターンを説明するための図である。 変更履歴を用いた再変更を説明するための図である。 分析装置が実行するソーシャルメディア分析処理の流れを示すフローチャートである。 図7のステップS701で実行される「つぶやき取得処理」の流れを示すフローチャートである。 つぶやきDBの例を示す図である。 推定・変更に用いるデータの蓄積を説明するための図である。 図7のステップS702で実行される「つぶやき分析処理」の流れを示すフローチャートである。 トピックDBの例を示す図である。 つぶやき−トピックID対応DBの例を示す図である。 分析装置が実行する「対応推定処理」の流れを示すフローチャート(その1)である。 分析装置が実行する「対応推定処理」の流れを示すフローチャート(その2)である。 単体の推定では十分な確信度がなかったものが、変更によって解決する例を説明するための図(その1)である。 単体の推定では十分な確信度がなかったものが、変更によって解決する例を説明するための図(その2)である。 単体の推定では十分な確信度がなかったものが、変更によって解決する例を説明するための図(その3)である。 単体の推定では十分な確信度がなかったものが、変更によって解決する例を説明するための図(その4)である。 単体の推定では十分な確信度がなかったものが、変更によって解決する例を説明するための図(その5)である。 変更の変更が起こる例を説明するための図(その1)である。 変更の変更が起こる例を説明するための図(その2)である。 変更の変更が起こる例を説明するための図(その3)である。 変更の変更が起こる例を説明するための図(その4)である。 変更の変更が起こる例を説明するための図(その5)である。 変更の変更が起こる例を説明するための図(その6)である。 変更の変更が起こる例を説明するための図(その7)である。 変更の変更が起こる例を説明するための図(その8)である。 変更の変更が起こる例を説明するための図(その9)である。 本実施の形態を実行する分析装置の構成図(その1)である。 蓄積した事例を学習データに利用する例を説明するための図である。 本実施の形態を実行する分析装置の構成図(その2)である。 変形例を説明するための図である。
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
本実施の形態を実現する分析装置では、ソーシャルメディアにおける下記の3つのポイントとなる性質を利用する。
第1のポイントは、つぶやき及びトピックが両方とも時刻情報を有していることである。つぶやきは、投稿された時刻情報を有し、トピックは、ある時刻にあるURLにアクセスしたらこのトピックであったというトピック取得時刻情報を有する。
第2のポイントは、時刻の経過に対して、トピックの変化は一般的に不可逆であることである。次々に新しいトピックに更新されて変わっていき、元のトピックには戻らない。そして、更新と更新の間はいつアクセスしても同じトピックである。例えば、WWW上のあるURLの内容が、時刻9:00の時点で「アイドルグループAをCMに起用」であったとすると、時刻11:00の時点で「社長スキャンダル」に更新されるまでの間、そのURLの内容は、「アイドルグループAをCMに起用」の状態である。すなわち、あるURLに記載されている内容は、ある時点にある状態であり、その後のある時点で同じ状態であれば、その期間は同じ内容であったと推定できる。
第3のポイントは、上述した通り、特にマイクロブログに顕著なように、ユーザは見たり聞いたりしたものをすぐにつぶやきとして投稿する傾向にあるという点である。URLが記載されたつぶやきは、ユーザがあるトピックを閲覧後、さほど時間をおかずに該当トピックのURLを記載して投稿している可能性が高い。
これら3つのポイントを利用することで、時刻の前後関係を使って、対応トピックを推定することができる。単体のつぶやきとトピックの対応付けでは十分な確信が持てない場合でも、前後のつぶやきとトピックの並びから、トピックを推定する。
次に、本実施の形態の概略を説明する。 まず、トピックとは、本実施の形態を実現する分析装置が、つぶやき分析時に、つぶやきに記載されたURLにアクセスして取得する、ある時刻のコンテンツのスナップショット、例えば、最も簡単には、HTMLファイルをダウンロードしてきたものであるとする。
トピックは、別の時刻に収集しても、内容に変更がなければ、同じトピックであることを特定するために同じトピックIDを付与して、同じトピックとして扱う。変更の有無を調べる方法としては、例えば、最も簡単には、取得したファイルに差異がないかどうかを見る。
また、つぶやき時刻の後、一定時間(例えば5分と設定)内にトピックを取得できた場合は、つぶやきが参照しているトピックを正しく取得できたものとし、つぶやきとトピックの対応付け「確定」とする。確定できなかったつぶやきがあった場合に、対応するトピックの推定を行うとする。
図3は、本実施の形態の概略を説明するための図(その1)である。
図3では、分析装置が、対応づけられたつぶやきとトピックの組み合わせをつぶやき時刻の時系列順に並べ、その前後関係を用いてトピックを推定する。
図3の(A)に示すように、トピックが取得できなかったつぶやき「早く見たい! http://a.com/」というつぶやきがあり、手持ちのトピックから対応するトピックを推定する。今、推定対象のトピックとして、「アイドルグループAをCMに起用」のトピックがある。機械学習等の従来手法によって、このつぶやきとトピックの間に関係あり、と単体で推定しようとしたが、推定の結果、確信度が低い場合は、推定が正しい可能性が低く、推定結果を採用できない。
そこで、本実施の形態では、このつぶやきに記載されたURL「http://a.com/」を含む他のつぶやきとトピックの組み合わせを、つぶやき時刻の時系列順に並べる。そうすると、図3の(B)に示すように、つぶやき「早く見たい! http://a.com/」が、つぶやき「超嬉しい http://a.com/」と「CDプレゼントだって http://a.com/」に挟まれる形となる。そして、「超嬉しい http://a.com/」と「CDプレゼントだって http://a.com/」のトピックは、両方とも「アイドルグループAをCMに起用」で確定である。このような場合には、同一のトピックにはさまれている間のトピックは同一、すなわちつぶやき「早く見たい! http://a.com/」が示しているトピックは、「アイドルグループAをCMに起用」であると判断する。
図4は、本実施の形態の概略を説明するための図(その2)である。
図4では、分析装置が、時刻の前後関係を用いるのに加えて、確信度スコアの大小を用いてトピックを推定する。
図4の(A)に示すように、つぶやき時刻9:00のつぶやき「超嬉しい http://a.com/」は、つぶやかれてすぐに分析及びトピック取得が実行され、つぶやきに対応するトピックとして「アイドルグループAをCMに起用」が確定している。確定の場合、確信度100として扱う。同様に、つぶやき時刻11:00のつぶやき「許せない http://a.com/」も、つぶやきに対応するトピック「社長スキャンダル」が確定(確信度100)している。
そして、上記両つぶやき時刻に挟まれたつぶやき時刻9:30には、つぶやき「また? http://a.com/」があったとする。このつぶやき「また? http://a.com/」は、対応するトピックが取得できなかったので、対応トピックの推定を行う。時刻の前後関係から、前のトピックである「アイドルグループAをCMに起用」か、又は後のトピックである「社長スキャンダル」のどちらかの可能性がある。そこで、機械学習等を用いてトピックの推定を行う。ここでは、機械学習の推定で確信度50で「社長スキャンダル」と推定された。
更に、図4の(B)に示すように、つぶやき「また? http://a.com/」と「許せない http://a.com/」の間の時刻10:30に、もう1つのつぶやき「アイドルグループA大好き http://a.com/」があったとする。このつぶやき「アイドルグループA大好き http://a.com/」にも、対応するトピックがないので、対応トピックの推定を行う。トピック「アイドルグループAをCMに起用」か、又は「社長スキャンダル」のどちらかの可能性がある。そこで、機械学習等を用いてトピックの推定を行う。ここでは、確信度95で「アイドルグループAをCMに起用」が推定されている。
ここで、上記4つのつぶやきとトピック全体の時系列の流れを見直してみると、上記第2のポイントとして説明したように、トピックは不可逆であるため、一度「アイドルグループAをCMに起用」から「社長スキャンダル」になったトピックが、その後に再度「アイドルグループAをCMに起用」には戻らないはずである。したがって、上記2つの推定の何れかが間違っていることになる。
それぞれの推定の確信度を見て、確信度の高い方を信用すると、つぶやき「アイドルグループA大好き http://a.com/」とトピック「アイドルグループAをCMに起用」の対応付けは確信度95、つぶやき「また? http://a.com/」とトピック「社長スキャンダル」の対応付けは確信度50であるので、後者が間違っていると推定できる。したがって、トピック「アイドルグループAをCMに起用」とトピック「アイドルグループAをCMに起用」の間の時間帯にある、つぶやき「また? http://a.com/」の対応先のトピックは、「アイドルグループAをCMに起用」であった、すなわち、つぶやき「超嬉しい http://a.com/」からつぶやき「アイドルグループA大好き http://a.com/」までの間の時間帯では、トピックに更新がなかったと推定される。
このように、本実施の形態では、つぶやきとトピックの対応付けを単体で推定するのに加えて、つぶやきとトピックの対応付けを時系列で並べた後、確信度の高い対応付けを信用して、確信度の低い対応付けを変更する。
次に、上記変更のパターンについて説明する。
図5は、トピックの推定結果の変更のパターンを説明するための図である。
図5の(A)に示したパターン1は、最新の推定結果により、それまでの推定結果が変更される例である。
まず、時系列順に並べて、最初と最後に確定の組み合わせがあり、最初のトピックはトピックIDが「1」のトピック、最後のトピックはトピックIDが「2」のトピックである。上から2番目のトピックは、つぶやきに対しトピックが取得できなかったものであり、分析装置により推定が行われ、トピックID「2」のトピックであるとされた。その確信度は50である。この時点では、3つのトピックを時系列順に見ると、「1→2→2」であるので、矛盾はないため変更は行われていない。
続いて、図5(A)中の左端に矢印で示している、上から3番目のつぶやきが新たに入ってきて、これもつぶやきに対しトピックが取得できなかったものであるため、分析装置が、対応するトピックを推定する。その結果、確信度95でトピックID「1」のトピックと推定された。
この時点で、4つのトピックを時系列順にみると、「1→2→1→2」となっており、トピックの変化に矛盾が生じているため、2つの推定のどちらかが間違っていると考えられる。2つの推定の確信度を比較すると、確信度50と確信度95であるから、確信度95の方が正しい可能性が高い。そこで、確信度50の以前の推定は、最初の確定のトピックID「1」と確信度95の最新の推定のトピックID「1」に挟まれる形で、トピックID「1」へと変更される。
図5の(B)に示したパターン2は、最新の推定結果が、それまでの推定結果をもとに変更される例である。
まず、最初と最後に確定の組み合わせがあり、最初のトピックはトピックID「1」のトピック、最後のトピックはトピックID「2」のトピックである。上から3番目のトピックは、つぶやきに対しトピックが取得できなかったものであり、分析装置により推定が行われ、トピックID「1」であるとされた。その確信度は95である。この時点では、3つのトピックを時系列順に見ると、「1→1→2」であるので、矛盾はないため変更は行われていない。
続いて、図5(B)中の左端に矢印で示している、上から2番目のつぶやきが新たに入ってきて、これもつぶやきに対しトピックが取得できなかったものであるため、分析装置が、対応するトピックを推定する。その結果、確信度50でトピックID「2」と推定された。
この時点で、4つのトピックを時系列順にみると、「1→2→1→2」となっており、トピックの変化に矛盾が生じているため、2つの推定のどちらかが間違っていると考えられる。2つの推定の確信度を比較すると、確信度50と確信度95であるから、確信度95の方が正しい可能性が高い。そこで、最新の推定である確信度50の方の推定は、最初の確定のトピックID「1」と確信度95の以前の推定のトピックID「1」に挟まれる形で、トピックID「1」へと変更される。
このように、確信度の高いつぶやきが確信度の低いつぶやきのトピックを変更するのであり、つねに新しい推定が過去の推定を変更するとは限らない。
さらに、本実施の形態は、分析装置による推定結果の変更が発生した際、どのつぶやきとトピックの組み合わせによって対応するトピックが変更されたのかを記録しておき、それをもとに、分析装置が、さらなる変更を行うか確認する。
上述のようにしてトピックの変更を行った後、その変更の根拠となっていたつぶやきとトピックの組み合わせ自体が、後に別のつぶやきとトピックの組み合わせにより変更されてしまった場合、当初の変更は根拠が失われて、信頼できなくなる。そのため、変更が発生した場合、分析装置は、自身がどのつぶやきを根拠に変更されたのか、履歴をとっておく。同時に、他の履歴をたどり、過去に自身が根拠となって変更が発生したものを抽出して、分析装置が過去の変更の取り消しを行う。
図6は、変更履歴を用いた再変更を説明するための図である。
図6において、まず、図6中の(A)の左端に矢印で示すように、つぶやき4が新たに入ってきたことにより、以前に分析装置により推定された確信度の低い(確信度50)つぶやき2のトピックが、つぶやき3とつぶやき4に挟まれて、トピックID「1」からトピックID「2」へ変更される。この際、分析装置は、つぶやき2が変更された根拠(つぶやき4)を記録しておく。
次に、図6中の(B)の左端に矢印で示すように、つぶやき5が新たに入ってきたことにより、つぶやき2の変更の根拠となったつぶやき4のトピックが、つぶやき1とつぶやき5に挟まれて、トピックID「2」からトピックID「1」へ変更される。このとき、以前につぶやき2の変更の根拠となったつぶやき4が変更されたので、過去のつぶやき2の変更は信頼できなくなる。そこで、図6中の(C)に示すように、つぶやき2のトピックは、トピックID「2」への変更を取り消して元のトピックID「1」に戻す。
以上により、本実施の形態では、分析タイミングのずれで、つぶやきが参照するトピック取得を逃した場合であっても、分析装置が、推定によりつぶやきと手持ちのトピックとを対応づけて、データを補完することができる。単体の「つぶやきとトピック」の対応推定(例えば、機械学習等)に比べて、後で時系列の前後関係と推定の確信度から判断し直す変更を加えることで、推定精度・カバー範囲が向上する。これにより、トピックごとの注目度集計をする場合も、精度が上がる。
さらに、本発明を適用した実施の形態を詳細に説明する。
図7は、分析装置が実行するソーシャルメディア分析処理の流れを示すフローチャートである。
まず、ステップS701において、分析装置が、「つぶやき取得処理」を実行することによりつぶやきを取得する。「つぶやき取得処理」の詳細は、図8乃および図9を用いて説明する。
そして、ステップS702において、分析装置が、「つぶやき分析処理」を実行することにより、ステップS701で取得したつぶやきを分析する。「つぶやき分析処理」の詳細は、図10乃至図15を用いて説明する。
このソーシャルメディア分析処理は、定期的に実行される。
図8は、図7のステップS701で実行される「つぶやき取得処理」の流れを示すフローチャートであり、図9は、つぶやきDBの例を示す図である。
まず、図8のステップS801において、分析装置が、例えば各ソーシャルメディアが提供するデータ取得用のAPI(Application Programming Interface:アプリケーション・プログラミング・インターフェース)にアクセスしてつぶやき群を取得する。もしくは、別途ファイル等で取得しても構わない。
次に、ステップS802において、分析装置が、ステップS801で取得したつぶやき群について、それぞれのつぶやきを特定するためのつぶやきID、つぶやきそのもののテキスト情報、つぶやきが投稿された時刻の情報を、図9に示すつぶやきDBに格納する。
そして、ステップS803において、分析装置が、新規につぶやきDBに追加したつぶやき群を、後述するつぶやき分析部に渡す。
次に、分析装置が実行するつぶやき分析処理について説明する。
まず、図10は、推定・変更に用いるデータの蓄積を説明するための図であり、分析処理において、つぶやきとトピックの対応付け確定のデータを蓄積する方法のうち、これまでに述べてきた方法とは別の方法を説明するための図である。
上述の通り、つぶやき時刻後、一定時間(例えば5分と設定)内にトピックを取得できた場合は、つぶやきが参照しているトピックを正しく取得できたものとし、つぶやきとトピックの対応付け「確定」とする。「確定」は、後の推定のための大事な情報源になるため、ここで、他にも「確定」を増やす方法について説明する。図10に示す通り、9:00のつぶやき「超嬉しい http://a.com/」に対応するトピックは、9:01に「http://a.com/」にアクセスして取得できたため、対応「確定」である。今、15:00の時点で再度分析処理が行われ、9:30のつぶやき「また? http://a.com/」が処理対象となっている。しかし、こちらはつぶやかれてからすでに5分以上過ぎているため、対応するトピックが取得できなかったケースにあたる(この後、推定処理が行われる)。9:30の時点でURL「http://a.com/」が示していたトピックは、今からではもう取得できないが、同じURLの現在15:00のトピックであれば、今、URLにアクセスすれば取得可能である。つまり、図10に示すように、15:00のつぶやきは存在していないが、15:00の時点で「http://a.com/」のトピックが今得られるトピックであることは確かな事実であるので、この情報は、本来存在しない15:00のダミーのつぶやきと、15:00に取得したトピックとを組み合わせた、ダミーの「確定」組み合わせの情報として蓄積し、後の推定の材料として活かす。
図11は、図7のステップS702で実行される「つぶやき分析処理」の流れを示すフローチャートであり、図12は、トピックDBの例を示す図であり、図13は、つぶやき−トピックID対応DBの例を示す図である。
まず、図11のステップS1101において、分析装置が新規のつぶやき群からつぶやきを1つ取り出した場合(ステップS1101:ある)は、ステップS1102において、分析装置が、そのつぶやきのテキストからURLを抽出できるかできないかを判断する。
抽出できない場合(ステップS1102:N)は、ステップS1101に戻り、抽出できる場合(ステップS1102:Y)は、ステップS1103において、分析装置が、そのURLにアクセスし、そのURLの現在のトピックを取得する。
次に、ステップS1104において、分析装置が、図12に示したようなトピックDBを検索し、同じURLを持つ過去のトピック情報があるかないかを判断する。トピックDBには、「URL」「トピック取得時刻」「トピック」、及び「トピック」を特定するための「トピックID」が格納されている。なお、図12において、カラム「トピック」は、例えば実体であるHTMLファイルのファイル名を示す。「URL」は同じ「http//a.com/」であるが、トピック取得時刻が違うため、「xxx.html」と「zzz.html」の2つのHTMLファイルがある。この異なる2つのHTMLファイルは、内容が同一と過去に判定されているため、同一の「トピックID」として「1」が付与されている。
続いて、同じURLを持つ過去のトピック情報がない場合(ステップS1104:N)は、ステップS1105において、分析装置が、新規にトピックIDを付与する。他方、同じURLを持つ過去のトピック情報がある場合(ステップS1104:Y)は、ステップS1106において、分析装置が、現在のトピックと同じURLの過去のトピックのうち、トピック取得時刻が最も直前のものを取り出し、現在のトピックとの同一判定を行う。同一であれば同一のトピックIDを付与し、同一でなければ新規のトピックIDを付与する。
そして、ステップS1107において、分析装置が、ステップS1103で取得したトピックを、URL、トピック取得時刻(すなわち現在の時刻)、トピックIDとともに、図12に例示したようなトピックDBに格納する。
次に、ステップS1108において、分析装置が、現在処理中のつぶやきを、図13に示すようなつぶやき−トピックID対応DBのレコード形式に変換する。
そして、ステップS1109において、分析装置が、トピックとつぶやきの対応付けが確定か、すなわち、トピック取得時刻とつぶやき時刻との差分が所定の閾値、例えば5分以内か5分を越えたかを判断する。
トピック取得時刻とつぶやきが蓄積された時刻との差分が所定の閾値内である場合(ステップS1109:Y)は、つぶやきとトピックIDの対応が対応確定であるので、ステップS1110において、分析装置が、処理中のつぶやきとトピックIDを対応づけて、確定フラグ付きでつぶやき−トピックID対応DBに格納した後、ステップS1101に戻る。つぶやき−トピックID対応DBには、「対応ID」「つぶやき」「つぶやき時刻」「トピック取得時刻」「URL」「トピックID」「対応関係」「変更根拠履歴」が格納されている。なお、カラム「対応関係」には、対応「確定」又は対応「推定」が入る。「推定」の場合は、「確信度スコア」もあわせて記載される。なお、ここで、「対応ID」とは、「つぶやき」と「トピックID」との対応付けを特定するための識別子であり、例えば図13に示すように「1」から順に1ずつ増やしながら付与することができる。
他方、トピック取得時刻とつぶやきが蓄積された時刻との差分が所定の閾値内でない場合(ステップS1109:N)は、つぶやきと対応するトピックが取得できなかった状態であるので、分析装置が、図14及び図15を用いて説明するトピックの「対応推定処理」を実行する。
図14及び図15は、分析装置が実行する「対応推定処理」の流れを示すフローチャートである。
ここで、図16乃至図29の具体例を用いながら、図14及び図15内のそれぞれのステップについて説明する。まず、図16乃至図20は、あるつぶやきとトピックの組み合わせ単体の推定を行い、その結果、十分な確信度がなく、対応トピック不明、といったん判定されたものが、他のつぶやきとトピックの組み合わせとあわせて推定し直したことにより、変更されて解決する例である。なお、図16乃至図20は、図13に示したつぶやき−トピックID対応DBと同様のレコード形式であるが、説明に不要なカラム「対応ID」「変更根拠履歴」は省略してある。
まず、図14のステップS1401において、分析装置が、「ダミー確定」にあたるレコードの作成を行う。推定対象となっているつぶやきに記載されたURLと現在のトピックIDとを、つぶやき−トピックID対応DBのレコード形式に変換する。対応するつぶやきは存在しないが、カラム「つぶやき」にはダミーの旨を記載、「つぶやき時刻」にはダミー時刻としてトピック取得時刻を入れ、カラム「対応関係」に「確定」を入れる。
図16に示すように、具体的には、推定処理の対象となっているつぶやきが「ほにゃら http://a.com/」という8:00のつぶやき、つぶやきから抽出したURLが「http://a.com/」、「http://a.com/」が指している現在のトピックが取得された時刻が12:00、現在のトピックIDが「2」である。そのため、ダミー確定のレコードでは、カラム「つぶやき時刻」に12:00が入れられている。
次に、ステップS1402において、分析装置が、つぶやき−トピックID対応DBから、つぶやきに記載されたURLと同一のURLを持つレコードを抽出する。
具体的には、図16に示すように、つぶやき「ほにゃ http://a.com/」、つぶやき時刻7:00、トピック取得時刻7:05、トピックID「1」、対応関係「確定」、という1レコードが抽出されている。
そして、ステップS1403において、分析装置が、ステップS1402で抽出したレコードが1個以上あるかないかを判断する。
ここで、もし、つぶやき−トピックID対応DBから抽出したレコードが1個もなかった場合は(ステップS1403のN)、過去に蓄積された情報を活用した推定は行えないということであるので、ステップS1404にて、推定処理中のつぶやき「ほにゃら http://a.com/」と、現在のトピックID(つまりダミーレコードのトピックID)「2」との対応関係を単体で推定することになる。推定方法には、例えば機械学習を用いる。
推定の結果、算出された確信度に応じて、ステップS1405において、分析装置が、推定処理中のつぶやき「ほにゃら http://a.com/」と、トピックID「2」を対応づける、もしくは、つぶやき「ほにゃら http://a.com/」の対応トピックは「不明」である、とする。
なお、トピック「不明」を対応付けるのは、確信度が所定値、例えば40点以下の場合である。そして、推定処理中のつぶやきレコードのカラム「トピックID」に現在のトピックID「2」または「不明」、カラム「対応関係」に「推定」を入れて、ダミー確定レコードと共に、つぶやき−トピックID対応DBに格納する。ここで分析装置による対応推定処理は終了となり、図11のステップS1101に戻る。
しかし、図16に示す例では、DBから抽出したレコード数が1であるので(ステップS1403のY)、ステップS1406において、分析装置が、DBから抽出したレコード、推定処理中のつぶやきのレコード、ダミーレコードの3レコードをつぶやき時刻でソートし、これらは図16の順番で並べられる。
続いて、ステップS1407において、分析装置が、ソート済みのレコードの中から、推定処理中のつぶやきのレコードの前後で、カラム「対応関係」が「確定」と「確定」にはさまれた区間のレコードを抽出する。ここでは、図16に示す3レコードである。
次に、ステップS1408において、分析装置が、推定処理中のつぶやきのレコードが、同じトピックIDの「確定」レコードに挟まれているかを判定する。
もし、ここで同じトピックIDの確定にはさまれているのであれば(ステップS1408のY)、推定処理中のつぶやきレコードに対応するトピックIDも、同じトピックIDで「確定」になり、あとはステップS1409において、分析装置が、推定処理中のつぶやきレコードに、トピックIDと確定情報を格納して、ダミーレコードとあわせてつぶやき−トピックID対応DBに格納し、「対応推定処理」のフローは終了となる。そして、図11のステップS1101に戻る。
しかし、図16に示す例では、トピックID「1」の確定レコードと、トピックID「2」の確定レコードに挟まれているので、ステップS1408はNとなり、ステップS1410に進む。
ステップS1410では、分析装置が、推定処理中のつぶやきを挟んでいる前後の確定レコードの「トピックID」から、トピックIDの候補を抽出する。
図16に示す例では、トピックID「1」または「2」が候補である。
続いて、ステップS1411において、分析装置が、推定処理中のつぶやきレコードのつぶやき「ほにゃら http://a.com/」と、それぞれのトピックID候補との対応関係を単体で、例えば機械学習を利用して推定し、確信度を算出する。
ここで、トピックID「1」である確信度スコアが20点、トピック「2」である確信度スコアが10点だったとする。
ステップS1412において、分析装置が、各確信度スコアから、つぶやきと対応するトピックIDを選出する。
前述の通り、「スコアがこれ以上ないとどちらとも対応付けせず不明とする」閾値を40点としていた場合、トピックID「1」、トピックID「2」どちらのスコアも低すぎる(閾値以下である)ので、ここでの推定結果は、1でも2でもなく「不明」である。よって、分析装置は、推定対象のつぶやきレコードのカラム「トピックID」に「不明」を格納、カラム「対応関係」に「推定」および推定結果のスコアもあわせて格納する。つまり、図14内のステップの推定処理の結果は、図17の通りとなる。
次に、図15のステップS1501において、分析装置が、対応確定と対応確定に挟まれた区間のレコードの並びの中に、トピックIDの変更候補があるかないかを判断する。例えば、トピックIDが1から2に変更になった後に再度1に戻る等、トピックIDの時間的な前後関係で矛盾がないかを見る。矛盾があるつぶやきとトピックの対応付けレコードのうち、確信度の低い方の対応付けレコードが変更候補となる。また、トピックIDが不明だったトピックが、同じIDにはさまれて決まることがないかを見る。その場合は不明トピックのレコードが変更候補となる。
図17に示す通り、ここでのトピックIDの並びは「1→不明→2」で、矛盾があるわけではなく、また、同じトピックIDに挟まれた「不明」があるわけでもないので、ステップS1501はNとなり、ステップS1502に進む。そして、対応推定中のレコードおよびダミー確定のレコード、つまり図17内の下2つのレコードを、つぶやき−トピックID対応DBに格納して、分析装置による「対応推定処理」のフローを終了する。そして、図11のステップS1101に戻る。
次に、図15内のステップS1501がYとなる場合について、今度は新しく図18の具体例を用いて説明する。
図18の例は、図16、17を使って説明してきた12:00のつぶやき分析処理が一通り終了し、次に15:00の時点で、新たなつぶやき分析処理が行われている際の例である。
図18に示した通り、新たに現在推定処理中となっているつぶやきは、9:00のつぶやき「ほにゃらら http://a.com/」である。また、図18の他のレコードは、図14のステップS1403でつぶやき-対応トピックDBから抽出されたレコード(つまり、前回12:00の際のつぶやき分析処理の結果)と、15:00現在のダミー確定のレコードの状態を示している。
図14のステップS1406で、分析装置が、これらのレコードをつぶやき時刻でソートすると、推定処理中のつぶやきレコード(つぶやき「ほにゃらら http://a.com/」のレコード)は、図18中の矢印の位置、つまり8:00のつぶやき「ほにゃら http://a.com/」と、12:00のダミー確定のつぶやきの間に入り、ソート結果は図19に示す通りとなる。
この場合、図14中のステップS1410で抽出された、トピックIDの候補は、前後の確定レコードのトピックであるから、7:00のつぶやき「ほにゃ http://a.com/」のトピックであるトピックID「1」か、12:00のダミー確定のトピックであるトピックID「2」のどちらかとなる。
続いて図14のステップS1411で、分析装置が、推定処理中のつぶやき「ほにゃらら http://a.com/」と、それぞれのトピックID候補との対応関係を単体で、例えば機械学習を利用して推定し、確信度を算出する。
その結果、トピックID「1」である確信度スコアが80点、トピックID「2」である確信度スコアが10点となり、図14中のステップS1412で、分析装置が、トピックID「1」と判定する。
ここで、図15内のステップS1501で、分析装置が、レコードの並びからトピックIDの変更候補があるかを見ると、図19の上から3つのレコードの並びにおいて、トピックIDが「1→不明→1」となる(ステップS1501がY)。
そこで、ステップS1503において、上から2つ目のトピックID「不明」だったレコードが、図20の通り、分析装置によってトピックID「1」に変更される。
ステップS1504、S1505は、後に別の例で説明するため、ここでは説明を省略し、ステップS1506において、分析装置により変更候補がまだあると判断されれば(S1506がY)、分析装置は、ステップS1503に戻り処理を続ける。他方、分析装置により他にトピックの並びの矛盾も不明もないと判断されれば(S1506がN)、図20に示す通り、ステップS1507において、分析装置が、図20のレコードの並びのうち、更新分、すなわち、上から2番目のつぶやき「ほにゃら http://a.com/」のレコード、3番目のつぶやき「ほにゃらら http://a.com/」のレコード、5番目のダミーレコードをつぶやき−トピックID対応DBに格納して、対応推定処理を終了する。
以上のようにして、分析装置は、あるつぶやきとトピックの組み合わせ単体の推定を行い、その結果、十分な確信度がなく、対応トピック不明、といったん判定されたものであっても、他のつぶやきとトピックの組み合わせとあわせて推定し直したことにより、推定結果の変更が起こって、解決することができる。
次に、図21乃至図29を用いて、変更の変更が起こる例を説明する。なお、図21乃至図29は、図13に示したつぶやき−トピックID対応DBと同様のレコード形式であるが、図21乃至図25については説明に不要なカラム「対応ID」「変更根拠履歴」を省略してある。
図14および図15のすでに説明済みのステップについては詳細に追うことを省略するが、新しく図21に示す例では、分析装置によるつぶやき分析処理を実行する時刻12:00の時点において、推定処理中のつぶやきは、つぶやき時刻8:00のつぶやき「ほにゃら http://a.com/」である。また、つぶやき−トピックID対応DBから抽出したレコード、12:00現在のダミー確定レコードをつぶやき時刻でソートすると、図21の順序になり、推定処理対象のつぶやきレコードは、確定のトピックID「1」とトピックID「2」のレコードに挟まれているため、この2つのトピックIDが推定候補となる。
推定処理中のつぶやき「ほにゃら http://a.com/」と、それぞれのトピックID候補との対応関係を単体で、例えば機械学習を利用して推定し、確信度を算出する。その結果、トピックID「1」の確信度スコアが20点、トピックID「2」の確信度スコアが50点となり、トピックID「2」と判定された。その結果が図22である。
また、次に時刻15:00の時点で分析装置によりつぶやき分析処理が再度実行され、図23に示す通り、推定処理中のつぶやきは、9:00のつぶやき「ほにゃらら http://a.com/」である。また、つぶやき−トピックID対応DBから抽出したレコード(前回12:00の処理結果)、15:00現在のダミー確定レコードをつぶやき時刻でソートすると、図24に示す通りの順序になり、推定処理対象のつぶやきレコードは、「確定」のトピックID「1」と「確定」のトピックID「2」のレコードに挟まれているため、この2つのトピックIDが推定候補となる。
推定処理中のつぶやき「ほにゃらら http://a.com/」と、それぞれのトピックID候補との対応関係を単体で、例えば機械学習を利用して推定し、確信度を算出する。その結果、トピックID「1」である確信度スコアが60点、トピックID「2」である確信度スコアが10点となり、トピックID「1」と判定された(ここまでで、図14のステップS1412)。
ここで、図15のステップS1501において、分析装置が、レコードの並びの中にトピックIDの変更候補があるかを判定すると、図25に示す通り、上から3つのレコードのトピックIDの並びが「1→2→1」となっており、矛盾がある。
カラム「対応関係」の確信度スコアを見ると、2番目のつぶやき「ほにゃら http://a.com/」のレコードがトピックID「2」である確信度は50、3番目のつぶやき「ほにゃらら http://a.com/」のレコードがトピックID「1」である確信度は60であるため、スコアの小さい2番目のレコードが変更候補である。
よって、ステップS1503で、図25に示す通り、分析装置により2番目のレコードのトピックIDが「2→1」に変更され、上から3つのレコードの間はすべてトピックID「1」だった、との推定結果となる。
ここで、図26に示す通り、変更された2番目のレコード(対応ID2、説明を省略してきたが、各レコードには対応IDが付与されている)のカラム「変更根拠履歴」には、今起こった変更が、対応ID4のレコードを根拠として、トピックID「2→1」へと変更された旨が記録される。
さらに、次の推定処理対象のつぶやきとして、図27に示すように、8:30のつぶやき「ほにゃららら http://a.com/」(対応ID6)が入ってきて、トピックIDの候補が「1」か「2」であり、対応関係を単体で、例えば機械学習を利用して推定すると、トピックID「2」であると推定された。
続いて、図15のステップS1501で、分析装置が、変更候補を判定すると、図27に示す通り、トピックの推移は上から「1→1→2→1→2…」となっており、矛盾が発生している。つまり、対応ID6のレコード、もしくは対応ID4のレコードの推定が誤っていることになる。対応ID6のレコードは、確信度90でトピックID「2」、対応ID4のレコードは、確信度60でトピックID「1」であるため、確信度スコアの小さい対応ID4のレコードが変更候補となる。
そこで、図15のステップS1503において、分析装置により対応ID4のレコードのカラム「トピックID」が「1→2」に変更され、該当レコードのカラム「変更根拠履歴」には、今起こった変更が、対応ID6を根拠として、トピックID「1→2」への変更であった旨が記録される。その結果を図28に示す。
すでに述べた通り、ある変更の根拠となっていた情報が後に変更されてしまった場合、それは根拠として信頼できなくなったので、当初の変更の取り消しを行う必要がある。
そこで、次に図15のステップS1504において、分析装置により、今変更のあった対応ID4のレコードを根拠として実施された、過去の変更がなかったかの判定が行われる。上述の通り、対応ID2のレコードは、対応ID4のレコードを根拠として変更が行われた経緯があるので、図28の各レコードの変更履歴の最終変更において、対応ID4を根拠にしているレコードがあるかを調べると、対応ID2のレコードが該当する。
そこで、ステップS1505において、分析装置が、該当するID2のレコードの過去の変更を取り消す。図29に示す通り、対応ID2のレコードのトピックIDは、過去に「2→1」に変更されていたものが、「2」に戻され、変更履歴も削除される。
以上のようにして、推定結果の変更の変更が起こる。このように変更が繰り返されることで、全体の推定精度を高めていくことができる。
図30は、本実施の形態を実行する分析装置の構成図(その1)である。
本発明が適用される分析装置は、つぶやき取得部3001及びつぶやき分析部3003を備える。
つぶやき分析部3003は、つぶやき情報抽出部3004、トピック取得部3005、トピック同一判定部3007、及びつぶやき−トピックID対応判定部3008を備える。そして、つぶやき−トピックID対応判定部3008は、確定対応付部3010、トピックID候補選出部3011、対応推定部3012、推定規則DB3013、及び変更部3014を備える。
また、つぶやきDB3002、トピックDB3006、つぶやき−トピックID対応DB3009を備える。
つぶやき取得部3001は、ソーシャルメディアのAPIにアクセスしてつぶやき群を取得し、つぶやきDB3002に格納する。
つぶやき情報抽出部3004は、つぶやきDB3002からつぶやきを取り出し、URL等のつぶやき情報を抽出する。
トピック取得部3005は、つぶやきに記載されたURLにアクセスし、そのURLの現在のトピックを取得する。
トピック同一判定部3007は、現在のトピックと同じURLの過去のトピックとの同一判定を行い、同一であれば同一のトピックIDを付与し、同一でなければ新規のトピックIDを付与して、トピックDB3006に格納する。
確定対応付部3010は、処理中のつぶやきとトピックIDの「確定」の対応づけを付与する。
トピックID候補選出部3011は、処理中のつぶやきをはさんでいる前後の「確定」レコードから、トピックIDの候補を抽出する。
対応推定部3012は、推定規則DB3013を参照し、機械学習等によりつぶやきとトピックとの対応関係を推定する。
変更部3014は、時系列順に並べたつぶやきとトピックの対応関係について、トピックの推移に矛盾や不明がないか調べ、矛盾や不明がある場合に、トピックIDを変更する。
また、本実施の形態の分析装置を利用しながら、対応付けの事例を蓄積していき、それを機械学習の学習データとして利用する(再学習する)こともできる。
次に、蓄積した事例を学習データに利用する例を説明する。
図31は、蓄積した事例を学習データに利用する例を説明するための図である。
機械学習には、すでに述べた通り、学習フェーズと推定フェーズがある。推定を行うためには、事前に正例・負例による学習データで、学習、すなわち推定のための規則の自動生成を行っておく必要がある。学習データを人手で作成するのは大きな労力が必要となるので、できるだけ自動的に学習データを生成することが望ましい。
本発明では、上述の実施の形態で蓄積するつぶやき−トピックID対応DBのデータのうち、対応づけ「確定」のつぶやきとトピックの組み合わせの事例を学習データとして利用することができる。
図31に示す通り、学習フェーズでは、「確定」のつぶやきとトピックの組み合わせの事例を正例として、対応推定規則を学習する。例えば、正例であるつぶやき「超嬉しい http://a.com/」とトピック「アイドルグループAをCMに起用」の組み合わせの対応推定規則を学習する。また、本来組み合わせられていたつぶやきとトピック以外の組み合わせ事例を負例として、対応推定規則を学習する。例えば、負例であるつぶやき「超嬉しい http://a.com/」とトピック「社長スキャンダル」の組み合わせの対応推定規則を学習する。この対応推定規則を用いて、推定フェーズにて対応推定を行う。
また、対応付け「確定」の事例のみならず、「推定」の事例も、確信度が閾値以上であるならば、学習データとして利用しても構わない。
以上のようにすれば、本実施の形態の分析装置の利用に応じて蓄積データが変更され、学習データとして利用可能なデータが増えていくため、定期的に再学習することで、推定精度が向上する。
図32は、本実施の形態を実行する分析装置の構成図(その2)である。
図32に示した分析装置を用いて、蓄積した事例を学習データに利用することができる。
学習データ生成部3215は、つぶやきDB3002、トピックDB3006、及びつぶやき−トピックID対応DB3009に格納されたデータに基づいて、学習データを生成し、学習データDB3216に格納する。学習部3217は、学習データDB3216に格納された学習データに基づいて、学習又は再学習を行い、推定規則DB3013を更新する。
図33は、変形例を説明するための図である。
上述してきた実施の形態では、利用する時刻情報として、つぶやき時刻とトピック取得時刻を用いた。これらの時刻情報に加えて、トピックの最終更新時刻を用いることもできる。
図33に示す通り、現在推定対象となっているのは、左端に矢印の付いた9:00のつぶやき「ほにゃらら http://a.com/」のレコードである。
トピックの最終更新時刻を用いない実施の形態の場合、つぶやき時刻の前後関係から、トピックID「1」又は「2」を候補として推定を行うが、ここで図33中の一番下のダミー確定のレコードの最終更新時刻により、8:30以降はトピックID「2」であることがわかる。よって、推定しなくても「トピックID2で確定」にすることができる。これにより、確定レコードを増やすことができる。
以上、本発明の実施の形態を、図面を参照しながら説明してきたが、上述してきた本発明の実施の形態は、分析装置の一機能としてハードウェアまたはDSP(Digital Signal Processor)ボードやCPUボードでのファームウェアもしくはソフトウェアにより実現することができる。
また、本発明が適用される分析装置は、その機能が実行されるのであれば、上述の実施の形態に限定されることなく、単体の装置であっても、複数の装置からなるシステムあるいは統合装置であっても、LAN、WAN等のネットワークを介して処理が行なわれるシステムであってもよいことは言うまでもない。
また、バスに接続されたCPU、ROMやRAMのメモリ、入力装置、出力装置、外部記録装置、媒体駆動装置、ネットワーク接続装置で構成されるシステムでも実現できる。すなわち、前述してきた実施の形態のシステムを実現するソフトェアのプログラムを記録したROMやRAMのメモリ、外部記録装置、可搬記録媒体を、分析装置に供給し、その分析装置のコンピュータがプログラムを読み出し実行することによっても、達成されることは言うまでもない。
この場合、可搬記録媒体等から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した可搬記録媒体等は本発明を構成することになる。
プログラムを供給するための可搬記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、DVD−RAM、磁気テープ、不揮発性のメモリーカード、ROMカード、電子メールやパソコン通信等のネットワーク接続装置(言い換えれば、通信回線)を介して記録した種々の記録媒体などを用いることができる。
また、コンピュータ(情報処理装置)がメモリ上に読み出したプログラムを実行することによって、前述した実施の形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現される。
さらに、可搬型記録媒体から読み出されたプログラムやプログラム(データ)提供者から提供されたプログラム(データ)が、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施の形態の機能が実現され得る。
すなわち、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または形状を取ることができる。
3001 つぶやき取得部
3002 つぶやきDB
3003 つぶやき分析部
3004 つぶやき情報抽出部
3005 トピック取得部
3006 トピックDB
3007 トピック同一判定部
3008 つぶやき−トピックID対応判定部
3009 つぶやき−トピックID対応DB
3010 確定対応付部
3011 トピックID候補選出部
3012 対応推定部
3013 推定規則DB
3014 変更部
3215 学習データ生成部
3216 学習データDB
3217 学習部

Claims (4)

  1. リンク先を示す情報を含むコンテンツが登録をされた日時と、該リンク先を示す情報と、該リンク先の内容を示す情報と、該リンク先の内容を示す情報の確からしさを示す情報と、を関連付けて記録をしたデータベースを格納する記憶部と、
    前記データベースを参照して、前記リンク先を示す情報が同一のデータについてコンテンツが登録をされた日時の時系列で並べた場合に、リンク先の内容を示す情報が同一で、且つ、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータに挟まれた、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えないデータについて、リンク先の内容を示す情報を、該データを挟む、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータのリンク先の内容を示す情報に変更をする変更部と、
    を有することを特徴とする分析装置。
  2. 前記変更部が、データのリンク先の内容を示す情報を変更する際に、変更をするデータと、変更前のデータのリンク先の内容を示す情報と、変更の根拠とした、データを挟むリンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータとを記録しておき、データのリンク先の内容を示す情報を変更する際に、変更をするデータを、変更の根拠としてデータのリンク先の内容を示す情報を変更したデータがあれば、該データの変更をしたリンク先の内容を示す情報を変更前のリンク先の内容を示す情報に戻すこと、
    を特徴とする請求項1記載の分析装置
  3. コンピュータが、
    リンク先を示す情報を含むコンテンツが登録をされた日時と、該リンク先を示す情報と、該リンク先の内容を示す情報と、該リンク先の内容を示す情報の確からしさを示す情報と、を関連付けて記録をしたデータベースを格納し、
    前記データベースを参照して、前記リンク先を示す情報が同一のデータについてコンテンツが登録をされた日時の時系列で並べた場合に、リンク先の内容を示す情報が同一で、且つ、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータに挟まれた、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えないデータについて、リンク先の内容を示す情報を、該データを挟む、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータのリンク先の内容を示す情報に変更をする、
    ことを特徴とする分析方法。
  4. コンピュータに、
    リンク先を示す情報を含むコンテンツが登録をされた日時と、該リンク先を示す情報と、該リンク先の内容を示す情報と、該リンク先の内容を示す情報の確からしさを示す情報と、を関連付けて記録をしたデータベースを格納させ、
    前記データベースを参照して、前記リンク先を示す情報が同一のデータについてコンテンツが登録をされた日時の時系列で並べた場合に、リンク先の内容を示す情報が同一で、且つ、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータに挟まれた、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えないデータについて、リンク先の内容を示す情報を、該データを挟む、リンク先の内容を示す情報の確からしさを示す情報が所定の閾値を超えるデータのリンク先の内容を示す情報に変更をさせる、
    ことを特徴とする分析プログラム。
JP2012140007A 2012-06-21 2012-06-21 分析装置、分析方法及び分析プログラム Active JP5974663B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012140007A JP5974663B2 (ja) 2012-06-21 2012-06-21 分析装置、分析方法及び分析プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012140007A JP5974663B2 (ja) 2012-06-21 2012-06-21 分析装置、分析方法及び分析プログラム

Publications (2)

Publication Number Publication Date
JP2014006584A JP2014006584A (ja) 2014-01-16
JP5974663B2 true JP5974663B2 (ja) 2016-08-23

Family

ID=50104271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012140007A Active JP5974663B2 (ja) 2012-06-21 2012-06-21 分析装置、分析方法及び分析プログラム

Country Status (1)

Country Link
JP (1) JP5974663B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10885131B2 (en) 2016-09-12 2021-01-05 Ebrahim Bagheri System and method for temporal identification of latent user communities using electronic content

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7001509B2 (ja) * 2018-03-19 2022-01-19 ヤフー株式会社 情報処理装置、情報処理方法、及び情報処理プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4093012B2 (ja) * 2002-10-17 2008-05-28 日本電気株式会社 ハイパーテキスト検査装置および方法並びにプログラム
JP4172388B2 (ja) * 2003-12-08 2008-10-29 日本電気株式会社 リンク診断装置、リンク診断方法およびリンク診断プログラム。
JP5397370B2 (ja) * 2008-03-18 2014-01-22 日本電気株式会社 動的トピック分析システム、動的トピック分析方法および動的トピック分析プログラムを記録した媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10885131B2 (en) 2016-09-12 2021-01-05 Ebrahim Bagheri System and method for temporal identification of latent user communities using electronic content

Also Published As

Publication number Publication date
JP2014006584A (ja) 2014-01-16

Similar Documents

Publication Publication Date Title
US10642938B2 (en) Artificial intelligence based method and apparatus for constructing comment graph
US10891348B1 (en) Identifying relevant messages in a conversation graph
US9300755B2 (en) System and method for determining information reliability
US9734261B2 (en) Context aware query selection
US9239883B2 (en) Searching system having a server which automatically generates search data sets for shared searching
CN108304410B (zh) 一种异常访问页面的检测方法、装置及数据分析方法
US10394939B2 (en) Resolving outdated items within curated content
CN108305180B (zh) 一种好友推荐方法及装置
US20130332592A1 (en) Disambiguating online identities
US20110119248A1 (en) Topic identification system, topic identification device, client terminal, program, topic identification method, and information processing method
US9591050B1 (en) Image recommendations for thumbnails for online media items based on user activity
US20100299140A1 (en) Identifying and routing of documents of potential interest to subscribers using interest determination rules
WO2013110357A1 (en) Social network analysis
KR20190122334A (ko) 소셜 네트워크 시스템 기반의 질의 응답 서비스 제공을 위한 전문가 추천 방법 및 전문가 추천 시스템
US10146749B2 (en) Tracking JavaScript actions
CN110941738A (zh) 推荐方法、装置、电子设备及计算机可读存储介质
KR20180098323A (ko) 미디어 정보 디스플레이 방법, 서버 및 데이터 저장 매체
US9069681B1 (en) Real-time log joining on a continuous stream of events that are approximately ordered
JP5974663B2 (ja) 分析装置、分析方法及び分析プログラム
JP2010128917A (ja) 情報伝播ネットワーク抽出方法、情報伝播ネットワーク抽出装置、及び情報伝播ネットワーク抽出プログラム
Lu et al. A robust and accurate approach to detect process drifts from event streams
CN110442789B (zh) 基于用户行为的关联结果确定方法、装置及电子设备
CN110633408A (zh) 智能商业资讯的推荐方法和系统
KR20130091391A (ko) 콘텐츠 추천 서버 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
US8180771B2 (en) Search activity eraser

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160301

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160422

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160704

R150 Certificate of patent or registration of utility model

Ref document number: 5974663

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150