Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
tech boost_deeplearning
Search
Takehiro Yamaguchi
February 03, 2019
Technology
0
110
tech boost_deeplearning
tech boost_deeplearning
Takehiro Yamaguchi
February 03, 2019
Tweet
Share
More Decks by Takehiro Yamaguchi
See All by Takehiro Yamaguchi
【 tech boost】AI/DSエキスパート(ニューラルネットワーク)
takexhero
0
120
開発業務について
takexhero
0
610
セキュリティについて
takexhero
0
450
問題解決力について
takexhero
0
590
データベースについて
takexhero
0
1.3k
ネットワークについて
takexhero
0
620
オブジェクト指向について
takexhero
0
1.4k
Other Decks in Technology
See All in Technology
Amazon Quick Suite で始める手軽な AI エージェント
shimy
0
140
S3を正しく理解するための内部構造の読解
nrinetcom
PRO
2
150
Sansanが実践する Platform EngineeringとSREの協創
sansantech
PRO
2
920
ディメンショナルモデリングを支えるData Vaultについて
10xinc
1
110
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
3
200
学習データって増やせばいいんですか?
ftakahashi
2
480
コンテキスト情報を活用し個社最適化されたAI Agentを実現する4つのポイント
kworkdev
PRO
1
1.5k
SSO方式とJumpアカウント方式の比較と設計方針
yuobayashi
7
700
re:Inventで気になったサービスを10分でいけるところまでお話しします
yama3133
1
120
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
480
品質のための共通認識
kakehashi
PRO
3
280
AI時代のワークフロー設計〜Durable Functions / Step Functions / Strands Agents を添えて〜
yakumo
0
150
Featured
See All Featured
Thoughts on Productivity
jonyablonski
73
5k
The Cult of Friendly URLs
andyhume
79
6.7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Docker and Python
trallard
47
3.7k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
KATA
mclloyd
PRO
33
15k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Optimizing for Happiness
mojombo
379
70k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Transcript
$POpEFOUJBM $ #SBOEJOH&OHJOFFS*OD
$ #SBOEJOH&OHJOFFS*OD tech boost AI/DS Expert 第9回講義 ディープラーニング
$ #SBOEJOH&OHJOFFS*OD ⾃⼰紹介 蛭⽥ 興明 慶應義塾⼤学⼤学院 理⼯学研究科 専⾨:時系列解析、深層学習 趣味 読書、筋トレ、スノボ
$ #SBOEJOH&OHJOFFS*OD ディープラーニング ɾޡࠩٯ๏ʹ͍ͭͯ ɾΈࠐΈχϡʔϥϧωοτϫʔΫ(CNN) ɾ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN) ɾGoogle ColaboratoryΛ༻͍࣮ͨફਂֶश
$ #SBOEJOH&OHJOFFS*OD ディープラーニングとは? χϡʔϥϧωοτϫʔΫ ୈճߨٛͰઆ໌ Λ ଟ ̏Ҏ্ ʹͨ͠ͷ ଟԽ
χϡʔϥϧωοτϫʔΫ σΟʔϓϥʔχϯά σʔλΛ༩͑Δ͚ͩͰɼಛྔΛࣗಈతʹநग़͢Δ͜ͱ͕Ͱ͖Δػցֶशख๏
$ #SBOEJOH&OHJOFFS*OD ディープラーニングとは? ୈ̏࣍"*ϒʔϜͷݗҾ ग़యɿIUUQTJPUOFXTKQBSDIJWFT
$ #SBOEJOH&OHJOFFS*OD ディープラーニング ɾޡࠩٯ๏ʹ͍ͭͯ ɾΈࠐΈχϡʔϥϧωοτϫʔΫ(CNN) ɾ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN) ɾGoogle ColaboratoryΛ༻͍࣮ͨફਂֶश
$ #SBOEJOH&OHJOFFS*OD 誤差逆伝播法 ҰൠతʹɼχϡʔϥϧωοτϫʔΫͰɼ ৴߸ೖྗ͔Βग़ྗͱྲྀΕΔ Z Y Y X X
$ #SBOEJOH&OHJOFFS*OD 誤差逆伝播法 ग़ྗͱ࣮ࡍͷਖ਼ղͷޡࠩΛɼ ग़ྗ͔Βೖྗͱͤ͞Δ Z Y Y X X
ग़ྗʔਖ਼ղ ग़ྗͷޡࠩ
$ #SBOEJOH&OHJOFFS*OD 誤差逆伝播法がなぜ必要なのか? χϡʔϥϧωοτϫʔΫͷֶशͰɼ ʮޯ߱Լ๏ʯΛ༻͍Δ ୈճߨٛ
$ #SBOEJOH&OHJOFFS*OD 勾配降下法 ޡࠩؔ& ॏΈύϥϝʔλX ֤ͷޡࠩؔͷ͖ ޯͱٯ͖ʹύϥϝʔλΛௐ͍ͯ͘͠ ඍ͕ʹͳΔ·Ͱ܁Γฦ͢ X X
X ޡࠩؔͷ͖ ֶश େ͖͘͢ΔͱҰճͷֶशͰͷ ॏΈͷมԽ͕େ͖͘ͳΔ
$ #SBOEJOH&OHJOFFS*OD 勾配降下法 ࣍ͷΑ͏ͳೋྨχϡʔϥϧωοτϫʔΫʹޯ߱Լ๏Λద༻͢Δ ೖྗϢχοτ̑ɼதؒϢχοτ̏ͷ߹ ޡࠩؔ & ਖ਼ղσʔλ
$ #SBOEJOH&OHJOFFS*OD 勾配降下法 ࣍ͷΑ͏ͳೋྨχϡʔϥϧωοτϫʔΫʹޯ߱Լ๏Λద༻͢Δ ೖྗϢχοτ̑ɼதؒϢχοτ̏ͷ߹ & ਖ਼ղσʔλ ޡࠩؔ&࣍ͷࣜͰදͤΔ ޡࠩؔ
$ #SBOEJOH&OHJOFFS*OD 勾配降下法 ޡࠩؔ&࣍ͷࣜͰදͤΔ ͜ͷχϡʔϥϧωοτϫʔΫʹ͓͍ͯɼॏΈύϥϝʔλݸଘࡏ͢Δ ७ਮʹޯ߱Լ๏Λద༻͢ΔͱɼճඍΛ͢Δඞཁ͕͋Δ ͜ͷܭࢉΛ௨Γߦ͏ඞཁ͕͋Δ
$ #SBOEJOH&OHJOFFS*OD 勾配降下法 ޡࠩؔ&ͷɹɹͷޯɹɹɹΛٻΊΔ & ޡࠩؔ ਖ਼ղσʔλ
$ #SBOEJOH&OHJOFFS*OD Y Y Y X X X G V
ೖྗͷ ૯ V ग़ྗ G V VXY XY XY GΛ࡞༻ͤ͞Δ ࣮ࡍʹɼ֤ೖྗʹ׆ੑԽ͕ؔ࡞༻͞Ε͍ͯΔ ׆ੑԽؔ ̔ষͰઆ໌
$ #SBOEJOH&OHJOFFS*OD [ G [ Ұఆͷ ͖͍͠ G [
׆ੑԽؔ ̔ষͰઆ໌
$ #SBOEJOH&OHJOFFS*OD 勾配降下法 ޡࠩؔ&ͷɹɹͷޯΛٻΊΔ & ޡࠩؔ ਖ਼ղσʔλ ͚ͩͰͳ͘ʹΑΔӨڹΛߟ͑Δඞཁ͕͋Γɼ ܭࢉ͕ඇৗʹࡶʹͳΔ େͳ߹ؔͷඍ͕ඞཁ
$ #SBOEJOH&OHJOFFS*OD 誤差逆伝播法 Z Y Y X X & ޡࠩؔ
[ [XY XY ৽ͨͳه߸ɹɹΛಋೖ͢Δ
$ #SBOEJOH&OHJOFFS*OD 誤差逆伝播法を導⼊するメリット & ޡࠩؔ ਖ਼ղσʔλ ޡࠩؔ&ͷޯΛผͳه߸Ͱஔ͖͑Δ͜ͱͰɼ ඍܭࢉճΛݮΒ͢͜ͱ͕Ͱ͖Δ
$ #SBOEJOH&OHJOFFS*OD ドロップアウト:ディープラーニングの学習上の⼯夫 աֶशΛ͙ͨΊʹɼ χϡʔϥϧωοτϫʔΫͷ݁߹Λ͍͔ͭ͘औΓআֶ͍ͯशͤ͞Δํ๏
$ #SBOEJOH&OHJOFFS*OD ディープラーニング ɾޡࠩٯ๏ʹ͍ͭͯ ɾΈࠐΈχϡʔϥϧωοτϫʔΫ(CNN) ɾ࠶ؼχϡʔϥϧωοτϫʔΫ ɾGoogle ColaboratoryΛ༻͍࣮ͨફਂֶश
$ #SBOEJOH&OHJOFFS*OD ΈࠐΈχϡʔϥϧωοτϫʔΫͱʁ ʮΈࠐΈʯͱʮϓʔϦϯάʯͷ ֊తΈ߹ΘͤͰߏங͞ΕΔ ը૾ೝࣝʹಛԽͨ͠σΟʔϓϥʔχϯάख๏
$ #SBOEJOH&OHJOFFS*OD
ೖྗ ΈࠐΈ ΈࠐΈ ϓʔϦϯά ϓʔϦϯά શ݁߹ ग़ྗ ΈࠐΈχϡʔϥϧωοτϫʔΫશମ૾
$ #SBOEJOH&OHJOFFS*OD ΈࠐΈ ը૾ͷಛΛநग़͢ΔׂΛ࣋ͭ खॻ͖ࣈͷ߹ ը૾ͷύλʔϯΛநग़
$ #SBOEJOH&OHJOFFS*OD ̎ ̏ ̌ ̍ ̍ ̌ ̏ ̎
̏ ̍ ̎ ̌ ̌ ̍ ̎ ̏ ̎ ̏ ̌ ̍ ̍ ̌ ̏ ̎ ̏ ̍ ̎ ̌ ̌ ̍ ̎ ̏ ̐ ̒ ̐ ̑ ̍ ̌ ̌ ̌ ̍ ̌ ̌ ̌ ̍ ೖྗσʔλ Χʔωϧ ϑΟϧλ ಛϚοϓ ̍ ̌ ̌ ̌ ̍ ̌ ̌ ̌ ̍ ̐ ̒ ̐ ̑ ΈࠐΈ
$ #SBOEJOH&OHJOFFS*OD ೖྗσʔλ ಛϚοϓ ΈࠐΈ ը૾ͷࣼΊ ͕ɼͲͷҐஔʹଘࡏ͢Δ͔Λ ͍ࣔͯ͠Δ ̎ ̏
̌ ̍ ̍ ̌ ̏ ̎ ̏ ̍ ̎ ̌ ̌ ̍ ̎ ̏ ̐ ̒ ̐ ̑ ೖྗσʔλͷӈ্ʹ ύλʔϯ͕ଘࡏ ӈ্ͷ͕େ͖͘ͳΔ ̍ ̌ ̌ ̌ ̍ ̌ ̌ ̌ ̍ ϑΟϧλ ͷ࡞༻ͷҙຯ
$ #SBOEJOH&OHJOFFS*OD ը૾ͷಛͷҐஔීวੑΛอূ͢Δ ಉ͡ಛͱͯ͠ೝࣝͤ͞Δ͜ͱ͕త ϓʔϦϯά
$ #SBOEJOH&OHJOFFS*OD ը૾ͷಛͷҐஔීวੑΛอূ͢Δ ̎ ̏ ̌
̍ ̌ ̎ ̏ ̍ ̎ ̌ ̌ ̍ ̍ ̏ ̎ ̌ ̏ ̎ ̌ ̌ ̍ ̏ ̌ ϓʔϦϯά
$ #SBOEJOH&OHJOFFS*OD
ΈࠐΈχϡʔϥϧωοτϫʔΫશମ૾ ʮΈࠐΈʯͱʮϓʔϦϯάʯͷ֊తΈ߹ΘͤʹΑΔಛநग़
$ #SBOEJOH&OHJOFFS*OD ディープラーニング ɾޡࠩٯ๏ʹ͍ͭͯ ɾΈࠐΈχϡʔϥϧωοτϫʔΫ(CNN) ɾ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN) ɾGoogle ColaboratoryΛ༻͍࣮ͨફਂֶश
$ #SBOEJOH&OHJOFFS*OD ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN)ͱʁ աڈͷೖྗΛݱࡏͷग़ྗʹөͤ͞ΔΈΛ࣋ͭ ࣗવݴޠॲཧɼ࣌ܥྻॲཧͳͲͷ ܥྻσʔλʹಛԽͨ͠σΟʔϓϥʔχϯάख๏
$ #SBOEJOH&OHJOFFS*OD ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN)ͱʁ தؒͷग़ྗΛࣗΒͷೖྗʹ͢ߏΛ࣋ͭ ೖྗ தؒ ग़ྗ 8 த͕ؒ ࣗࣗͷ
ؼؐ࿏ΛΛ࣋ͭ
$ #SBOEJOH&OHJOFFS*OD ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN)ͷ࣌ؒల։ 8 U U U ɾɾɾ 8
8 աڈͷॏΈͷཤྺ͕ݱࡏͷग़ྗʹӨڹΛ༩͍͑ͯΔ
$ #SBOEJOH&OHJOFFS*OD ディープラーニング まとめ ɾޡࠩٯ๏ʹ͍ͭͯ ɾΈࠐΈχϡʔϥϧωοτϫʔΫ(CNN) ɾ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN)
$ #SBOEJOH&OHJOFFS*OD ・ޡࠩٯ๏ʹ͍ͭͯ ग़ྗͱ࣮ࡍͷਖ਼ղͱͷޡࠩΛɼ ग़ྗ͔Βೖྗͱͤ͞Δֶशख๏ Z Y Y X X
ग़ྗʔਖ਼ղ ग़ྗͷޡࠩ
$ #SBOEJOH&OHJOFFS*OD 誤差逆伝播法 Z Y Y X X & ޡࠩؔ
[ [XY XY ৽ͨͳه߸ɹɹΛಋೖ͢Δ͜ͱͰɼ ඍճΛେ෯ʹݮΒ͢͜ͱ͕Մೳ
$ #SBOEJOH&OHJOFFS*OD ʮΈࠐΈʯͱʮϓʔϦϯάʯͷ ֊తΈ߹ΘͤͰߏங͞ΕΔ ը૾ೝࣝʹಛԽͨ͠σΟʔϓϥʔχϯάख๏ ʮΈࠐΈʯɿը૾ͷಛΛநग़͢Δ ʮϓʔϦϯάʯɿಛͷҐஔීวੑΛ֬อ͢Δ 畳み込みニューラルネットワークとは?
$ #SBOEJOH&OHJOFFS*OD
ೖྗ ΈࠐΈ ΈࠐΈ ϓʔϦϯά ϓʔϦϯά શ݁߹ ग़ྗ ΈࠐΈχϡʔϥϧωοτϫʔΫશମ૾
$ #SBOEJOH&OHJOFFS*OD ・再帰ニューラルネットワーク(RNN) աڈͷೖྗΛݱࡏͷग़ྗʹөͤ͞ΔΈΛ࣋ͭ ࣗવݴޠॲཧɼ࣌ܥྻॲཧͳͲͷ ܥྻσʔλʹಛԽͨ͠σΟʔϓϥʔχϯάख๏
$ #SBOEJOH&OHJOFFS*OD ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN)ͷ࣌ؒల։ 8 U U U ɾɾɾ 8
8 աڈͷॏΈͷཤྺ͕ݱࡏͷग़ྗʹӨڹΛ༩͍͑ͯΔ
$ #SBOEJOH&OHJOFFS*OD ディープラーニング ɾޡࠩٯ๏ʹ͍ͭͯ ɾΈࠐΈχϡʔϥϧωοτϫʔΫ(CNN) ɾ࠶ؼχϡʔϥϧωοτϫʔΫ(RNN) ɾGoogle ColaboratoryΛ༻͍࣮ͨફਂֶश
$ #SBOEJOH&OHJOFFS*OD ・Google Colaboratoryを⽤いた実践深層学 習 σΟʔϓϥʔχϯάɼେͳͷύϥϝʔλΛܭࢉ͢Δ ௨ৗͷCPUͰେͳܭࢉ͕͔͔࣌ؒͬͯ͠·͏͜ͱ͕ଟ͍ (16 (SBQIJDT1SPDFTTJOH6OJU ʹΑΔେنฒྻԋࢉॲཧʹΑΓɼ
ܭࢉ࣌ؒΛॖͤ͞Δ͜ͱ͕ଟ͍
$ #SBOEJOH&OHJOFFS*OD ・Google Colaboratoryとは? (PPHMF͕ग़͍ͯ͠Δແྉ(16ڥ શΫϥυ্Ͱ(16Λ࿈ଓ࠷େ࣌ؒ༻Մೳ
$ #SBOEJOH&OHJOFFS*OD ・Google Colaboratoryを使⽤する (PPHMF$PMBCPSBUPSZʹΞΫηεͯ͠Έ·͠ΐ͏ɽ IUUQTDPMBCSFTFBSDIHPPHMFDPNOPUFCPPLT XFMDPNFJQZOC IMKB
$ #SBOEJOH&OHJOFFS*OD 次のような画⾯に移ります.
$ #SBOEJOH&OHJOFFS*OD 左上の「ファイル」をクリックします. ΫϦοΫ
$ #SBOEJOH&OHJOFFS*OD 「Python 3 の新しいノートブック」を選択 ΫϦοΫ
$ #SBOEJOH&OHJOFFS*OD ファイルが開くので,わかりやすい名前に変更 ϑΝΠϧ໊ͷมߋ
$ #SBOEJOH&OHJOFFS*OD 「ランタイムのタイプを変更」を選択 ͪ͜ΒΛબ
$ #SBOEJOH&OHJOFFS*OD 「ハードウェアアクセラレータ」を「GPU」に設定 ʮ(16ʯʹઃఆ ʮอଘʯΛΫϦοΫ
$ #SBOEJOH&OHJOFFS*OD GPUが動作しているか確認する ҎԼͷίʔυΛ࣮ߦ (16͕ಈ࡞͍ͯ͠Ε࣍ͷΑ͏ͳ݁ՌͱͳΔ (16Λೝ͍ࣝͯ͠Δ͜ͱ͕֬ೝͰ͖Δ
$ #SBOEJOH&OHJOFFS*OD 主要なディープラーニングライブラリ DIBJOFSQSFGFSSEOFUXPSLT͕։ൃ UFOTPSqPX(PPHMFʹΑͬͯ։ൃ LFSBT.*5ϥΠηϯεͷϥΠϒϥϦ ࠓճLFSBTΛ༻͍Δ
$ #SBOEJOH&OHJOFFS*OD 演習:CNNによる⼿書き⽂字認識 $//Λ༻͍ͯ ./*45 ͔Β·Ͱͷखॻ͖จࣈ σʔλΛֶशͤ͞Δ τϨʔχϯάσʔλ ςετσʔλ
$ #SBOEJOH&OHJOFFS*OD 演習:CNNによる⼿書き⽂字認識 LFSBTνϡʔτϦΞϧίʔυΛར༻͢Δ IUUQTHJUIVCDPNLFSBTUFBNLFSBTCMPCNBTUFSFYBNQMFTNOJTU@DOOQZ
$ #SBOEJOH&OHJOFFS*OD 演習:CNNによる⼿書き⽂字認識 4UFQඞཁͳϥΠϒϥϦΛಡΈࠐΉ
$ #SBOEJOH&OHJOFFS*OD 演習:CNNによる⼿書き⽂字認識 4UFQֶ̎शͷઃఆΛߦ͏ CBUDI@TJ[FҰճͷֶशͰ༻͢Δσʔλ OVN@DMBTTFTྨͷΫϥε ͔Β·ͰͷࣈΑΓɼ FQPDIT܇࿅σʔλΛֶशʹ͏ճ
$ #SBOEJOH&OHJOFFS*OD 演習:CNNによる⼿書き⽂字認識 4UFQ̏σʔλαΠζͷઃఆɼׂ αΠζΛ✖ʹ͠ɼτϨʔχϯάͱςετʹׂ
$ #SBOEJOH&OHJOFFS*OD 演習:CNNによる⼿書き⽂字認識 4UFQֶ̐शʹ༻͍Δ$//Ϟσϧͷߏங
$ #SBOEJOH&OHJOFFS*OD 演習:CNNによる⼿書き⽂字認識 4UFQ࣮̑ࡍͷֶशΛߦ͏
$ #SBOEJOH&OHJOFFS*OD 演習1:CNNによる⼿書き⽂字認識 ࣮ߦ݁Ռ
$ #SBOEJOH&OHJOFFS*OD Thank You