LoginSignup

This article is a Private article. Only a writer and users who know the URL can access it.
Please change open range to public in publish setting if you want to share this article with other users.

More than 5 years have passed since last update.

【読書会】入門自然言語処理_2章

Last updated at Posted at 2016-11-03
1 / 28

テキストコーパスと自然言語処理

自然言語処理を行うには大量の言語データやコーパスを用いるのが一般的
それにあたりどんな物が既に用意されているのかを俯瞰する


アジェンダ

1,テキストコーパスの紹介
2,語彙資源の紹介
3,WordNetの紹介


1,テキストコーパスの紹介


1,テキストコーパスの紹介

1.1,グーテンベルクのコーパス
1.2,ウェブやチャットのテキスト
1.3,ブラウンコーパス
1.4,ロイターコーパス
1.5,就任演説コーパス
1.6,注釈つきのテキストコーパス
1.7,ほかの言語のコーパス
1.8,テキストコーパスの構造
1.9,独自のコーパスを読み込む


1.0,テキストコーパスとは

テキストコーパスとは巨大なテキストの事である。
多くのコーパスは、一つ以上のジャンルから集められた素材をバランスよく含むようデザインされている


1.1,グーテンベルクのコーパス

NLTKには、約25000のフリー電子書籍を有する「グーテンベルク電子出版アーカイブ」プロジェクトから選んだ、小さなテキストセレクションが含まれている


1.2,ウェブやチャットのテキスト

先ほどのグーデンベルクは「整った」文章であったが、「整っていない」文章も必要。
・フォーラムでの議論
・街で耳にするような会話
・パイレーツオブカリビアンの台本
・個人の広告
・ワインのレビュー
などなど


1.3,ブラウンコーパス

ジャンルの系統的な差異の研究に便利
世界初の電子コーパス
500のデータソースのテキストを含んでいる
それぞれはニュース、社説などのジャンルに分類されている


1.4,ロイターコーパス

10788本のニュース文書が収録
合計130万の単語が含まれている
文章は90のトピックに分類されている
「訓練」「テスト」という二つに分けられている


1.5,就任演説コーパス

コーパスの55個のテキストの集合
全てが大統領の演説
各ファイル名に年号が含まれている事がわかる時系列で見れる(図2-1)


1.6,注釈つきのテキストコーパス

テキストコーパスには品詞情報、固有表現、統語構造、意味役割など言語学的注釈付が行われている物が多くある
(表2-2)


1.7,ほかの言語のコーパス

様々な言語のコーパスがある
・英語
・ドイツ語
・イビビョ語
ナイジェリア南部のイビビオ人の言葉
・イヌクティトット語(ᐃᓄᒃᑎᑐᑦ)
等々


1.8,テキストコーパスの構造

もっともシンプルなものは単なるテキスト
ジャンルなどでまとまったものもある
カテゴリが重複しているものもある
時間的な構造を持つものもある


1.9,独自のコーパスを読み込む

自身で用意したテキストを使用する事もできる
使いたい場合はNLTKのPlaintextCorpusReader
を使用すれば良い


2,語彙資源の紹介


品詞や語義定義のような関連情報を含んだ単語や句のコレクションの事を語彙目録、あるいは語彙資源という

語彙項目は、品詞や語義定義のような追加情報を伴う見出し語から構成されている

同じスペルを持つ2つの異なる語は、同音異義語と呼ばれる


2語彙資源の紹介

2,1語彙リストコーパス
2,2発音辞書
2,3比較語彙リスト


2,1語彙リストコーパス

語彙リストコーパスはUnixのスペルチェッカーなどに利用されている
これを利用する事でテキスト中の一般的でない単語やスペルミスを発見する事ができる
また、ストップワードコーパスもある。
「the」「to」「also」の様な高頻度で文中に出現する単語であり最初に取り除く事が多い


2,2発音辞書

音声合成装置で利用するために設計されたアメリカ英語の発音辞書が含まれている
各単語に対し、音素と呼ばれる発音コードがつけられている
(図2.7)


2,3比較語彙リスト

Swadesh語彙リストと呼ばれる、約200の一般的な単語をいくつかの言語で記した語彙リストが含まれている
1つの単語に対していろんな言語で比較出来る


3,WordNetの紹介


3,WordNetの紹介

WordNetは意味によって整理された英語の辞書

NLTKには155287個の単語と117659個の同義語の集合からなる英語のWordNetが含まれている


3,WordNetの紹介

3.1語義と同義語
3.2WordNetの階層構造
3.3意味類似性


3.1語義と同義語

a,Benz is credited with the invention of the motorcar
b,Benz is credited with the invention of the automobile
他の箇所は何も変えていないので「motorcar」「automobile」という単語の意味はほぼ同じ
つまりそれらは同義語であると言える


WordNetを使ってそれを確かめてみる

>>>from nltk.corpus import wordnet as wn
>>>wn.synsets('motorcar')
[Synset('car.n.01')]

Carの最初の名詞の語義を示すcar.n.01として識別される
そしてautomobileでも同じことをするとcar.n.01として識別される


3.3意味類似性

どの単語とどの単語が意味的に関連しているか知る事は、テキストのインデックス構築に役立つ

例えば、「乗り物」のような一般的な語での検索に対して「リムジン」といった特定の用語を含むテキストがマッチできる

0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up