(57)【要約】【課題】テキストからの顔文字検出において、処理時間を短縮し、かつメモリの使用量を削減すること。【解決手段】テキストを文字分割部３で文字単位に分割し、文字種抽出部１１により、該文字単位に分割された前記テキスト中の各文字の文字種（ひらがな、カタカナ、漢字、記号など）を抽出し、これを当該テキスト中の各文字の表記とともに素性として用いて、ＢＩＯ判定部１３により、モデル記憶部１２に記憶されたモデルを用いて、顔文字を構成する最初の文字“Ｂ”、顔文字を構成する２番目以降の文字“Ｉ”、顔文字以外の文字“Ｏ”のいずれに当たるかを機械学習で判定する。【選択図】図６
2010092351.tif 000002
【特許請求の範囲】
【請求項１】
テキスト中の顔文字を検出する装置であって、
テキストを文字単位に分割する文字分割部と、
文字単位に分割された前記テキスト中の各文字の文字種を抽出し、これを当該テキスト中の各文字の表記に対応させて出力する文字種抽出部と、
少なくともテキスト中の各文字の表記およびその文字種を素性として、当該テキスト中の各文字が顔文字を構成する文字列の最初の文字を意味する“Ｂ”、顔文字を構成する文字列の２番目以降の文字を意味する“Ｉ”、顔文字以外の文字を意味する“Ｏ”のいずれに当たるかを判定するためのモデルを記憶するモデル記憶部と、
文字単位に分割された前記テキスト中の各文字の表記およびその文字種を入力とし、前記モデル記憶部に記憶されたモデルを用いて、前記テキスト中の各文字が前記“Ｂ”、“Ｉ”、“Ｏ”のいずれに当たるかを判定するＢＩＯ判定部とを備えた
ことを特徴とする顔文字検出装置。
【請求項２】
文字種の抽出は、各文字の文字コードについて、予め文字コードと文字種とを対応づけたテーブルを参照することで行う
ことを特徴とする請求項１に記載の顔文字検出装置。
【請求項３】
テキスト中の顔文字を検出する方法であって、
文字分割部が、テキストを文字単位に分割するステップと、
文字種抽出部が、文字単位に分割された前記テキスト中の各文字の文字種を抽出し、これを当該テキスト中の各文字の表記に対応させて出力するステップと、
ＢＩＯ判定部が、文字単位に分割された前記テキスト中の各文字の表記およびその文字種を入力とし、少なくともテキスト中の各文字の表記およびその文字種を素性として、当該テキスト中の各文字が顔文字を構成する文字列の最初の文字を意味する“Ｂ”、顔文字を構成する文字列の２番目以降の文字を意味する“Ｉ”、顔文字以外の文字を意味する“Ｏ”のいずれに当たるかを判定するためのモデルを用いて、前記テキスト中の各文字が前記“Ｂ”、“Ｉ”、“Ｏ”のいずれに当たるかを判定するステップとを含む
ことを特徴とする顔文字検出方法。
【請求項４】
文字種の抽出は、各文字の文字コードについて、予め文字コードと文字種とを対応づけたテーブルを参照することで行う
ことを特徴とする請求項３に記載の顔文字検出方法。
【請求項５】
コンピュータを、請求項１または２に記載の顔文字検出装置の各手段として機能させるためのプログラム。
【請求項６】
コンピュータに、請求項３または４に記載の顔文字検出方法の各処理ステップを実行させるためのプログラム。
【請求項７】
請求項５または６に記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキスト（ＨＴＭＬソーステキストを含む。）中の顔文字を検出する技術に関する。
【背景技術】
【０００２】
顔文字とは、テキスト中で使用可能な文字を組み合わせて様々な感情等に対応する擬似的な人の表情を表すようにしたもので、パーソナルコンピュータや携帯電話における電子メールなどのテキストベースのコミュニケーションツールにおいて、書き手（送信側）の感情等を読み手（受信側）に伝える手段として用いられることが多い。例えば、「今日はとっても楽しかったです。(^^)明日も楽しみ！」というテキスト中の文字列「(^^)」が顔文字であり、この場合、「喜び」の感情を表している。
【０００３】
従来、テキスト中の顔文字を検出する技術としては、既存のＨＴＭＬタグ除去技術、形態素解析技術を利用してテキスト中の各文字が属する形態素の品詞を抽出し、これを当該テキスト中の各文字の表記とともに素性として用いて、顔文字を構成する文字列の最初の文字を意味する“Ｂ”、顔文字を構成する文字列の２番目以降の文字を意味する“Ｉ”、顔文字以外の文字を意味する“Ｏ”（以下、これらを顔文字タグと呼ぶ。）のいずれに当たるかを機械学習で推定（判定）する方法があった（非特許文献１参照）。例えば、「今日はとっても楽しかったです。(^^)<br>明日も楽しみ！<br>」というテキストにおいて、文字「(」が顔文字タグ“Ｂ”であることを推定する場合は、図１に示すような太線内の情報を素性として利用していた。
【０００４】
図２は前述した従来の顔文字検出技術にかかる装置の一例を示すもので、ＨＴＭＬタグ除去部１、形態素解析部２、文字分割部３、形態素品詞抽出部４、モデル記憶部５およびＢＩＯ判定部６からなる。
【０００５】
ＨＴＭＬタグ除去部１では、既存のＨＴＭＬタグ除去技術により、入力されたテキストからＨＴＭＬタグを除去する。例えば、入力されたテキストが「今日はとっても楽しかったです。(^^)<br>明日も楽しみ！<br>」の場合、ＨＴＭＬタグ“<br>”が除かれ、「今日はとっても楽しかったです。(^^)明日も楽しみ！」となる。なお、入力されたテキストがＨＴＭＬタグを含まない純粋なテキストであれば、ＨＴＭＬタグ除去部１が不要であることはいうまでもない。
【０００６】
形態素解析部２では、既存の形態素解析技術により、ＨＴＭＬタグ除去部１でＨＴＭＬタグが除去されたテキストを単語に区切り、さらに各単語に品詞を付与する。例えば、ＨＴＭＬタグ除去後のテキストが「今日はとっても楽しかったです。(^^)明日も楽しみ！」の場合、区切り記号を“/”、品詞を“［品詞］”で表すと、「今日［名詞］/は［助詞］/とっても［副詞］/楽し［形容詞］/かった［形容詞接尾辞］/です［助動詞］/。［記号-句点］/(［記号-括弧開］/^［記号-その他］/^［記号-その他］/)［記号-括弧閉］/明日［名詞］/も［助詞］/楽しみ［名詞］/！［記号-その他］」となる。
【０００７】
文字分割部３では、ＨＴＭＬタグ除去部１でＨＴＭＬタグが除去されたテキストを文字単位（文字コード単位）に分割する。例えば、前記同様、ＨＴＭＬタグ除去後のテキストが「今日はとっても楽しかったです。(^^)明日も楽しみ！」の場合、区切り記号を“/”で表すと、「今/日/は/と/っ/て/も/楽/し/か/っ/た/で/す/。/(/^/^/)/明/日/も/楽/し/み/！」となる。
【０００８】
形態素品詞抽出部４では、形態素解析部２での結果と文字分割部３での結果とを入力とし、入力されたテキスト中の各文字の表記および各文字が属する形態素の品詞を抽出する。例えば、形態素解析部２での結果が「今日［名詞］/は［助詞］/とっても［副詞］/楽し［形容詞］/かった［形容詞接尾辞］/です［助動詞］/。［記号-句点］/(［記号-括弧開］/^［記号-その他］/^［記号-その他］/)［記号-括弧閉］/明日［名詞］/も［助詞］/楽しみ［名詞］/！［記号-その他］」であり、文字分割部３での結果が「今/日/は/と/っ/て/も/楽/し/か/っ/た/で/す/。/(/^/^/)/明/日/も/楽/し/み/！」である場合、図３に示すような結果が得られる。
【０００９】
モデル記憶部５では、予め機械学習により生成した、少なくともテキスト中の各文字の表記および各文字が属する形態素の品詞を素性、詳細には図１に示したようにテキスト中の各文字のその文字を含む前後ｎ（ここではｎ＝３）文字の表記、それらの形態素の品詞および前ｎ文字についてのＢＩＯ判定結果を素性として、当該テキスト中の各文字が顔文字タグ“Ｂ”、“Ｉ”、“Ｏ”のいずれに当たるかを判定するためのモデルを記憶している。但し、使用する機械学習によっては、前ｎ文字についてのＢＩＯ判定結果を明示的に与える必要はない。
【００１０】
ＢＩＯ判定部６では、形態素品詞抽出部４での結果を入力とし、モデル記憶部５に記憶されたモデルを用いて、テキスト中の各文字について、その先頭から順に顔文字タグ“Ｂ”、“Ｉ”、“Ｏ”のいずれに当たるかを判定し、顔文字タグ“Ｂ”および“Ｉ”に対応する文字列を検出結果として出力する。例えば、図３に示した結果が入力された場合、図４に示すように、先頭から順に、各文字のその文字を含む前後ｎ（ここではｎ＝３）文字の表記、それらの形態素の品詞および前ｎ文字についてのＢＩＯ判定結果を素性としてモデル記憶部５に記憶されたモデルに入力してＢＩＯ判定結果を得て、顔文字タグ“Ｂ”および“Ｉ”と判定された文字列「(^^)」を、例えばＸＭＬ形式「<face>(^^)</face>」で出力する。
【００１１】
モデル記憶部５に記憶するモデルは、テキスト集合の各テキストに対し、前記ＨＴＭＬタグ除去部１、形態素解析部２、文字分割部３、形態素品詞抽出部４での処理を行い、その結果として得られる、ＨＴＭＬタグが除去され、文字単位に分割されたテキスト中の各文字の表記および各文字が属する形態素の品詞の情報と、前記テキスト中の各文字について前記顔文字タグ“Ｂ”、“Ｉ”、“Ｏ”のいずれかに当たるかを人手により判断した結果としての情報とを用い、既存の機械学習によって予め作成したものである。
【００１２】
この際、使用する機械学習としてはどのようなものでも良いが、系列ラベリング問題のためのものが望ましい。系列ラベリング問題とは、与えられた入力トークン列ｘ＝（ｘ１，ｘ２，…ｘＮ）に対して、適切な出力ラベル列ｙ＝（ｙ１，ｙ２，…ｙＮ）を対応づける問題である。
【非特許文献１】田中裕紀、高村大也、奥村学、「文字ベースのコミュニケーションにおける顔文字に関する研究」、言語処理学会第１０回年次大会、Ｄ４−３、２００４
【発明の開示】
【発明が解決しようとする課題】
【００１３】
前述した従来の顔文字検出技術では、ＢＩＯ判定の前処理として形態素解析が必要となるが、形態素解析は複雑な処理を行うため処理時間がかかるとともに、大規模な辞書を用いるためメモリの使用量が多くなるという問題があった。
【００１４】
本発明の目的は、テキストからの顔文字検出において、処理時間を短縮し、かつメモリの使用量を削減することにある。
【課題を解決するための手段】
【００１５】
本発明では、前記目的を達成するため、テキストを文字単位に分割し、該文字単位に分割された前記テキスト中の各文字の文字種（ひらがな、カタカナ、漢字、記号など）を抽出し、これを当該テキスト中の各文字の表記とともに素性として用いて、顔文字を構成する文字列の最初の文字を意味する“Ｂ”、顔文字を構成する文字列の２番目以降の文字を意味する“Ｉ”、顔文字以外の文字を意味する“Ｏ”のいずれに当たるかを機械学習で推定（判定）することを特徴とする。例えば、「今日はとっても楽しかったです。(^^)<br>明日も楽しみ！<br>」というテキストにおいて、文字「(」が顔文字タグ“Ｂ”であることを推定する場合は、図５に示すような太線内の情報を素性として利用する。
【発明の効果】
【００１６】
本発明によれば、テキスト中の各文字の表記とともにその文字種を素性として機械学習で推定（判定）するため、形態素解析が不要となり、その分、処理時間を短縮し、かつメモリの使用量を削減することが可能となる。
【発明を実施するための最良の形態】
【００１７】
図６は本発明の顔文字検出装置の実施の形態の一例を示すもので、図中、従来例と同一構成部分は同一符号をもって表す。即ち、１はＨＴＭＬタグ除去部、３は文字分割部、１１は文字種抽出部、１２はモデル記憶部、１３はＢＩＯ判定部である。
【００１８】
文字種抽出部１１は、文字分割部３で文字単位（文字コード単位）に分割されたテキスト中の各文字を入力とし、該各文字の文字種（ひらがな、カタカナ、漢字、記号など）を抽出し、これを当該テキスト中の各文字の表記に対応させて出力する。
【００１９】
ここで、文字種を抽出する具体的な方法としては、文字コードと文字種とを対応づけたテーブルを予め用意しておき、テキスト中の各文字の文字コードに従ってテーブルを参照し、対応する文字種を読み出すことによって行うことができる。文字コードとしてシフトＪＩＳコードを用いた場合のテーブルの一例を図７に示す。
【００２０】
モデル記憶部１２は、予め機械学習により生成した、少なくともテキスト中の各文字の表記およびその文字種を素性、詳細には図５に示したようにテキスト中の各文字のその文字を含む前後ｎ（ここではｎ＝３）文字の表記、それらの文字種および前ｎ文字についてのＢＩＯ判定結果を素性として、当該テキスト中の各文字が顔文字タグ“Ｂ”、“Ｉ”、“Ｏ”のいずれに当たるかを判定するためのモデルを記憶している。但し、使用する機械学習によっては、前ｎ文字についてのＢＩＯ判定結果を明示的に与える必要はない。
【００２１】
ＢＩＯ判定部１３は、文字種抽出部１１での結果を入力とし、モデル記憶部１２に記憶されたモデルを用いて、テキスト中の各文字について、その先頭から順に顔文字タグ“Ｂ”、“Ｉ”、“Ｏ”のいずれに当たるかを判定し、顔文字タグ“Ｂ”および“Ｉ”に対応する文字列を検出結果として出力、例えば顔文字の開始タグ“<face>”と顔文字の終了タグ“</face>”との間に顔文字タグ“Ｂ”および“Ｉ”に対応する文字列「ｘｘｘｘ」を記述したＸＭＬ形式「<face>ｘｘｘｘ</face>」で出力する。
【００２２】
モデル記憶部１２に記憶するモデルは、テキスト集合の各テキストに対し、前記ＨＴＭＬタグ除去部１、文字分割部３、文字種抽出部１１での処理を行い、その結果として得られる、ＨＴＭＬタグが除去され、文字単位に分割されたテキスト中の各文字の表記およびその文字種の情報と、前記テキスト中の各文字について前記顔文字タグ“Ｂ”、“Ｉ”、“Ｏ”のいずれかに当たるかを人手により判断した結果としての情報とを用い、既存の機械学習によって予め作成したものである。この際、使用する機械学習としてはどのようなものでも良いが、系列ラベリング問題のためのものが望ましい。
【００２３】
図８は本発明の顔文字検出装置における処理の流れを示すもので、以下、例を挙げてその動作を詳細に説明する。
【００２４】
ＨＴＭＬタグ除去部１に入力されたテキストは、既存のＨＴＭＬタグ除去技術により、当該テキスト中のＨＴＭＬタグが除去され、文字分割部３に出力される（ｓ１）。例えば、入力テキストが「今日はとっても楽しかったです。(^^)<br>明日も楽しみ！<br>」であれば、ＨＴＭＬタグ“<br>”が除かれ、「今日はとっても楽しかったです。(^^)明日も楽しみ！」となる。なお、入力されたテキストがＨＴＭＬタグを含まない純粋なテキストであれば、ＨＴＭＬタグ除去部１およびＨＴＭＬタグ除去処理ｓ１が不要であることはいうまでもない。
【００２５】
文字分割部３では、ＨＴＭＬタグ除去部１でＨＴＭＬタグが除去されたテキストを文字単位（文字コード単位）に分割し、文字種抽出部１１に出力する（ｓ２）。例えば、ＨＴＭＬタグ除去後のテキストが「今日はとっても楽しかったです。(^^)明日も楽しみ！」の場合、区切り記号を“/”で表すと、「今/日/は/と/っ/て/も/楽/し/か/っ/た/で/す/。/(/^/^/)/明/日/も/楽/し/み/！」となる。
【００２６】
文字種抽出部１１では、ＨＴＭＬタグ除去部１でＨＴＭＬタグが除去され、文字分割部３で文字単位に分割されたテキスト中の各文字について、その文字種を抽出し、これを当該テキスト中の各文字の表記に対応させてＢＩＯ判定部１３に出力する（ｓ３）。例えば、文字分割部３での結果が「今/日/は/と/っ/て/も/楽/し/か/っ/た/で/す/。/(/^/^/)/明/日/も/楽/し/み/！」である場合、図９に示すような結果が得られる。
【００２７】
ＢＩＯ判定部１３では、文字種抽出部１１での結果を入力とし、モデル記憶部１２に記憶されたモデルを用いて、テキスト中の各文字について、その先頭から順に顔文字タグ“Ｂ”、“Ｉ”、“Ｏ”のいずれに当たるかを判定し、顔文字タグ“Ｂ”および“Ｉ”に対応する文字列を検出結果として出力する（ｓ４）。例えば、図９に示した結果が入力された場合、図１０に示すように、先頭から順に、各文字のその文字を含む前後ｎ（ここではｎ＝３）文字の表記、それらの形態素の品詞および前ｎ文字についてのＢＩＯ判定結果を素性としてモデル記憶部１２に記憶されたモデルに入力してＢＩＯ判定結果を得て、顔文字タグ“Ｂ”および“Ｉ”と判定された文字列「(^^)」をＸＭＬ形式「<face>(^^)</face>」で出力する。
【００２８】
なお、本発明は、周知のコンピュータに媒体もしくは通信回線を介して、図６の構成図に示された機能を実現するプログラムあるいは図８のフローチャートに示された手順を備えるプログラムをインストールすることによっても実現可能である。
【産業上の利用可能性】
【００２９】
本発明によってテキスト中の顔文字を検出し、これを削除することで、当該テキストに対する形態素解析の精度を向上させることが可能となる。
【図面の簡単な説明】
【００３０】
【図１】従来の顔文字検出技術における素性の説明図
【図２】従来の顔文字検出装置の一例を示す構成図
【図３】形態素品詞抽出結果の一例を示す説明図
【図４】従来の顔文字検出技術によるＢＩＯ判定のようすを示す説明図
【図５】本発明の顔文字検出技術における素性の説明図
【図６】本発明の顔文字検出装置の実施の形態の一例を示す構成図
【図７】文字種抽出のためのテーブルの一例を示す説明図
【図８】本発明の顔文字検出装置における処理の流れを示すフローチャート
【図９】文字種抽出結果の一例を示す説明図
【図１０】本発明の顔文字検出技術によるＢＩＯ判定のようすを示す説明図
【符号の説明】
【００３１】
１：ＨＴＭＬタグ除去部、３：文字分割部、１１：文字種抽出部、１２：モデル記憶部、１３：ＢＩＯ判定部。
【図１】
2010092351.tif 000003
【図２】
2010092351.tif 000004
【図３】
2010092351.tif 000005
【図４】
2010092351.tif 000006
【図５】
2010092351.tif 000007
【図６】
2010092351.tif 000008
【図７】
2010092351.tif 000009
【図８】
2010092351.tif 000010
【図９】
2010092351.tif 000011
【図１０】
2010092351.tif 000012