itエンジニアのための自然言語処理入門
TRANSCRIPT
![Page 1: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/1.jpg)
IT エンジニアのための自然言語処理入門三上 悟
IT エンジニアのための Deep Learning >> 番外編 LT
![Page 2: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/2.jpg)
三上 悟 (Mikami Satoru)CTO at Innova
Twitter: @saicologicQiita: http://qiita.com/saicologicFacebook: https://www.facebook.com/saicologic
Web Engineer (PHP, Ruby, Python) 10 Yearデザイン工学 4 Year機械学習(自然言語処理)は、独学中 1 Year
興味:Machine Learning for ArtistsMachine Learning for Marketing
![Page 3: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/3.jpg)
自然言語処理とは自然言語 (natural language) とは、日本語、英語、フランス語など、われわれ人間が日常的に話し聞き、読み書きしている言語のことをいう。人工言語と区別するため、ただ「言語」というのではなく「自然言語」と呼ぶこととなった。自然言語をコンピューター上で扱う技術を自然言語処理(natural language processing) という。
著 : 奥村学自然言語処理の基礎
![Page 4: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/4.jpg)
概要• 辞書とコーパス (Dictionaly&Corpus)• 形態素解析 (morphological analysis)• 構文解析 (syntactic analysis)• 意味解析 (semantic analysis)• 文脈解析 (contextural analysis)
著 : 奥村学自然言語処理の基礎
![Page 5: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/5.jpg)
応用• 機械翻訳 (Google Translate)• 情報検索 (Google Search)• テキスト分類 (SmartNews)• 情報抽出 ( 出来事、日付、住所など)– 固有表現抽出
![Page 6: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/6.jpg)
単行本(ソフトカバー) : 164 ページ
![Page 7: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/7.jpg)
Web エンジニアのための自然言語処理 クラウドサービス
![Page 8: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/8.jpg)
Google CLOUD NATURAL LANGUAGE API (BETA)
• 構文解析• エンティティ認識(固有表現抽出)• 感情分析(日本語は未対応)• マルチ言語(日本語含む 80 カ国語以上)
https://cloud.google.com/natural-language/
![Page 9: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/9.jpg)
Yahoo! JAPANテキスト解析 WebAPI
• 日本語形態素解析• かな漢字変換• ルビ振り• 校正支援• 日本語係り受け解析• キーフレーズ抽出
http://developer.yahoo.co.jp/webapi/jlp/
![Page 10: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/10.jpg)
IBM Bluemix Watson API
• AlchemyAPI• Concept Expansion• Concept Insights• Dialog• Language Translation• Natural Language ClassifierMore….
IBM Bluemix の Watson API を使ってみた雑感http://qiita.com/knao124/items/60dc430fc31bf85b0e60
![Page 11: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/11.jpg)
Web エンジニアのための自然言語処理 学習方法
![Page 12: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/12.jpg)
学習方法
言語処理 100 本ノック 2015http://www.cl.ecei.tohoku.ac.jp/nlp100/
![Page 13: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/13.jpg)
学習方法
![Page 14: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/14.jpg)
学習方法
自然言語処理を独習したい人のためにhttp://cl.sd.tmu.ac.jp/prospective/prerequisite
![Page 15: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/15.jpg)
Web エンジニアのための自然言語処理 本
![Page 16: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/16.jpg)
本
http://cl.sd.tmu.ac.jp/prospective/readings
首都大学東京 自然言語処理研究室(小町研)自然言自然言語処理を学ぶ推薦書籍
![Page 17: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/17.jpg)
Web エンジニアのための自然言語処理 データセット
![Page 18: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/18.jpg)
データセットMovielens映画のレビュー 機械学習系の本でよく使われるhttp://grouplens.org/datasets/movielens/
NII(国立情報学研究所 )Yahoo/ 楽天 / ニコニコ動画 / リクルート / クックパッド /HOME’shttp://www.nii.ac.jp/dsc/idr/datalist.html
NICT(国立研究開発法人情報通信研究機構 )日本語 WordNethttp://nlpwww.nict.go.jp/wn-ja/
東北大学 (乾・岡崎研究室 )Open Resources (Yahoo! 知恵袋機能表現タグ , 日本語極性辞書など )http://www.cl.ecei.tohoku.ac.jp/index.php?Open%20Resources#o35a04e2
![Page 19: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/19.jpg)
Web エンジニアのための自然言語処理 アルゴリズム
![Page 20: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/20.jpg)
アルゴリズム• 基本
– TF-IDF( 単語の重み付け、特徴量、特徴抽出 )• 次元削減
– PCA 主成分分析– LSA(Latent Semantic Analysis)– t-SNE
• 機械学習– 教師あり学習
• Naive Bayes( 文章分類 )• K-NN(k-nearest neighbor)( 文章分類 )• SVM(Support Vector Machine)( 文章分類 )• CRF(Conditional Random Fields) ( 固有表現抽出、本文抽出 )
– 教師なし学習• K-means( 文章クラスタリング )• Word2Vec( 分散表現 ( 単語埋め込み )• LDA( カテゴリ分類 )
![Page 21: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/21.jpg)
Web エンジニアのための自然言語処理 辞書・ライブラリ
![Page 22: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/22.jpg)
ライブラリ• Scikit-learn(Naive Bayes more..)• Gensim(LSI/LDA/Word2vec/doc2vec)• Mecab( 形態素解析 ) + NEologd( 辞書 )• CaboCha( 係り受け解析 )• KNP( 構文・格・照応解析 )• NLTK(Natural Language Toolkit)• ExtractContent(Web ページの本文抽出 )
全て、 Python から使えます。
![Page 23: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/23.jpg)
Web エンジニアのための自然言語処理 Neural Network
![Page 24: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/24.jpg)
Neural Network
• Neural Language Model– Word2Vec (Vector Representations of Words)– Seq2Seq(Sequence-to-Sequence)– RNN(Recurrent Neural Network)• LSTM(Long Short-Term Memory)
TensorFlow Tutorial Language and Sequence Processinghttps://www.tensorflow.org/versions/master/tutorials/index.html
![Page 25: Itエンジニアのための自然言語処理入門](https://reader030.vdocuments.mx/reader030/viewer/2022033021/58a33a741a28ab9b6d8b6427/html5/thumbnails/25.jpg)
ご静聴ありがとうございました。