Enviar pesquisa
Carregar
Pythonとdeep learningで手書き文字認識
•
Transferir como PPTX, PDF
•
163 gostaram
•
198,269 visualizações
Ken Morishita
Seguir
この続きでTheanoの使い方について簡単に書きました:http://qiita.com/items/3fbf6af714c1f66f99e9
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 59
Baixar agora
Recomendados
機械学習 入門
機械学習 入門
Hayato Maki
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks
Yuya Unno
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
Seiichi Uchida
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Yasutomo Kawanishi
深層強化学習と実装例
深層強化学習と実装例
Deep Learning Lab(ディープラーニング・ラボ)
Skip Connection まとめ(Neural Network)
Skip Connection まとめ(Neural Network)
Yamato OKAMOTO
一般向けのDeep Learning
一般向けのDeep Learning
Preferred Networks
最適輸送入門
最適輸送入門
joisino
Recomendados
機械学習 入門
機械学習 入門
Hayato Maki
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks
Yuya Unno
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
Seiichi Uchida
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Pythonによる機械学習入門〜基礎からDeep Learningまで〜
Yasutomo Kawanishi
深層強化学習と実装例
深層強化学習と実装例
Deep Learning Lab(ディープラーニング・ラボ)
Skip Connection まとめ(Neural Network)
Skip Connection まとめ(Neural Network)
Yamato OKAMOTO
一般向けのDeep Learning
一般向けのDeep Learning
Preferred Networks
最適輸送入門
最適輸送入門
joisino
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tatsuya Tojima
AlphaGo Zero 解説
AlphaGo Zero 解説
suckgeun lee
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
Motoya Wakiyama
研究分野をサーベイする
研究分野をサーベイする
Takayuki Itoh
畳み込みニューラルネットワークの研究動向
畳み込みニューラルネットワークの研究動向
Yusuke Uchida
深層学習の数理
深層学習の数理
Taiji Suzuki
最適化超入門
最適化超入門
Takami Sato
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
Daiyu Hatakeyama
機械学習の理論と実践
機械学習の理論と実践
Preferred Networks
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
4 データ間の距離と類似度
4 データ間の距離と類似度
Seiichi Uchida
強化学習その1
強化学習その1
nishio
画像処理基礎
画像処理基礎
大貴 末廣
[DL輪読会]Deep Learning 第15章 表現学習
[DL輪読会]Deep Learning 第15章 表現学習
Deep Learning JP
クラシックな機械学習の入門 8. クラスタリング
クラシックな機械学習の入門 8. クラスタリング
Hiroshi Nakagawa
[DL輪読会]Hindsight Experience Replay
[DL輪読会]Hindsight Experience Replay
Deep Learning JP
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII
グラフィカルモデル入門
グラフィカルモデル入門
Kawamoto_Kazuhiko
強化学習その3
強化学習その3
nishio
【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法
Deep Learning JP
scikit-learnを用いた機械学習チュートリアル
scikit-learnを用いた機械学習チュートリアル
敦志 金谷
Chainerチュートリアル -v1.5向け- ViEW2015
Chainerチュートリアル -v1.5向け- ViEW2015
Ryosuke Okuta
Mais conteúdo relacionado
Mais procurados
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tatsuya Tojima
AlphaGo Zero 解説
AlphaGo Zero 解説
suckgeun lee
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
Motoya Wakiyama
研究分野をサーベイする
研究分野をサーベイする
Takayuki Itoh
畳み込みニューラルネットワークの研究動向
畳み込みニューラルネットワークの研究動向
Yusuke Uchida
深層学習の数理
深層学習の数理
Taiji Suzuki
最適化超入門
最適化超入門
Takami Sato
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
Daiyu Hatakeyama
機械学習の理論と実践
機械学習の理論と実践
Preferred Networks
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
Recruit Technologies
4 データ間の距離と類似度
4 データ間の距離と類似度
Seiichi Uchida
強化学習その1
強化学習その1
nishio
画像処理基礎
画像処理基礎
大貴 末廣
[DL輪読会]Deep Learning 第15章 表現学習
[DL輪読会]Deep Learning 第15章 表現学習
Deep Learning JP
クラシックな機械学習の入門 8. クラスタリング
クラシックな機械学習の入門 8. クラスタリング
Hiroshi Nakagawa
[DL輪読会]Hindsight Experience Replay
[DL輪読会]Hindsight Experience Replay
Deep Learning JP
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII
グラフィカルモデル入門
グラフィカルモデル入門
Kawamoto_Kazuhiko
強化学習その3
強化学習その3
nishio
【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法
Deep Learning JP
Mais procurados
(20)
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
AlphaGo Zero 解説
AlphaGo Zero 解説
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
はじめてのパターン認識 第5章 k最近傍法(k_nn法)
研究分野をサーベイする
研究分野をサーベイする
畳み込みニューラルネットワークの研究動向
畳み込みニューラルネットワークの研究動向
深層学習の数理
深層学習の数理
最適化超入門
最適化超入門
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
機械学習 / Deep Learning 大全 (1) 機械学習基礎編
機械学習の理論と実践
機械学習の理論と実践
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
4 データ間の距離と類似度
4 データ間の距離と類似度
強化学習その1
強化学習その1
画像処理基礎
画像処理基礎
[DL輪読会]Deep Learning 第15章 表現学習
[DL輪読会]Deep Learning 第15章 表現学習
クラシックな機械学習の入門 8. クラスタリング
クラシックな機械学習の入門 8. クラスタリング
[DL輪読会]Hindsight Experience Replay
[DL輪読会]Hindsight Experience Replay
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
グラフィカルモデル入門
グラフィカルモデル入門
強化学習その3
強化学習その3
【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法
Destaque
scikit-learnを用いた機械学習チュートリアル
scikit-learnを用いた機械学習チュートリアル
敦志 金谷
Chainerチュートリアル -v1.5向け- ViEW2015
Chainerチュートリアル -v1.5向け- ViEW2015
Ryosuke Okuta
機械学習概論 講義テキスト
機械学習概論 講義テキスト
Etsuji Nakai
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
徹 上野山
Deep Learningと画像認識 ~歴史・理論・実践~
Deep Learningと画像認識 ~歴史・理論・実践~
nlab_utokyo
機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話
Ryota Kamoshida
Pythonで機械学習入門以前
Pythonで機械学習入門以前
Kimikazu Kato
トピックモデルを用いた 潜在ファッション嗜好の推定
トピックモデルを用いた 潜在ファッション嗜好の推定
Takashi Kaneda
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
Naoki Yanai
Pythonを使った機械学習の学習
Pythonを使った機械学習の学習
Kimikazu Kato
パターン認識 第10章 決定木
パターン認識 第10章 決定木
Miyoshi Yuya
今日から使える! みんなのクラスタリング超入門
今日から使える! みんなのクラスタリング超入門
toilet_lunch
Simple perceptron by TJO
Simple perceptron by TJO
Takashi J OZAKI
バンディットアルゴリズム入門と実践
バンディットアルゴリズム入門と実践
智之 村上
決定木学習
決定木学習
Mitsuo Shimohata
SVMについて
SVMについて
mknh1122
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
Teppei Baba
画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ
Takahiro Kubo
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
Koichi Hamada
ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33
horihorio
Destaque
(20)
scikit-learnを用いた機械学習チュートリアル
scikit-learnを用いた機械学習チュートリアル
Chainerチュートリアル -v1.5向け- ViEW2015
Chainerチュートリアル -v1.5向け- ViEW2015
機械学習概論 講義テキスト
機械学習概論 講義テキスト
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
TensorFlow を使った機械学習ことはじめ (GDG京都 機械学習勉強会)
Deep Learningと画像認識 ~歴史・理論・実践~
Deep Learningと画像認識 ~歴史・理論・実践~
機械学習によるデータ分析まわりのお話
機械学習によるデータ分析まわりのお話
Pythonで機械学習入門以前
Pythonで機械学習入門以前
トピックモデルを用いた 潜在ファッション嗜好の推定
トピックモデルを用いた 潜在ファッション嗜好の推定
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
Pythonを使った機械学習の学習
Pythonを使った機械学習の学習
パターン認識 第10章 決定木
パターン認識 第10章 決定木
今日から使える! みんなのクラスタリング超入門
今日から使える! みんなのクラスタリング超入門
Simple perceptron by TJO
Simple perceptron by TJO
バンディットアルゴリズム入門と実践
バンディットアルゴリズム入門と実践
決定木学習
決定木学習
SVMについて
SVMについて
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
画像認識モデルを作るための鉄板レシピ
画像認識モデルを作るための鉄板レシピ
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33
Semelhante a Pythonとdeep learningで手書き文字認識
20160329.dnn講演
20160329.dnn講演
Hayaru SHOUNO
「ゼロから作るDeep learning」の畳み込みニューラルネットワークのハードウェア化
「ゼロから作るDeep learning」の畳み込みニューラルネットワークのハードウェア化
marsee101
LUT-Network ~本物のリアルタイムコンピューティングを目指して~
LUT-Network ~本物のリアルタイムコンピューティングを目指して~
ryuz88
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
Kensuke Otsuki
深層学習入門
深層学習入門
Danushka Bollegala
あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデル
Mikiya Okuno
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Yuya Unno
高1から始める人工知能(AI)
高1から始める人工知能(AI)
MasanoriSuganuma
[CE94] 高等学校での「プログラミング」教育の導入– PEN を用いて (発表資料)
[CE94] 高等学校での「プログラミング」教育の導入– PEN を用いて (発表資料)
Ryota Nakamura
20150803.山口大学集中講義
20150803.山口大学集中講義
Hayaru SHOUNO
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Yuya Unno
Datamining 5th Knn
Datamining 5th Knn
sesejun
Machine Learning Fundamentals IEEE
Machine Learning Fundamentals IEEE
Antonio Tejero de Pablos
TensorFlowによるニューラルネットワーク入門
TensorFlowによるニューラルネットワーク入門
Etsuji Nakai
20180830 implement dqn_platinum_data_meetup_vol1
20180830 implement dqn_platinum_data_meetup_vol1
Keisuke Nakata
FPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGA
Hiroki Nakahara
充足可能性問題のいろいろ
充足可能性問題のいろいろ
Hiroshi Yamashita
Datamining 5th knn
Datamining 5th knn
sesejun
Learning Deep Architectures for AI (第 3 回 Deep Learning 勉強会資料; 松尾)
Learning Deep Architectures for AI (第 3 回 Deep Learning 勉強会資料; 松尾)
Ohsawa Goodfellow
Casual learning machine learning with_excel_no5
Casual learning machine learning with_excel_no5
KazuhiroSato8
Semelhante a Pythonとdeep learningで手書き文字認識
(20)
20160329.dnn講演
20160329.dnn講演
「ゼロから作るDeep learning」の畳み込みニューラルネットワークのハードウェア化
「ゼロから作るDeep learning」の畳み込みニューラルネットワークのハードウェア化
LUT-Network ~本物のリアルタイムコンピューティングを目指して~
LUT-Network ~本物のリアルタイムコンピューティングを目指して~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
ディープラーニング入門 ~ 画像処理・自然言語処理について ~
深層学習入門
深層学習入門
あなたが知らない リレーショナルモデル
あなたが知らない リレーショナルモデル
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
高1から始める人工知能(AI)
高1から始める人工知能(AI)
[CE94] 高等学校での「プログラミング」教育の導入– PEN を用いて (発表資料)
[CE94] 高等学校での「プログラミング」教育の導入– PEN を用いて (発表資料)
20150803.山口大学集中講義
20150803.山口大学集中講義
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Jubatusのリアルタイム分散レコメンデーション@TokyoNLP#9
Datamining 5th Knn
Datamining 5th Knn
Machine Learning Fundamentals IEEE
Machine Learning Fundamentals IEEE
TensorFlowによるニューラルネットワーク入門
TensorFlowによるニューラルネットワーク入門
20180830 implement dqn_platinum_data_meetup_vol1
20180830 implement dqn_platinum_data_meetup_vol1
FPGAX2016 ドキュンなFPGA
FPGAX2016 ドキュンなFPGA
充足可能性問題のいろいろ
充足可能性問題のいろいろ
Datamining 5th knn
Datamining 5th knn
Learning Deep Architectures for AI (第 3 回 Deep Learning 勉強会資料; 松尾)
Learning Deep Architectures for AI (第 3 回 Deep Learning 勉強会資料; 松尾)
Casual learning machine learning with_excel_no5
Casual learning machine learning with_excel_no5
Mais de Ken Morishita
BigQuery勉強会 Standard SQL Dialect
BigQuery勉強会 Standard SQL Dialect
Ken Morishita
iOSやAndroidアプリ開発のGoodPractice
iOSやAndroidアプリ開発のGoodPractice
Ken Morishita
知らないと損するアプリ開発におけるStateMachineの活用法(full版)
知らないと損するアプリ開発におけるStateMachineの活用法(full版)
Ken Morishita
知らないと損するアプリ開発におけるStateMachineの活用法(15分版)
知らないと損するアプリ開発におけるStateMachineの活用法(15分版)
Ken Morishita
SwiftでのiOSアプリ開発
SwiftでのiOSアプリ開発
Ken Morishita
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
Ken Morishita
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
Ken Morishita
最近の単体テスト
最近の単体テスト
Ken Morishita
Logをs3とredshiftに格納する仕組み
Logをs3とredshiftに格納する仕組み
Ken Morishita
Mais de Ken Morishita
(9)
BigQuery勉強会 Standard SQL Dialect
BigQuery勉強会 Standard SQL Dialect
iOSやAndroidアプリ開発のGoodPractice
iOSやAndroidアプリ開発のGoodPractice
知らないと損するアプリ開発におけるStateMachineの活用法(full版)
知らないと損するアプリ開発におけるStateMachineの活用法(full版)
知らないと損するアプリ開発におけるStateMachineの活用法(15分版)
知らないと損するアプリ開発におけるStateMachineの活用法(15分版)
SwiftでのiOSアプリ開発
SwiftでのiOSアプリ開発
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
IOS/Androidアプリの3つの大事な設計方針
IOS/Androidアプリの3つの大事な設計方針
最近の単体テスト
最近の単体テスト
Logをs3とredshiftに格納する仕組み
Logをs3とredshiftに格納する仕組み
Último
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
Último
(9)
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
Pythonとdeep learningで手書き文字認識
1.
Pythonと Deep Learning 手書き文字認識
2012/12/17 株式会社ゆめみ mokemokechicken@twitter 1
2.
はじめに
2
3.
最近 ニューラルネットワーク
が熱い! 3
4.
ニューラルネットの逆襲 http://research.preferred.jp/2012/11/deep-learning/ Deep Learning!?
4
5.
ある人はこう表現していた
黒船!? 5 http://www.slideshare.net/takmin/building-highlevelfeatures より
6.
なんか 凄そうだぞ! Deep Learning!!
6
7.
うーん、、、 でも難しいんじゃないか?
7
8.
いや、意外とそうでもない!
8
9.
今回は 実用的 かつ
身近になった ニューラルネットワークのお話 です 9
10.
目次 •
機械学習の概要 • ニューラルネットワーク(NN)について • Deep Learning革命 • Deep LearningのPythonライブラリ • 手書き文字認識への応用 10
11.
機械学習の概要
11
12.
機械学習とNN • NNは機械学習の仕組みの一つ • 機械学習には「教師あり/教師なし」があ
る 12
13.
教師あり学習と教師なし学習 • 教師あり学習
NNはこっち – 「問題→答え」を当てる形式 – 入力と出力の関係を学習 – 入力から出力を予測する • 教師なし学習 – 「答えがない」形式 – 入力の特徴を抽出したり – データを分類したり 13
14.
機械学習が通常ロジックと異なる
点 • 「入力→■→出力」 なら関数と同じじゃな い? • 普通のプログラムや関数と何が違うの か? • 人間がルールを記述しない • 機械構造が同じでも「学習」に使うデー タで動作が変わる – 良いデータが集まると賢くなる(可能性があ 14 る)
15.
入力→出力 の例1 入力(X)
出力(Y) 数値 0 1 ? 2 0 3 1 4 5 6 7 仕様 8 0〜4------------------------------ 0 9 5〜9------------------------------ 1 単純すぎて機械学習の意味がない 15
16.
入力→出力 の例2
入力(X) 出力(Y) 電卓数値7箇所の光っているかどうか なんの数字を表しているか x0 0 x1 x2 1 ? x3 2 x4 x5 3 x6 4 5 6 7 8 9 X=(x0,x1,x2,x3,..,x6) (xk={0,1}) ちょっと悩むでしょ? でもまだ単純過ぎますね 16
17.
入力→出力 の例3
入力(X) 出力(Y) 28x28Pixelの手書き数字画像 なんの数字を表しているか 0 28 1 ? 28 2 3 4 5 6 7 8 X=(x0,x1,..,x783) (xk={0~1}) 9 もう普通のロジックでは書けないですね・・・ でも、NNならできるんです!(間違うこともある 17
18.
機械学習って何をしているの? • 学習機械の内部パラメータを更新してい
る 仕様 先ほどの例1 0〜4------------------------------ 0 5〜9------------------------------ 1 例えば 内部構造 Y=wX+c < 0 ? 0 : 1 とすると、wとcがパラメータ Y=2x-9 学習して、 w=2, c=-9 だと なんとなく良さげでしょ? 18
19.
どうやってパラメータ更新するの
か? • 機械学習の仕組みによって異なる • NNであれば 1. WやCを大小どちらに変化させると正解に近 づくか計算 2. ちょっとだけWやCを更新する 3. 繰り返し 19
20.
NN学習の流れ
NN君 2.内部パラメータ更新 学習 1.データを3つに分ける 4.繰り返す 3.当たるようになった? 元デー 検証 タ エラー率 3.23%です 5.最終テスト テスト 20
21.
なぜデータを分けるのか? • 学習データで高い評価が出ても「学習し
過ぎ」の可能性がある • 「過学習」と呼ばれる現象 • 過学習というのは細部を見過ぎて、一般 性を失っている状態 21
22.
過学習 • 例えば、男と女を見分けるのに –
「女性は名前が“明美”or“寛子”or“優子”or...であ る」 と覚えてしまうようなもの • 未知の類似データを正しく分類できなくなる – “明子”はもうよくわからない • 機械学習で本当にやりたいのは、画像の分類 などのように「未知の類似のものを扱う」こ となので、過学習は望ましくない 22
23.
ニューラルネットワークについ て
23
24.
ニューラルネットワーク概要 • ニューロンの構造を模しているから
「ニューラルネットワーク」 • 「ユニット」を入力→出力に繋いだ構造 入力(X) 出力(Y) ユニット 24
25.
NNのユニット
ユニット ユニットの出力=出力関数(x1*w1+x2*w2+..+xn*wn + C) 25 http://thinkit.co.jp/article/30/2/ から画像は複製
26.
よく使う「出力関数」 シグモイド関数 tanh 出力が「0〜1」とか「−1〜1」に収まる滑らかな曲線なのがポイント
26
27.
数学的には この構造はかなり表現力がある
らしい 27 ※ちゃんと学習できるならね
28.
DEEP LEARNING革命
28
29.
Deep Learning • Deep
Learning は、高性能なNNを実現する ための技術の総称みたいなもの (だと思う) • NNや機械学習における課題を解決してい る 29
30.
従来のNNの問題点 この層(レイヤー)の段数が多いほど「表現力は高い」
でも「学習」が難しかった 30
31.
なぜ学習が難しい?
内部パラメータ更新のために 出力→入力に向けて正解に近づくように調整するが・・・ 段数が多いと上手く情報が伝わらない 信号が上手く伝わらない、イメージらしい ノイズが多い伝言ゲームみたいな? 31
32.
じゃあ、準備しよう
適当なデータを入力して 教師なし学習です 変換・逆変換して元のデータになるように調整 変換F 1:X 2:F(X) 3:G(F(X)) 逆変換G X=G(F(X)) に近づくように調整する 32
33.
教師が来る前に自習する感じ?
変換F1 変換F2 1:X 2:F2(F1(X)) 3:G1(G2(F2(F1(X)))) 逆変換G1 逆変換G2 調整済みは固定 それをレイヤー毎に順次行なっていく こういうのを「Auto-Encoder」と呼ぶそうです 33
34.
Auto-Encoder • Auto-Encoderの更なる工夫の例 –
少ないパラメータで元の入力を再現するように制 約をかける – わざと多少ノイズを入れてしまう • すると2段目のレイヤーが特徴を表すように なる(!) • その後の教師付き学習でもよく学習できるよ うになる(!) 34
35.
機械学習全般の課題
基本的に、どういうデータ(特徴)を入力とするかで、精度が大きく変わる ここが 重要 でも、どういう特徴を入力とすれば良いかは、 人間の勘と経験に依存することが多い 35
36.
特徴の抽出もやってしまおう! こんな入力
特徴抽出 こんな感じになる なんかそれっぽい! Restricted Boltzmann Machines (RBM) という仕組み 36
37.
色々合わせ技でうまくやる! • 多段でも上手く学習 • 特徴を抽出したりす
る • 他にも色々技がある • すると精度が劇的 UP! • 柔軟に組み合わせら れるのもNNのメリッ でも、どういう構造がベストかは、問題に依存する トかも 37
38.
DEEP LEARNINGのPYTHONライブラ リ
38
39.
Theano •
て発音するらしいです http://www.clear-english.com/db/theano.html 調べ • 「てあーの」という説もあります http://ejje.weblio.jp/content/Theano 調べ • 発音がよくわかりませんw • Pythonのライブラリ • 数学表現を定義したり、高速計算が可能 • 多次元配列でも綺麗に表記できる • 数式計算をC言語に動的に変換して実行する • GPU(Graphic Processing Unit)に計算を行わせること もできる(数倍〜150倍くらい速い) • http://deeplearning.net/software/theano/ 39
40.
かっこいい Theanoの基本
>>> import theano.tensor as T >>> import theano xがベクトルとかでも>>> x = T.dscalar("x") ←Theanoの変数Object 行列とかでもOK >>> y = (x-1)**2 ←Theanoの式表現 >>> y Elemwise{pow,no_inplace}.0 ここで >>> f = theano.function([x], y) 関数f(x)=y=(x-1)**2 コンパイルが走る! >>> f(0) 関数f(0)=(0-1)**2=1 array(1.0) >>> f(1) 関数f(1)=(1-1)**2=0 array(0.0) 40
41.
かっこいいTheanoの自動微分
y=(x-1)**2 >>> z = T.grad(y, x) を x で微分する ↓ z=y’=2(x-1) >>> 式を関数にする fz = theano.function([x],z) fz(x)=z=2(x-1) >>> fz(0) fz(0)=2(0-1) = -2 array(-2.0) >>> fz(5) array(8.0) fz(5)=2(5-1) = 8 ※「自動微分」は微分された式表現を求める技術 ※値の代入で求める「数値微分」とは異なる(wikipedia) 41
42.
TheanoとNN • NNの計算は、行列計算や勾配の計算が主 • Theanoで簡潔に記述して高速に計算できる •
Deep LearningをTheanoでどう実装するかが Theanoのマニュアルにある(これ重要) • それを少し修正して今回使った – 内部パラメータのSaveとLoad – Classのメソッド名や引数を統一 42
43.
手書き文字認識への応用
43
44.
手書き文字認識 • オンライン文字認識 –
ペンの動きがわかって いる • オフライン文字認識 – 画像からのみ判断 今回は「数字(10文字)+ひらがな(71文字)」の識別に挑戦 44
45.
オンライン文字認識 • ペンの動き(ストローク)をデータとし
て使う • 上手くストロークを入力データ化できれ ば比較的簡単に良い精度の結果が得られ る – ちなみにTomoeという有名なOpenSourceもあ る • ポイントの一つはそのストローク変換に 45
46.
ストロークの変換 今回行った方法 • ストロークを上下左右4方向の移動量で
表現 x1 こんなストロークなら 0.5 X=(0.7,0.5, 0, 0) とする x2 x0 0.7 x3 46
47.
ストロークの変換 ストローク1
8 6 7 5 4 3 ストローク2 5,7は空中のストロークとして扱う 47
48.
入力データの形式 • ストロークの1直線が
「ペン接触(4) + 空中移動(4)」 の8要素のベクトル • 今回50直線分まで認識対象とした • つまり、入力は400要素のベクトル 48
49.
NNユニット構成 • 出力ユニット数は81個(全文字の数)
• 該当する文字のユニットの値が高くなる 「0」 ストローク 「1」 「ん」 400個 この部分は可変 81個 「隠れ層」と呼ぶ 49
50.
NNの構成と実験パターン • NNの構成 –
SdA: Auto-Encoderを使うパターン – RBM: RBMを使うパターン • NNユニット数の構成 – 隠れ1層: 400-100-81, 400-1000-81 – 隠れ2層: 400-100-100-81, – 隠れ3層: 400-100-100-100-81 • 筆跡データは、主に私の筆跡のみ(結果的 に) – なので、比較的認識しやすいはずです 50
51.
オンライン版結果 • 単純な構造(400-100-81)が良かった
– エラー1%程度 – 400-50-81 なども悪くなかった • RBMよりSdAの方が少し良かった • 400-1000-81, 400-100-100-81 はエラー多め 51
52.
オフライン文字認識 • ペンで書いた画像から文字を識別する • 入力データは大きさだけ枠に合わせた
– しないとかなり結果が悪い 52
53.
入力データの形式 今回行った方法 • 30x30ピクセルのGrayScale画像として
使った • つまり入力は900要素のベクトル – それぞれの値は0〜1 – 0か1でも良かったけど 53
54.
NNユニット構成 • 出力ユニット数は81個(全文字の数)
「0」 画素 「1」 「ん」 900個 この部分は可変 81個 54
55.
NNの構成と実験パターン • NNの構成(SdA,RBM) • NNユニット数の構成
– 隠れ1層: 400-100-81, 400-1000-81,400-3000- 81 – 隠れ2層: 400-100-100-81, – 隠れ3層: 400-100-100-100-81 • データもオンライン版と同じ 55
56.
オフライン版結果 • 900-100-100-100-81 や
900-100-100-81 が良い – エラー率15%程度 • 900-100-81, 900-1000-81, 900-3000-81などは エラーが多い • SdAよりRBMの方が少し良い結果 56
57.
考察 • 入力データによる違いはやはり大きい –
オンライン版の方が精度が良かった • 人間が上手く特徴量を抽出したと言える – オフライン版は、もう少し類似の変則的な データを学習すれば変わるのかもしれない • データによって学習精度の良い構造が違 う – いろいろ試すしかない(勘と経験) 57
58.
全体まとめ • Deep Learning
は今後も発展していくで しょう • Theanoのようなライブラリで、NNの中身 がよくわからなくても実装できますよ • 何か面白いネタがあれば作りたいです 58
59.
参考URL • 手書き文字認識デモ: 今回のデモが遊べます
– http://54.248.76.99:7777/ • 「ニューラルネットの逆襲」: 概要がよくわかります – http://research.preferred.jp/2012/11/deep-learning/ • Building High-level Features Using Large Scale Unsupervised Learning – http://www.slideshare.net/takmin/building-highlevelfeatures – すごさが伝わってきます • Deep learning勉強会20121214ochi – http://www.slideshare.net/alembert2000/deep-learning20121214ochi – Deep Learningの特徴とか。理論よりな話 59
Baixar agora