SlideShare a Scribd company logo
1 of 21
Download to read offline
Deep Learning 入門以前
はしもとまさひこ
2017/3/11 @ OSC 2017 Tokyo/Spring
東海道らぐLT
自己紹介
●
おーぷん万葉プロジェクトやってます!!
– 自然言語処理についていろいろ勉強中。
– ただし、文系大学卒(笑)
– 今日は自作かな漢字変換「Genji」を展示していました
●
東海道らぐ関東の案内人(元名古屋案内人)
– 関東でオフ会開きたい!という方はご相談ください(^^)
●
日本openSUSEユーザ会にも関わっていたり…
本日のお題
DeepLearningでかな漢字変換を作ろう!!
…となるわけではなく、、、
(改めて)本日のお題。
DeepLearningのソフトを
PC(サーバー)にインストールしてみよう!!!
きっかけ
現在おーぷん万葉では「Genji」という
かな漢字変換を開発中・・・・
学習モデルは「n-gram」を採用
「私の名前は中野です」
→「私の」「の名前」「名前は」「は中野」「中野です」
…みたいな組み合わせで確率を出すモデル
でも、「n-gram」ってなんかびみょ〜・・・(ぇ
そうだ、DeepLearningをやってみよう!!
…でも、何をインストールしたらええの?
(そこから??
いろいろ本を買ってみた
とある書籍より DeepLearningに必要なPC
●
CPU: できるだけコアが多くて速いもの
●
OS: Mac OS X または Ubuntu
●
メモリ: 32〜512GB(128GBを推奨)
●
HDD: 2TB以上
●
グラボ: NVIDIAの最も高いやつ
●
電源: 1000W〜2000Wのもの
((((;゚Д゚))))
気を取り直して、DeepLerningフレームワーク
● Caffe: 開発が活発。記述がJsonぽい
● TensorFlow: まぁGoogleたんだよね
● Chainer: 国産(使いやすそう…?)
てかおよそPython!!!?
CとかC++で書きたいので…
まずはTensorFlowをインストールしてみよう!!
インストール方法は主に2つ?
Case1: GPUなしで動かす
→ インストールは超簡単!!!
「pip install tensorflow」でOK
ぶっちゃけディストリビューションも何でも良し!
Case2: GPUありで動かす
→ インストール難易度が一気に上がります(^^;
「pip install tensorflow-gpu」で(まず)インストール
なんでGPUありだと大変なの?
NVIDIAのドライバやらライブラリやらが
うんぬんかんぬん・・・ry
GPUありの場合の必要なもの
必須なもの:
– NVIDIAのグラボ(まぁ書くまでもなく…)
– NVIDIAのドライバ
– NVIDIAのToolKit「CUDA」
必須ではないがあるとよさげ:
– NVIDIAのライブラリ「CuDNN」
→え〜AMDじゃだめなの?というツッコミはなしでw
1. NVIDIAのグラボとドライバ
●
これだけならディストリビューションで
悩むことはあまりないかも
●
次のページで紹介する「CUDA」を使うので
NVIDIAのプロプラドライバをインストール
(ここでAMDなグラボもNGとなってしまうorz)
●
マイナーなディストリビューションだと
ちょっと大変・・・?
2. NVIDIA ToolKit「CUDA」(1)
●
Ubuntuなどではリポジトリが用意されてるので
それを使うのが良さげ・・・
・・・と言いたいとこだけど
最新TensorFlowはCUDA8.0を利用するので
リポジトリには入ってなかった気がする…
●
ので、結局のところNVIDIA公式サイトから
落としてくるのが良さげです
2. NVIDIA ToolKit「CUDA」(2)
ここからダウンロード
– https://developer.nvidia.com/cuda-downloads
…が、Linux的に「まともに」載ってる
ディストリビューションはほぼUbuntuのみ
– 例:openSUSEは13.2のしかない!←既にEnd Of Life
ここで選択肢は一気に少なくなるのであった…orz
3. NVIDIAライブラリ「CuDNN」
●
ここまでふつーにインストールできたはず
なのになぜかTensorFlowを使おうとするとエラー
っぽいのが出る
→ その原因の正体はおよそこれ。
ただし、実際はなくても動くらしい
●
ダウンロードにはNVIDIAのアカウントが必要!!
– アカウント発行まで2日くらいかかるので注意!
– いろいろ聞かれるけどテキトーに答えてもOK(ぇ
DeepLearningって難しい?
OSC浜名湖の前夜祭で詳しい方に聞いた話
重要なことは
– サンプルプログラムの内容をしっかり理解すること
– あとはひたすら書く
●
ライブラリなどは変わるので覚えてもしょーもない
Enjoy!! DeepLearning!!!
(ご静聴ありがとうございました)
(注:おいらはNVIDIAの回し者ではない!!)

More Related Content

What's hot

雑兵だけどGolangでコマンドラインツールを作ってみた
雑兵だけどGolangでコマンドラインツールを作ってみた雑兵だけどGolangでコマンドラインツールを作ってみた
雑兵だけどGolangでコマンドラインツールを作ってみた
Shota Inoue
 
ルネサスナイト
ルネサスナイトルネサスナイト
ルネサスナイト
yamanekko
 

What's hot (20)

TrieとLOUDS??
TrieとLOUDS??TrieとLOUDS??
TrieとLOUDS??
 
アヒルヤキを変換してみよう
アヒルヤキを変換してみようアヒルヤキを変換してみよう
アヒルヤキを変換してみよう
 
C言語なWebSocketの遊び方。
C言語なWebSocketの遊び方。C言語なWebSocketの遊び方。
C言語なWebSocketの遊び方。
 
TeXで多言語文書作成! (2011年ごろの資料)
TeXで多言語文書作成! (2011年ごろの資料)TeXで多言語文書作成! (2011年ごろの資料)
TeXで多言語文書作成! (2011年ごろの資料)
 
PHP Matsuri2013でなにをしたか?
PHP Matsuri2013でなにをしたか?PHP Matsuri2013でなにをしたか?
PHP Matsuri2013でなにをしたか?
 
雑兵だけどGolangでコマンドラインツールを作ってみた
雑兵だけどGolangでコマンドラインツールを作ってみた雑兵だけどGolangでコマンドラインツールを作ってみた
雑兵だけどGolangでコマンドラインツールを作ってみた
 
Sphinxで翻訳してたら本が出てた話
Sphinxで翻訳してたら本が出てた話Sphinxで翻訳してたら本が出てた話
Sphinxで翻訳してたら本が出てた話
 
底から見上げるデブ(Dev) 〜俺と執事と自動化と〜
底から見上げるデブ(Dev) 〜俺と執事と自動化と〜底から見上げるデブ(Dev) 〜俺と執事と自動化と〜
底から見上げるデブ(Dev) 〜俺と執事と自動化と〜
 
IPAmj明朝の漢字を検索
IPAmj明朝の漢字を検索IPAmj明朝の漢字を検索
IPAmj明朝の漢字を検索
 
あひるに焼かれた話と今後のおーぷん万葉について
あひるに焼かれた話と今後のおーぷん万葉についてあひるに焼かれた話と今後のおーぷん万葉について
あひるに焼かれた話と今後のおーぷん万葉について
 
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますようにもっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
 
BrowserMob-Proxyのお話
BrowserMob-Proxyのお話BrowserMob-Proxyのお話
BrowserMob-Proxyのお話
 
僕がLasta flute選んだ理由
僕がLasta flute選んだ理由僕がLasta flute選んだ理由
僕がLasta flute選んだ理由
 
2014 03-15-kojskansai-2nd-public
2014 03-15-kojskansai-2nd-public2014 03-15-kojskansai-2nd-public
2014 03-15-kojskansai-2nd-public
 
子供と使う便利ツール
子供と使う便利ツール子供と使う便利ツール
子供と使う便利ツール
 
IT業界における伝統芸能の継承 #hachiojipm
IT業界における伝統芸能の継承 #hachiojipmIT業界における伝統芸能の継承 #hachiojipm
IT業界における伝統芸能の継承 #hachiojipm
 
再帰、漸化式、差分方程式とアルゴリズム Gx#20
再帰、漸化式、差分方程式とアルゴリズム   Gx#20再帰、漸化式、差分方程式とアルゴリズム   Gx#20
再帰、漸化式、差分方程式とアルゴリズム Gx#20
 
ルネサスナイト
ルネサスナイトルネサスナイト
ルネサスナイト
 
仁斤曰く 「”手間業”蔓延り易く、 “楽”成り難し」
仁斤曰く 「”手間業”蔓延り易く、 “楽”成り難し」仁斤曰く 「”手間業”蔓延り易く、 “楽”成り難し」
仁斤曰く 「”手間業”蔓延り易く、 “楽”成り難し」
 
名古屋生まれのPHP逆引きレシピ
名古屋生まれのPHP逆引きレシピ名古屋生まれのPHP逆引きレシピ
名古屋生まれのPHP逆引きレシピ
 

Viewers also liked

Poster-An Expert System for Car Failure Diagnosis
Poster-An Expert System for Car Failure DiagnosisPoster-An Expert System for Car Failure Diagnosis
Poster-An Expert System for Car Failure Diagnosis
Viralkumar Jayswal
 

Viewers also liked (20)

おーぷんここんセルフCDライター
おーぷんここんセルフCDライターおーぷんここんセルフCDライター
おーぷんここんセルフCDライター
 
5分間ラズパイオーディオLT-東海道らぐ編-
5分間ラズパイオーディオLT-東海道らぐ編-5分間ラズパイオーディオLT-東海道らぐ編-
5分間ラズパイオーディオLT-東海道らぐ編-
 
Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門Python による 「スクレイピング & 自然言語処理」入門
Python による 「スクレイピング & 自然言語処理」入門
 
オープンハードカンファレンスの紹介
オープンハードカンファレンスの紹介オープンハードカンファレンスの紹介
オープンハードカンファレンスの紹介
 
Goodbye progress dialog mess on Android
Goodbye progress dialog mess on AndroidGoodbye progress dialog mess on Android
Goodbye progress dialog mess on Android
 
Start a deep learning startup - tutorial
Start a deep learning startup - tutorialStart a deep learning startup - tutorial
Start a deep learning startup - tutorial
 
4th industrial revolution fuel by combining big data and deeplearning a qui...
4th industrial revolution fuel by combining big data and deeplearning   a qui...4th industrial revolution fuel by combining big data and deeplearning   a qui...
4th industrial revolution fuel by combining big data and deeplearning a qui...
 
Poster-An Expert System for Car Failure Diagnosis
Poster-An Expert System for Car Failure DiagnosisPoster-An Expert System for Car Failure Diagnosis
Poster-An Expert System for Car Failure Diagnosis
 
Python勉強会in 長野 オープニング
Python勉強会in 長野 オープニングPython勉強会in 長野 オープニング
Python勉強会in 長野 オープニング
 
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...
 
Deep learning実装の基礎と実践
Deep learning実装の基礎と実践Deep learning実装の基礎と実践
Deep learning実装の基礎と実践
 
Debian Testing on Windows Tablet T100TA
Debian Testing on Windows Tablet T100TADebian Testing on Windows Tablet T100TA
Debian Testing on Windows Tablet T100TA
 
最速で価値を提供する
最速で価値を提供する最速で価値を提供する
最速で価値を提供する
 
The one thing - book review
The one thing - book reviewThe one thing - book review
The one thing - book review
 
Playing with resin.io (kawasaki.rb #46)
Playing with resin.io (kawasaki.rb #46)Playing with resin.io (kawasaki.rb #46)
Playing with resin.io (kawasaki.rb #46)
 
Twilio+Node-REDで作る自動モーニングコール
Twilio+Node-REDで作る自動モーニングコールTwilio+Node-REDで作る自動モーニングコール
Twilio+Node-REDで作る自動モーニングコール
 
ディープラーニングハンズオンを準備して学んだこと
ディープラーニングハンズオンを準備して学んだことディープラーニングハンズオンを準備して学んだこと
ディープラーニングハンズオンを準備して学んだこと
 
「長野で語るStapyのビジョン」
「長野で語るStapyのビジョン」「長野で語るStapyのビジョン」
「長野で語るStapyのビジョン」
 
Enter into the 4th Industrial Revolution
Enter into the 4th Industrial RevolutionEnter into the 4th Industrial Revolution
Enter into the 4th Industrial Revolution
 
Information sharing and Experience consistency at Cookpad mobile application
Information sharing and Experience consistency at Cookpad mobile applicationInformation sharing and Experience consistency at Cookpad mobile application
Information sharing and Experience consistency at Cookpad mobile application
 

Similar to DeepLearning入門以前

20150702文章読解支援のための日本語の語彙平易化システム
20150702文章読解支援のための日本語の語彙平易化システム20150702文章読解支援のための日本語の語彙平易化システム
20150702文章読解支援のための日本語の語彙平易化システム
Tomoyuki Kajiwara
 

Similar to DeepLearning入門以前 (10)

セキュリティ&プログラミングキャンプ2009参加レポート (PDF版)
セキュリティ&プログラミングキャンプ2009参加レポート (PDF版)セキュリティ&プログラミングキャンプ2009参加レポート (PDF版)
セキュリティ&プログラミングキャンプ2009参加レポート (PDF版)
 
プログラミングはじめの一歩 先生:関根 元和
プログラミングはじめの一歩 先生:関根 元和プログラミングはじめの一歩 先生:関根 元和
プログラミングはじめの一歩 先生:関根 元和
 
20150702文章読解支援のための日本語の語彙平易化システム
20150702文章読解支援のための日本語の語彙平易化システム20150702文章読解支援のための日本語の語彙平易化システム
20150702文章読解支援のための日本語の語彙平易化システム
 
読書会開催提案
読書会開催提案読書会開催提案
読書会開催提案
 
Learning to learn by gradient descent by gradient descent
Learning to learn by gradient descent by gradient descentLearning to learn by gradient descent by gradient descent
Learning to learn by gradient descent by gradient descent
 
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
 
Wikibana20100612
Wikibana20100612Wikibana20100612
Wikibana20100612
 
EPIU
EPIUEPIU
EPIU
 
Letsgo developer 2012 Continuous Delivery
Letsgo developer 2012 Continuous DeliveryLetsgo developer 2012 Continuous Delivery
Letsgo developer 2012 Continuous Delivery
 
50cm.
50cm.50cm.
50cm.
 

More from Masahiko Hashimoto

続・Cannaをフォークしてみた
続・Cannaをフォークしてみた続・Cannaをフォークしてみた
続・Cannaをフォークしてみた
Masahiko Hashimoto
 
秘伝:クラウドに開発環境をえいっ!と構築する方法
秘伝:クラウドに開発環境をえいっ!と構築する方法秘伝:クラウドに開発環境をえいっ!と構築する方法
秘伝:クラウドに開発環境をえいっ!と構築する方法
Masahiko Hashimoto
 
AzureとSUSE Studioのあつ~い関係
AzureとSUSE Studioのあつ~い関係AzureとSUSE Studioのあつ~い関係
AzureとSUSE Studioのあつ~い関係
Masahiko Hashimoto
 
オープンソースで始める「超」VPN 構築術
オープンソースで始める「超」VPN 構築術オープンソースで始める「超」VPN 構築術
オープンソースで始める「超」VPN 構築術
Masahiko Hashimoto
 
自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう
Masahiko Hashimoto
 

More from Masahiko Hashimoto (11)

OSSかな漢字変換『Egoistic Lily』の紹介&今後の展望
OSSかな漢字変換『Egoistic Lily』の紹介&今後の展望OSSかな漢字変換『Egoistic Lily』の紹介&今後の展望
OSSかな漢字変換『Egoistic Lily』の紹介&今後の展望
 
DNNを使用した新しいかな漢字変換『EgoisticLily』 その仕組みとは?
DNNを使用した新しいかな漢字変換『EgoisticLily』 その仕組みとは?DNNを使用した新しいかな漢字変換『EgoisticLily』 その仕組みとは?
DNNを使用した新しいかな漢字変換『EgoisticLily』 その仕組みとは?
 
Dockerいろいろ使って思うこと
Dockerいろいろ使って思うことDockerいろいろ使って思うこと
Dockerいろいろ使って思うこと
 
C++アプリをCmakeとEclipseで開発するお話
C++アプリをCmakeとEclipseで開発するお話C++アプリをCmakeとEclipseで開発するお話
C++アプリをCmakeとEclipseで開発するお話
 
続・Cannaをフォークしてみた
続・Cannaをフォークしてみた続・Cannaをフォークしてみた
続・Cannaをフォークしてみた
 
Cannaをフォークしてみた
CannaをフォークしてみたCannaをフォークしてみた
Cannaをフォークしてみた
 
秘伝:クラウドに開発環境をえいっ!と構築する方法
秘伝:クラウドに開発環境をえいっ!と構築する方法秘伝:クラウドに開発環境をえいっ!と構築する方法
秘伝:クラウドに開発環境をえいっ!と構築する方法
 
AzureとSUSE Studioのあつ~い関係
AzureとSUSE Studioのあつ~い関係AzureとSUSE Studioのあつ~い関係
AzureとSUSE Studioのあつ~い関係
 
X window managerで遊んでみた
X window managerで遊んでみたX window managerで遊んでみた
X window managerで遊んでみた
 
オープンソースで始める「超」VPN 構築術
オープンソースで始める「超」VPN 構築術オープンソースで始める「超」VPN 構築術
オープンソースで始める「超」VPN 構築術
 
自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう自分色のLinuxホームサーバーを作ってみよう
自分色のLinuxホームサーバーを作ってみよう
 

Recently uploaded

Recently uploaded (12)

Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

DeepLearning入門以前