Natural Language Processing自然言語処理
テキストデータから、何かしらの示唆のある情報を取り出すことをテキストマイニングと呼びます。自然言語処理の手法を使って、テキストを名詞、動詞、形容詞などの品詞単位の単語に分かち書きし、それらの出現頻度や相関関係を分析することで、頻繁に出現するする単語や共起表現などの情報をすることができます。
データ分析において扱うデータは、数値やカテゴリで表される「構造化・定量データ」と、単純な数値やカテゴリでは表すことのできない「非構造化・定性データ」に大別されますが、テキストデータは代表的な非構造・定性データです。
文章にラベルをつけて分類するタスクを文章分類と呼びます。例えば受け取ったメールがスパムかどうか、レビューの感情がポジティブかネガティブか判定するといったタスクが代表的です。
文章分類を行う際には、学習済みモデルを利用する場合と自分でテキストデータを用意するか場合があります。感情表現などの汎用的なタスクでは、Wikipediaを始めとした一般的な文章で既に学習されたモデルを利用することができます。一方、自らテキストデータを集めてラベルを付与する場合は、独自の分類ラベルを付与することが可能です。
自動要約技術はニュース記事や議事録などの要約に活用されています。
文章要約の技術には、要約元の文章から新しい文章を自動生成する「抽象型」と文章の内容を表す上で重要な文を何らかのアルゴリズムを用いて抽出する「抽出型」があります。抽象型では深層学習モデルをベースに要約元の文章の要点を残しながら新たに文章を生成します。抽出型では文章をグラフ構造で表現したGraph Baseや、文の位置や含まれる単語で文に重み付けをするFeature Base、文章全体のトピックと各文の関連度を測るTopic Baseなどのアルゴリズムで文を抽出します。