JP2008305322A - 評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置、バーチャルチャット装置、およびプログラム - Google Patents

評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置、バーチャルチャット装置、およびプログラム Download PDF

Info

Publication number
JP2008305322A
JP2008305322A JP2007154076A JP2007154076A JP2008305322A JP 2008305322 A JP2008305322 A JP 2008305322A JP 2007154076 A JP2007154076 A JP 2007154076A JP 2007154076 A JP2007154076 A JP 2007154076A JP 2008305322 A JP2008305322 A JP 2008305322A
Authority
JP
Japan
Prior art keywords
information
character string
sentence
evaluation
unit
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
Application number
JP2007154076A
Other languages
English (en)
Inventor
Mitsuharu Nishimoto
光治 西本
Yoshihisa Uchida
善久 内田
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.)
C2cube
C2CUBE Inc
Original Assignee
C2cube
C2CUBE Inc
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 C2cube, C2CUBE Inc filed Critical C2cube
Priority to JP2007154076A priority Critical patent/JP2008305322A/ja
Publication of JP2008305322A publication Critical patent/JP2008305322A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ブログ等の個人情報群から仮想的なチャットなどに利用するコーパスを生成できなかった。
【解決手段】評価対象の評価を示す評価語を含む評価情報を格納し得る評価情報格納部と、評価される対象を示す用語である評価対象と、当該評価対象を評価する文を有する評価対象情報を格納し得る評価対象情報格納部と、入力された1種類以上の文章群を格納されている文章群格納部と、文章群格納部に格納されている文章群から評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する評価対象取得部と、評価対象取得部が取得した評価語と、評価対象を含む文を、文章群から取得する文取得部と、文取得部が取得した文、および評価対象取得部が取得した評価対象を有する評価対象情報を、評価対象情報格納部に蓄積する評価文蓄積部を具備する評判コーパス生成装置により、コーパスを生成できる。
【選択図】図1

Description

本発明は、ブログ等の情報群から、自然言語処理を行い、対象物と、対象物について記述している文を抽出し、蓄積する評判コーパス生成装置等に関するものである。
従来、予め蓄積されている少なくとも1つの文書から、ユーザが入力した所定語句に関する評判情報を抽出し、記憶装置に記憶する評判情報抽出ステップと、上記抽出された上記評判情報が、第三者が評価した評判情報であるどうかを判定し、記憶装置に記憶する判定ステップとを有することを特徴とする意見分析処理方法の技術があった(例えば、特許文献1参照)。
特開2006−331246号公報(第1頁、第1図等)
しかしながら、従来、ブログ等の個人情報群から、評判解析を行い、対象物と、対象物を評価している文を抽出し、検索エンジンや、対象物のランキングや、仮想的なチャットなどに利用する、ということができなかった。
さらに、評判解析において、形態素解析による自然言語処理を行っていたので、特に、口語調で記載されている文章などの解析の精度が低かった。
本第一の発明の評判コーパス生成装置は、評価対象の良し悪しに関する用語である評価語を含む評価情報を格納し得る評価情報格納部と、評価される対象を示す用語である評価対象と、当該評価対象を評価する文を有する評価対象情報を格納し得る評価対象情報格納部と、一の個人が入力した1種類以上の文章群を格納されている文章群格納部と、前記文章群格納部に格納されている文章群から前記評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する評価対象取得部と、前記評価対象取得部が取得した評価語と、評価対象を含む文を、前記文章群から取得する文取得部と、前記文取得部が取得した文、および前記評価対象取得部が取得した評価対象を有する評価対象情報を、前記評価対象情報格納部に蓄積する評価文蓄積部を具備する評判コーパス生成装置である。
かかる構成により、ブログ等の文章群から、評判解析を行い、対象物と、対象物を評価している文を抽出し、蓄積できる。
また、本第二の発明の評判コーパス生成装置は、第一の発明に対して、前記評価情報は、評価語、および良し悪しの程度を示すスコアを対に有し、前記評価対象取得部が取得した文に含まれる評価語と対になるスコアを、前記評価情報格納部から取得するスコア取得部と、前記評価対象取得部が取得した同一の評価対象についての1以上のスコアを用いて、当該評価対象についての評価を算出する評価算出部をさらに具備し、前記評価文蓄積部は、前記文取得部が取得した文、前記評価対象取得部が取得した評価対象、および前記評価算出部が算出したスコアを有する評価対象情報を、前記評価対象情報格納部に蓄積する評判コーパス生成装置である。
かかる構成により、評判の程度についての情報であるスコアも蓄積できる。
また、本第三の発明の評判コーパス生成装置は、第一、第二いずれかの発明に対して、前記評価対象取得部は、第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、前記文章を構成する文から区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、前記文分割制御手段が取得した第二文字列の種類から評価の対象を含む第二文字列を特定し、当該第二文字列から評価対象を取得する評価対象取得手段と、前記評価対象を含む第二文字列を有する文中の他の第二文字列の種類を用いて評価語を含み得る第二文字列を特定し、当該第二文字列が有する評価語を前記評価情報格納部から検索し、取得する評価語取得手段を具備する評判コーパス生成装置である。
かかる構成により、機能素解析の自然言語処理方法により、例えば、口語調の文章でも、正確に自然言語処理し、対象物と、対象物を評価している文を抽出できる。
また、本第四の発明の評判コーパス生成装置は、第三の発明に対して、前記第二文字列の種類は、少なくとも文の主題、文の副題、動作状態を含む評判コーパス生成装置である。
かかる構成により、機能素解析の自然言語処理方法により、例えば、口語調の文章でも、正確に自然言語処理し、対象物と、対象物を評価している文を抽出できる。
また、本第五の発明の評判コーパス生成装置は、第三、第四いずれかの発明に対して、前記文分割制御手段は、前記文章を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数、取得する要素連結手段と、前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備する評判コーパス生成装置である。
かかる構成により、機能素解析の自然言語処理方法により、例えば、口語調の文章でも、正確に自然言語処理し、対象物と、対象物を評価している文を抽出できる。
また、本第六の発明の評判コーパス生成装置は、第二から第五いずれかの発明に対して、評価語に対する評価の変更を示す言い回しの用語である変更語、および評価を変更するための情報である評価変更情報の対である変更情報を1以上格納している変更情報格納部と、評価語から所定以内の文字数の距離内にある変更語を取得する変更語取得部と、前記変更語と対になる評価変更情報を取得する評価変更情報取得部と、前記スコア取得部が取得したスコアに対して、前記評価変更情報取得部が取得した評価変更情報を用いて、スコアを変更し、新たなスコアを算出する変更スコア算出部をさらに具備し、前記評価算出部は、前記評価対象取得部が取得した同一の評価対象についての1以上のスコア、および前記変更スコア算出部が算出した同一の評価対象についての1以上の新たなスコアを用いて、当該評価対象についての評価を算出する評判コーパス生成装置である。
かかる構成により、評価語の前後で使われている言い回しの用語も考慮して評判解析するので、正確な評判解析ができる。
また、本第七の発明の評判コーパス生成装置は、第一から第六いずれかの発明に対して、前記1種類以上の文章群のうちの1種類以上の文章群は、タグにより構造化されており、前記文章群格納部は、文章群を識別する識別情報と文章群を有する文章群情報を、1以上格納しており、構造化されている文章群から解析対象の文を抽出するための情報であり、タグを有する情報である抽出情報と、文章群を識別する識別情報の対からなる抽出タグ情報を格納している抽出タグ情報格納部と、前記文章群格納部の文章群情報が有する識別情報と対になる抽出情報を読み出し、当該抽出情報を用いて、前記文章群情報が有する文章群から、解析対象の1以上の文を取得する解析対象文取得部をさらに具備し、前記評価対象取得部は、前記解析対象文取得部が取得した解析対象の1以上の文から前記評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する評判コーパス生成装置である。
かかる構成により、Webページ上のファイルから文章を取得する場合に、評判に関して記載された文を、効率的に、精度高く取得できる。
また、本第八の発明のサーバ装置は、第一から第七いずれかの発明に対して、評判コーパス生成装置により生成された評価対象情報を格納している評価対象情報格納部を具備するサーバ装置であって、情報端末装置から、評価対象を含む情報である検索命令を受信する検索命令受信部と、前記検索命令が有する評価対象をキーとして、前記評価対象情報格納部を検索し、当該評価対象を評価する文、または当該文から抽出できる評価語、またはスコアのうちのいずれかを有する評価結果を取得する評価結果検索部と、前記評価結果を、前記情報端末装置に送信する評価結果送信部を具備するサーバ装置である。
かかる構成により、評判コーパスを用いた検索エンジンを実現できる。
また、本第九の発明のサーバ装置は、第八の発明に対して、前記評価対象情報は、当該文を有する文章群が格納されている格納場所情報をも有し、前記評価結果検索部は、前記評価対象情報格納部から、前記格納場所情報を有する評価結果を取得するサーバ装置である。
かかる構成により、検索された結果から、評判の元になったブログや電子メールの記述に、簡単にジャンプできる。
また、本第十の発明のサーバ装置は、第二から第七いずれかの発明に対して、評判コーパス生成装置により生成された評判コーパスである評価対象情報格納部を具備するサーバ装置であって、情報端末装置から、検索命令を受信する検索命令受信部と、前記検索命令の受信に対応して、スコアの順に2以上の評価対象を並べたランキングの情報を有する評価結果を取得する評価結果検索部と、前記評価結果を、前記情報端末装置に送信する評価結果送信部を具備するサーバ装置である。
かかる構成により、評判コーパスを用いて、ランキングを得ることができる。
また、本第十一の発明のサーバ装置は、第十の発明に対して、一のカテゴリーと、2以上の評価対象を有するカテゴリー情報を1以上格納しているカテゴリー情報格納部をさらに具備し、前記検索命令は、カテゴリーを含み、前記評価結果検索部は、前記検索命令が有するカテゴリーと対になる2以上の評価対象を取得する評価対象取得手段と、前記2以上の評価対象に対応するスコアを取得し、当該スコアの順に、前記2以上の評価対象を並べたランキングの情報を有する評価結果を取得するランキング取得手段を具備するサーバ装置である。
かかる構成により、評判コーパスを用いて、ランキングを得ることができる。
また、本第十二の発明のバーチャルチャット装置は、第一から第七いずれかの発明に対して、評判コーパス生成装置により生成された評判コーパスである評価対象情報格納部を具備するバーチャルチャット装置であって、ユーザからの対話文を受け付ける対話文受付部と、前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、前記処理結果が有する用語と対になる文を、前記評価対象情報格納部から検索する対話文取得部と、前記対話文取得部が取得した文を出力する対話文出力部を具備するバーチャルチャット装置である。
かかる構成により、評判コーパスを用いた、仮想的なチャットを実現できる。
また、本第十三の発明のサーバ装置は、第十二の発明に対して、前記自然言語処理部は、第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、前記受け付けた対話文中、少なくとも一のユーザから入力された対話文から、区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、対話文を構成する文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、前記文分割制御手段が取得した2以上の区切られた各第二文字列と、各第二文字列の種類を特定する情報を対に有する処理結果を取得する処理結果構成手段を具備するバーチャルチャット装置である。
かかる構成により、入力された対話文を精度高く自然言語処理でき、精度高く、自然なチャットが実現できる。
また、本第十四の発明のバーチャルチャット装置は、第十三の発明に対して、前記文分割制御手段は、前記対話文を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数の取得する要素連結手段と、前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備するバーチャルチャット装置である。
かかる構成により、入力された対話文を精度高く自然言語処理でき、精度高く、自然なチャットが実現できる。
また、本第十五の発明の対象情報コーパス生成装置は、一の個人が入力した1種類以上の文章群を格納されている文章群格納部と、検索の対象を示す用語である検索対象と、当該検索対象について記述された文を有する対象情報を格納し得る対象情報格納部と、前記文章群格納部に格納されている文章群を自然言語処理し、検索対象を取得する検索対象取得部と、前記検索対象取得部が取得した検索対象を含む文を、前記文章群から取得する文取得部と、前記文取得部が取得した文、および前記検索対象取得部が取得した検索対象を有する対象情報を、前記対象情報格納部に蓄積する対象情報蓄積部を具備する対象情報コーパス生成装置である。
かかる構成により、ブログ等の文章群から、対象情報コーパスを生成できる。
また、本第十六の発明の対象情報コーパス生成装置は、第十五の発明に対して、前記検索対象取得部は、第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、前記文章を構成する文から区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、前記文分割制御手段が取得した第二文字列の種類から検索対象を含む第二文字列を特定し、当該第二文字列から検索対象を取得する検索対象取得手段を具備する対象情報コーパス生成装置である。
かかる構成により、ブログ等の文章群から、精度高く対象情報コーパスを生成できる。
また、本第十七の発明の対象情報コーパス生成装置は、第十六の発明に対して、前記文分割制御手段は、前記対話文を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数の取得する要素連結手段と、前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備する対象情報コーパス生成装置である。
かかる構成により、ブログ等の文章群から、精度高く対象情報コーパスを生成できる。
また、本第十八の発明のサーバ装置は、第十五から第十七いずれかの発明に対して、対象情報コーパス生成装置により生成された対象情報コーパスである対象情報格納部を具備するサーバ装置であって、情報端末装置から、検索対象を含む情報である検索命令を受信する検索命令受信部と、前記検索命令が有する検索対象をキーとして、前記検索情報格納部を検索し、当該検索対象を有する文、または当該文から抽出できる用語のいずれかを有する検索結果を取得する検索部と、前記検索結果を、前記情報端末装置に送信する検索結果送信部を具備するサーバ装置である。
かかる構成により、対象情報コーパスを用いた検索エンジンを実現できる。
また、本第十九の発明のバーチャルチャット装置は、第十五から第十七いずれかの発明に対して、対象情報コーパス生成装置により生成された対象情報コーパスである対象情報格納部を具備するバーチャルチャット装置であって、ユーザからの対話文を受け付ける対話文受付部と、前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、前記処理結果が有する用語と対になる文を、前記対象情報格納部から検索する対話文取得部と、前記対話文取得部が取得した文を出力する対話文出力部を具備するバーチャルチャット装置である。
かかる構成により、対象情報コーパスを用いた、仮想的なチャットを実現できる。
また、本第二十の発明のバーチャルチャット装置は、第十九の発明に対して、前記自然言語処理部は、第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、前記受け付けた対話文中、少なくとも一のユーザから入力された対話文から、区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、対話文を構成する文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、前記文分割制御手段が取得した2以上の区切られた各第二文字列と、各第二文字列の種類を特定する情報を対に有する処理結果を取得する処理結果構成手段を具備するバーチャルチャット装置である。
かかる構成により、入力された対話文を精度高く自然言語処理でき、精度高く、自然なチャットが実現できる。
また、本第二十一の発明のバーチャルチャット装置は、第二十の発明に対して、前記文分割制御手段は、前記対話文を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数の取得する要素連結手段と、前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備するバーチャルチャット装置である。
かかる構成により、入力された対話文を精度高く自然言語処理でき、精度高く、自然なチャットが実現できる。
本発明による評判コーパス生成装置によれば、個人から発信された情報であり、例えば、ブログやSNSや電子メール等の1種以上の情報から自然言語処理を行い、対象物に対して発言している文等を取得し、コーパスを自動的に生成できる。
以下、評判コーパス生成装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態において、ブログ等の個人情報群から、評判解析を行い、対象物と、対象物を評価している文を抽出し、蓄積する評判コーパス生成装置について説明する。評判コーパス生成装置とは、対象物(例えば、商品、サービス、店舗、特定の個人、企業、概念など)に対する評価(好き、嫌い、良い、悪いなど)に関する情報を取得する装置である。ここで、取得とは、単純な検索も含むし、検索した情報を加工することを含む。また、本実施の形態において、ブログ等の文章を自然言語処理して、評判解析を行う。その自然言語処理は、形態素解析を用いない、機能素解析という自然言語解析の手法を用いている。また、自然言語処理は、形態素解析やパターンマッチングの他、公知の手法を用いても良い。なお、評判コーパスとは、評判、評価に関する情報が格納されたデータ群である。
図1は、本実施の形態における評判コーパス生成装置1のブロック図である。評判コーパス生成装置1は、指示受付部100、評価情報格納部101、評価対象情報格納部102、文章群格納部103、評価対象取得部104、文取得部105、評価文蓄積部106、抽出タグ情報格納部107、解析対象文取得部108を具備する。
評価対象取得部104は、辞書情報格納手段1041、文分割制御手段1042、評価対象取得手段1043、評価語取得手段1044を具備する。
文分割制御手段1042は、要素分割手段10421、要素連結手段10422、文字列取得手段10423を具備する。
指示受付部100は、指示を受け付ける。指示とは、例えば、処理の開始指示である。処理とは、評判コーパスを生成する処理である。受付とは、通常、ユーザからの手入力の受け付けであるが、外部装置からの受信でも良い。指示の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。指示受付部100は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
評価情報格納部101は、評価対象の良し悪しに関する用語である評価語を含む評価情報を格納し得る。評価語とは、例えば、「好き」「嫌い」「良い」「悪い」「だめ」「素敵」「すばらしい」などである。また、評価語は、通常、後述する機能素解析で取得された「状態」に対応する。評価情報格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
評価対象情報格納部102は、評価対象情報を格納し得る。評価対象情報は、評価対象と文を有する。評価対象は、評価される対象を示す用語である。ここでの文は、評価対象を評価する文であり、通常、評価対象を有する。文とは、通常、1文であるが、2文以上でも良い。評価対象とは、例えば、「レストランA」であり、文とは、「レストランAは、おいしいよ。」などである。評価対象情報格納部102は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
文章群格納部103は、一の個人が入力した1種類以上の文章群を格納されている、文章群を識別する識別情報と文章群を有する文章群情報を、1以上格納しており。ここで、格納とは、外部の装置から取得し、一時的に格納しているものも含む。文章群とは、いわゆるブログ、電子メール、SNS、Voip、メタバース、IMなどの情報である。文章群は、ブログなどのタグにより構造化されている情報でも良い。文章群格納部103の文章群は、外部の装置(例えば、Web上のサーバ装置)などから取得し、一時的に格納されている文章群でも良い。文章群格納部103は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
評価対象取得部104は、文章群格納部103に格納されている文章群から評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する。また、評価対象取得部104は、解析対象文取得部108が取得した解析対象の1以上の文から評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得しても良い。ここで、評価対象は、通常、機能素解析により取得する。ただし、精度は低下するが、文章群に対して、形態素解析を行い、名詞を取得し、当該名詞を評価対象としても良い。また、さらに、精度は低下するが、文章群に対して、パターンマッチングにより、用語を評価対象としても取得しても良い。文章群格納部103は、多数の装置(図示しないネットワーク上の装置を含む)に分散していても良い。つまり、文章群は、外部の装置から取得し、一時保持しているものでも良い。文章群を外部の装置から取得する場合、評価対象取得部104は、文章群がどこに存在するかの情報(例えば、URLや、IPアドレスとファイル名、など)も保持している。評価対象取得部104は、通常、MPUやメモリ等から実現され得る。評価対象取得部104の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
辞書情報格納手段1041は、辞書情報を1以上格納している。辞書情報は、第一文字列と、機能語情報と、前接続記号と、後接続記号とを対に有する。機能語情報とは、文中における第一文字列の機能または種類を特定する情報である。前接続記号とは、第一文字列の前に接続され得る文字列の種類を特定する情報である。後接続記号とは、第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である。辞書情報格納手段1041は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
文分割制御手段1042は、文章を構成する文から区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する。文分割制御手段1042は、通常、MPUやメモリ等から実現され得る。文分割制御手段1042の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
文分割制御手段1042を構成する要素分割手段10421は、文章を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、辞書情報格納手段1041に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が辞書情報格納手段1041に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、辞書情報格納手段1041から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する。要素分割手段10421は、通常、MPUやメモリ等から実現され得る。要素分割手段10421の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
要素連結手段10422は、要素分割手段10421が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数、取得する。要素連結手段10422は、通常、MPUやメモリ等から実現され得る。要素連結手段10422の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
文字列取得手段10423は、要素連結手段10422が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する。文字列取得手段10423は、通常、MPUやメモリ等から実現され得る。文字列取得手段10423の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
評価対象取得手段1043は、文分割制御手段1042が取得した第二文字列の種類から評価の対象を含む第二文字列を特定し、当該第二文字列から評価対象を取得する。評価対象とは、通常、機能素解析の結果の中の「主題」または「副題」である。評価対象取得手段1043は、通常、MPUやメモリ等から実現され得る。評価対象取得手段1043の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
評価語取得手段1044は、評価対象を含む第二文字列を有する文中の他の第二文字列の種類を用いて評価語を含み得る第二文字列を特定し、当該第二文字列が有する評価語を評価情報格納部101から検索し、取得する。評価語を含み得る第二文字列は、通常、第二文字列の種類「状態」に対応する第二文字列である。評価語取得手段1044は、通常、MPUやメモリ等から実現され得る。評価語取得手段1044の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
文取得部105は、評価対象取得部104が取得した評価語と、評価対象を含む文を、文章群から取得する。文取得部105は、通常、MPUやメモリ等から実現され得る。文取得部105の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
評価文蓄積部106は、評価対象情報を評価対象情報格納部102に蓄積する。評価対象情報は、文取得部105が取得した文、および評価対象取得部104が取得した評価対象を有する。評価対象情報は、文と評価対象以外の情報、例えば、文の所在場所を示す情報(URLやファイル名など)や、その所在場所中の位置を示す情報(ファイル内のオフセットなど)などを有しても良い。評価文蓄積部106は、通常、MPUやメモリ等から実現され得る。評価文蓄積部106の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
抽出タグ情報格納部107は、抽出タグ情報を格納している。抽出タグ情報は、識別情報と抽出情報の対からなる。識別情報は、文章群を識別する識別情報であり、例えば、URLや、文章群が格納されているサイトの名称や、文章群の種類を示す情報や、文章群が記載されている言語などである。抽出情報は、タグを用いて構造化されている文章群から、一部の文章を抽出するための情報であり、例えば、抽出すべき1以上の文が特定されるタグである。例えば、抽出情報が「<div class=ebody」である場合、この「<div class= ebody」を含むタグから、「</div>」タグまでの文章が抽出される文章である。抽出タグ情報格納部107は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。抽出タグ情報格納部107は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
解析対象文取得部108は、文章群格納部103の文章群情報が有する識別情報と対になる抽出情報を読み出し、当該抽出情報を用いて、文章群情報が有する文章群から、解析対象の1以上の文を取得する。例えば、文章群情報がWebホームページである場合、解析対象文取得部108は、識別情報(例えば、URL)と対になる抽出情報(例えば、タグ)を読み出し、当該タグで特定される(このタグと終了タグで囲まれた)文を、当該ホームページから抽出する。解析対象文取得部108は、通常、MPUやメモリ等から実現され得る。解析対象文取得部108の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、評判コーパス生成装置の動作について、図2から図8のフローチャートを用いて説明する。
(ステップS201)指示受付部100は、評判コーパスの生成の開始指示を受け付けたか否かを判断する。開始指示を受け付ければステップS202に行き、開始指示を受け付けなければステップS201に戻る。
(ステップS202)評価対象取得部104は、カウンタiに1を代入する。
(ステップS203)評価対象取得部104は、評判コーパス生成のために情報を取得する対象の文章群の中に、i番目の文章群が存在するか否かを判断する。i番目の文章群が存在すればステップS204に行き、i番目の文章群が存在しなければ処理を終了する。
(ステップS204)評価対象取得部104は、i番目の文章群の識別情報(URLや、ファイル名など)と、文章群の種類を取得する。文章群の種類は、少なくともHTMLなどのタグで構造化されている文章群か、構造化されていない文章群かを示す情報である。文章群の種類は、例えば、ブログ、電子メール、SNS(ソーシャルネットワークサービスの文章)等を識別する情報であっても良い。この場合、ブログなどは、構造化されている文章群であると認識される。なお、文章群の識別情報が文章群の種類を示す情報である場合もあり得る。かかる場合、評価対象取得部104は、i番目の文章群の識別情報(URLや、ファイル名など)を取得する。
(ステップS205)評価対象取得部104は、ステップS204で取得した文章群の種類から、i番目の文章群が、構造化されている文章群であるか否かを判断する。構造化されている文章群であればステップS206に行き、構造化されている文章群でなければステップS207に行く。なお、ここで構造化されている文章群であれば、ステップS206に移行したが、他の判断基準で、ステップS206に移行しても良い。他の判断基準とは、ブログであること、ブログのうちの特定のURL(予め決められたURL)で特定されるブログであること、などである。
(ステップS206)解析対象文取得部108は、文章群格納部103の文章群情報が有する識別情報と対になる抽出情報を読み出し、当該抽出情報を用いて、文章群情報が有する文章群から、解析対象の1以上の文(これも文章群、という)を取得する。解析対象の文とは、評判コーパスを生成する元になる文である。解析対象文取得処理について、図3のフローチャートを用いて説明する。
(ステップS207)評価対象取得部104は、評判コーパスを生成する元になる文章群から、評価対象などの情報を取得する。評価対象などの情報を取得する評価対象等取得処理について、図4から図8のフローチャートを用いて説明する。
(ステップS208)評価対象取得部104は、カウンタiを1、インクリメントする。ステップS203に戻る。
なお、図2のフローチャートにおいて、解析対象文取得処理は必須ではない。また、文章群は、1でも、2以上でも良い。
次に、ステップS206の解析対象文取得処理について、図3のフローチャートを用いて説明する。
(ステップS301)解析対象文取得部108は、識別情報に対応する抽出情報を、抽出タグ情報格納部107から検索する。例えば、解析対象文取得部108は、取得している識別情報が管理されているか否かを検索する。
(ステップS302)解析対象文取得部108は、抽出タグ情報格納部107に、取得している識別情報に対応する抽出情報が存在するか否かを判断する。抽出情報が存在すればステップS303に行き、抽出情報が存在しなければステップS305に行く。
(ステップS303)解析対象文取得部108は、抽出タグ情報格納部107から、識別情報に対応する抽出情報を読み出す。
(ステップS304)解析対象文取得部108は、ステップS303で取得した抽出情報を用いて、当該抽出情報で特定される1以上の文を、文章群から抽出する。例えば、抽出情報が「タグ<XXX>」である場合、解析対象文取得部108は、文章群から、タグ<XXX>と、タグ</XXX>で囲まれている文(情報)を読み出し、メモリ上に配置する。かかるメモリ上に配置した1以上の文が、解析対象文である。なお、解析対象文取得部108は、取得した情報からタグを除いて、文のみを取得することは好適である。上位処理にリターンする。
(ステップS305)解析対象文取得部108は、i番目の全文章を解析対象文として取得する。上位処理にリターンする。なお、例えば、文章群がHTMLファイルである場合、解析対象文取得部108は、全文章中からタグを除いたテキストファイルに変換することは好適である。
次に、ステップS207の評価対象等取得処理について、図4から図8のフローチャートを用いて説明する。
(ステップS401)評価対象取得部104は、カウンタiに1を代入する。
(ステップS402)評価対象取得部104は、解析対象の文章群の中に、i番目の文が存在するか否かを判断する。i番目の文が存在すればステップS403に行き、i番目の文が存在しなければ上位処理にリターンする。
(ステップS403)評価対象取得部104は、文章群の中の、i番目の文を読み出し、メモリ上に配置する。
(ステップS404)評価対象取得部104の文分割制御手段1042の要素分割手段10421は、カウンタjに1を代入する。
(ステップS405)要素分割手段10421は、ステップS403でメモリ上に配置した文の中に、j番目の文字が存在するか否かを判断する。j番目の文字が存在すればステップS406に行き、j番目の文字が存在しなければステップS416に行く。
(ステップS406)要素分割手段10421は、ステップS402でメモリ上に配置した文の中の、j番目の文字から(j+n)番目の文字までの文字列を取得し、バッファ上に置く。nは、固定の数であり、例えば、「5」である。なお、処理対象の文に、j番目の文字から(j+n)番目の文字まで存在しない場合、要素分割手段10421は、j番目の文字から文の最終文字までを取得し、バッファ上に置く。つまり、要素分割手段10421は、j番目の文字から(j+n)番目以下の文字までの文字列を取得し、バッファ上に置く。
(ステップS407)要素分割手段10421は、ステップS406でバッファ上に配置した文字列を、辞書情報格納手段1041に検索しにいく。
(ステップS408)要素分割手段10421は、ステップS407における検索結果において、ステップS406でバッファ上に配置した文字列が、辞書情報格納手段1041に存在したか否かを判断する。文字列が存在すればステップS413に行き、文字列が存在しなければステップS409に行く。なお、文字列が存在する場合とは、バッファ上に配置した文字列と一致する文字列が、辞書情報が有する第一文字列に存在する場合である。
(ステップS409)要素分割手段10421は、ステップS406でバッファ上に配置した文字列の長さが、1文字であるか否かを判断する。1文字であればステップS411に行き、1文字でなければステップS410に行く。
(ステップS410)要素分割手段10421は、ステップS406でバッファ上に配置した文字列から最後の文字を削除し、一文字少なくして、j番目から文字列を取得し、バッファ上に配置する。なお、要素分割手段10421は、単に、バッファ上の最終文字を消去するだけでも良い。ステップS407に戻る。
(ステップS411)要素分割手段10421は、j番目の文字に未知語であることを示す情報である「未知語」フラグを付与する。「「未知語」フラグを付与する」とは、j番目の文字が他の文字または文字列と区別できれば良く、例えば、他の文字または文字列に何らかのフラグを付与し、未知語であるj番目の文字には、何も付与しなくても良い。さらに、未知語を格納するバッファがあり、そのバッファに未知語であるj番目の文字を書き込む処理も、「未知語」フラグを付与する処理とする。
(ステップS412)要素分割手段10421は、カウンタjを1、インクリメントする。ステップS405に戻る。
(ステップS413)要素分割手段10421は、バッファ上に配置した文字列と一致する第一文字列と対になる機能語情報、前接続記号、および後接続記号を、辞書情報格納手段1041から読み出し、メモリ上に配置する。
(ステップS414)要素分割手段10421は、バッファ上に配置した文字列に対して、ステップS412で読み出した機能語情報、前接続記号、および後接続記号を付与する。
(ステップS415)要素分割手段10421は、カウンタjに、「j+文字列の文字数」を代入する。ステップS405に戻る。なお、「文字列の文字数」の「文字列」は、バッファ上に配置した文字列である。
(ステップS416)要素連結手段10422は、要素分割手段10421が分割した文字列のうち、連結可能な文字列を連結する。かかる連結処理について、図5のフローチャートを用いて、詳細に説明する。
(ステップS417)文字列取得手段10423は、要素連結手段10422が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する。かかる処理(文分割処理、という)について、図6のフローチャートを用いて、詳細に説明する。
(ステップS418)文字列取得手段10423は、ステップS417で取得した2以上の区切られた各第二文字列と、各第二文字列の種類を特定する情報を対にして、メモリ上に配置する。かかるメモリ配置処理について、図8のフローチャートを用いて、詳細に説明する。
(ステップS419)評価文蓄積部106は、ステップS418でメモリ上に配置された、各第二文字列と、各第二文字列の種類を特定する情報を用いて、評価対象情報を蓄積する条件に合致するか否かを判断する。蓄積する条件に合致する場合とは、例えば、ステップS418でメモリ上に配置された、第二文字列の種類として、「主題」と「状態」を有し、かつ、「状態」に対応する第二文字列が、評価情報格納部101に格納されている評価語を含む場合、などである。
(ステップS420)評価文蓄積部106は、ステップS418でメモリ上に配置された、各第二文字列と、各第二文字列の種類を特定する情報を用いて、評価対象情報を構成する。評価対象情報構成処理について、図8のフローチャートを用いて説明する。
(ステップS421)評価文蓄積部106は、ステップS420で評価対象情報を構成できたか否かを判断する。評価対象情報を構成できればステップS421に行き、評価対象情報を構成できなければ、ステップS423に行く。なお、評価対象情報を構成できたと判断する場合とは、例えば、第二文字列の種類として、「主題」と「状態」の第二文字列として有する場合、「副題」と「状態」の第二文字列として有する場合などである。
(ステップS422)評価文蓄積部106は、ステップS420で構成した評価対象情報を、評価対象情報格納部102に蓄積する。
(ステップS423)評価対象取得部104は、カウンタiを1、インクリメントする。ステップS402に戻る。
次に、ステップS416の連結処理について、図5のフローチャートを用いて、詳細に説明する。
(ステップS501)要素連結手段10422は、要素分割手段10421が未知語フラグ(未知語情報の一種)を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成する。また、要素連結手段10422は、要素分割手段10421が未知語フラグを付与した連続する未知語であり、ひらがなではない文字を連結し文字列を構成する。
(ステップS502)要素連結手段10422は、ステップS501で連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与する。まとまり情報は、機能語情報の一種である。まとまり情報は、文字列に付与される未知語フラグでも良い。
(ステップS503)要素連結手段10422は、カウンタiに1を代入する。
(ステップS504)要素連結手段10422は、処理対象の文中に、(i+1)番目の、まとめられた文字列(1文字の場合もある)が存在するか否かを判断する。(i+1)番目の文字列が存在すればステップS505に行き、(i+1)番目の文字列が存在しなければ上位処理にリターンする。
(ステップS505)要素連結手段10422は、i番目の文字列の後接続記号と、(i+1)番目の文字列の前接続記号を読み出し、メモリ上に配置する。なお、i番目の文字列の後接続記号は、i番目の文字列の最後の第一文字列と対になる後接続記号である。また、(i+1)番目の文字列の前接続記号は、(i+1)番目の文字列の先頭の第一文字列と対になる前接続記号である。
(ステップS506)要素連結手段10422は、ステップS505で読み出したi番目の文字列の後接続記号と、(i+1)番目の文字列の前接続記号から、i番目の文字列と(i+1)番目の文字列が連結可能であるか否かを判断する。なお、2つの連続する文字列が連結可能であるか否かは、前出の後接続記号と、後出の前接続記号から判断可能であり、要素連結手段10422は、例えば、連結可能な2つの文字列の後接続記号と前接続記号の組の情報(ルール)を保持している。
(ステップS507)要素連結手段10422は、ステップS506における判断結果が、連結可能である、との判断であればステップS508に行き、連結可能でない、との判断であればステップS509に行く。
(ステップS508)要素連結手段10422は、i番目の文字列と、(i+1)番目の文字列を連結する。文字列の連結とは、連結した文字列をバッファに書き込む処理でも良いし、2つの文字列をリンク付けする処理等でも良い。
(ステップS509)要素連結手段10422は、カウンタiを1、インクリメントする。ステップS504に行く。
次に、ステップS417の文分割処理について、図6のフローチャートを用いて、詳細に説明する。
(ステップS601)文字列取得手段10423は、カウンタiに1を代入する。
(ステップS602)文字列取得手段10423は、処理対処の文中に、i番目の第二文字列が存在するか否かを判断する。i番目の第二文字列が存在すればステップS603に行き、i番目の第二文字列が存在しなければ上位処理にリターンする。
(ステップS603)文字列取得手段10423は、i番目の第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、各第二文字列の種類を特定する情報を決定する。具体的には、第二文字列の種類は、例えば、「主題」、「副題」、「動作」、または「状態」であり、第二文字列の最後尾の第一文字列に対応する機能語情報が「動作」または「状態」であれば、第二文字列の種類は「動作」または「状態」であると、文字列取得手段10423は決定する。また、第二文字列の最後尾の第一文字列に対応する後接続記号が「主題」または「副題」を示す記号である場合は、第二文字列の種類は「主題」または「副題」であると、文字列取得手段10423は決定する。そして、文字列取得手段10423は、i番目の第二文字列と、第二文字列の種類を特定する情報を取り出し、メモリ上に配置する。
(ステップS604)文字列取得手段10423は、カウンタiを1、インクリメントする。ステップS602に戻る。
次に、ステップS418のメモリ配置処理について、図7のフローチャートを用いて、詳細に説明する。
(ステップS701)文字列取得手段10423は、出力する文構造の情報を取得する。出力する文構造の情報は、例えば、文字列取得手段10423があらかじめ格納しており、この情報を文字列取得手段10423が読み出す。また、出力する文構造の情報とは、例えば、「主題,副題,動作|状態」である。これは、「主題を示す文字列」、「副題を示す文字列」,「動作を示す文字列」または「状態を示す文字列」の順で出力することを示す。「主題」、「副題」、「動作」、「状態」などは、文中の文字列の機能や、意義などを示すことを示す。また、「主題」、「副題」、「動作」、「状態」などを、以下、適宜、文要素という。また、出力する文構造の情報の他の例は、「主題,状態」である。これは、「主題を示す文字列」、「状態を示す文字列」の順で出力することを示す。
(ステップS702)文字列取得手段10423は、カウンタiに1を代入する。
(ステップS703)文字列取得手段10423は、ステップS701で読み出した文構造の情報に、i番目の文要素が存在するか否かを判断する。i番目の文要素が存在すればステップS704に行き、i番目の文要素が存在しなければ上位処理にリターンする。
(ステップS704)文字列取得手段10423は、i番目の文要素(例えば、「主題」)の情報を読み出し、当該文要素に対応する種類(例えば、「主題」)を示す第二文字列を検索する。
(ステップS705)文字列取得手段10423は、文要素に対応する種類(例えば、「主題」)を示す第二文字列が存在すればステップS706に行き、存在しなければステップS707に行く。
(ステップS706)文字列取得手段10423は、文要素に対応する種類(例えば、「主題」)を示す第二文字列を取得し、当該第二文字列と、文要素に対応する種類を対にしてバッファに追記する。
(ステップS707)文字列取得手段10423は、カウンタiを1、インクリメントする。ステップS703に戻る。
なお、図7のフローチャートにおいて、文構造の情報に従って、第二文字列の順序を入れ替えてメモリ上に配置したが、かかる文構造の情報に従って第二文字列の順序を入れ替える処理は必須の処理ではない。第二文字列と、その種類を対にして記憶すれば良い。
次に、ステップS420の評価対象情報構成処理について、図8のフローチャートを用いて、詳細に説明する。
(ステップS801)評価対象取得手段1043は、文分割制御手段1042が取得した第二文字列の種類から評価の対象を含む第二文字列を特定し、当該第二文字列から評価対象を取得する。通常、評価対象取得手段1043は、第二文字列の種類「主題」に対応する第二文字列が有する用語を、評価対象として取得する。ただし、評価対象取得手段1043は、第二文字列の種類「副題」に対応する第二文字列が有する用語を、評価対象として取得しても良い。
(ステップS802)評価語取得手段1044は、ステップS801で取得した評価対象を含む第二文字列を有する文中の他の第二文字列の種類を用いて評価語を含み得る第二文字列を特定し、当該第二文字列が有する評価語を評価情報格納部101から検索し、取得する。まず、評価語取得手段1044は、通常、第二文字列の種類「状態」に対応する第二文字列を取得する。次に、評価語取得手段1044は、当該第二文字列をキーとして、評価情報格納部101を検索し、一致する評価語を取得する。
(ステップS803)評価語取得手段1044は、ステップS802で、評価情報格納部101に、当該第二文字列に一致する評価語を取得できたか否かを判断する。評価語を取得できればステップS804に行き、評価語を取得できなければ上位処理にリターンする。評価語を取得できなない場合、評価対象情報を構成できなかったこととなる。かかる場合、例えば、評価対象情報を構成できなかった旨のエラーコードをリターンする。
(ステップS804)文取得部105は、評価対象取得部104が取得した評価語と、評価対象を含む文を、文章群から取得し、メモリ上に配置する。
(ステップS805)評価対象取得部104は、ステップS804で取得された文の識別情報を取得し、メモリ上に配置する。
(ステップS806)評価対象取得部104は、ステップS804で取得された文の、文章群中での位置を示す位置情報(例えば、ファイルの先頭からのオフセット、文の先頭の行番号など)を取得し、メモリ上に配置する。
(ステップS807)評価文蓄積部106は、ステップS801からステップS806で取得された各種情報を用いて、評価対象情報を構成する。上位処理にリターンする。
以下、本実施の形態における評判コーパス生成装置の具体的な動作について説明する。
今、評価情報格納部101は、図9に示す評価情報管理表を保持している。評価情報管理表は、ここでは、「評価語」の属性値を有するレコードを1以上格納している。本評価情報管理表において、例えば、「評価語」と「スコア」を有するレコードを1以上格納していても良い。
また、文章群格納部103は、いわゆるブログ、電子メール、SNS、Voip、メタバース、IMなどの情報である文章群を、1種以上、格納している。また、ブログは、1以上の人が作成したブログであり、2以上の図示しないWeb上のサーバ装置に格納されていても良い。また、文章群格納部103が格納している文章群の一種のブログの例を、図10に示す。また、文章群格納部103が格納している電子メールファイル「c:\ Documents_and_Settings\usrA\mail\送信トレイ.dbx」の例を図11に示す。
また、評価対象取得部104は、図12に示す文章群所在場所情報管理表を保持している。文章群所在場所情報管理表は、「ID」「文章群の種類」「所在情報」「構造化文章群」を有する。「所在情報」は、対応する文章群の種類に対応する、1以上の文章群の所在場所を示す情報である。文章群の種類がブログの場合は、「所在情報」は、例えば、URLである。また、文章群の種類が電子メールであれば、「所在情報」は、例えば、ファイル名である。また、文章群の種類がSNSの場合は、「所在情報」は、例えば、SNSで入力された情報が記録されているファイルのURLと、書き込むユーザのID(識別子)である。文章群の種類がVoip、メタバース、IMなどの場合も、「所在情報」は、例えば、Voip等で入力された情報が記録されているファイルのURLと、書き込むユーザのID(識別子)である。「構造化文章群」は、対応する文章群が、構造化されているか否かを判断する。文章群が構造化されている文章群である場合、属性値は「1」であり、文章群が構造化されていない場合、属性値は「0」である。なお、構造化とは、ここでは、タグが付与されていることを示す。
また、抽出タグ情報格納部107には、図13に示す抽出タグ情報管理表を格納している。抽出タグ情報管理表は、識別情報と抽出情報を有する抽出タグ情報を1以上格納している。ここでは、識別情報はURLである。抽出情報は、開始タグの一部分であり、かかる文字列を有する開始タグから、対応する終了タグ(ここでは、</div>)までの文が抽出されることとなる。抽出タグ情報管理表は、図13においては、識別情報ごとに保持しているが、文章群の種類(ブログ、SNSなど)ごとに保持されていても良い。
また、辞書情報格納手段1041は、図14に示す辞書情報管理表を格納している。辞書情報管理表は、「第一文字列」「前接続記号」「後接続記号」「機能語情報」の属性を有するレコードを1以上格納している。
図14の「前接続記号」の「−&」は、前に、未知語情報で識別される未知語や、「object」で識別される対象物などが連結されることを示す。「前接続記号」は、他にも「&&」などがあり、「&&」は、前に、「名前」や、未知語や、「object」で識別される対象物などが連結されることを示す。「名前」とは、登録している人や物などの名前である。
また、「後接続記号」の「s%」は、区切りになり得て、「副題」となり得ることを示す。また、「後接続記号」の「&&」は、後に、「名前」や、未知語情報で識別される未知語や、「object」で識別される対象物などが連結されることを示す。また、「後接続記号」の「m%」は、区切りになり得て、「主題」となり得ることを示す。また、「後接続記号」の「n%」は、区切りになり得て、「主題」となり得ることを示す。「m%」と「n%」は、両方とも「主題」となり得るが、「m%」の方が主題になる優先度は高い、ことを意味する。また、「後接続記号」の「−−」は、「action」で識別される文字列が連結されることを示す。また、「後接続記号」の「%=」は、区切りになり得て、かつ、「object」で識別される対象物や「名前」などが連結されることを示す。また、「後接続記号」の「o%」は、区切りになり得て、「準主題(または副題)」となり得ることを示す。また、「後接続記号」の「%%」は、強制的な区切りであることを示す。
また、「機能語情報」の「object」は、対象物を示す。また、「機能語情報」の「action」は、動作を示す。さらに、「機能語情報」の「state」は、状態を示す。
かかる状況において、ユーザは、評判コーパス生成装置1に、処理の開始指示を入力した、とする。すると、指示受付部100は、評判コーパスの生成の開始指示を受け付ける。
次に、評価対象取得部104は、図12に示す文章群所在場所情報管理表から、1番目の文章群の種類「ブログ」に対応する1番目の所在情報(識別情報)「http://www.お店紹介.co.jp/」を読み出し、メモリ上に配置する。そして、評価対象取得部104は、URL「http://www.お店紹介.co.jp/」を用いて、ブログを取得し、文章群格納部103に少なくとも一時的に格納する。このブログの内容は、図10に示している。
次に、評価対象取得部104は、取得した文章群の種類から、1番目の文章群「http://www.お店紹介.co.jp/」の「構造化文章群」が「1」であるので、構造化されている文章群であると、判断する。
次に、解析対象文取得部108は、識別情報「http://www.お店紹介.co.jp/」に対応する抽出情報「<div class=ebody」を、図13の抽出タグ情報管理表から取得する。そして、解析対象文取得部108は、取得した抽出情報「<div class=ebody」を用いて、当該抽出情報で特定される1以上の文「店舗Xは、おしゃれだ。店舗Xが、テレビで評判だ。・・・店舗Xは、おいしいんだ。」を、URL「http://www.お店紹介.co.jp/」の文章群(図10の「ID=1」の文章群)から抽出する。
次に、評価対象取得部104は、評判コーパスを生成する元になる1以上の文「店舗Xは、おしゃれだ。店舗Xが、テレビで評判だ。・・・店舗Xは、おいしいんだ。」から、以下のように、評価対象などの情報を取得する。かかる評価対象の取得までの自然言語処理の例を、図15の文の処理経過を示す図を用いて説明する。
つまり、評価対象取得部104は、解析対象の文章群の中の1番目の文「店舗Xは、おしゃれだ。」を取得する。評価対象取得部104の文分割制御手段1042の要素分割手段10421は、以下のように、読み出した各文を分割する。まず、要素分割手段10421は、文「店舗Xは、おしゃれだ。」に対して、以下の分割処理を行う。要素分割手段10421は、文「店舗Xは、おしゃれだ。」の中の、1番目の文字から6番目(上記の「n」は「5」である)の文字までの文字列「店舗Xは、お」を取得し、バッファ上に置く(図15の(1))。
そして、要素分割手段10421は、文字列「店舗Xは、お」を、辞書情報格納手段1041に検索しにいく。しかし、文字列「店舗Xは、お」に合致する第一文字列が、図14の辞書情報管理表に存在しないので、要素分割手段10421は、先の文字列より1文字少ない文字列「店舗Xは、」を構成する。そして、要素分割手段10421は、文字列「店舗Xは、」をバッファ上に置く(図15の(2))。そして、同様に、要素分割手段10421は、文字列「店舗Xは、」を、辞書情報格納手段1041に検索しにいく。しかし、文字列「店舗Xは、」に合致する第一文字列が、図14の辞書情報管理表に存在しないので、要素分割手段10421は、先の文字列より1文字少ない文字列「店舗Xは」を構成し、バッファ上に置く(図15の(3))。そして、要素分割手段10421は、文字列「店舗Xは」を、辞書情報格納手段1041に検索しにいく。同様に、文字列「店舗Xは」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報格納手段1041に検索しにいく(図15の(4)から(6))。そして、要素分割手段10421は、最後の文字「店」も図14の辞書情報管理表に存在しない、と判断する。そして、要素分割手段10421は、文字「店」に、未知語であることを示す情報である「未知語」フラグを付与する(図15の(7))。なお、ここでの「未知語」フラグは、情報「未知語」である。
次に、要素分割手段10421は、処理対象の文字列の先頭のポインタを1ずらす。そして、要素分割手段10421は、2番目の文字から6文字分の文字列「舗Xは、おし」を読み出し、バッファに配置する(図15の(8))。そして、同様に、要素分割手段10421は、文字列「舗Xは、おし」を、辞書情報格納手段1041に検索しにいく。同様に、文字列「舗Xは、おし」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報格納手段1041に検索しにいく(図15の(9)から(13))。そして、要素分割手段10421は、最後の文字「舗」も図14の辞書情報管理表に存在しない、と判断する。そして、要素分割手段10421は、文字「舗」に、未知語であることを示す情報である「未知語」フラグを付与する(図15の(14))。
次に、要素分割手段10421は、処理対象の文字列の先頭のポインタを1ずらす。そして、要素分割手段10421は、3番目の文字から6文字分の文字列「Xは、おしゃ」を読み出し、バッファに配置する(図15の(15))。そして、同様に、要素分割手段10421は、文字列「Xは、おしゃ」を、辞書情報格納手段1041に検索しにいく。同様に、文字列「Xは、おしゃ」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報格納手段1041に検索しにいく(図15の(9)から(13))。そして、要素分割手段10421は、最後の文字「X」も図14の辞書情報管理表に存在しない、と判断する。そして、要素分割手段10421は、文字「X」に、未知語であることを示す情報である「未知語」フラグを付与する(図15の(21))。
次に、要素分割手段10421は、処理対象の文字列の先頭のポインタを1ずらす。そして、要素分割手段10421は、4番目の文字から6文字分の文字列「は、おしゃれ」を読み出し、バッファに配置する(図15の(22))。同様に、文字列「は、おしゃれ」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報格納手段1041に検索しにいく(図15の(23)から(27))。そして、要素分割手段10421は、最後の文字「は」は図14の辞書情報管理表に存在する、と判断する。そして、要素分割手段10421は、バッファ上に配置した文字列と一致する第一文字列「は」と対になる前接続記号「−&」、後接続記号「m%」、および機能語情報「object」を、辞書情報格納手段1041から読み出し、メモリ上に配置する。そして、要素分割手段10421は、バッファ上に配置した文字列「は」に対して、読み出した前接続記号「−&」、後接続記号「m%」、および機能語情報「object」を付与する(図15の(28))。
以上の処理を繰り返し、処理対象の文「店舗Xは、おしゃれだ。」について、図15の(x)のようなデータを得る。つまり、「店」「舗」「X」「お」「し」「ゃ」「れ」に対して、「未知語」が付与される。また、「は」に対して、「−&:m%:object」が付与される。また、「、」「。」に対して、「:%%:」が付与される。「:%%:」は、後接続記号が「%%」であることを示す。後接続記号「%%」は、無条件に、後ろが区切られることを示す。さらに、「だ」に対して、「−&:%−:state」が付与される(図15の(x))。
次に、要素連結手段10422は、要素分割手段10421が未知語フラグ「未知語」を付与した連続する未知語であり、ひらがなではない文字「店」「舗」「X」を連結し文字列「店舗X」を構成する。また、要素連結手段10422は、要素分割手段10421が未知語フラグ「未知語」を付与した連続する未知語であり、ひらがなの連続する文字「お」「し」「ゃ」「れ」を連結した文字列「おしゃれ」を構成する。そして、要素連結手段10422は、連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報(ここでは、「未知語」)を付与し、バッファに書き込む。バッファ内の情報は、図15の(x+1)である。
次に、要素連結手段10422は、図15(x+1)の各前後するまとまりの文字列(例えば、「私」と「と」)が連結するか否かを判断し、連結するものは連結させる。
例えば、「店舗X」と「は」は、「店舗X」が未知語で、「は」の前接続記号「−&」により、要素連結手段10422は、連結すると判断する。なぜなら、前接続記号「−&」は、前の未知語と連結するからである。そして、要素連結手段10422は、「店舗Xは」に対して、「:m%:object」を付与する(図15(x+2)参照)。「:m%:object」は、前接続記号はなし、後接続記号は「m%」、機能語情報は「object」であることを示す。
また、要素連結手段10422は、「店舗Xは」と「、」は連結しない、と判断する。「、」は、無条件に、後ろが区切られる記号であり、前の文字列とは結合しない、とする。
そして、要素連結手段10422は、「おしゃれ」と「だ」は連結する、と判断し、連結させる。つまり、要素連結手段10422は、文字列「おしゃれだ」を構成し、かつ、「:%−:state」を付与する(図15(x+2)参照)。
そして、要素連結手段10422は、「おしゃれだ」と「。」は連結しない、と判断する。「。」は、無条件に、後ろが区切られる記号であり、前の文字列とは結合しない、とする。
以上の処理により、要素連結手段10422は、2つの第二文字列を得る(図15(x+2)参照)。
次に、文字列取得手段10423は、1番目の第二文字列「店舗Xは」を取得し、当該第二文字列の最後尾の第一文字列「は」に対応する機能語情報「object」または後接続記号「m%」から、第二文字列の種類を「主題」であると、決定する。なお、ここでは、文字列取得手段10423は、後接続記号「m%」から、第二文字列「店舗Xは」の種類を「主題」であると、決定する(図15の(x+3))。
次に、文字列取得手段10423は、2番目の第二文字列「おしゃれだ」を取得し、当該第二文字列の最後尾の第一文字列「だ」に対応する機能語情報「state」または後接続記号「%−」から、第二文字列の種類を「状態」であると、決定する。なお、ここでは、文字列取得手段10423は、機能語情報「state」から、第二文字列「おしゃれだ」の種類を「状態」であると、決定する(図15の(x+3))。
次に、評価文蓄積部106は、メモリ上に配置された、各第二文字列と、各第二文字列の種類を特定する情報(図15の(x+3)の情報)を用いて、評価対象情報を蓄積する条件に合致するか否かを判断する。ここで、評価文蓄積部106は、図15の(x+3)の情報において、第二文字列の種類として、「主題」と「状態」を有し、かつ、「状態」に対応する第二文字列「おしゃれだ」が、評価情報格納部101に格納されている評価語「おしゃれ」を含むと判断し、評価対象情報を蓄積する条件に合致すると決定する。なお、評価文蓄積部106は、「状態」に対応する第二文字列「おしゃれだ」に対して、図9の評価情報管理表の各評価語をキーとして検索する、とする。
次に、評価対象取得部104は、以下のように、評価対象情報を構成する。つまり、評価対象取得部104の評価対象取得手段1043は、第二文字列の種類「主題」に対応する第二文字列「店舗Xは」が有する用語「店舗X」を、評価対象として取得する。第二文字列「店舗Xは」から、用語「店舗X」を取得するために、形態素解析の結果から名詞を取得しても良いし、ひらがなを除く文字列を取得しても良いし、連結された未知語(図15の(x+1)参照)を取得しても良いし、第二文字列「店舗Xは」から、機能語「は」を除く文字列を取得しても良い。
次に、評価語取得手段1044は、評価対象「店舗X」を含む第二文字列を有する文中の他の第二文字列の種類を用いて評価語を含み得る第二文字列「おしゃれだ」を特定し、当該第二文字列が有する評価語「おしゃれ」を評価情報格納部101から検索し、取得する。
次に、評価語取得手段1044は、評価情報格納部101に、当該第二文字列に一致する評価語を取得できたと判断し、文取得部105は、評価対象取得部104が取得した評価語「おしゃれ」と、評価対象「店舗X」を含む文「店舗Xは、おしゃれだ。」を、文章群から取得し、メモリ上に配置する。そして、評価対象取得部104は、取得された文「店舗Xは、おしゃれだ。」の識別情報「http://www.お店紹介.co.jp/」を取得し、メモリ上に配置する。
そして、評価対象取得部104は、取得された文「店舗Xは、おしゃれだ。」の、文章群中での位置を示す位置情報(例えば、ファイルの先頭からのオフセット「offset_1」)を取得し、メモリ上に配置する。次に、評価文蓄積部106は、取得された各種情報を用いて、評価対象情報を構成し、蓄積する。ここで、構成した評価対象情報の例は、図16の評価対象情報管理表の「ID=1」のレコードである。評価対象情報管理表は、「ID」と評価対象情報を有するレコードを1以上格納している。評価対象情報は、ここでは、「評価対象」「評価語」「文」「位置情報」「識別情報」を有する。なお、オフセットを取得する処理は、当該文の先頭文字のファイルの先頭からのバイト数を取得する処理であり、公知技術であるので、説明を省略する。
次に、文分割制御手段1042の要素分割手段10421は、2つ目の文「店舗Xが、テレビで評判だ。」を、上記の処理と同様に、以下のように分割する。つまり、要素分割手段10421は、文「店舗Xが、テレビで評判だ。」の中の、1番目の文字から6番目(上記の「n」は「5」である)の文字までの文字列「店舗Xが、テ」を取得し、バッファ上に置く(図17の(1))。
そして、要素分割手段10421は、文字列「店舗Xが、テ」を、辞書情報格納手段1041に検索しにいく。しかし、文字列「店舗Xが、テ」に合致する第一文字列が、図14の辞書情報管理表に存在しないので、要素分割手段10421は、先の文字列より1文字少ない文字列「店舗Xが、」を構成する。そして、要素分割手段10421は、文字列「店舗Xが、」をバッファ上に置く(図17の(2))。そして、同様に、要素分割手段10421は、文字列「店舗Xが、」を、辞書情報格納手段1041に検索しにいく。しかし、文字列「店舗Xが、」に合致する第一文字列が、図14の辞書情報管理表に存在しないので、要素分割手段10421は、先の文字列より1文字少ない文字列「店舗Xが」を構成し、バッファ上に置く(図17の(3))。そして、要素分割手段10421は、文字列「店舗Xが」を、辞書情報管理表に検索しにいく。同様に、文字列「店舗Xが」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報管理表に検索しにいく(図17の(4)から(6))。そして、要素分割手段10421は、最後の文字「店」も図14の辞書情報管理表に存在しない、と判断する。そして、要素分割手段10421は、文字「店」に、未知語であることを示す情報である「未知語」フラグを付与する(図17の(7))。なお、ここでの「未知語」フラグは、情報「未知語」である。
次に、要素分割手段10421は、処理対象の文字列の先頭のポインタを1ずらす。そして、要素分割手段10421は、2番目の文字から6文字分の文字列「舗Xが、テレ」を読み出し、バッファに配置する(図17の(8))。そして、同様に、要素分割手段10421は、文字列「舗Xが、テレ」を、辞書情報管理表に検索しにいく。同様に、文字列「舗Xが、テレ」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報管理表に検索しにいく(図17の(9)から(13))。そして、要素分割手段10421は、最後の文字「舗」も図14の辞書情報管理表に存在しない、と判断する。そして、要素分割手段10421は、文字「舗」に、未知語であることを示す情報である「未知語」フラグを付与する(図17の(14))。
次に、要素分割手段10421は、処理対象の文字列の先頭のポインタを1ずらす。そして、要素分割手段10421は、3番目の文字から6文字分の文字列「Xが、テレビ」を読み出し、バッファに配置する(図17の(15))。そして、同様に、要素分割手段10421は、文字列「Xが、テレビ」を、辞書情報管理表に検索しにいく。同様に、文字列「Xが、テレビ」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報管理表に検索しにいく(図17の(9)から(13))。そして、要素分割手段10421は、最後の文字「X」も図14の辞書情報管理表に存在しない、と判断する。そして、要素分割手段10421は、文字「X」に、未知語であることを示す情報である「未知語」フラグを付与する(図17の(21))。
次に、要素分割手段10421は、処理対象の文字列の先頭のポインタを1ずらす。そして、要素分割手段10421は、4番目の文字から6文字分の文字列「が、テレビで」を読み出し、バッファに配置する(図17の(22))。同様に、文字列「が、テレビで」に合致する第一文字列が、図14の辞書情報管理表に存在しない。そして、要素分割手段10421は、同様の処理により、1文字ずつ文字数を少なくして、辞書情報管理表に検索しにいく(図17の(23)から(27))。そして、要素分割手段10421は、最後の文字「が」は図14の辞書情報管理表に存在する、と判断する。そして、要素分割手段10421は、バッファ上に配置した文字列と一致する第一文字列「が」と対になる前接続記号「−&」、後接続記号「n%」、および機能語情報「object」を、辞書情報管理表から読み出し、メモリ上に配置する。そして、要素分割手段10421は、バッファ上に配置した文字列「が」に対して、読み出した前接続記号「−&」、後接続記号「n%」、および機能語情報「object」を付与する(図17の(28))。
以上の処理を繰り返し、処理対象の文「店舗Xが、テレビで評判だ。」について、図17の(x)のようなデータを得る。つまり、「店」「舗」「X」「テ」「レ」「ビ」「評」「判」に対して、「未知語」が付与される。また、「が」に対して、「−&:n%:object」が付与される。また、「、」「。」に対して、「:%%:」が付与される。また、「で」に対して、「−&:s%:object」が付与される。さらに、「だ」に対して、「−&:%−:state」が付与される(図17の(x))。
次に、要素連結手段10422は、要素分割手段10421が未知語フラグ「未知語」を付与した連続する未知語であり、ひらがなではない文字「店」「舗」「X」を連結し文字列「店舗X」を構成する。また、要素連結手段10422は、要素分割手段10421が未知語フラグ「未知語」を付与した連続する未知語であり、ひらがなではない文字「テ」「レ」「ビ」を連結し文字列「テレビ」を構成する。また、要素連結手段10422は、要素分割手段10421が未知語フラグ「未知語」を付与した連続する未知語であり、ひらがなではない文字「評」「判」を連結し文字列「評判」を構成する。そして、要素連結手段10422は、連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報(ここでは、「未知語」)を付与し、バッファに書き込む。バッファ内の情報は、図17の(x+1)である。
次に、要素連結手段10422は、図17(x+1)の各前後するまとまりの文字列(例えば、「店舗X」と「が」)が連結するか否かを判断し、連結するものは連結させる。
例えば、「店舗X」と「が」は、「店舗X」が未知語で、「が」の前接続記号「−&」により、要素連結手段10422は、連結すると判断する。そして、要素連結手段10422は、「店舗Xが」に対して、「:n%:object」を付与する(図17(x+2)参照)。「:n%:object」は、前接続記号はなし、後接続記号は「n%」、機能語情報は「object」であることを示す。
また、同様に、要素連結手段10422は、「テレビ」と「で」は連結する、と判断し、連結させる。つまり、要素連結手段10422は、文字列「テレビで」を構成し、かつ、「:s%:object」を付与する(図17(x+2)参照)。なお、図17(x+2)において、前接続記号が存在しないことを「−」で示している。
そして、同様に、要素連結手段10422は、「評判」と「だ」は連結する、と判断し、連結させる。つまり、要素連結手段10422は、文字列「評判だ」を構成し、かつ、「:%−:state」を付与する(図17(x+2)参照)。
以上の処理により、要素連結手段10422は、3つの第二文字列を得る(図17(x+2)参照)。
次に、文字列取得手段10423は、1番目の第二文字列「店舗Xが」を取得し、当該第二文字列の最後尾の第一文字列「が」に対応する機能語情報「object」または後接続記号「n%」から、第二文字列の種類を「主題」であると、決定する。なお、ここでは、文字列取得手段10423は、後接続記号「n%」から、第二文字列「店舗Xが」の種類を「主題」であると、決定する(図17の(x+3))。
次に、文字列取得手段10423は、2番目の第二文字列「テレビで」を取得し、当該第二文字列の最後尾の第一文字列「で」に対応する機能語情報「object」または後接続記号「s%」から、第二文字列の種類を「副題」であると、決定する。なお、ここでは、文字列取得手段10423は、後接続記号「s%」から、第二文字列「テレビで」の種類を「副題」であると、決定する(図17の(x+3))。
次に、文字列取得手段10423は、3番目の第二文字列「評判だ」を取得し、当該第二文字列の最後尾の第一文字列「だ」に対応する機能語情報「state」または後接続記号「%−」から、第二文字列の種類を「状態」であると、決定する。なお、ここでは、文字列取得手段10423は、機能語情報「state」から、第二文字列「評判だ」の種類を「状態」であると、決定する(図17の(x+3))。
次に、文字列取得手段10423は、メモリ上に配置する要素の順序を示す文構造「主題,状態」を読み出す。なお、文構造「主題,状態」は、あらかじめ文字列取得手段10423が保持している、とする。そして、文字列取得手段10423は、文構造「主題,状態」に従って、第二文字列「店舗Xが」「評判だ」をメモリ上に配置する。そして、文字列取得手段10423は、文要素に対応する種類の情報も、第二文字列と対にして、メモリ上に書き込む。そして、文字列取得手段10423は、「店舗Xが:主題,評判だ:状態」を得る。以上の処理により、文「店舗Xが、評判だ。」を、「主題」と「状態」に分割できた。
次に、評価文蓄積部106は、メモリ上に配置された、各第二文字列と、各第二文字列の種類を特定する情報(図17の(x+3)の情報)を用いて、評価対象情報を蓄積する条件に合致するか否かを判断する。ここで、評価文蓄積部106は、図17の(x+3)の情報において、第二文字列の種類として、「主題」と「状態」を有し、かつ、「状態」に対応する第二文字列「評判だ」が、評価情報格納部101に格納されている評価語のいずれも含まない、と判断し、評価対象情報を蓄積する条件に合致しない、と決定する。そして、評価文蓄積部106は、文「店舗Xが、評判だ。」に対する評価対象情報を蓄積しない。
さらに、評価対象取得部104等は、n個目の文「店舗Xは、おいしいんだ。」に対して、上記と同様の分割処理等を行う。まず、要素分割手段10421は、処理対象の文「店舗Xは、おいしいんだ。」について、図18の(x)のようなデータを得る。つまり、「店」「舗」「X」「お」「い」「し」「い」に対して、「未知語」が付与される。また、「は」に対して、「−&:m%:object」が付与される。また、「、」「。」に対して、「:%%:」が付与される。さらに、「んだ」に対して、「−&:s%:state」が付与される(図18の(x))。
次に、要素連結手段10422は、要素分割手段104281が未知語フラグ「未知語」を付与した連続する未知語であり、ひらがなではない文字「店」「舗」「X」を連結し文字列「店舗X」を構成する。また、要素連結手段10422は、要素分割手段10421が未知語フラグ「未知語」を付与した連続する未知語であり、ひらがなの連続する文字「お」「い」「し」「い」を連結した文字列「おいしい」を構成する。そして、要素連結手段10422は、連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報(ここでは、「未知語」)を付与し、バッファに書き込む。バッファ内の情報は、図18の(x+1)である。
次に、要素連結手段10422は、図18(x+1)の各前後するまとまりの文字列(例えば、「おいしい」と「んだ」)が連結するか否かを判断し、連結するものは連結させる。そして、要素連結手段10422は、図18(x+2)のデータを得て、当該データをメモリ上に配置する。以上の処理により、要素連結手段10422は、2つの第二文字列を得る(図18(x+2)参照)。
次に、文字列取得手段10423は、1番目の第二文字列「店舗Xは」を取得し、当該第二文字列の最後尾の第一文字列「は」に対応する機能語情報「object」または後接続記号「m%」から、第二文字列の種類を「主題」であると、決定する(図18の(x+3))。
次に、文字列取得手段10423は、2番目の第二文字列「おいしいんだ」を取得し、当該第二文字列の最後尾の第一文字列「んだ」に対応する機能語情報「state」または後接続記号「s%」から、第二文字列の種類を「状態」であると、決定する。なお、ここでは、文字列取得手段10423は、機能語情報「state」から、第二文字列「おいしいんだ」の種類を「状態」であると、決定する(図18の(x+3))。
次に、文字列取得手段10423は、「店舗Xは:主題,おいしいんだ:状態」を得て、メモリ上に書き込む。以上の処理により、文「店舗Xは、おいしいんだ。」を、「主題」と「状態」に分割できた。
次に、評価文蓄積部106は、メモリ上に配置された、各第二文字列と、各第二文字列の種類を特定する情報(図18の(x+3)の情報)を用いて、評価対象情報を蓄積する条件に合致するか否かを判断する。ここで、評価文蓄積部106は、図18の(x+3)の情報において、第二文字列の種類として、「主題」と「状態」を有し、かつ、「状態」に対応する第二文字列「おいしいんだ」が、評価情報格納部101に格納されている評価語「おいしい」を含むと判断し、評価対象情報を蓄積する条件に合致すると決定する。なお、評価文蓄積部106は、「状態」に対応する第二文字列「おいしいんだ」に対して、図9の評価情報管理表の各評価語をキーとして検索する、とする。
次に、評価対象取得部104は、以下のように、評価対象情報を構成する。つまり、評価対象取得部104の評価対象取得手段1043は、第二文字列の種類「主題」に対応する第二文字列「店舗Xは」が有する用語「店舗X」を、評価対象として取得する。第二文字列「店舗Xは」から、用語「店舗X」を取得するために、形態素解析の結果から名詞を取得しても良いし、ひらがなを除く文字列を取得しても良いし、連結された未知語(図18の(x+1)参照)を取得する等しても良い。
次に、評価語取得手段1044は、評価対象「店舗X」を含む第二文字列を有する文中の他の第二文字列の種類を用いて評価語を含み得る第二文字列「おいしいんだ」を特定し、当該第二文字列が有する評価語「おいしい」を評価情報格納部101から検索し、取得する。
次に、評価語取得手段1044は、評価情報格納部101に、当該第二文字列に一致する評価語を取得できたと判断し、文取得部105は、評価対象取得部104が取得した評価語「おいしい」と、評価対象「店舗X」を含む文「店舗Xは、おいしいんだ。」を、文章群から取得し、メモリ上に配置する。そして、評価対象取得部104は、取得された文「店舗Xは、おいしいんだ。」の識別情報「http://www.ぐるめ.co.jp/」を取得し、メモリ上に配置する。
そして、評価対象取得部104は、取得された文「店舗Xは、おいしいんだ。」の、文章群中での位置を示す位置情報(例えば、ファイルの先頭からのオフセット「offset_2」)を取得し、メモリ上に配置する。次に、評価文蓄積部106は、取得された各種情報を用いて、評価対象情報を構成する。ここで、構成した評価対象情報の例は、図16の評価対象情報管理表の「ID=2」のレコードである。
次に、評判コーパス生成装置1の評価対象取得部104は、図12に示す文章群所在場所情報管理表から、1番目の文章群の種類「ブログ」に対応する2番目の所在情報(識別情報)「http://www.ぐるめ.co.jp/」を読み出し、メモリ上に配置する。そして、評価対象取得部104は、URL「http://www.ぐるめ.co.jp/」を用いて、ブログを取得し、文章群格納部103に少なくとも一時的に格納する。このブログの内容は、図10に示している。
次に、評価対象取得部104は、取得した文章群の種類から、2番目の文章群「http://www.ぐるめ.co.jp/」の「構造化文章群」が「1」であるので、構造化されている文章群であると、判断する。
次に、解析対象文取得部108は、識別情報「http://www.ぐるめ.co.jp/」に対応する抽出情報「<div class=mainbody」を取得する。そして、解析対象文取得部108は、取得した抽出情報「<div class=mainbody」を用いて、当該抽出情報で特定される1以上の文「店舗Xは、あまり綺麗ではない。・・・店舗Xは、おいしい。」を、URL「http://www.ぐるめ.co.jp/」の文章群から抽出する。
次に、評価対象取得部104等は、評判コーパスを生成する元になる1以上の文「店舗Xは、あまり綺麗ではない。・・・店舗Xは、おいしい。」から、上記の処理と同様に、評価対象などの情報を取得する。つまり、文「店舗Xは、あまり綺麗ではない。」や「店舗Xは、おいしい。」に対して、評価対象取得部104は、上述した自然言語処理を行い、主題「店舗Xは」と状態「あまり綺麗ではない」、主題「店舗Xは」と状態「おいしい」を取得する(図19参照)。
また、文「店舗Xは、あまり綺麗ではない。」や「店舗Xは、おいしい。」に対して、上記と同様の処理を経過し、評価文蓄積部106は、図16の「ID=3」「ID=4」の評価対象情報を、評価対象情報格納部102に書き込む。
そして、1番目の文章群の種類の「ブログ」のすべての文章群の処理が完了し、次に、2番目の種類の文章群の処理に移行する、とする。つまり、評価対象取得部104は、図12に示す文章群所在場所情報管理表から、2番目の文章群の種類「電子メール」に対応する1番目の所在情報(識別情報)「c:\ Documents_and_Settings\usrA\mail\送信トレイ.dbx」を読み出し、メモリ上に配置する。
次に、評価対象取得部104は、取得した文章群の種類から、1番目の文章群「c:\Documents_and_Settings\usrA\mail\送信トレイ.dbx」の「構造化文章群」が「0」であるので、構造化されていない文章群であると、判断する。
次に、評価対象取得部104は、評判コーパスを生成する元になる電子メールの文章(図11参照)を取得する。なお、評価対象取得部104は、電子メールの文章群「c:\Documents_and_Settings\usrA\mail\送信トレイ.dbx」から、引用行以外の文章を取得することは好適である。引用行の文章は、本人が記載した文章ではなく、本人に対してメールを送付した他人が記載した文章である。引用行は、行の先頭の文字が、例えば、「<」「|」である行であり、評価対象取得部104は、かかる、予め決められた行の先頭の文字から始まる行を引用行として、除いて、電子メールの文章群から、引用行以外の文章を取得する。
そして、評価対象取得部104は、図11の文章群に含まれる一文、一文に対して、上述したような機能素解析の手法を用いた、自然言語処理を行う。例えば、評価対象取得部104等は、評判コーパスを生成する元になる文「店舗Xは、おいしいよ。」から、上記の処理と同様に、評価対象などの情報を取得する。つまり、文「店舗Xは、おいしいよ。」に対して、評価対象取得部104は、上述した自然言語処理を行い、主題「店舗Xは」と状態「おいしいよ」を取得する。
また、文「店舗Xは、おいしいよ。」に対して、上記と同様の処理を経過し、評価文蓄積部106は、図16の「ID=5」の評価対象情報を、評価対象情報格納部102に書き込む。
さらに、処理が進み、3番目の種類の文章群移行の文章群の処理に移行する。そして、文章群の取得する装置やフォルダなどの場所は異なるが、上記と同様の処理により、評価対象情報を、評価対象情報格納部102に書き込む。その書き込んだ評価対象情報の例は、図16の「ID=n」のレコードである。なお、SNSに書き込まれた文章は、SNSの運用のサーバ装置のURLやIPアドレス等、および文章を書き込んだユーザのIDにより、特定可能であり、評価対象取得部104は、かかる情報(例えば、URLとユーザID)を用いて、文章群を取得する。なお、文章群を特定する情報は、他の情報でも良い。
以上、本実施の形態によれば、ブログや、電子メールや、SNSなど、人手により書き込まれた1以上の種類の文章群から、検索エンジン(実施の形態4で説明)、ランキング出力(実施の形態5で説明)、仮想的なチャットシステム(実施の形態6で説明)などに利用できるコーパスを生成できる。
なお、本実施の形態における1種以上の文章群が、一人により、1以上の情報処理装置(電話などを含んでも良い)に入力された文章群である場合、その人の思想を示す情報(評価対象情報)が抽出できることとなる。そして、実施の形態4以降で述べるように、評価対象情報は、いわゆる検索エンジンや、ランキング出力や、仮想的なチャットシステムなどの種々のアプリケーションに利用され得る。かかる場合、例えば、本評判コーパス生成装置で蓄積された評判コーパスを利用する検索エンジン(実施の形態4で説明)は、あたかも上記一人の人に質問するようなものである。また、チャットシステム(実施の形態6で説明)は、あたかも当該人とチャットを楽しむようなものである。かかることは、他の実施の形態においても同様である。
また、本実施の形態によれば、評価対象情報は、文、および評価対象を有せば良い。かかることも、他の実施の形態においても同様である。
また、本実施の形態によれば、文章群は1種類以上であった。つまり、文章群は、ブログだけ、など、1種類だけでも良い。かかることも、他の実施の形態においても同様である。
また、本実施の形態において、ユーザごとに、ユーザID(番号、氏名など、ユーザを特定できる情報であれば何でも良い)と対にして評判コーパスを蓄積することは好適である。かかる処理により、後述する検索エンジンでは、ユーザIDを指定して検索エンジンを利用すれば、特定の人に質問できることになる。また、ユーザIDを指定して、特定の人と仮想的なチャットを楽しめる。かかることも、他の実施の形態においても同様である。
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における評判コーパス生成装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、記憶媒体に格納されている文章群から評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する評価対象取得部と、前記評価対象取得部が取得した評価語と、評価対象を含む文を、前記文章群から取得する文取得部と、前記文取得部が取得した文、および前記評価対象取得部が取得した評価対象を有する評価対象情報を、記憶媒体に蓄積する評価文蓄積部として機能させるためのプログラム、である。
また、上記プログラムにおける前記評価対象取得部は、第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、前記文章を構成する文から区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、前記文分割制御手段が取得した第二文字列の種類から評価の対象を含む第二文字列を特定し、当該第二文字列から評価対象を取得する評価対象取得手段と、前記評価対象を含む第二文字列を有する文中の他の第二文字列の種類を用いて評価語を含み得る第二文字列を特定し、当該第二文字列が有する評価語を前記評価情報格納部から検索し、取得する評価語取得手段を具備するプログラム、である。
また、上記プログラムにおける前記文分割制御手段は、前記文章を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数、取得する要素連結手段と、前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備するプログラム、である。
(実施の形態2)
本実施の形態において、ブログ等の個人情報群から、評判解析を行い、対象物と、対象物を評価している文を抽出し、蓄積する評判コーパス生成装置について説明する。本評判コーパス生成装置において、評価の良し悪しの程度を示すスコアも扱う。また、本実施の形態において、ブログ等の文章を自然言語処理して、評判解析を行う。その自然言語処理は、形態素解析を用いない、機能素解析という自然言語解析の手法を用いている。また、自然言語処理は、形態素解析やパターンマッチングの他、公知の手法を用いても良い。さらに、自然言語処理において、後続や前出の言い回し(「ない」「あまり」など)の表現も考慮した、精度の高い評価が行える。
図20は、本実施の形態における評判コーパス生成装置2のブロック図である。評判コーパス生成装置2は、指示受付部100、評価情報格納部200、評価対象情報格納部102、文章群格納部103、評価対象取得部104、文取得部105、評価文蓄積部106、抽出タグ情報格納部107、解析対象文取得部108、変更情報格納部201、スコア取得部202、評価算出部203、変更語取得部204、評価変更情報取得部205、変更スコア算出部206を具備する。
評価情報格納部200は、評価語とスコアを対に有する評価情報を格納し得る。スコアは、良し悪しの程度を示す情報である。評価情報格納部200は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
変更情報格納部201は、評価を変更するための情報である変更情報を1以上格納している。変更情報は、変更語と評価変更情報の対に有する情報である。変更語は、評価語に対する評価の変更を示す言い回しの用語である。変更語は、例えば、「でない」「じゃない」「とは言えない」「あまり」などである。つまり、「好き」というポジティブな評価語に「でない」という変更語が後続すると、評価はポジティブではなく、ネガティブとしなければならない。評価変更情報は、評価を変更するための情報である。また、具体的には、評価変更情報は、スコアを変更するための情報である、と言える。評価変更情報は、例えば、「−1」や「0.5」などの数値である。つまり、例えば、評価語「好き」に対して、スコア「+4」とする場合、変更語「でない」に対する評価変更情報は「−1」、変更語「あまり」に対する評価変更情報は「0.5」とする。そして、後述する変更スコア算出部206は、各数値を乗算し、「あまり好きでない」に対して、スコア「4×(−1)×(0.5)=−2」を算出する。ここで、「+5」は、非常にポジティブ、「−5」は非常にネガティブとして、「あまり好きでない」は、「−2」であり、若干、ネガティブ、ということになる。なお、変更語として、評価を強める語(例えば、「非常に」「かなり」)、評価を弱める語(例えば、「あまり」)、評価を逆転させる語(例えば、「でない」)、評価を無効にする語(例えば、「であるとは言えない。」)などの種類がある。そして、評価を強める語は、例えば、強くする度合いにより、「1」より大きな評価変更情報が与えられ、評価を弱める語は、例えば、弱くする度合いにより、「1」より小さな評価変更情報が与えられ、評価を逆転させる語は、「−1」が与えられる。変更情報格納部201は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
スコア取得部202は、評価対象取得部104が取得した文に含まれる評価語と対になるスコアを、評価情報格納部200から取得する。評価対象は、通常、上述した機能素解析により取得されるが、形態素解析を行い、形態素のうちの名詞を取得されるようにしても良い。スコア取得部202は、通常、MPUやメモリ等から実現され得る。スコア取得部202の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
評価算出部203は、評価対象取得部104が取得した同一の評価対象についての1以上のスコアを用いて、当該評価対象についての評価を算出する。また、評価算出部203は、評価対象取得部104が取得した同一の評価対象についての1以上のスコア、および変更スコア算出部206が算出した同一の評価対象についての1以上の新たなスコアを用いて、当該評価対象についての評価を算出する。評価算出部203は、通常、MPUやメモリ等から実現され得る。評価算出部203の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
変更語取得部204は、評価語から所定以内の文字数の距離内にある変更語を、評価語を含む文の中から取得する。所定以内の文字数は、例えば、前後、6文字以内である。変更語取得部204は、通常、MPUやメモリ等から実現され得る。変更語取得部204の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
評価変更情報取得部205は、変更語と対になる評価変更情報を、変更情報格納部201から取得する。評価変更情報取得部205は、通常、MPUやメモリ等から実現され得る。評価変更情報取得部205の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
変更スコア算出部206は、スコア取得部202が取得したスコアに対して、評価変更情報取得部205が取得した評価変更情報を用いて、スコアを変更し、新たなスコアを算出する。変更スコア算出部206が新たなスコアを算出するための演算式は、通常、予め、保持している。また、その演算式は、例えば、後述する乗算でも良いし、すべてのスコアを加算しても良いし、平均値を算出する式でも良いし、加重平均を算出する式等でも良い。つまり、その演算式は問わない。変更スコア算出部206は、通常、MPUやメモリ等から実現され得る。変更スコア算出部206の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、評判コーパス生成装置2の動作について説明する。評判コーパス生成装置2は、実施の形態1で述べた評判コーパス生成装置1と比較して、評価対象情報としてスコアを有する点が異なる。つまり、評判コーパス生成装置2において、評価語を含む文に対して、評価対象に対するポジティブ度、またはネガティブ度を示すスコアを取得し、または、スコアを算出する。以下、評判コーパス生成装置2の動作を説明するが、評判コーパス生成装置1の動作と異なる点のみについて説明する。評判コーパス生成装置2の動作のうち、評判コーパス生成装置1の動作と異なるのは、図2のフローチャートにおいては、ステップS207の評価対象等取得処理である。また、ステップS207の評価対象等取得処理の詳細を示す図4のフローチャートにおいて、評判コーパス生成装置2の動作のうち、評判コーパス生成装置1の動作と異なるのは、ステップS421の評価対象情報構成処理のみである。その評価対象情報構成処理について、図21から図22のフローチャートを用いて説明する。
(ステップS2101)スコア取得部202は、ステップS802で取得した評価語に対応するスコアを、評価情報格納部200から取得し、メモリ上に配置する。
(ステップS2102)変更語取得部204等は、スコアを変更する処理を行う。このスコア変更処理について、図22のフローチャートを用いて説明する。なお、後述するように、文の中に、変更語が存在しない場合は、スコア変更処理は行われない。
(ステップS2103)変更スコア算出部206は、算出したスコアを、メモリ上に一時格納する。
(ステップS2104)評価文蓄積部106は、ステップS801からステップS806で取得された各種情報、および取得されたスコアを用いて、評価対象情報を構成する。上位処理にリターンする。
次に、ステップS2102のスコア変更処理について、図22のフローチャートを用いて説明する。
(ステップS2201)変更語取得部204は、変更情報格納部201の変更情報が有する変更語の情報を用いて、評価語の前後の所定以内の文字数の距離内に、変更語が存在するか否かを判断する。
(ステップS2202)変更語取得部204は、ステップS2201で変更語が存在すると判断した場合はステップS2203に行き、存在しないと判断した場合は上位処理にリターンする。
(ステップS2203)変更語取得部204は、変更情報格納部201の変更情報が有する変更語にマッチする評価語の前後の所定以内の文字数の距離内の文字列をすべて取得し、メモリ上に配置する。
(ステップS2204)評価変更情報取得部1312は、ステップS2203で取得された1以上の変更語と対になる各評価変更情報を、変更情報格納部201から取得する。
(ステップS2205)変更スコア算出部206は、スコア取得部202が取得したスコアに対して、ステップS2204で取得した1以上の評価変更情報を用いて、スコアを変更し、新たなスコアを算出する。変更スコア算出部206は、例えば、「スコア×1番目の評価変更情報×2番目の評価変更情報×・・・×n番目の評価変更情報」により、新たなスコアを算出する。上位処理にリターンする。その際、変更語が存在する場合には新たなスコアを、または変更語が存在しない場合には元のスコアをリターンする。
なお、図22のフローチャートにおいて、変更語取得部204は、評価語の前後の所定以内の文字数の距離内に、変更語が存在するか否かを判断した。しかし、変更語の存在を検索する対象の文字列は、例えば、評価語が含まれる第二文字列など、他のアルゴリズムや、他の範囲でも良い。
また、上記のフローチャートにおいて、評価算出部203の総合スコアの算出する処理について述べなかったが、評価算出部203は、評価対象取得部104が取得した同一の評価対象についての1以上のスコアを用いて、当該評価対象についての評価を算出する処理を行うことは好適である。
以下、本実施の形態における評判コーパス生成装置2の具体的な動作について説明する。ここで、上述したように評判コーパス生成装置2は、実施の形態1で述べた評判コーパス生成装置1と比較して、評価対象情報としてスコアを有する点が異なるので、本具体例においても、スコアの取得と算出、およびスコアを含む評価対象情報の構成と蓄積等の処理について説明する。
今、評価情報格納部200は、図23に示す評価情報管理表を保持している。評価情報管理表は、「評価語」「スコア」の属性値を有するレコードを1以上格納している。本評価情報管理表において、例えば、評価語「良い」のスコアは「+3」、評価語「おしゃれ」のスコアは「+4」等である。
また、変更情報格納部201は、図24に示す変更情報管理表を格納している。変更情報管理表は、「変更語」「評価変更情報」の属性値を有するレコードを1以上格納している。本評価情報管理表において、「評価変更情報」は、スコアに対して乗算される数値である。
また、文章群格納部103は、いわゆるブログ、電子メール、SNS、Voip、メタバース、IMなどの情報である文章群を、1種以上、格納している。また、ブログは、1以上の人が作成したブログであり、2以上の図示しないWeb上のサーバ装置に格納されていても良い。また、文章群格納部103が格納している文章群の一種のブログの例を、図10に示す。また、文章群格納部103が格納している電子メールファイル「c:\ Documents_and_Settings\usrA\mail\送信トレイ.dbx」の例を図11に示す。
また、評価対象取得部104は、図12に示す文章群所在場所情報管理表を保持している。また、抽出タグ情報格納部107には、図13に示す抽出タグ情報管理表を格納している。さらに、辞書情報格納手段1041は、図14に示す辞書情報管理表を格納している。
以上の状況において、ユーザは、評判コーパス生成装置2に、処理の開始指示を入力した、とする。すると、指示受付部100は、評判コーパスの生成の開始指示を受け付ける。
その後、実施の形態1で説明した処理と同様の処理により、1番目の文章群「http://www.お店紹介.co.jp/」の第一文「店舗Xは、おしゃれだ。」を機能素解析の手法による自然言語処理を行い、図15の(x+3)に示すように、「主題」と「状態」を得ることができた。そして、評価文蓄積部106は、各第二文字列と、各第二文字列の種類を特定する情報(図15の(x+3)の情報)を用いて、評価対象情報を蓄積する、と判断する。
次に、評価対象取得部104は、以下のように、評価対象情報を構成する。なお、ここで、実施の形態1と異なる処理は、スコアを算出する処理である。以下、そのスコアを算出する処理について述べる。
つまり、スコア取得部202は、評価情報格納部200を検索し、評価語「おしゃれ」に対応するスコア「+4」を読み出し、メモリ上に配置する。
次に、スコア変更処理を行おうとするが、変更語が文「店舗Xは、おしゃれだ。」の中に含まれないので、スコアの変更処理は行われない。
そして、評価文蓄積部106は、「評価対象」「評価語」「スコア」「文」「位置情報」「識別情報」を有する評価対象情報を構成する。そして、評価文蓄積部106は、評価対象情報格納部102に蓄積する。ここで、構成した評価対象情報の例は、図25の評価対象情報管理表の「ID=1」のレコードである。評価対象情報管理表は、「ID」と評価対象情報を有するレコードを1以上格納している。評価対象情報は、ここでは、「評価対象」「評価語」「スコア」「文」「位置情報」「識別情報」を有する。
実施の形態1の処理と同様に、2つ目の文「店舗Xが、テレビで評判だ。」に対して、評価対象情報は蓄積されない。
次に、評価対象取得部104等は、n個目の文「店舗Xは、おいしいんだ。」に対して、上記と同様の分割処理等を行う。そして、「店舗Xは:主題,おいしいんだ:状態」が得られる。次に、スコア取得部202は、評価情報格納部200を検索し、評価語「おいしい」に対応するスコア「+4」を読み出し、メモリ上に配置する。
次に、スコア変更処理を行おうとするが、変更語が文「店舗Xは、おいしいんだ。」の中に含まれないので、スコアの変更処理は行われない。
そして、評価文蓄積部106は、図25の評価対象情報管理表の「ID=2」のレコードを構成し、蓄積する。
次に、実施の形態1で説明した処理に加えてスコアを取得する処理を行っていく、とする。そして、文「店舗Xは、あまり綺麗ではない。」の処理を行う、とする。つまり、上述した自然言語処理により、「主題」である第二文字列「店舗Xは」と、「状態」である第二文字列「あまり綺麗ではない」が得られる。次に、評価対象取得部104は、メモリ上に配置された情報から、文分割制御手段1042が取得した第二文字列の種類「主題」から評価の対象を含む第二文字列「店舗Xは」を特定し、当該第二文字列「店舗Xは」から評価対象「店舗X」を取得する。
次に、スコア取得部202は、評価対象を含む第二文字列「店舗X」を有する文中の他の特定の第二文字列の種類(例えば、「状態」)に対応する第二文字列「あまり綺麗ではない」を取得する。
次に、スコア取得部202は、取得した第二文字列「あまり綺麗ではない」中に、評価語を含むか否か決定するために、評価情報格納部200が有する1以上の評価語を各々読み出し、当該各評価語をキーとして、第二文字列「あまり綺麗ではない」を検索する。そして、評価情報格納部200の一つの評価語「綺麗」が、第二文字列「あまり綺麗ではない」中に含まれることを検知する。
そして、スコア取得部202は、評価情報格納部200を検索し、評価語「綺麗」に対応するスコア「+4」を読み出し、メモリ上に配置する。
次に、スコア変更処理を行う。つまり、変更語取得部204は、変更情報格納部201の変更情報が有する変更語の情報を用いて、評価語「綺麗」の前後の所定以内の文字数(ここでは、例えば、「5」とする。)の距離内に、変更語が存在するか否かを判断する。変更語取得部204は、第二文字列「あまり綺麗ではない」において、評価語「綺麗」の前後5文字以内に「あまり」、「ではない」という2つの変更語が存在する、と検知し、変更語「あまり」、「ではない」を取得し、メモリ上に配置する。
次に、評価変更情報取得部205は、取得された変更語「あまり」と対になる評価変更情報「0.5」、変更語「ではない」と対になる評価変更情報「−1」を、変更情報格納部1306から取得し、メモリ上に配置する。
次に、変更スコア算出部206は、2つの評価変更情報「0.5」「−1」を用いて、スコア「+4」に対して演算する。ここでは、例えば、変更スコア算出部1313は、「(+4)×0.5×(−1)=−2」の演算を行い、新しいスコア「−2」を得て、メモリ上に配置する。
そして、評価文蓄積部106は、「評価対象」「評価語」「スコア」「文」「位置情報」「識別情報」を有する評価対象情報を構成する。そして、評価文蓄積部106は、評価対象情報格納部102に蓄積する。ここで、蓄積した評価対象情報の例は、図25の評価対象情報管理表の「ID=3」のレコードである。
以下、同様に、処理を進め、評価文蓄積部106は、図25に示す評価対象情報管理表を得る。
次に、評価算出部203は、評価対象取得部104が取得した同一の評価対象(ここでは、「店舗X」)についての1以上のスコア(図25の「スコア」を用いて、当該評価対象についての評価を算出する。評価算出部203は、例えば、同一の評価対象(ここでは、「店舗X」)のスコアの平均値((4+4+(−2)+4+4)/5=2.8)を得て、評価対象「店舗X」とスコア「2.8」を、図示しない記憶媒体に格納する、とする。また、評価対象「店舗X」とスコア「2.8」は、図25の「ID=1」から「ID=5」のレコードとリンク付けられる、とする。
以上、本実施の形態によれば、ブログや、電子メールや、SNSなど、ユーザが入力した1以上の種類の文章群から、評判コーパスを生成できる。また、ユーザが一人である場合、その人の思想を示す情報(評価対象情報)を抽出できることとなる。また、対象物に対して、ポジティブ度、ネガティブ度を示すスコアを、文ごとに蓄積できる。さらに、一のユーザが、ある評価対象に対して考えているポジティブ度を、1以上の種類の文章群から、取得できる。
なお、本実施の形態によれば、評価対象に対するスコアを蓄積した。しかし、蓄積する情報として、スコアではなく、ポジティブか、ネガティブかを示す情報でも良い。ポジティブか、ネガティブかを示す情報は、「+」「−」でも良いし、「1」「0」などの情報でも良い。図25において、スコアから、ポジティブか、ネガティブかが分かることは言うまでもない。
また、本実施の形態において、評価対象情報は、自然言語処理された結果である「主題」「副題」「状態」「動作」に対応する各第二文字列、または各第二文字列の一部(例えば、機能語を除いた文字列)を有しても良い。かかることは、他の実施の形態においても同様である。
さらに、本実施の形態における評判コーパス生成装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、記憶媒体に格納されている文章群から評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する評価対象取得部と、前記評価対象取得部が取得した評価語と、評価対象を含む文を、前記文章群から取得する文取得部と、前記文取得部が取得した文、および前記評価対象取得部が取得した評価対象を有する評価対象情報を、記憶媒体に蓄積する評価文蓄積部として機能させるためのプログラム、である。
また、上記プログラムにおける前記評価情報は、評価語、および良し悪しの程度を示すスコアを対に有し、コンピュータを、前記評価対象取得部が取得した文に含まれる評価語と対になるスコアを、記憶媒体から取得するスコア取得部と、前記評価対象取得部が取得した同一の評価対象についての1以上のスコアを用いて、当該評価対象についての評価を算出する評価算出部としてさらに機能させ、前記評価文蓄積部は、前記文取得部が取得した文、前記評価対象取得部が取得した評価対象、および前記評価算出部が算出したスコアを有する評価対象情報を、記憶媒体に蓄積するように機能させるためのプログラム、である。
また、上記プログラムは、コンピュータを、評価語から所定以内の文字数の距離内にある変更語を取得する変更語取得部と、前記変更語と対になる評価変更情報を取得する評価変更情報取得部と、前記スコア取得部が取得したスコアに対して、前記評価変更情報取得部が取得した評価変更情報を用いて、スコアを変更し、新たなスコアを算出する変更スコア算出部としてさらに機能させ、前記評価算出部は、前記評価対象取得部が取得した同一の評価対象についての1以上のスコア、および前記変更スコア算出部が算出した同一の評価対象についての1以上の新たなスコアを用いて、当該評価対象についての評価を算出するように機能させるためのプログラム、であることは好適である。
(実施の形態3)
本実施の形態において、対象情報コーパス生成装置3について説明する。対象情報コーパス生成装置3は、ブログ等の個人情報群から、仮想的なチャットシステムや検索エンジンに用いるコーパス(データベースと呼んでも良い)を生成する装置である。つまり、実施の形態1や実施の形態2における評判コーパス生成装置は、対象物に対する評価が含まれる文を抽出した。一方、対象情報コーパス生成装置3は、評価が含まれる文だけではなく、すべての文、または、利用できる形式の文から、コーパスを生成する。
図26は、本実施の形態における対象情報コーパス生成装置3のブロック図である。
対象情報コーパス生成装置3は、文章群格納部103、対象情報格納部301、検索対象取得部302、文取得部105、対象情報蓄積部303を具備する。検索対象取得部302は、辞書情報格納手段1041、文分割制御手段1042、検索対象取得手段3022を具備する。文分割制御手段1042は、要素分割手段10421、要素連結手段10422、文字列取得手段10423を具備する。
対象情報格納部301は、対象情報を格納し得る。対象情報は、検索の対象を示す用語である検索対象と、当該検索対象について記述された文を有する情報である。対象情報格納部301は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
検索対象取得部302は、文章群格納部103に格納されている文章群を自然言語処理し、検索対象を取得する。自然言語処理方法は、上述した機能素解析によるものが好適であるが、形態素解析を行い、形態素から名詞を取得しても良いし、パターンマッチングにより、検索対象を取得しても良い。検索対象とは、用語であり、通常、名詞である。また、検索対象は、例えば、機能素解析の結果が有する主題に対応する用語や、副題に対応する用語などである。文章群格納部103は、多数の装置(図示しないネットワーク上の装置を含む)に分散していても良い。つまり、文章群は、外部の装置から取得し、一時保持しているものでも良い。文章群を外部の装置から取得する場合、検索対象取得部302は、文章群がどこに存在するかの情報(例えば、URLや、IPアドレスとファイル名、など)も保持している検索対象取得部302は、通常、MPUやメモリ等から実現され得る。検索対象取得部302の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
検索対象取得手段3022は、文分割制御手段1042が取得した第二文字列の種類(通常、「主題」であり、「副題」などでも良い。)から検索対象を含む第二文字列を特定し、当該第二文字列から検索対象を取得する。検索対象取得手段3022は、例えば、第二文字列からひらがなや、機能語を除いて、検索対象を取得する。検索対象取得手段3022は、通常、MPUやメモリ等から実現され得る。検索対象取得手段3022の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
対象情報蓄積部303は、文取得部105が取得した文、および検索対象取得部302が取得した検索対象を有する対象情報を、対象情報格納部301に蓄積する。対象情報蓄積部303は、通常、MPUやメモリ等から実現され得る。対象情報蓄積部303の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、対象情報コーパス生成装置3の動作について、図27、図28のフローチャートを用いて説明する。図27のフローチャートにおいて、図2のフローチャートと異なる点についてのみ説明する。
(ステップS2701)対象情報コーパス生成装置3は、対象情報等取得処理を行う。対象情報等取得処理の詳細について、図28のフローチャートを用いて説明する。ステップS208に行く。
図28のフローチャートにおいて、図4のフローチャートと異なる点についてのみ説明する。
(ステップS2801)検索対象取得手段3022は、文分割制御手段1042が取得した第二文字列の種類(通常、「主題」であり、「副題」などでも良い。)から、検索対象を含む第二文字列を特定し、当該第二文字列から検索対象を取得する。
(ステップS2802)文取得部105は、解析対象の文(検索対象を含む文)を取得する。
(ステップS2803)対象情報蓄積部303は、ステップS2801で取得した検索対象、およびステップS2802で取得した文を用いて、対象情報を構成する。
(ステップS2804)対象情報蓄積部303は、ステップS2803で構成した対象情報を、対象情報格納部301に格納する。
以下、本実施の形態における対象情報コーパス生成装置3の具体的な動作について説明する。ここで、対象情報コーパス生成装置3は、実施の形態1、2で述べた評判コーパス生成装置1、2と比較して、蓄積する情報の構成が異なる。対象情報コーパス生成装置3が蓄積する情報は、対象情報である。また、対象情報コーパス生成装置3は、評価語を用いて、蓄積する情報を取得する元になる文を取得しない。
ここで、文章群格納部103は、いわゆるブログ、電子メール、SNS、Voip、メタバース、IMなどの情報である文章群を、1種以上、格納している。また、ブログは、1以上の人が作成したブログであり、2以上の図示しないWeb上のサーバ装置に格納されていても良い。また、文章群格納部103が格納している文章群の一種のブログの例を、図10に示す。また、文章群格納部103が格納している電子メールファイル「c:\ Documents_and_Settings\usrA\mail\送信トレイ.dbx」の例を図11に示す。
また、評価対象取得部104は、図12に示す文章群所在場所情報管理表を保持している。さらに、辞書情報格納手段1041は、図14に示す辞書情報管理表を格納している。
以上の状況において、ユーザは、対象情報コーパス生成装置3に、処理の開始指示を入力した、とする。すると、指示受付部100は、評判コーパスの生成の開始指示を受け付ける。
そして、実施の形態1、2における処理と同様に、1番目の文章群「http://www.お店紹介.co.jp/」の文「店舗Xは、おしゃれだ。」から、図15の(x+3)に示すように、検索対象取得部302は、主題「店舗Xは」と状態「おしゃれだ」を得ることができる。そして、検索対象取得部302は、主題の文字列「店舗Xは」から、機能語「は」を除いた用語「店舗X」を検索対象として取得し、メモリ上に配置する。
次に、文取得部105は、解析対象の文「店舗Xは、おしゃれだ。」を取得する。
そして、対象情報蓄積部303は、実施の形態1、2で述べた位置情報と識別情報も取得し、メモリ上に配置する。そして、対象情報蓄積部303は、検索対象「店舗X」、文「店舗Xは、おしゃれだ。」位置情報「offset_1」、識別情報「http://www.お店紹介.co.jp/」を用いて、対象情報を構成する。そして、対象情報蓄積部303は、構成した対象情報を、対象情報格納部301の対象情報管理表に記録する。対象情報管理表は、「ID」「検索対象」「文」「位置情報」「識別情報」を属性値として有するレコードを、1以上、格納している。
同様に、対象情報コーパス生成装置3は、2つ目の文「店舗Xが、テレビで評判だ。」を処理する。そして、図29の対象情報管理表に記録する。さらに、対象情報コーパス生成装置3は、処理を進めて、最終的に図29の対象情報管理表を得る。
以上、本実施の形態によれば、ブログや、電子メールなどの文章から、対象情報コーパスを自動生成できる。かかるコーパスは、実施の形態4以降で述べる、各種のアプリケーションで利用できる。
なお、本実施の形態において、対象情報は、自然言語処理された結果である「主題」「副題」「状態」「動作」に対応する各第二文字列、または各第二文字列の一部(例えば、機能語を除いた文字列)を有しても良い。かかることは、他の実施の形態においても同様である。
さらに、本実施の形態における対象情報コーパス生成装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、
1以上の人が入力した1種類以上の文章群を自然言語処理し、検索対象を取得する検索対象取得部と、前記検索対象取得部が取得した検索対象を含む文を、前記文章群から取得する文取得部と、前記文取得部が取得した文、および前記検索対象取得部が取得した検索対象を有する対象情報を、記録媒体に蓄積する対象情報蓄積部として機能させるためのプログラム、である。
また、上記プログラムにおける前記検索対象取得部は、第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、前記文章を構成する文から区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、前記文分割制御手段が取得した第二文字列の種類から検索対象を含む第二文字列を特定し、当該第二文字列から検索対象を取得する検索対象取得手段を具備するものとして機能させるためのプログラム、である。
また、上記プログラムにおける前記文分割制御手段は、前記対話文を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数の取得する要素連結手段と、前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、
当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複の対の情報をメモリ上に配置する文字列取得手段を具備するものとして機能させるためのプログラム、である。
(実施の形態4)
本実施の形態において、評判コーパス生成装置により生成された評判コーパスを利用して、検索を行う情報処理システムについて説明する。また、本実施の形態において、対象情報コーパス生成装置により生成された対象情報コーパスを利用して、検索を行う情報処理システムについて説明する。つまり、本実施の形態における情報処理システムは、評判コーパスや対象情報コーパスを利用した検索エンジンを含むシステムである。
情報端末装置41は、例えば、ユーザがキーワードを入力し、当該キーワードに対応する検索結果を出力する情報処理装置である。情報端末装置41は、例えば、パーソナルコンピュータ、PDA、携帯電話、テレビ、ナビゲーション端末等である。また、サーバ装置42は、検索エンジンを含む装置である。
図30は、本実施の形態における情報処理システム4のブロック図である。情報処理システム4は、情報端末装置41、サーバ装置42を具備する。
情報端末装置41は、入力受付部4101、送信部4102、受信部4103、出力部4104を具備する。
サーバ装置42は、評価対象情報格納部102、検索命令受信部4201、評価結果検索部4202、評価結果送信部4203を具備する。
入力受付部4101は、ユーザからの入力を受け付ける。ここで、入力される情報は、キーワードや文などである。また、入力される情報は、例えば、キーワードを有する検索命令である。また、検索命令は、評価対象を含む。この評価対象は、キーワードである。さらに、検索命令は、文章でも良い。情報の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。入力受付部4101は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
送信部4102は、入力受付部4101が受け付けた情報(検索命令など)を、サーバ装置42に送信する。送信部4102は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
受信部4103は、サーバ装置42から検索結果を受信する。検索結果とは、評価結果を含む。評価結果とは、評価対象を評価する文、または当該文から抽出できる評価語、またはスコアのうちのいずれかを有する情報である。評価結果の具体例は、後述する。受信部4103は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
出力部4104は、受信部4103が受信した検索結果を出力する。ここで、出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信等を含む概念である。出力部4104は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部4104は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
検索命令受信部4201は、情報端末装置41から、評価対象を含む情報である検索命令を受信する。検索命令受信部4201は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
評価結果検索部4202は、検索命令が有する評価対象をキーとして、評価対象情報格納部102を検索し、当該評価対象を評価する文、または当該文から抽出できる評価語、またはスコアのうちのいずれかを有する評価結果を取得する。また、評価結果検索部4202は、評価対象をキーとして、評価対象情報格納部102から、格納場所情報を有する評価結果を取得しても良い。評価結果検索部4202は、通常、MPUやメモリ等から実現され得る。評価結果検索部4202の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
評価結果送信部4203は、評価結果検索部4202が取得した評価結果を、情報端末装置41に送信する。評価結果送信部4203は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
次に、情報処理システムの動作について説明する。まず、情報端末装置41の動作について説明する。情報端末装置41の入力受付部4101は、ユーザから、キーワード(評価対象)を含む検索命令を受け付ける。なお、検索命令は、キーワードのみでも良い。次に、送信部4102は、入力受付部4101が受け付けた検索命令を、サーバ装置42に送信する。そして、受信部4103は、サーバ装置42から検索結果を受信する。次に、出力部4104は、受信部4103が受信した検索結果を出力する。
次に、サーバ装置42の動作について説明する。まず、サーバ装置42の検索命令受信部4201は、情報端末装置41から、評価対象を含む情報である検索命令を受信する。次に、評価結果検索部4202は、検索命令が有する評価対象をキーとして、評価対象情報格納部102を検索し、当該評価対象を評価する文、または当該文から抽出できる評価語、またはスコアのうちのいずれかを有する評価結果を取得する。そして、評価結果送信部4203は、評価結果検索部4202が取得した評価結果を、情報端末装置41に送信する。
以下、本実施の形態における情報処理システムの具体的な動作について説明する。以下、2つの具体例について説明する。
(具体例1)
今、評価対象情報格納部102は、図25に示す評価対象情報管理表を格納している、とする。また、評価対象情報格納部102は、「店舗X」の総合的なスコア「2.8」も格納している、とする。かかる状況において、情報端末装置41のユーザは、「店舗X」の評判を知りたいと思い、キーワード「店舗X」を含む検索命令を、情報端末装置41に入力した、とする。
次に、入力受付部4101は、キーワード「店舗X」を含む検索命令を受け付ける。そして、送信部4102は、当該検索命令をサーバ装置42に送信する。
次に、サーバ装置42の検索命令受信部4201は、キーワード「店舗X」を含む検索命令を受信する。
次に、評価結果検索部4202は、キーワード「店舗X」をキーとして、図25の評価対象情報管理表を検索し、「店舗X」を評価対象として有するレコードを取得し、かつ、スコアをキーとして降順にレコードをソートする。そして、評価結果検索部4202は、図31の出力情報の中間表を得る。そして、評価結果送信部4203は、図31の中間表のデータと、総合スコア「2.8」を、情報端末装置41に送信する。
次に、情報端末装置41の受信部4103は、図31の中間表のデータと総合スコア「2.8」を受信する。そして、出力部4104は、受信した中間表のデータを出力する。出力例は、図32である。
図32において、「店舗X」の総合スコアと、総合スコアを構成する元になった、「店舗X」についての評価に関する内容が記載されている文と、各文のスコアが出力されている。
図32の画面表示において、ユーザが、検索結果である文を、マウス等で指示(クリックなどによる指示)を行うと、情報端末装置41は、当該指示された文と対になる識別情報(URLなど)で識別されるブログや電子メールの情報を取得し、出力する。その際、情報端末装置41は、当該文に対応する位置情報を用いて、当該文が表示されるように、表示を制御する。かかる表示制御は、公知技術であるので詳細な説明を省略する。
なお、上記の例において、評価結果検索部4202は、スコアが正(プラス)のレコードのみを取得しても良い。かかる場合、検索対象(ここでは、「店舗X」)に対してポジティブな内容の情報のみ、情報端末装置41に出力される。
また、上記の例において、総合スコアの出力は必須ではない。その他、図32に示す出力態様は、一例であることは言うまでもない。
また、評価結果検索部4202は、キーワード「店舗X」をキーとして、図16の評価対象情報管理表を検索し、「店舗X」を評価対象として有するレコードを取得しても良い。つまり、情報端末装置41に出力される情報には、ランク等の情報はなくても良い。
(具体例2)
今、サーバ装置52は、評価対象情報格納部102に代えて対象情報格納部301を具備し、評価結果検索部4202に代えて検索部5201を具備し、評価結果送信部4203に代えて検索結果送信部5202を具備する、とする。
つまり、サーバ装置52は、対象情報コーパス生成装置により生成された対象情報コーパスである対象情報格納部301を具備するサーバ装置52であって、情報端末装置41から、検索対象を含む情報である検索命令を受信する検索命令受信部4201と、前記検索命令が有する検索対象をキーとして、前記検索情報格納部を検索し、当該検索対象を有する文、または当該文から抽出できる用語のいずれかを有する検索結果を取得する検索部5201と、前記検索結果を、前記情報端末装置に送信する検索結果送信部5202を具備するサーバ装置、である。そのサーバ装置52を具備する情報処理システムのブロック図を、図33に示す。具体例2において、具体例1と比較して、検索対象が、評価対象情報格納部102から対象情報格納部301に代わった点が、主として異なる。
また、対象情報格納部301は、図29に示す対象情報管理表を格納している。
かかる状況において、情報端末装置41のユーザは、「店舗X」の情報を知りたいと思い、キーワード「店舗X」を含む検索命令を、情報端末装置41に入力した、とする。
次に、入力受付部4101は、キーワード「店舗X」を含む検索命令を受け付ける。そして、送信部4102は、当該検索命令をサーバ装置52に送信する。
次に、サーバ装置52の検索命令受信部4201は、キーワード「店舗X」を含む検索命令を受信する。
次に、検索部5201は、キーワード「店舗X」をキーとして、図29に示す対象情報管理表を検索し、図29の「ID=1」の情報を抽出する。そして、検索結果送信部5202は、図29の「ID=1」の情報を、情報端末装置41に送信する。
次に、情報端末装置41の受信部4103は、図29の「ID=1」の情報を受信する。そして、出力部4104は、受信した情報を出力する。出力態様は、例えば、文の列挙である。また、文は、選択可能(アンカーなど)になっており、ユーザの指示により、元になるブログや電子メールのデータが表示されることが好適である。かかる出力態様は、具体例1と同様である。
以上、本実施の形態によれば、評判コーパス生成装置により生成された評判コーパスや、対象情報コーパス生成装置により生成された対象情報コーパスを利用して、検索エンジンを構築できる。
なお、本実施の形態によれば、検索命令の構造は問わない。
さらに、本実施の形態におけるサーバ装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、情報端末装置から、評価対象を含む情報である検索命令を受信する検索命令受信部と、前記検索命令が有する評価対象をキーとして、評判コーパス生成装置により生成された評価対象情報を格納している記憶媒体を検索し、当該評価対象を評価する文、または当該文から抽出できる評価語、またはスコアのうちのいずれかを有する評価結果を取得する評価結果検索部と、前記評価結果を、前記情報端末装置に送信する評価結果送信部として機能させるためのプログラム、である。
また、コンピュータを、情報端末装置から、検索対象を含む情報である検索命令を受信する検索命令受信部と、前記検索命令が有する検索対象をキーとして、対象情報コーパス生成装置により生成された対象情報を検索し、当該検索対象を有する文、または当該文から抽出できる用語のいずれかを有する検索結果を取得する検索部と、前記検索結果を、前記情報端末装置に送信する検索結果送信部として機能させるためのプログラム、である。
(実施の形態5)
本実施の形態において、評判コーパス生成装置1、評判コーパス生成装置2により生成された評判コーパスを用いて、ランキングを出力する情報処理システムについて説明する。情報処理システムは、情報端末装置41、およびサーバ装置62を具備する。
図34は、本実施の形態における情報処理システムのブロック図である。サーバ装置62は、評価対象情報格納部102、カテゴリー情報格納部6201、検索命令受信部4201、評価結果検索部6202、評価結果送信部4203を具備する。
評価結果検索部6202は、評価対象取得手段62021、ランキング取得手段62022を具備する。
カテゴリー情報格納部6201は、カテゴリー情報を1以上格納している。カテゴリー情報は、一のカテゴリーと、1以上の評価対象を有する情報である。カテゴリーとは、通常、評価対象を含む概念の用語である。例えば、評価対象が「レストランA」や「ラーメン店舗BBB」などの具体的な店舗名である場合、カテゴリーは、例えば、「レストラン」や「イタリアレストラン」や「ラーメン屋」などの概念を示す用語である。カテゴリー情報格納部6201は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
検索命令受信部4201は、情報端末装置から、検索命令を受信する。なお、ここでの検索命令は、カテゴリーを含む情報である。検索命令受信部4201は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
評価結果検索部6202は、検索命令の受信に対応して、スコアの順に1以上の評価対象を並べたランキングの情報を有する評価結果を取得する。評価結果検索部6202は、通常、後述する評価対象取得手段62021、およびランキング取得手段62022により、スコアの順に2以上の評価対象を並べたランキングの情報を有する評価結果を取得する。
評価対象取得手段62021は、検索命令が有するカテゴリーと対になる1以上の評価対象を、カテゴリー情報格納部6201から取得する。評価対象取得手段62021は、通常、MPUやメモリ等から実現され得る。評価対象取得手段62021の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
ランキング取得手段62022は、評価対象取得手段62021が取得した1以上の評価対象に対応するスコアを取得し、当該スコアの順に、1以上の評価対象を並べたランキングの情報を有する評価結果を取得する。なお、評価対象は、2以上であることが好適である。ランキング取得手段62022は、通常、MPUやメモリ等から実現され得る。ランキング取得手段62022の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、サーバ装置62の動作について図35のフローチャートを用いて説明する。
(ステップS3501)検索命令受信部4201は、カテゴリーを含む検索命令を受信したか否かを判断する。検索命令を受信すればステップS3502に行き、検索命令を受信しなければステップS3501に戻る。
(ステップS3502)評価対象取得手段62021は、ステップS3501で受信された検索命令が有するカテゴリーを取得する。
(ステップS3503)評価対象取得手段62021は、ステップS3502で取得したカテゴリーと対になる1以上の評価対象を、カテゴリー情報格納部6201から検索し、メモリ上に配置する。
(ステップS3504)ランキング取得手段62022は、カウンタiに1を代入する。
(ステップS3505)ランキング取得手段62022は、ステップS3503でメモリ上に配置した1以上の評価対象の中に、i番目の評価対象が存在するか否かを判断する。i番目の評価対象が存在すればステップS3506に行き、i番目の評価対象が存在しなければステップS3509に行く。
(ステップS3506)ランキング取得手段62022は、i番目の評価対象に対応する、すべてのスコアを、評価対象情報格納部102から検索し、メモリ上に配置する。
(ステップS3507)ランキング取得手段62022は、ステップS3507で取得したすべてのスコアを用いて、i番目の評価対象に対する総合的なスコアを算出する。ランキング取得手段62022は、例えば、すべてのスコアの平均値を総合的スコアとして算出しても良いし、各スコアに対して重み付けして(加重平均して)総合的スコアを算出しても良いし、すべてのスコアを加算した値を総合的スコアとして算出しても良い。その他、総合的スコアの算出方法は問わない。
(ステップS3508)ランキング取得手段62022は、カウンタiを1、インクリメントする。ステップS3505に戻る。
(ステップS3509)ランキング取得手段62022は、1以上の評価対象の各総合的スコアをキーとして、1以上の評価対象をソートする。
(ステップS3510)ランキング取得手段62022は、ステップS3509でソートされた1以上の評価対象を用いて、評価結果を構成する。評価結果は、例えば、総合的スコアの降順にソートされた1以上の評価対象、各評価対象について記載した文章群(ブログや電子メールなど)の所在場所を示す情報(URLやフォルダ名など)、評価対象について記述した文または、文の一部などを有する。
(ステップS3511)評価結果送信部4203は、ステップS3510で構成された評価結果を、情報端末装置41に送信する。ステップS3501に戻る。
なお、図35のフローチャートにおいて、評価結果の内容は種々考えられる。また、図35のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
また、図35のフローチャートにおいて、検索命令を受信した後に、総合的スコアが算出されたが、サーバ装置62は、予め、各評価対象の総合的スコアを算出して、格納していても良いことはいうまでもない。
以下、本実施の形態における情報処理システムの具体的な動作について説明する。
今、評価対象情報格納部102は、図36に示す評価対象情報管理表を格納している、とする。
また、カテゴリー情報格納部6201は、図37に示すカテゴリー情報管理表を格納している、とする。カテゴリー情報管理表は、「ID」「カテゴリー」「評価対象」の属性値を有するレコードを1以上格納している。ここでは、カテゴリーと評価対象は、n:m(n,mは、1以上の自然数)に対応する。
かかる状況において、情報端末装置41のユーザは、イタリアンレストランのランキングを知りたいと思い、キーワード「イタリアン」を含む検索命令を、情報端末装置41に入力した、とする。
次に、入力受付部4101は、キーワード「イタリアン」を含む検索命令を受け付ける。そして、送信部4102は、当該検索命令をサーバ装置42に送信する。
次に、サーバ装置62の検索命令受信部4201は、キーワード「イタリアン」を含む検索命令を受信する。そして、評価対象取得手段62021は、受信された検索命令が有するカテゴリー「イタリアン」を取得する。
次に、評価対象取得手段62021は、取得したカテゴリー「イタリアン」と対になる1以上の評価対象(「店舗X」「イタリアY」「タベルナABC」・・・)を、カテゴリー情報格納部6201に格納されている図37のカテゴリー情報管理表から検索し、メモリ上に配置する。
次に、ランキング取得手段62022は、取得した1以上の評価対象(「店舗X」「イタリアY」「タベルナABC」・・・)の中の、1番目の評価対象「店舗X」に対応する、すべてのスコア(「4」「4」「−2」「4」「4」)を、評価対象情報格納部102から検索し、メモリ上に配置する。
次に、ランキング取得手段62022は、取得したすべてのスコア(「4」「4」「−2」「4」「4」)を用いて、1番目の評価対象「店舗X」に対する総合的なスコアを算出する。ここでは、ランキング取得手段62022は、スコアの合計を総合的スコアとする、とする。そして、ランキング取得手段62022は、評価対象「店舗X」に対する総合的スコアを、「4+4+(−2)+4+4=14」として算出する。そして、ランキング取得手段62022は、「店舗X,14,その他の情報」を取得する。なお、その他の情報は、例えば、評価対象情報管理表中の文(すべての文でも良いし、ランダムに所定数の文を選択しても良いし、スコアの高いものから所定数、選択しても良いし、総合的スコアに最もスコアが近い文を選択しても良い。)、評価対象情報管理表中の位置情報や識別情報(すべての識別情報等でも良いし、ランダムに所定数の識別情報等を選択しても良いし、スコアの高いものから所定数、選択しても良いし、総合的スコアに最もスコアが近い識別情報等を選択しても良い。)などである。
また、次に、同様に、ランキング取得手段62022は、取得した1以上の評価対象の中の、2番目の評価対象「イタリアY」に対応する、すべてのスコア(「−4」「−5」・・・)を、評価対象情報格納部102から検索し、メモリ上に配置する。
次に、ランキング取得手段62022は、取得したすべてのスコア(「−4」「−5」・・・)を用いて、2番目の評価対象「イタリアY」に対する総合的なスコアを、例えば、「−22」と算出した、とする。そして、ランキング取得手段62022は、「イタリアY,−22,その他の情報」を取得する。
次に、同様に、ランキング取得手段62022は、取得した1以上の評価対象の中の、3番目の評価対象「タベルナABC」に対応する、すべてのスコア(「4」「5」・・・)を、評価対象情報格納部102から検索し、メモリ上に配置する。
次に、ランキング取得手段62022は、取得したすべてのスコア(「4」「5」・・・)を用いて、2番目の評価対象「タベルナABC」に対する総合的なスコアを、例えば、「32」と算出した、とする。そして、ランキング取得手段62022は、「タベルナABC,32,その他の情報」を取得する。
同様に、1以上の評価対象のうちの、残りの評価対象、全てに対して、総合的スコアを算出し、所定の情報を取得し、メモリ上に配置する。
次に、ランキング取得手段62022は、1以上の評価対象の各総合的スコアをキーとして、1以上の評価対象をソートする。そして、ランキング取得手段62022は、ソートされた評価結果を得る。図38は、評価結果を示す評価結果管理表である。評価結果管理表は、「ID」「評価対象」「総合的スコア」「文」「識別情報」などの属性値を有するレコードを1以上格納している。識別情報において、「(SNS)http://www.・・・ ID=12851」は、対応する文が、識別情報で示されるSNSから取得されたことを示す。そして、評価結果送信部4203は、図38の評価結果を情報端末装置41に送信する。
次に、情報端末装置41の受信部4103は、図38の評価結果の情報を受信する。そして、出力部4104は、評価結果を出力する。評価結果の出力例は、図39である。図39において、文または文の一部も表示され、その文または文の一部は、アンカーになっており、ユーザによりマウス等で押下されると、文が記載されているブログや電子メールやSNSの文章(ファイル)が表示される。
以上、本実施の形態によれば、上述した評判コーパス生成装置により生成された評判コーパスを用いて、ランキングを出力できる。
なお、本実施の形態によれば、評価結果の出力態様は問わない。図39は、一出力例であることは言うまでもない。
さらに、本実施の形態におけるサーバ装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、情報端末装置から、検索命令を受信する検索命令受信部と、前記検索命令の受信に対応して、評判コーパス生成装置により生成された評判コーパスを検索し、スコアの順に2以上の評価対象を並べたランキングの情報を有する評価結果を取得する評価結果検索部と、前記評価結果を、前記情報端末装置に送信する評価結果送信部として機能させるためのプログラム、である。
また、上記プログラムにおいて、前記検索命令は、カテゴリーを含み、前記評価結果検索部は、前記検索命令が有するカテゴリーと対になる2以上の評価対象を、記憶媒体から取得する評価対象取得手段と、前記2以上の評価対象に対応するスコアを取得し、当該スコアの順に、前記2以上の評価対象を並べたランキングの情報を有する評価結果を取得するランキング取得手段を具備するものとして機能させるためのプログラム、である。なお、上記のスコアは、通常、評価対象に対応する総合的なスコアである。
(実施の形態6)
本実施の形態において、評判コーパス生成装置1、評判コーパス生成装置2により生成された評判コーパスや、対象情報コーパス生成装置3により生成された対象情報コーパスを用いて、仮想的なチャットシステムを実現する情報処理システムについて説明する。情報処理システム7は、情報端末装置71とバーチャルチャット装置72を具備する。情報端末装置71は、ユーザが、バーチャルチャット装置72から提供される仮想的なキャラクタとチャットを行うための文章の入力を受け付け、バーチャルチャット装置72から受信した対話文を受信し、出力する。ユーザにとって、対話文は、仮想的なキャラクタが発した会話のように感じられ、あたかも人と対話をしているように感じられるシステムである。そして、バーチャルチャット装置72に格納されている評判コーパスや対象情報コーパスは、仮想的な人格を形成する情報となる。通常、ここでの評判コーパスや対象情報コーパスは、一人の人が入力した1種以上の文章群を元に生成された情報群である。
図40は、本実施の形態における情報処理システムのブロック図である。情報端末装置71は、入力受付部4101、送信部4102、受信部4103、出力部4104を具備する。
バーチャルチャット装置72は、評価対象情報格納部102、対話文受付部521、自然言語処理部522、対話文取得部523、対話文出力部524を具備する。
自然言語処理部522は、辞書情報格納手段1041、文分割制御手段1042、処理結果構成手段52201を具備する。
対話文受付部521は、ユーザからの対話文を受け付ける。ここでは、通常、対話文受付部521は、情報端末装置71から対話文を受信する。ただし、バーチャルチャット装置72がスタンドアロンの場合、対話文受付部521は、ユーザからの対話文を、手入力により受け付けても良い。対話文は、1以上の文であり、2以上でも良い。対話文受付部521は、無線または有線の通信手段等で実現され得る。
自然言語処理部522は、対話文受付部521が受け付けた対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する。自然言語処理方法として、上述した機能素解析の方法が好適であるが、形態素解析やパターンマッチングなどの方法によっても良い。自然言語処理部522は、通常、MPUやメモリ等から実現され得る。自然言語処理部522の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
処理結果構成手段52201は、文分割制御手段1042が取得した2以上の区切られた各第二文字列と、各第二文字列の種類を特定する情報を対に有する処理結果を取得する。第二文字列の種類とは、例えば、「主題」「副題」「動作」「状態」などのうちの1以上の組み合わせである。なお、第二文字列の種類は、例えば、「主語」「述語」などでも良い。処理結果構成手段52201は、通常、MPUやメモリ等から実現され得る。処理結果構成手段52201の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
対話文取得部523は、処理結果が有する用語と対になる文を、評価対象情報格納部102から検索する。また、対話文取得部523は、処理結果が有する用語から取得できる文を、評価対象情報格納部102から検索する。対話文取得部523は、通常、MPUやメモリ等から実現され得る。対話文取得部523の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
対話文出力部524は、対話文取得部523が取得した文を出力する。ここで、出力とは、通常、外部の装置(ここでは、情報端末装置71)への送信である。ただし、バーチャルチャット装置72がスタンドアロンの場合、出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部の装置への送信等を含む。対話文出力部524は、無線または有線の通信手段等で実現され得る。
次に、情報処理システムの動作について説明する。まず、情報端末装置71の動作について説明する。情報端末装置71の入力受付部4101は、ユーザから入力された対話文を受け付ける。そして、送信部4102は、入力受付部4101が受け付けた対話文を、バーチャルチャット装置72に送信する。そして、受信部4103は、当該対話文の送信に対応して、当該対話文と会話が繋がるような対話文を、バーチャルチャット装置72から受信する。次に、出力部4104は、受信部4103が受信した対話文を出力する。そして、また、入力受付部4101が、ユーザから入力された対話文を受け付ける。このように、ユーザと、バーチャルチャット装置72とが対話を行える。なお、バーチャルチャット装置72は、対話を行っているキャラクタの情報(静止画または、動画などデータ構造は問わない)を、情報端末装置71に送信し、情報端末装置71は、キャラクタの情報を受信し、キャラクタをディスプレイに表示しても良い。かかることにより、ユーザは、対話をより楽しむことができる。
次に、バーチャルチャット装置72の動作について図41,図42のフローチャートを用いて説明する。
(ステップS4101)対話文受付部521は、情報端末装置71から対話文を受け付けたか否かを判断する。対話文を受け付ければステップS4102に行き、対話文を受け付けなければステップS4101に戻る。
(ステップS4102)自然言語処理部522は、受け付けた対話文を自然言語処理し、1以上の文字列と、当該文字列に対応する文字列の種類を取得する。自然言語処理について、図42のフローチャートを用いて説明する。なお、ここでの自然言語処理は、機能素解析によるが、形態素解析などの公知の技術を用いても良いことは言うまでもない。
(ステップS4103)対話文取得部523は、ステップS4102で取得した1以上の文字列と、当該文字列に対応する文字列の種類から、1以上の用語を取得する。対話文取得部523は、例えば、文字列の種類「主題」および「副題」に対応する1以上の文字列を取得し、当該文字列からひらがなを除いた用語を取得し、メモリ上に配置する。
(ステップS4104)対話文取得部523は、ステップS4103で取得した1以上の用語を用いて、評価対象情報格納部102を検索し、1以上の文を取得し、メモリ上に配置する。
(ステップS4105)対話文取得部523は、ステップS4104において、文を取得できたか否かを判断する。文を取得できていればステップS4105に行き、文を取得できていなければステップS4107に行く。
(ステップS4106)対話文出力部524は、ステップS4105、またはステップS4107で取得した文を、情報端末装置71に送信する。ステップS4101に戻る。
(ステップS4107)対話文取得部523は、デフォルトの文を取得する。デフォルトの文は、例えば、図示しない対話文格納部に格納されている、とする。対話文格納部は、不揮発性の記憶媒体が好適であるが、揮発性の記憶媒体でも良い。また、対話文格納部に格納されているデフォルトの対話文の例は、「話題を変えましょう。」「私、<主題>について知らない。」「私、A社の自動車が好きなの。」などである。ここで、<主題>とは、ユーザが入力した対話文から取得された<主題>の用語が挿入される変数である。ステップS4106に行く。
図41のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、ステップS4102の自然言語処理について、図42のフローチャートを用いて説明する。
(ステップS4201)自然言語処理部522は、カウンタiに1を代入する。
(ステップS4202)自然言語処理部522は、対話文の中に、i番目の文が存在するか否かを判断する。i番目の文が存在すればステップS4203に行き、i番目の文が存在しなければ上位処理にリターンする。
(ステップS4203)自然言語処理部522は、対話文の中の、i番目の文を読み出し、メモリ上に配置する。
(ステップS4204)自然言語処理部522の文分割制御手段1042の要素分割手段10421は、カウンタjに1を代入する。
(ステップS4205)要素分割手段10421は、ステップS4203でメモリ上に配置した文の中に、j番目の文字が存在するか否かを判断する。j番目の文字が存在すればステップS4206に行き、j番目の文字が存在しなければステップS4216に行く。
(ステップS4206)要素分割手段10421は、ステップS4202でメモリ上に配置した文の中の、j番目の文字から(j+n)番目の文字までの文字列を取得し、バッファ上に置く。nは、固定の数であり、例えば、「5」である。なお、処理対象の文に、j番目の文字から(j+n)番目の文字まで存在しない場合、要素分割手段10421は、j番目の文字から文の最終文字までを取得し、バッファ上に置く。つまり、要素分割手段10421は、j番目の文字から(j+n)番目以下の文字までの文字列を取得し、バッファ上に置く。
(ステップS4207)要素分割手段10421は、ステップS4206でバッファ上に配置した文字列を、辞書情報格納手段1041に検索しにいく。
(ステップS4208)要素分割手段10421は、ステップS4207における検索結果において、ステップS4206でバッファ上に配置した文字列が、辞書情報格納手段1041に存在したか否かを判断する。文字列が存在すればステップS4213に行き、文字列が存在しなければステップS4209に行く。なお、文字列が存在する場合とは、バッファ上に配置した文字列と一致する文字列が、辞書情報が有する第一文字列に存在する場合である。
(ステップS4209)要素分割手段10421は、ステップS4206でバッファ上に配置した文字列の長さが、1文字であるか否かを判断する。1文字であればステップS4211に行き、1文字でなければステップS4210に行く。
(ステップS4210)要素分割手段10421は、ステップS4206でバッファ上に配置した文字列から最後の文字を削除し、一文字少なくして、j番目から文字列を取得し、バッファ上に配置する。なお、要素分割手段10421は、単に、バッファ上の最終文字を消去するだけでも良い。ステップS4207に戻る。
(ステップS4211)要素分割手段10421は、j番目の文字に未知語であることを示す情報である「未知語」フラグを付与する。「「未知語」フラグを付与する」とは、j番目の文字が他の文字または文字列と区別できれば良く、例えば、他の文字または文字列に何らかのフラグを付与し、未知語であるj番目の文字には、何も付与しなくても良い。さらに、未知語を格納するバッファがあり、そのバッファに未知語であるj番目の文字を書き込む処理も、「未知語」フラグを付与する処理とする。
(ステップS4212)要素分割手段10421は、カウンタjを1、インクリメントする。ステップS4205に戻る。
(ステップS4213)要素分割手段10421は、バッファ上に配置した文字列と一致する第一文字列と対になる機能語情報、前接続記号、および後接続記号を、辞書情報格納手段1041から読み出し、メモリ上に配置する。
(ステップS4214)要素分割手段10421は、バッファ上に配置した文字列に対して、ステップS4212で読み出した機能語情報、前接続記号、および後接続記号を付与する。
(ステップS4215)要素分割手段10421は、カウンタjに、「j+文字列の文字数」を代入する。ステップS4205に戻る。なお、「文字列の文字数」の「文字列」は、バッファ上に配置した文字列である。
(ステップS4216)要素連結手段10422は、要素分割手段10421が分割した文字列のうち、連結可能な文字列を連結する。かかる連結処理について、図5のフローチャートを用いて説明した。
(ステップS4217)文字列取得手段10423は、要素連結手段10422が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、各第二文字列の種類を特定する情報を決定し、当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する。かかる処理(文分割処理、という)について、図6のフローチャートを用いて説明した。
(ステップS4218)文字列取得手段10423は、ステップS4217で取得した2以上の区切られた各第二文字列と、各第二文字列の種類を特定する情報を対にして、メモリ上に配置する。かかるメモリ配置処理について、図8のフローチャートを用いて説明した。
(ステップS4219)自然言語処理部522は、カウンタiを1、インクリメントする。ステップS4202に戻る。
以下、本実施の形態における情報処理システムの具体的な動作について説明する。以下、2つの具体例について説明する。
(具体例1)
今、評価対象情報格納部102は、図36に示す評価対象情報管理表を格納している、とする。また、辞書情報格納手段1041は、図14に示す辞書情報管理表を格納している。
かかる状況で、ユーザは、情報端末装置71に向かって、バーチャルなチャットを開始し、情報端末装置71から、対話文「オンダ自動車が好きなんだけど。」を入力した、とする。そして、情報端末装置71の入力受付部4101は、文「オンダ自動車が好きなんだけど。」を受け付ける。次に、送信部4102は、文「オンダ自動車が好きなんだけど。」を、バーチャルチャット装置72に送信する。
次に、バーチャルチャット装置72の対話文受付部521は、文「オンダ自動車が好きなんだけど。」を受信する。そして、自然言語処理部522は、「主題:オンダ自動車が」「状態:好きなんだけど」を得る、とする。かかる言語処理について、他の実施の形態において、説明したので、詳細な説明を省略する。
次に、自然言語処理部522は、主題「オンダ自動車が」から用語「オンダ自動車」を取得する。次に、対話文取得部523は、取得した用語「オンダ自動車」を用いて、評価対象情報格納部102(図36に示す評価対象情報管理表)を検索し、文「オンダ自動車の車は全体的におしゃれだね。」を取得し、メモリ上に配置する。次に、対話文出力部524は、取得した文「オンダ自動車の車は全体的におしゃれだね。」を、情報端末装置71に送信する。
次に、情報端末装置71の受信部4103は、当該対話文「オンダ自動車が好きなんだけど。」の送信に対応して、文「オンダ自動車の車は全体的におしゃれだね。」を、バーチャルチャット装置72から受信する。そして、出力部4104は、文「オンダ自動車の車は全体的におしゃれだね。」を、ディスプレイに出力する。
さらに、ユーザは、「XYZ自動車は、どう思う?」と入力した、とする。そして、情報端末装置71の入力受付部4101は、ユーザから入力された対話文「XYZ自動車は、どう思う?」を受け付ける。そして、送信部4102は、受け付けた対話文「XYZ自動車は、どう思う?」を、バーチャルチャット装置72に送信する。
次に、バーチャルチャット装置72の対話文受付部521は、文「XYZ自動車は、どう思う?」を受信する。そして、自然言語処理部522は、「主題:XYZ自動車は」「状態:どう思う」を得る、とする。
次に、自然言語処理部522は、主題「XYZ自動車は」から用語「XYZ自動車」を取得する。次に、対話文取得部523は、取得した用語「XYZ自動車」を用いて、評価対象情報格納部102(図36に示す評価対象情報管理表)を検索する。ところが、評価対象情報管理表には、評価対象として、「XYZ自動車」が存在しないため、対話文取得部523は、用語「XYZ自動車」に対応する文を取得できなかった、とする。
次に、対話文取得部523は、図示しない対話文格納部に格納されているデフォルトの文(例えば、「私、<主題>について知らない。」)を取得する。そして、対話文取得部523は、文「私、<主題>について知らない。」の<主題>の位置に「XYZ自動車」を代入し、「私、XYZ自動車について知らない。」を得る、とする。
次に、対話文出力部524は、取得した文「私、XYZ自動車について知らない。」を、情報端末装置71に送信する。
次に、情報端末装置71の受信部4103は、文「私、XYZ自動車について知らない。」を、バーチャルチャット装置72から受信する。そして、出力部4104は、文「私、XYZ自動車について知らない。」を、ディスプレイに出力する。
以上、本実施の形態によれば、ブログなどの文章群から構築したコーパスを用いて、仮想的なチャットを実現できる。ブログや電子メールで記載した文章などは、ある人の思想を表すものであるので、本実施の形態の情報処理システムによれば、ユーザは、ブログ等の文章群から構成された仮想的な人格のキャラクタと、会話を楽しむことができる。
(具体例2)
今、サーバ装置82は、評価対象情報格納部102に代えて対象情報格納部301を具備し、対話文取得部523は、対象情報格納部301から文を取得する、とする。かかるサーバ装置82を具備する情報処理システムのブロック図を、図43に示す。
今、対象情報格納部301は、図29に示す対象情報管理表を格納している、とする。また、辞書情報格納手段1041は、図14に示す辞書情報管理表を格納している。
かかる状況で、ユーザは、情報端末装置71に向かって、バーチャルなチャットを開始し、情報端末装置71から、対話文「店舗Xには、行ったことある?」を入力した、とする。そして、情報端末装置71の入力受付部4101は、文「店舗Xには、行ったことある?」を受け付ける。次に、送信部4102は、文「店舗Xには、行ったことある?」を、バーチャルチャット装置72に送信する。
次に、バーチャルチャット装置82の対話文受付部521は、文「店舗Xには、行ったことある?」を受信する。そして、自然言語処理部522は、「主題:店舗Xには」「動作:行ったことある」を得る、とする。かかる言語処理について、他の実施の形態において、説明したので、詳細な説明を省略する。
次に、自然言語処理部522は、主題「店舗Xには」から用語「店舗X」を取得する。次に、対話文取得部523は、取得した用語「店舗X」を用いて、評価対象情報格納部102(図29に示す対象情報管理表)を検索し、文「店舗Xは、おしゃれだ。」を取得し、メモリ上に配置する。次に、対話文出力部524は、取得した文「店舗Xは、おしゃれだ。」を、情報端末装置71に送信する。
次に、情報端末装置71の受信部4103は、文「店舗Xは、おしゃれだ。」を、バーチャルチャット装置72から受信する。そして、出力部4104は、文「店舗Xは、おしゃれだ。」を、ディスプレイに出力する。
以上、本実施の形態によれば、評判コーパス生成装置1、評判コーパス生成装置2により生成された評判コーパスや、対象情報コーパス生成装置3により生成された対象情報コーパスを用いて、仮想的なチャットシステムを実現できる。このことにより、静的なブログ等から、動的なチャットの仮想的相手を構成することができる。
また、本実施の形態によれば、対話文を構成する文章群は、1以上の文章群であったが、ブログだけ、SNSに入力した情報だけ、など、1種類の文章群から対話文(コーパス)を構成しても良いことは言うまでもない。
さらに、本実施の形態におけるサーバ装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、ユーザからの対話文を受け付ける対話文受付部と、前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、前記処理結果が有する用語と対になる文を、評判コーパス生成装置により生成された評判コーパスから検索する対話文取得部と、前記対話文取得部が取得した文を出力する対話文出力部として機能させるためのプログラム、である。
コンピュータを、ユーザからの対話文を受け付ける対話文受付部と、前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、前記処理結果が有する用語と対になる文を、対象情報コーパス生成装置により生成された対象情報コーパスから検索する対話文取得部と、前記対話文取得部が取得した文を出力する対話文出力部として機能させるためのプログラム、である。
また、図44は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図44は、このコンピュータシステム340の概観図であり、図45は、コンピュータシステム340のブロック図である。
図44において、コンピュータシステム340は、FD(Flexible Disk)ドライブ、CD−ROM(Compact Disk Read Only Memory)ドライブを含むコンピュータ341と、キーボード342と、マウス343と、モニタ344とを含む。
図45において、コンピュータ341は、FDドライブ3411、CD−ROMドライブ3412に加えて、CPU(Central Processing Unit)3413と、CPU3413、CD−ROMドライブ3412及びFDドライブ3411に接続されたバス3414と、ブートアッププログラム等のプログラムを記憶するためのROM(Read−Only Memory)3415と、CPU3413に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM(Random Access Memory)3416と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3417とを含む。ここでは、図示しないが、コンピュータ341は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
コンピュータシステム340に、上述した実施の形態の評判コーパス生成装置等の機能を実行させるプログラムは、CD−ROM3501、またはFD3502に記憶されて、CD−ROMドライブ3412またはFDドライブ3411に挿入され、さらにハードディスク3417に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ341に送信され、ハードディスク3417に記憶されても良い。プログラムは実行の際にRAM3416にロードされる。プログラムは、CD−ROM3501、FD3502またはネットワークから直接、ロードされても良い。
プログラムは、コンピュータ341に、上述した実施の形態の評判コーパス生成装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム340がどのように動作するかは周知であり、詳細な説明は省略する。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信するステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(送信部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
以上のように、本発明にかかる評判コーパス生成装置は、ブログ等の文章群から、評判解析を行い、対象物と、対象物を評価している文を抽出し、蓄積できる、という効果を有し、評判コーパスを生産する装置等として有用である。
実施の形態1における評判コーパス生成装置のブロック図 同評判コーパス生成装置の動作について説明するフローチャート 同解析対象文取得処理の動作について説明するフローチャート 同評価対象等取得処理の動作について説明するフローチャート 同連結処理の動作について説明するフローチャート 同文分割処理の動作について説明するフローチャート 同メモリ配置処理の動作について説明するフローチャート 同評価対象情報構成処理の動作について説明するフローチャート 同評価情報管理表を示す図 同文章群の一種のブログの例をに示す図 同電子メールファイルの例を示す図 同文章群所在場所情報管理表をを示す図 同抽出タグ情報管理表を示す図 同辞書情報管理表を示す図 同自然言語処理の流れを示す図 同評価対象情報管理表を示す図 同自然言語処理の流れを示す図 同自然言語処理の流れを示す図 同自然言語処理の結果を示す図 実施の形態2における評判コーパス生成装置のブロック図 同評価対象情報構成処理の動作について説明するフローチャート 同スコア変更処理の動作について説明するフローチャート 同評価情報管理表を示す図 同変更情報管理表を示す図 同評価対象情報管理表を示す図 実施の形態3における対象情報コーパス生成装置のブロック図 同対象情報コーパス生成装置の動作について説明するフローチャート 同対象情報等取得処理の動作について説明するフローチャート 同対象情報管理表を示す図 同情報処理システムのブロック図 同中間表を示す図 同出力例を示す図 同情報処理システムのブロック図 同情報処理システムのブロック図 同サーバ装置の動作について説明するフローチャート 同評価対象情報管理表を示す図 同カテゴリー情報管理表を示す図 同評価結果管理表を示す図 同評価結果の出力例を示す図 同情報処理システムのブロック図 同バーチャルチャット装置の動作について説明するフローチャート 同自然言語処理の動作について説明するフローチャート 同サーバ装置のブロック図 同評判コーパス生成装置等を実現するコンピュータの外観図 同コンピュータシステムのブロック図
符号の説明
1、2 評判コーパス生成装置
3 対象情報コーパス生成装置
4、7 情報処理システム
41、71 情報端末装置
42、52、62、82 サーバ装置
72、82 バーチャルチャット装置
100 指示受付部
101、200 評価情報格納部
102 評価対象情報格納部
103 文章群格納部
104 評価対象取得部
105 文取得部
106 評価文蓄積部
107 抽出タグ情報格納部
108 解析対象文取得部
201、1306 変更情報格納部
202 スコア取得部
203 評価算出部
204 変更語取得部
205 評価変更情報取得部
206、1313 変更スコア算出部
301 対象情報格納部
302 検索対象取得部
303 対象情報蓄積部
521 対話文受付部
522 自然言語処理部
523 対話文取得部
524 対話文出力部
1041 辞書情報格納手段
1042 文分割制御手段
1043、62021 評価対象取得手段
1044 評価語取得手段
3022 検索対象取得手段
4101 入力受付部
4102 送信部
4103 受信部
4104 出力部
4201 検索命令受信部
4202、6202 評価結果検索部
4203 評価結果送信部
5201 検索部
5202 検索結果送信部
6201 カテゴリー情報格納部
10421、104281 要素分割手段
10422 要素連結手段
10423 文字列取得手段
52201 処理結果構成手段
62022 ランキング取得手段

Claims (27)

  1. 評価対象の良し悪しに関する用語である評価語を含む評価情報を格納し得る評価情報格納部と、
    評価される対象を示す用語である評価対象と、当該評価対象を評価する文を有する評価対象情報を格納し得る評価対象情報格納部と、
    一の個人が入力した1種類以上の文章群を格納されている文章群格納部と、
    前記文章群格納部に格納されている文章群から前記評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する評価対象取得部と、
    前記評価対象取得部が取得した評価語と、評価対象を含む文を、前記文章群から取得する文取得部と、
    前記文取得部が取得した文、および前記評価対象取得部が取得した評価対象を有する評価対象情報を、前記評価対象情報格納部に蓄積する評価文蓄積部を具備する評判コーパス生成装置。
  2. 前記評価情報は、
    評価語、および良し悪しの程度を示すスコアを対に有し、
    前記評価対象取得部が取得した文に含まれる評価語と対になるスコアを、前記評価情報格納部から取得するスコア取得部と、
    前記評価対象取得部が取得した同一の評価対象についての1以上のスコアを用いて、当該評価対象についての評価を算出する評価算出部をさらに具備し、
    前記評価文蓄積部は、
    前記文取得部が取得した文、前記評価対象取得部が取得した評価対象、および前記評価算出部が算出したスコアを有する評価対象情報を、前記評価対象情報格納部に蓄積する請求項1記載の評判コーパス生成装置。
  3. 前記評価対象取得部は、
    第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、
    前記文章を構成する文から区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、
    前記文分割制御手段が取得した第二文字列の種類から評価の対象を含む第二文字列を特定し、当該第二文字列から評価対象を取得する評価対象取得手段と、
    前記評価対象を含む第二文字列を有する文中の他の第二文字列の種類を用いて評価語を含み得る第二文字列を特定し、当該第二文字列が有する評価語を前記評価情報格納部から検索し、取得する評価語取得手段を具備する請求項1または請求項2記載の評判コーパス生成装置。
  4. 前記第二文字列の種類は、
    少なくとも文の主題、文の副題、動作状態を含む請求項3記載の評判コーパス生成装置。
  5. 前記文分割制御手段は、
    前記文章を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、
    前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、
    文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、
    文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、
    前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、
    前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、
    隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、
    当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、
    連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数、取得する要素連結手段と、
    前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、
    当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備する請求項3または請求項4記載の評判コーパス生成装置。
  6. 評価語に対する評価の変更を示す言い回しの用語である変更語、および評価を変更するための情報である評価変更情報の対である変更情報を1以上格納している変更情報格納部と、
    評価語から所定以内の文字数の距離内にある変更語を取得する変更語取得部と、
    前記変更語と対になる評価変更情報を取得する評価変更情報取得部と、
    前記スコア取得部が取得したスコアに対して、前記評価変更情報取得部が取得した評価変更情報を用いて、スコアを変更し、新たなスコアを算出する変更スコア算出部をさらに具備し、
    前記評価算出部は、
    前記評価対象取得部が取得した同一の評価対象についての1以上のスコア、および前記変更スコア算出部が算出した同一の評価対象についての1以上の新たなスコアを用いて、当該評価対象についての評価を算出する請求項2から請求項5いずれか記載の評判コーパス生成装置。
  7. 前記1種類以上の文章群のうちの1種類以上の文章群は、タグにより構造化されており、
    前記文章群格納部は、
    文章群を識別する識別情報と文章群を有する文章群情報を、1以上格納しており、
    構造化されている文章群から解析対象の文を抽出するための情報であり、タグを有する情報である抽出情報と、文章群を識別する識別情報の対からなる抽出タグ情報を格納している抽出タグ情報格納部と、
    前記文章群格納部の文章群情報が有する識別情報と対になる抽出情報を読み出し、当該抽出情報を用いて、前記文章群情報が有する文章群から、解析対象の1以上の文を取得する解析対象文取得部をさらに具備し、
    前記評価対象取得部は、
    前記解析対象文取得部が取得した解析対象の1以上の文から前記評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する請求項1から請求項6いずれか記載の評判コーパス生成装置。
  8. 請求項1から請求項7いずれか記載の評判コーパス生成装置により生成された評価対象情報を格納している評価対象情報格納部を具備するサーバ装置であって、
    情報端末装置から、評価対象を含む情報である検索命令を受信する検索命令受信部と、
    前記検索命令が有する評価対象をキーとして、前記評価対象情報格納部を検索し、当該評価対象を評価する文、または当該文から抽出できる評価語、またはスコアのうちのいずれかを有する評価結果を取得する評価結果検索部と、
    前記評価結果を、前記情報端末装置に送信する評価結果送信部を具備するサーバ装置。
  9. 前記評価対象情報は、当該文を有する文章群が格納されている格納場所情報をも有し、
    前記評価結果検索部は、
    前記評価対象情報格納部から、前記格納場所情報を有する評価結果を取得する請求項8記載のサーバ装置。
  10. 請求項2から請求項7いずれか記載の評判コーパス生成装置により生成された評判コーパスである評価対象情報格納部を具備するサーバ装置であって、
    情報端末装置から、検索命令を受信する検索命令受信部と、
    前記検索命令の受信に対応して、前記評価対象情報格納部を検索し、スコアの順に2以上の評価対象を並べたランキングの情報を有する評価結果を取得する評価結果検索部と、
    前記評価結果を、前記情報端末装置に送信する評価結果送信部を具備するサーバ装置。
  11. 一のカテゴリーと、2以上の評価対象を有するカテゴリー情報を1以上格納しているカテゴリー情報格納部をさらに具備し、
    前記検索命令は、カテゴリーを含み、
    前記評価結果検索部は、
    前記検索命令が有するカテゴリーと対になる2以上の評価対象を、前記カテゴリー情報格納部から取得する評価対象取得手段と、
    前記2以上の評価対象に対応するスコアを取得し、当該スコアの順に、前記2以上の評価対象を並べたランキングの情報を有する評価結果を取得するランキング取得手段を具備する請求項10記載のサーバ装置。
  12. 請求項1から請求項7いずれか記載の評判コーパス生成装置により生成された評判コーパスである評価対象情報格納部を具備するバーチャルチャット装置であって、
    ユーザからの対話文を受け付ける対話文受付部と、
    前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、
    前記処理結果が有する用語と対になる文を、前記評価対象情報格納部から検索する対話文取得部と、
    前記対話文取得部が取得した文を出力する対話文出力部を具備するバーチャルチャット装置。
  13. 前記自然言語処理部は、
    第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、
    前記受け付けた対話文中、少なくとも一のユーザから入力された対話文から、区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、対話文を構成する文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、
    前記文分割制御手段が取得した2以上の区切られた各第二文字列と、各第二文字列の種類を特定する情報を対に有する処理結果を取得する処理結果構成手段を具備する請求項12記載のバーチャルチャット装置。
  14. 前記文分割制御手段は、
    前記対話文を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、
    前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、
    文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、
    文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、
    前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、
    前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、
    隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、
    当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、
    連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数の取得する要素連結手段と、
    前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、
    当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備する請求項13記載のバーチャルチャット装置。
  15. 1以上の人が入力した1種類以上の文章群を格納されている文章群格納部と、
    検索の対象を示す用語である検索対象と、当該検索対象について記述された文を有する対象情報を格納し得る対象情報格納部と、
    前記文章群格納部に格納されている文章群を自然言語処理し、検索対象を取得する検索対象取得部と、
    前記検索対象取得部が取得した検索対象を含む文を、前記文章群から取得する文取得部と、
    前記文取得部が取得した文、および前記検索対象取得部が取得した検索対象を有する対象情報を、前記対象情報格納部に蓄積する対象情報蓄積部を具備する対象情報コーパス生成装置。
  16. 前記検索対象取得部は、
    第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、
    前記文章を構成する文から区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、
    前記文分割制御手段が取得した第二文字列の種類から検索対象を含む第二文字列を特定し、当該第二文字列から検索対象を取得する検索対象取得手段を具備する請求項15記載の対象情報コーパス生成装置。
  17. 前記文分割制御手段は、
    前記対話文を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、
    前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、
    文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、
    文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、
    前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、
    前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、
    隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、
    当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、
    連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数の取得する要素連結手段と、
    前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、
    当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備する請求項16記載の対象情報コーパス生成装置。
  18. 請求項15から請求項17いずれか記載の対象情報コーパス生成装置により生成された対象情報コーパスである対象情報格納部を具備するサーバ装置であって、
    情報端末装置から、検索対象を含む情報である検索命令を受信する検索命令受信部と、
    前記検索命令が有する検索対象をキーとして、前記検索情報格納部を検索し、当該検索対象を有する文、または当該文から抽出できる用語のいずれかを有する検索結果を取得する検索部と、
    前記検索結果を、前記情報端末装置に送信する検索結果送信部を具備するサーバ装置。
  19. 請求項15から請求項17いずれか記載の対象情報コーパス生成装置により生成された対象情報コーパスである対象情報格納部を具備するバーチャルチャット装置であって、
    ユーザからの対話文を受け付ける対話文受付部と、
    前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、
    前記処理結果が有する用語と対になる文を、前記対象情報格納部から検索する対話文取得部と、
    前記対話文取得部が取得した文を出力する対話文出力部を具備するバーチャルチャット装置。
  20. 前記自然言語処理部は、
    第一文字列と、文中における前記第一文字列の機能または種類を特定する情報である機能語情報と、前記第一文字列の前に接続され得る文字列の種類を特定する情報である前接続記号と、前記第一文字列の後ろに接続され得る文字列の種類、または区切りであることを示す記号であり、当該記号により区切られた文中における第二文字列の種類を特定する情報である後接続記号とを対に有する辞書情報を1以上格納している辞書情報格納手段と、
    前記受け付けた対話文中、少なくとも一のユーザから入力された対話文から、区切りであることを示す後接続記号に対する第一文字列を取り出し、当該第一文字列をキーにして、対話文を構成する文を2以上の文字列である2以上の第二文字列に区切り、当該第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記第二文字列の種類を特定する情報を取得し、当該第二文字列と第二文字列の種類を特定する情報を取得する文分割制御手段と、
    前記文分割制御手段が取得した2以上の区切られた各第二文字列と、各第二文字列の種類を特定する情報を対に有する処理結果を取得する処理結果構成手段を具備する請求項19記載のバーチャルチャット装置。
  21. 前記文分割制御手段は、
    前記対話文を構成する文の先頭から予め決められたサイズ(n文字[nは2以上の整数])の第三文字列を切り出し、
    前記切り出した第三文字列を構成する文字列であって、先頭からn文字の文字列から順に、前記辞書情報格納手段に当該文字列が存在するか否かを判断し、n文字の文字列が存在しない場合には、先頭から(n−1)文字の文字列が前記辞書情報格納手段に存在するか否かを判断し、かかる判断を、1文字ずつ文字数を減らして、文字列が存在するまで行い、または、文字列が存在しない場合には、先頭から1文字になるまでかかる判断を行い、
    文字列が存在すると判断した場合には、当該文字列に対応する機能語情報と前接続記号と後接続記号とを、前記辞書情報格納手段から読み出し、読み出した機能語情報と前接続記号と後接続記号とを当該文字列に付与し、
    文字列が存在しない場合には、1文字の文字列に対して未知語であることを示す情報である未知語情報を付与する要素分割手段と、
    前記要素分割手段が未知語情報を付与した連続する未知語であり、ひらがなの文字を連結し文字列を構成し、かつ連続する未知語であり、ひらがなではない文字を連結し文字列を構成し、
    前記連結した文字列、または連結されなかった未知語の文字に対してまとまりであることを示す文字列の種類を特定する情報であるまとまり情報を付与し、
    隣接する2つの、前記要素分割手段が分割した要素またはまとまり情報を読み出し、
    当該読み出した要素またはまとまり情報のうち、前出の要素またはまとまり情報の後接続記号と、後出の要素またはまとまり情報の前接続記号から、前出の要素またはまとまり情報と後出の要素またはまとまり情報が連結可能であるか否かを判断し、
    連結可能な要素またはまとまり情報を一つの文字列にまとめて、当該まとめた文字列である第二文字列を複数の取得する要素連結手段と、
    前記要素連結手段が取得した複数の各第二文字列の最後尾の第一文字列に対応する機能語情報または後接続記号から、前記各第二文字列の種類を特定する情報を決定し、
    当該複数の各第二文字列の種類を特定する情報と、当該複数の各第二文字列を対にした複数の対の情報をメモリ上に配置する文字列取得手段を具備する請求項20記載のバーチャルチャット装置。
  22. コンピュータを、
    記憶媒体に格納されている文章群から評価語と、当該評価語により評価されている対象を示す用語である評価対象を取得する評価対象取得部と、
    前記評価対象取得部が取得した評価語と、評価対象を含む文を、前記文章群から取得する文取得部と、
    前記文取得部が取得した文、および前記評価対象取得部が取得した評価対象を有する評価対象情報を、記憶媒体に蓄積する評価文蓄積部として機能させるためのプログラム。
  23. 前記評価情報は、
    評価語、および良し悪しの程度を示すスコアを対に有し、
    コンピュータを、
    前記評価対象取得部が取得した文に含まれる評価語と対になるスコアを、記憶媒体から取得するスコア取得部と、
    前記評価対象取得部が取得した同一の評価対象についての1以上のスコアを用いて、当該評価対象についての評価を算出する評価算出部としてさらに機能させ、
    前記評価文蓄積部は、
    前記文取得部が取得した文、前記評価対象取得部が取得した評価対象、および前記評価算出部が算出したスコアを有する評価対象情報を、記憶媒体に蓄積するように機能させるための請求項23記載のプログラム。
  24. コンピュータを、
    評価語から所定以内の文字数の距離内にある変更語を取得する変更語取得部と、
    前記変更語と対になる評価変更情報を取得する評価変更情報取得部と、
    前記スコア取得部が取得したスコアに対して、前記評価変更情報取得部が取得した評価変更情報を用いて、スコアを変更し、新たなスコアを算出する変更スコア算出部としてさらに機能させ、
    前記評価算出部は、
    前記評価対象取得部が取得した同一の評価対象についての1以上のスコア、および前記変更スコア算出部が算出した同一の評価対象についての1以上の新たなスコアを用いて、当該評価対象についての評価を算出するように機能させるための請求項24記載のプログラム。
  25. コンピュータを、
    1以上の人が入力した1種類以上の文章群を自然言語処理し、検索対象を取得する検索対象取得部と、
    前記検索対象取得部が取得した検索対象を含む文を、前記文章群から取得する文取得部と、
    前記文取得部が取得した文、および前記検索対象取得部が取得した検索対象を有する対象情報を、記録媒体に蓄積する対象情報蓄積部として機能させるためのプログラム。
  26. コンピュータを、
    ユーザからの対話文を受け付ける対話文受付部と、
    前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、
    前記処理結果が有する用語と対になる文を、請求項1から請求項7いずれか記載の評判コーパス生成装置により生成された評判コーパスから検索する対話文取得部と、
    前記対話文取得部が取得した文を出力する対話文出力部として機能させるためのプログラム。
  27. コンピュータを、
    ユーザからの対話文を受け付ける対話文受付部と、
    前記対話文を自然言語処理し、少なくとも一の用語を有する処理結果を取得する自然言語処理部と、
    前記処理結果が有する用語と対になる文を、請求項15から請求項17いずれか記載の対象情報コーパス生成装置により生成された対象情報コーパスから検索する対話文取得部と、
    前記対話文取得部が取得した文を出力する対話文出力部として機能させるためのプログラム。
JP2007154076A 2007-06-11 2007-06-11 評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置、バーチャルチャット装置、およびプログラム Pending JP2008305322A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007154076A JP2008305322A (ja) 2007-06-11 2007-06-11 評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置、バーチャルチャット装置、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007154076A JP2008305322A (ja) 2007-06-11 2007-06-11 評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置、バーチャルチャット装置、およびプログラム

Publications (1)

Publication Number Publication Date
JP2008305322A true JP2008305322A (ja) 2008-12-18

Family

ID=40233962

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007154076A Pending JP2008305322A (ja) 2007-06-11 2007-06-11 評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置、バーチャルチャット装置、およびプログラム

Country Status (1)

Country Link
JP (1) JP2008305322A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010257155A (ja) * 2009-04-23 2010-11-11 Nippon Telegr & Teleph Corp <Ntt> 情報検索装置及び方法及びプログラム及びコンピュータ読み取り可能な記録媒体
WO2016104736A1 (ja) * 2014-12-26 2016-06-30 株式会社オルツ コミュニケーション提供システム及びコミュニケーション提供方法
CN112651211A (zh) * 2020-12-11 2021-04-13 北京大米科技有限公司 标签信息确定方法、装置、服务器及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010257155A (ja) * 2009-04-23 2010-11-11 Nippon Telegr & Teleph Corp <Ntt> 情報検索装置及び方法及びプログラム及びコンピュータ読み取り可能な記録媒体
WO2016104736A1 (ja) * 2014-12-26 2016-06-30 株式会社オルツ コミュニケーション提供システム及びコミュニケーション提供方法
JPWO2016104736A1 (ja) * 2014-12-26 2017-11-24 株式会社オルツ コミュニケーション提供システム及びコミュニケーション提供方法
CN112651211A (zh) * 2020-12-11 2021-04-13 北京大米科技有限公司 标签信息确定方法、装置、服务器及存储介质

Similar Documents

Publication Publication Date Title
CN102163198B (zh) 提供新词或热词的方法及***
US10360272B2 (en) System and method for compending blogs
US8930181B2 (en) Automatic dynamic contextual data entry completion
JP3429184B2 (ja) テキスト構造解析装置および抄録装置、並びにプログラム記録媒体
US20130024185A1 (en) Automatic Dynamic Contextual Date Entry Completion
KR20110026218A (ko) 문자 메시지 입력 장치 및 방법 그리고 그를 위한 프로그램을 기록한 기록 매체
US20090158175A1 (en) Communication support method, system, and server device
KR101695014B1 (ko) 감성 어휘 정보 구축 방법 및 장치
JP2009223749A (ja) 情報処理装置、情報処理方法、およびプログラム
JP2008299753A (ja) 広告出力システム、サーバ装置、広告出力方法、およびプログラム
JP2008305322A (ja) 評判コーパス生成装置、対象情報コーパス生成装置、サーバ装置、バーチャルチャット装置、およびプログラム
JP2009193133A (ja) 情報処理装置、情報処理方法、およびプログラム
JP4744404B2 (ja) 評価出力装置、評価出力方法、およびプログラム
CN114297143A (zh) 一种搜索文件的方法、显示文件的方法、装置及移动终端
CN103886039B (zh) 应用检索的优化方法和装置
US8782067B2 (en) Searching method, searching device and recording medium recording a computer program
JP5179564B2 (ja) クエリセグメント位置決定装置
JP4853915B2 (ja) 検索システム
CN109815404A (zh) 基于剪贴板数据的搜索处理方法和装置
JP2012185654A (ja) 翻訳装置、翻訳プログラムおよび翻訳方法
JP4484957B1 (ja) 検索式生成装置、検索式生成方法、およびプログラム
CN111726285B (zh) 即时通信方法及装置
WO2008100036A1 (en) The system and method for granting the sentence structure of electronic teaching materials contents identification codes, the system and method for searching the data of electronic teaching materials contents, the system and method for managing points about the use and service of electronic teaching materials contents
JP2009122738A (ja) 情報処理装置、情報処理方法、およびプログラム
JP3849356B2 (ja) 文字変換装置及びその方法と文字変換のためのプログラムを記録した記録媒体