Submit Search
Upload
TensorFlowを使ってテキストをクラス分類してみた
•
34 likes
•
21,141 views
Y
Yuya Kato
Follow
2016年2月28日の「GDG神戸 機械学習勉強会 [AlphaGoの論文を読む会]」の発表資料。
Read less
Read more
Software
Report
Share
Report
Share
1 of 60
Download now
Download to read offline
Recommended
【DL輪読会】Segment Anything
【DL輪読会】Segment Anything
Deep Learning JP
【DL輪読会】Mastering Diverse Domains through World Models
【DL輪読会】Mastering Diverse Domains through World Models
Deep Learning JP
Kaggleのテクニック
Kaggleのテクニック
Yasunori Ozaki
Visual-SLAM技術を利用した果樹園の3次元圃場地図の作成
Visual-SLAM技術を利用した果樹園の3次元圃場地図の作成
Masahiro Tsukano
Jenkins と groovy
Jenkins と groovy
Kohsuke Kawaguchi
semantic segmentation サーベイ
semantic segmentation サーベイ
yohei okawa
SLAM入門 第2章 SLAMの基礎
SLAM入門 第2章 SLAMの基礎
yohei okawa
深層学習を用いた音源定位、音源分離、クラス分類の統合~環境音セグメンテーション手法の紹介~
深層学習を用いた音源定位、音源分離、クラス分類の統合~環境音セグメンテーション手法の紹介~
Yui Sudo
Recommended
【DL輪読会】Segment Anything
【DL輪読会】Segment Anything
Deep Learning JP
【DL輪読会】Mastering Diverse Domains through World Models
【DL輪読会】Mastering Diverse Domains through World Models
Deep Learning JP
Kaggleのテクニック
Kaggleのテクニック
Yasunori Ozaki
Visual-SLAM技術を利用した果樹園の3次元圃場地図の作成
Visual-SLAM技術を利用した果樹園の3次元圃場地図の作成
Masahiro Tsukano
Jenkins と groovy
Jenkins と groovy
Kohsuke Kawaguchi
semantic segmentation サーベイ
semantic segmentation サーベイ
yohei okawa
SLAM入門 第2章 SLAMの基礎
SLAM入門 第2章 SLAMの基礎
yohei okawa
深層学習を用いた音源定位、音源分離、クラス分類の統合~環境音セグメンテーション手法の紹介~
深層学習を用いた音源定位、音源分離、クラス分類の統合~環境音セグメンテーション手法の紹介~
Yui Sudo
CNNの構造最適化手法について
CNNの構造最適化手法について
MasanoriSuganuma
[DL輪読会]Shaping Belief States with Generative Environment Models for RL
[DL輪読会]Shaping Belief States with Generative Environment Models for RL
Deep Learning JP
Triplet Loss 徹底解説
Triplet Loss 徹底解説
tancoro
[DL輪読会]FOTS: Fast Oriented Text Spotting with a Unified Network
[DL輪読会]FOTS: Fast Oriented Text Spotting with a Unified Network
Deep Learning JP
SLAM勉強会(PTAM)
SLAM勉強会(PTAM)
Masaya Kaneko
モデル高速化百選
モデル高速化百選
Yusuke Uchida
ORB-SLAMの手法解説
ORB-SLAMの手法解説
Masaya Kaneko
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
Yusuke Uchida
顔認識アルゴリズム:Constrained local model を調べてみた
顔認識アルゴリズム:Constrained local model を調べてみた
Jotaro Shigeyama
グラフニューラルネットワーク入門
グラフニューラルネットワーク入門
ryosuke-kojima
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
Jun Okumura
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
SSII
MS COCO Dataset Introduction
MS COCO Dataset Introduction
Shinagawa Seitaro
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
Hironobu Fujiyoshi
SPACE: Unsupervised Object-Oriented Scene Representation via Spatial Attentio...
SPACE: Unsupervised Object-Oriented Scene Representation via Spatial Attentio...
Hideki Tsunashima
AlphaGo Zero 解説
AlphaGo Zero 解説
suckgeun lee
Automatic Mixed Precision の紹介
Automatic Mixed Precision の紹介
Kuninobu SaSaki
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
takaya imai
G2o
G2o
Fujimoto Keisuke
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
Masahiro Suzuki
TensorFlowを使ってテキストをクラス分類してみたら精度96.8%の分類器を簡単に得ることができた話
TensorFlowを使ってテキストをクラス分類してみたら精度96.8%の分類器を簡単に得ることができた話
Yuya Kato
TensorFlowで会話AIを作ってみた。
TensorFlowで会話AIを作ってみた。
tak9029
More Related Content
What's hot
CNNの構造最適化手法について
CNNの構造最適化手法について
MasanoriSuganuma
[DL輪読会]Shaping Belief States with Generative Environment Models for RL
[DL輪読会]Shaping Belief States with Generative Environment Models for RL
Deep Learning JP
Triplet Loss 徹底解説
Triplet Loss 徹底解説
tancoro
[DL輪読会]FOTS: Fast Oriented Text Spotting with a Unified Network
[DL輪読会]FOTS: Fast Oriented Text Spotting with a Unified Network
Deep Learning JP
SLAM勉強会(PTAM)
SLAM勉強会(PTAM)
Masaya Kaneko
モデル高速化百選
モデル高速化百選
Yusuke Uchida
ORB-SLAMの手法解説
ORB-SLAMの手法解説
Masaya Kaneko
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
Yusuke Uchida
顔認識アルゴリズム:Constrained local model を調べてみた
顔認識アルゴリズム:Constrained local model を調べてみた
Jotaro Shigeyama
グラフニューラルネットワーク入門
グラフニューラルネットワーク入門
ryosuke-kojima
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
Jun Okumura
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
SSII
MS COCO Dataset Introduction
MS COCO Dataset Introduction
Shinagawa Seitaro
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
Hironobu Fujiyoshi
SPACE: Unsupervised Object-Oriented Scene Representation via Spatial Attentio...
SPACE: Unsupervised Object-Oriented Scene Representation via Spatial Attentio...
Hideki Tsunashima
AlphaGo Zero 解説
AlphaGo Zero 解説
suckgeun lee
Automatic Mixed Precision の紹介
Automatic Mixed Precision の紹介
Kuninobu SaSaki
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
takaya imai
G2o
G2o
Fujimoto Keisuke
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
Masahiro Suzuki
What's hot
(20)
CNNの構造最適化手法について
CNNの構造最適化手法について
[DL輪読会]Shaping Belief States with Generative Environment Models for RL
[DL輪読会]Shaping Belief States with Generative Environment Models for RL
Triplet Loss 徹底解説
Triplet Loss 徹底解説
[DL輪読会]FOTS: Fast Oriented Text Spotting with a Unified Network
[DL輪読会]FOTS: Fast Oriented Text Spotting with a Unified Network
SLAM勉強会(PTAM)
SLAM勉強会(PTAM)
モデル高速化百選
モデル高速化百選
ORB-SLAMの手法解説
ORB-SLAMの手法解説
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
SuperGlue;Learning Feature Matching with Graph Neural Networks (CVPR'20)
顔認識アルゴリズム:Constrained local model を調べてみた
顔認識アルゴリズム:Constrained local model を調べてみた
グラフニューラルネットワーク入門
グラフニューラルネットワーク入門
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
深層強化学習の分散化・RNN利用の動向〜R2D2の紹介をもとに〜
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
SSII2021 [TS1] Visual SLAM ~カメラ幾何の基礎から最近の技術動向まで~
MS COCO Dataset Introduction
MS COCO Dataset Introduction
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
SPACE: Unsupervised Object-Oriented Scene Representation via Spatial Attentio...
SPACE: Unsupervised Object-Oriented Scene Representation via Spatial Attentio...
AlphaGo Zero 解説
AlphaGo Zero 解説
Automatic Mixed Precision の紹介
Automatic Mixed Precision の紹介
画像認識の初歩、SIFT,SURF特徴量
画像認識の初歩、SIFT,SURF特徴量
G2o
G2o
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
深層生成モデルと世界モデル,深層生成モデルライブラリPixyzについて
Viewers also liked
TensorFlowを使ってテキストをクラス分類してみたら精度96.8%の分類器を簡単に得ることができた話
TensorFlowを使ってテキストをクラス分類してみたら精度96.8%の分類器を簡単に得ることができた話
Yuya Kato
TensorFlowで会話AIを作ってみた。
TensorFlowで会話AIを作ってみた。
tak9029
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
徹 上野山
機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話
Ryota Kamoshida
ハンズオン セッション 3: リカレント ニューラル ネットワーク入門
ハンズオン セッション 3: リカレント ニューラル ネットワーク入門
NVIDIA Japan
TensorFlowで遊んでみよう!
TensorFlowで遊んでみよう!
Kei Hirata
画像解析最前線!WatsonとTensorFlowを比較してみた
画像解析最前線!WatsonとTensorFlowを比較してみた
softlayerjp
Ibm Watson Analyticsで簡易Twitter分析
Ibm Watson Analyticsで簡易Twitter分析
IBM Analytics Japan
Ibm watson analyticsでリレーショナル・データベースのデータを利用する
Ibm watson analyticsでリレーショナル・データベースのデータを利用する
IBM Analytics Japan
Watsonにあなたの知識を教えよう
Watsonにあなたの知識を教えよう
Akiko Murakami
IBM Bluemix × Watson でMashup Hackathon (API説明)
IBM Bluemix × Watson でMashup Hackathon (API説明)
Masaya Fujita
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
Mitsutoshi Kiuchi
Watson analytics ご紹介
Watson analytics ご紹介
IBMソリューション
TwitterデータをdashDBにロードする方法
TwitterデータをdashDBにロードする方法
IBM Analytics Japan
Watson活用事例~Watsonハッカソンの例を通じて~
Watson活用事例~Watsonハッカソンの例を通じて~
Hiroki Nakayama
Watson Explorerを使ったテキストマイニング
Watson Explorerを使ったテキストマイニング
Hori Tasuku
深層学習とTensorFlow入門
深層学習とTensorFlow入門
tak9029
IBMワトソン 勉強会 20161121a
IBMワトソン 勉強会 20161121a
Maho Takara
Deep Learningによる画像認識革命 ー歴史・最新理論から実践応用までー
Deep Learningによる画像認識革命 ー歴史・最新理論から実践応用までー
nlab_utokyo
Tensor flow勉強会 (ayashiminagaranotensorflow)
Tensor flow勉強会 (ayashiminagaranotensorflow)
tak9029
Viewers also liked
(20)
TensorFlowを使ってテキストをクラス分類してみたら精度96.8%の分類器を簡単に得ることができた話
TensorFlowを使ってテキストをクラス分類してみたら精度96.8%の分類器を簡単に得ることができた話
TensorFlowで会話AIを作ってみた。
TensorFlowで会話AIを作ってみた。
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話
ハンズオン セッション 3: リカレント ニューラル ネットワーク入門
ハンズオン セッション 3: リカレント ニューラル ネットワーク入門
TensorFlowで遊んでみよう!
TensorFlowで遊んでみよう!
画像解析最前線!WatsonとTensorFlowを比較してみた
画像解析最前線!WatsonとTensorFlowを比較してみた
Ibm Watson Analyticsで簡易Twitter分析
Ibm Watson Analyticsで簡易Twitter分析
Ibm watson analyticsでリレーショナル・データベースのデータを利用する
Ibm watson analyticsでリレーショナル・データベースのデータを利用する
Watsonにあなたの知識を教えよう
Watsonにあなたの知識を教えよう
IBM Bluemix × Watson でMashup Hackathon (API説明)
IBM Bluemix × Watson でMashup Hackathon (API説明)
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
2016/4/16 Softlayer Bluemix Community Festa 2016講演資料
Watson analytics ご紹介
Watson analytics ご紹介
TwitterデータをdashDBにロードする方法
TwitterデータをdashDBにロードする方法
Watson活用事例~Watsonハッカソンの例を通じて~
Watson活用事例~Watsonハッカソンの例を通じて~
Watson Explorerを使ったテキストマイニング
Watson Explorerを使ったテキストマイニング
深層学習とTensorFlow入門
深層学習とTensorFlow入門
IBMワトソン 勉強会 20161121a
IBMワトソン 勉強会 20161121a
Deep Learningによる画像認識革命 ー歴史・最新理論から実践応用までー
Deep Learningによる画像認識革命 ー歴史・最新理論から実践応用までー
Tensor flow勉強会 (ayashiminagaranotensorflow)
Tensor flow勉強会 (ayashiminagaranotensorflow)
Similar to TensorFlowを使ってテキストをクラス分類してみた
VSM(ValueStreamMapping)によって 実現できたリリースまでに268.5hかかっていた時間を54.5hに短縮できた秘訣
VSM(ValueStreamMapping)によって 実現できたリリースまでに268.5hかかっていた時間を54.5hに短縮できた秘訣
i35_267 Ishigaki
JAWSUG 20210128
JAWSUG 20210128
陽平 山口
みんなが知らない pytorch-pfn-extras
みんなが知らない pytorch-pfn-extras
Takuji Tahara
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
Takuya Ueda
最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-
Shintaro Fukushima
GAE/GoでWebアプリ開発入門
GAE/GoでWebアプリ開発入門
Takuya Ueda
OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介
Hiromu Yakura
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
cvpaper. challenge
大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん
大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん
Akira Shibata
異業種でのテスト自動化の実際
異業種でのテスト自動化の実際
Satsuki Urayama
それっぽく感じる機械学習
それっぽく感じる機械学習
Yuki Igarashi
GANsの最新動向: 応用領域でのGANs (CVPR 2018 完全読破チャレンジ報告会)
GANsの最新動向: 応用領域でのGANs (CVPR 2018 完全読破チャレンジ報告会)
cvpaper. challenge
Azure のポータル画面で、AI フレーバな BOT の作成ハンズオン
Azure のポータル画面で、AI フレーバな BOT の作成ハンズオン
Yasuaki Matsuda
Catchでお手軽にテストコード書いてみよう
Catchでお手軽にテストコード書いてみよう
You&I
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
Ryosuke Yamazaki
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
Takuya Ueda
Extension & Triggerを活用しよう
Extension & Triggerを活用しよう
Tsukasa Takagi
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
i35_267 Ishigaki
Mashup Awards は新しい技術を試す絶好の機会です
Mashup Awards は新しい技術を試す絶好の機会です
Nobuhiro Nakajima
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
Yosuke Mizutani
Similar to TensorFlowを使ってテキストをクラス分類してみた
(20)
VSM(ValueStreamMapping)によって 実現できたリリースまでに268.5hかかっていた時間を54.5hに短縮できた秘訣
VSM(ValueStreamMapping)によって 実現できたリリースまでに268.5hかかっていた時間を54.5hに短縮できた秘訣
JAWSUG 20210128
JAWSUG 20210128
みんなが知らない pytorch-pfn-extras
みんなが知らない pytorch-pfn-extras
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-
GAE/GoでWebアプリ開発入門
GAE/GoでWebアプリ開発入門
OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん
大規模言語モデル開発を支える分散学習技術 - 東京工業大学横田理央研究室の藤井一喜さん
異業種でのテスト自動化の実際
異業種でのテスト自動化の実際
それっぽく感じる機械学習
それっぽく感じる機械学習
GANsの最新動向: 応用領域でのGANs (CVPR 2018 完全読破チャレンジ報告会)
GANsの最新動向: 応用領域でのGANs (CVPR 2018 完全読破チャレンジ報告会)
Azure のポータル画面で、AI フレーバな BOT の作成ハンズオン
Azure のポータル画面で、AI フレーバな BOT の作成ハンズオン
Catchでお手軽にテストコード書いてみよう
Catchでお手軽にテストコード書いてみよう
Java でつくる低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
Extension & Triggerを活用しよう
Extension & Triggerを活用しよう
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
チームを『組成→安定→高速→最適化』に導くKAIZEN メソッド郡
Mashup Awards は新しい技術を試す絶好の機会です
Mashup Awards は新しい技術を試す絶好の機会です
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
TensorFlowを使ってテキストをクラス分類してみた
1.
TensorFlowを使って テキストをクラス分類してみた 2016年2月28日 GDG神戸 機械学習勉強会
[AlphaGoの論文を読む会] 那由多屋 加藤 勇也 1
2.
http://goo.gl/mQHA9Y http://www.slideshare.net/YuyaKato3/tensorflow-58795721 2
3.
コードはこちら: https://goo.gl/jqWc8V https://github.com/nayutaya/20160228-gdg-kobe 3
4.
本日のお品書き • 自己紹介 /
機械学習との関わり • 取り組んだ問題 • 実装 • 評価 4
5.
自己紹介 5
6.
加藤 勇也 6 (かとう ゆうや
/ Yuya Kato) 株式会社 那由多屋 代表取締役 (2007年∼) な ゆ た や twitter: nayutaya GitHub: nayutaya Facebook: yuyakato1984 ソフトウェア開発 (2000年∼) 大分出身・神戸在住 (2006年∼) 趣味: ・ものづくり全般 (DIY、電子工作) ・3Dプリンタ (2013年∼) ・ボルダリング (2011年∼)
7.
機械学習との関わり 7
8.
『集合知プログラミング』 8 著者: Toby Segaran 発行:
2008年7月 ISBN: 9784873113647 2008年から2009年にかけて読んだ 数学が苦手な僕でも、コードは読める 各種アルゴリズムをPythonコードで紹介 (例: k近傍法 / 単純ベイズ分類器 / SVM / ニューラルネットワーク / 焼きなまし法) 機械学習の本はこれだけ… 一部のコードをRubyに移植した
9.
本題 9
10.
取り組んだ問題 10
11.
TensorFlowを使って テキストをクラス分類してみた 11
12.
取り組んだ問題 12 ある文字列を入力した時に、 どのカテゴリに属すかを判定する 分類器文字列 カテゴリ
13.
取り組んだ問題 - 具体的に 13 ある記事タイトルを入力した時に、 鉄道に関する記事か否かを判定する 分類器記事タイトル
鉄道 or その他
14.
取り組んだ問題 - 具体例 14 (記事タイトルはasahi.comより引用) “JR九州、半数以上が無人駅に 3月のダイヤ改定受け” 鉄道 “電気・ガス料金、4月値下げ 大手各社、原油安受け” その他
15.
なぜこの問題を選んだか? 15 手元に丁度良いデータがあったから Androidアプリ 「鉄ニュース」 単純ベイズ分類器、 多層パーセプトロンを Rubyで実装 (2010年∼2016年)
16.
実装 16
17.
指針 • できるだけシンプルな方法を選択する • KISSの原則
「Keep it simple, stupid!」 • できるだけ具体的な数値を示す • できるだけ再現性を高める • AWS EC2上で評価 • コードは公開(残念ながらデータは非公開) 17 シンプルにしておけ!ばかやろう
18.
説明しないこと • 深層学習 (Deep
Learning) • RNN: Recurrent Neural Network • RNN: Recursive Neural Network • 高度な特徴化 • word2vecのような分散表現 (Word Embedding, Distributed Word Representation) 18
19.
手段 19
20.
TensorFlowを使って テキストをクラス分類してみた 20
21.
TensorFlow https://www.tensorflow.org/ 21 Google社がオープンソースソフトウェア として公開(2015年9月∼) 汎用計算ライブラリ
22.
MNIST For ML
Beginners https://www.tensorflow.org/versions/r0.7/tutorials/mnist/beginners/index.html 22 (エムニスト)
23.
MNIST For ML
Beginners 23 手書き文字認識 28 * 28 px = 784次元 10クラスに分類 Softmax回帰 (Softmax Regression) 5 0 4 1 (画像は https://www.tensorflow.org/versions/r0.7/tutorials/mnist/beginners/index.html より引用)
24.
Softmax回帰 24 W: 重み b:
バイアスx: 入力 y: 出力 ピクセル輝度 0~9 (画像は https://www.tensorflow.org/versions/r0.7/tutorials/mnist/beginners/index.html より引用)
25.
どうやってテキストを入力する? 25 「This is a
pen.」 テキストは可変長 入力ノード数は学習時に決定入力は実数 (画像は https://www.tensorflow.org/versions/r0.7/tutorials/mnist/beginners/index.html より引用)
26.
TensorFlowを使って テキストをクラス分類してみた 26
27.
自然言語処理 • 単語の特徴化 /
文の特徴化 • 単語化 • 形態素解析 • N-gram言語モデル 27
28.
特徴化 28 (特徴抽出, Feature extraction) 対象から特徴量を求めること リンゴの場合: 丸い
→ 真球率 赤い → 色相・彩度 Tom Gill, CC BY-NC-ND https://www.flickr.com/photos/lapstrake/2899950676
29.
単語の特徴化 - One-hot表現 29 (One-hot
Representation) 「This is a pen.」 This This That The Thou . . . . . . [] 0 0 0 1 . . . . . . [] 辞書 辞書と 同サイズ の ベクトル
30.
文の特徴化 30 「This is a
pen.」 This is pen Thou . . . . . . [] a 1 1 1 1 . . . . . .[] 0 辞書と 同サイズ の ベクトル スパース(疎, スカスカ) 順序が失われる 頻度が失われる 未知語が扱えない 手法の名称は不明…
31.
単語化 31 (トークン化, Tokenize) 「This is
a pen.」 「本日は晴天なり。」 英語は分かち書き されている 日本語は分かち書き されていない
32.
形態素解析 32 名詞 助詞 名詞
助動詞 補助記号 (Morphological Analysis) 「本日は晴天なり。」 今回は形態素解析ライブラリ「janome」を使用
33.
N-gram言語モデル 33 「本日は晴天なり。」 「本日は晴天なり。」 形態素単位 文字単位 1-gram (Unigram) 2-gram (Bigram) 3-gram
(Trigram) (N-gram language model) 1-gram (Unigram) 2-gram (Bigram) 3-gram (Trigram)
34.
評価 34
35.
実行環境 • Amazon EC2 •
インスタンスタイプ: r3.xlarge (R3: メモリ最適化) • 仮想CPU: 4 • メモリ: 30.5 GiB • 料金: $0.333 / 時間 (約38円) 35
36.
学習データ • 「鉄ニュース」の学習で用いた記事のタイトル • 鉄道:
6,321件 • その他: 131,069件 • それぞれ1,000件 (計2,000件) をテストデータとして使用 • 残りを教師データとして使用 36
37.
モデル / パラメータ
(1) • モデル: Softmax回帰 • 入力層ノード数: 単語数 / 出力層ノード数: 2 (鉄道 / その他) • 学習ステップ数: 500 • ミニバッチサイズ: 100件 (鉄道: 50 / その他: 50) • 最急降下法 (学習率: 0.01) • tf.train.GradientDescentOptimizer 37
38.
パターン (1) 38 文字単位 形態素単位 1-gram 2-gram 3-gram = 計6パターン
39.
評価結果 (1) 39 手法 前処理 時間 学習 時間 単語数 辞書 サイズ モデル サイズ 精度 文字 1-gram 0.2 min
2.0 min 2,553 9.8 KiB 20 KiB 96.8% 文字 2-gram 0.3 min 9.7 min 60,728 398 KiB 475 KiB 95.7% 文字 3-gram 0.4 min 15.0 min 95,537 868 KiB 747 KiB 90.3% 形態素 1-gram 9.3 min 5.2 min 16,846 135 KiB 132 KiB 95.9% 形態素 2-gram 11.6 min 10.8 min 56,686 575 KiB 443 KiB 87.1% 形態素 3-gram 10.9 min 5.8 min 33,030 430 KiB 258 KiB 72.9% 処理時間はCPU時間
40.
TensorFlow といえば 40
41.
ニューラルネットワーク 41 (NN: Neural Network)
42.
多層パーセプトロン 42 (MLP: Multi-Layer Perceptron) (画像は
http://sinhrks.hatenablog.com/entry/2014/11/30/192940 より引用)
43.
モデル / パラメータ
(2) • モデル: 多層パーセプトロン (入力層 - 隠れ層 - 出力層) • 入力層ノード数: 単語数 / 出力層ノード数: 2 • 隠れ層ノード数: 100 • 活性化関数: ReLU (隠れ層) / Softmax (出力層) • 学習ステップ数: 500 • ミニバッチサイズ: 100件 (鉄道: 50 / その他: 50) 43
44.
パターン (2) 44 最急降下法 (学習率:
0.01) tf.train.GradientDescentOptimizer Adam法 (?) (学習率: 0.01) tf.train.AdamOptimizer 多層パーセプトロン 文字単位2-gram = 計2パターン
45.
評価結果 (2) 45 手法 前処理 時間 学習 時間 単語数 辞書 サイズ モデル サイズ 精度 Softmax 回帰 (再掲) 0.3 min
9.7 min 60,728 398 KiB 475 KiB 95.7% MLP 最急降下法 0.3 min 20.6 min 60,728 398 KiB 23 MiB 95.3% MLP Adam 0.5 min 21.9 min 60,728 398 KiB 70 MiB 95.9% 処理時間はCPU時間
46.
評価してみて • 最もシンプルな実装(文字単位1-gram)が最高精度 • 2-gram、3-gram、MLPは500ステップでは足りなさそう •
Adam法は良さげ • アルゴリズムの選択が難しい • ハイパーパラメータの決定が難しい • TensorFlow、可愛いよ 46
47.
実装時の工夫 • ステップ毎にサマリを出力すると時間がかかる • 5ステップ毎に出力するようにした •
出現頻度5回未満を削除 • そうでないと、3-gramでMemoryError 47
48.
今後トライしてみたいこと • 多値クラス分類 • 単語の分散表現
→ word2vec • 単語の選択、次元削減 → TF-IDF • 特徴化せずに処理 → RNN, LSTM, HTM • HTM: Hierarchical Temporal Memory • 高速化 → GPUインスタンス 48
49.
まとめ • 単純な問題であれば、単純なアルゴリズムでOK • 自然言語処理の初歩的な手法 •
TensorFlowは素敵な道具 49
50.
発表は以上です 50
51.
51
52.
以降、参考データ 52
53.
文字単位1-gram + Softmax回帰 53
54.
文字単位2-gram + Softmax回帰 54
55.
文字単位3-gram + Softmax回帰 55
56.
形態素単位1-gram + Softmax回帰 56
57.
形態素単位2-gram + Softmax回帰 57
58.
形態素単位3-gram + Softmax回帰 58
59.
文字単位2-gram + 多層パーセプトロン +
最急降下法 59
60.
文字単位2-gram + 多層パーセプトロン +
Adam法 60
Download now