1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

自然言語処理入門 (RNN)

Last updated at Posted at 2020-08-16

自然言語処理に入門します

自然言語(Natural Language)・・普段使っている言葉 柔らかい,曖昧
マシン(機械)語・・0110111001              硬い、厳格
自然言語処理目的
「コンピューターに人間の言葉を理解させる」
つまり、コンピューターが言語を 1 理解し 2話す(出力する) までの過程を作る

#自然言語処理の概要

言葉は「単語」によって構成される。
「単語の意味」をうまく捉えた表現方法について考える。

3つの表現方法

DeepLearing 登場以前
1 シソーラス(thesaurus)
2 カウントベース

DeepLearing 登場後   ※今回は記載しない
(3 推論ベース(word2vec))

####1 シーソラス

・辞書的に単語の意味を定義する。
・類語辞書  'car' = 'auto' 'automobile' 'machine' 'motor-vehicle'

上位と下位の関係性によって階層的に分別される

image03.png

最有力シソーラス  WorldNet

課題 
言葉は変化する、柔軟なもの
→辞書作りを人の手でやると大変、エンドレス・・・。

####2 カウントベース

コーパス (目的を持って集められた)大量のテキストデータ

<カウントベースとは>
周囲の単語をカウントし、文脈から意味を判断する手法。

<カウントベースの目的>
コーパスから自動的に、効率よくエッセンスを抽出する。
(コーパスを使って単語の意味を抽出する)
カウントベースを使う→単語をベクトルで表すことができる

Qなぜベクトル表現するのか?
A 数値化することで、コンピューターが理解できる厳密な定義をできるから

<ex 色の表現 >

1 コバルトブルー、シンクレッド、ダークブラウン・・・・  
色の数だけ異なる名前を定義する

2 RGB  色を3次元のベクトルとして表す 【色のベクトル表現】
      色をより正確・厳密に定義できる 

・・・同様のことを、単語にも適応する

単語の意味をベクトルで表現する 
自然言語処理において、分散表現と呼ばれる。

「単語の意味は周囲の単語によって構成される」→分布仮説という

つまり、文脈(コンテキスト)により単語の意味は定められる。

コンテキストのサイズ「ウィンドサイズ」という

https___qiita-image-store.s3.amazonaws.com_0_77079_a86bed6d-df90-5274-e905-5041ef465b10.png

<流れ 単語をベクトル化→ ベクトルの類似度を計測→ 次に来る言葉を統計的に選ぶ>

ベクトルの類似度は、コサインの類似度を計測することで求める

”コサイン類似度”・・・「2つのベクトルがどれだけ同じ方向を向いているか」を表す。
2つの直線が逆向き コサイン類似度 −1 
2つの直線が同じ向き コサイン類似度 1

ノルム・・「ベクトルの大きさ」=”2点間の距離”を表す。

L1 ノルム ・・マンハッタン距離 横+縦でしか表せない距離
L2 ノルム ・・斜め(最短)で表した場合の距離

https___qiita-image-store.s3.ap-northeast-1.amazonaws.com_0_386487_76f274f8-c8b0-0443-a872-16b79f5fa87e.png

####形態素解析
形態素とは、 言葉が意味を持つまとまりの単語の最小単位のことです。

形態素解析とは、私たちが普段生活の中で一般的に使っている言葉、つまり「自然言語」を形態素にまで分割する技術のことです。

f67805417f5968f3f2b5d07bc01f42c0-large.jpg

word2vec

word2vecは、大量のテキストデータを解析し、各単語の意味をベクトル表現化する手法
単語をベクトル化することで、
・単語同士の意味の近さを計算
・単語同士の意味を足したり引いたり

例えば、word2vecにより『タコ』、『イカ』、『赤い』、『白い』という言葉を以下のようにベクトル化できたりします。

・タコ (0.4,0.1,0.9,0.4)
・イカ (0.5,0.2,0.3,0.4)
・赤い (0.1,0.0,0.8,0.2)
・白い (0.4,0.1,0.2,0.3)

『タコ』、『イカ』の距離を計算すると、結構近いところにありそうだ。意味も近いのでは?
『タコ』 - 『赤い』 + 『白い』 ≒ 『イカ』 になる。のようなイメージ

1
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
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?