【動画講座】Python による「スクレイピング & 自然言語処理」入門

リンク

https://www.youtube.com/watch?v=exupXudARco
https://github.com/Salinger/found_it_project_06_crwl

画像


内容

自然言語処理を行うと、スクレイピングで集めたデータをうまく扱うことが出来る。

BoW

Bog of Wordsは集めた文書を位置関係を無視してとりあえずカウントして
単語をキーとする行列にする。

行列にすることで後々のデータ分析を楽にできる。

行列計算

BoWで単語の出現頻度をカウントしたら

二次元行列を作る。

S[i][j] = 文書iに単語jが何回含まれるか?という行列を作る。

これによって、TFIDFなどができる。

クラスタリング

TFIDFなどで、文書の特徴的な単語が取り出せる。
このとき、特徴的な単語や出現頻度の大きい単語を分析することで、
単語ごとに共通・同じグループかのクラスタリングができれば、元のデータもクラスタリングできるのではないだろうか・・・?ができる。

Standrd Scalar

どうやら、TfidfVectorizerと同じパッケージに、Standard Scalarが存在し、正規化までやってくれるらしい、便利だなぁ

PCA

PCAは、大きすぎる次元を圧縮してくれるらしい。
単語行列は多くが素であり、すべてを含んでいることはありえない。

ここで、次元圧縮をすると、おいしい概念の単語などがひとかたまりにでき、
これによって、クラスタリングが行える。