Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CNNによるテキスト分類
Search
けんご
March 02, 2016
Technology
48k
1
Share
CNNによるテキスト分類
けんご
March 02, 2016
More Decks by けんご
See All by けんご
いいたいことちゃんという
tkengo
0
480
スタートアップで役割をまっとうする技術
tkengo
0
220
TableauやLookerだけじゃない!QuickSightで作る顧客向けダッシュボード
tkengo
1
350
toypoインフラリプレースのお話
tkengo
0
97
機械学習を始めるための第一歩
tkengo
0
310
レポート化の落とし穴
tkengo
0
210
PHP and sometimes Machine Learning
tkengo
3
1.2k
機械学習と数学とプログラマのための数学勉強会
tkengo
0
620
指数の裏側
tkengo
1
610
Other Decks in Technology
See All in Technology
イベントで大活躍する電子ペーパー名札 〜その3〜 / ビジュアルプログラミングIoTLT vol.23
you
PRO
0
170
TROCCOで始めるクラウドコストを民主化するためのFinOps
tk3fftk
1
450
JEP 522 Deep Dive - G1 GC同期コスト削減によるスループット向上を徹底検証&解説
tabatad
1
410
組織の中で自分を経営する技術
shoota
0
230
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
400
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
1.8k
Amazon Bedrock 経由の Claude Cowork を試してみよう・MCP にも繋いでみよう
sugimomoto
0
260
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
540
なぜハノーバーメッセに行くべきなのか 〜初参加だから語れること〜
tanakaseiya
0
180
Strands Agents超入門
kintotechdev
1
150
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
610
個人AIからチームAIへ:開発における品質と生産性の再設計
moongift
PRO
0
320
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
710
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Documentation Writing (for coders)
carmenintech
77
5.4k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
320
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
150
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Scaling GitHub
holman
464
140k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
130
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Transcript
2016.03.02 @tkengo CNNによる テキスト分類
目次 • 畳み込みニューラルネット(CNN) • CNNのNLPへの適用 • テキスト分類デモ • 参考
畳み込み ニューラルネット
畳み込みニューラルネット • 人間の視覚野をシミュレーション • 画像認識の分野で広く使われる • カーネルをスライドさせて特徴マップを得る
畳み込みニューラルネット • NLPへCNNを適用してうまくいくのか? • そもそもどうやって適用するのか? • NLPでは既にRNNが良く使われているのでは?
畳み込みニューラルネット • NLPへCNNを適用してうまくいくのか? • そもそもどうやって適用するのか? • NLPでは既にRNNが良く使われているのでは? ➜いくつかの実験で良い結果が出ている ➜このあと説明します ➜使われていると思う。現時点ではCNNが全て
において万能だという結論ではないと思う
CNNのNLPへの適用
CNNのNLPへの適用 • テキスト内の単語をベクトル化する必要がある • BoWモデルやWordEmbeddingモデル • BoWは単純だけど各単語間の関連が皆無 • WordEmbeddingは話題のword2vec vector('Paris')
- vector('France') + vector(‘Italy’) vector(‘Roma’) vector('king') - vector('man') + vector(‘woman') vector('queen') ⇡ ⇡
CNNのNLPへの適用 • 分類したいテキストに含まれる単語をベクトル化 • それを並べた行列がそのテキストの表現 • 単語数が一致しない場合はパディングで埋める 犬も猫も好き 犬 も
猫 も 好き ʜ ʜ ʜ ʜ ʜ トトロが好き トトロ が 好き <PAD> <PAD> ʜ ʜ ʜ ʜ ʜ “トトロ”のベクトル “犬”のベクトル
CNNのNLPへの適用 • カーネルの幅は単語ベクトルと同じ幅に固定 • カーネルの高さは2-5くらいの範囲 • 1単語ずつスライドさせて畳み込んでいく
ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ ʜ
CNNのNLPへの適用 • 畳み込み層の後にはプーリング層も配置 • 活性化関数ReLUを適用した後に全結合層 • 最後にsoftmax関数を適用
テキスト分類デモ
モチベーション • LINE占い内で悩み相談所というサービスを展開 • 悩み内容にはそれぞれカテゴリが紐付いている • 悩み内容のカテゴリを自動分類できないかな? カテゴリ
単純なNNでテキスト分類 • 最初は隠れ層が1つの単純な順伝播型で実装 • 単語ベクトルにはBoWモデルを使用 • 130,000件のデータを数時間かけて学習 • 65%〜70%程度の精度。もう少し精度ほしい
CNNでテキスト分類 • 全部で5層のディープニューラルネット • 単語ベクトルにはWordEmbeddingモデルを使用 • 130,000件のデータを20時間かけて学習 • 75%〜80%程度の精度
参考
参考 • Convolutional Neural Networks for Sentence Classification • http://arxiv.org/pdf/1408.5882v2.pdf
• word2vec • https://code.google.com/archive/p/word2vec/ • 実装 • https://github.com/tkengo/tf/blob/master/cnn_text_classification/train.py • TensorFlow • https://www.tensorflow.org/