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
20180210_Cookpad_TechConf2018_YoheiKIKUTA
Search
yoppe
February 10, 2018
Technology
5
1.2k
20180210_Cookpad_TechConf2018_YoheiKIKUTA
Talk at Cookpad TechConf 2018 (
https://techconf.cookpad.com/2018/
).
yoppe
February 10, 2018
Tweet
Share
More Decks by yoppe
See All by yoppe
20211023_recsys2021_paper_reading_YoheiKikuta
diracdiego
2
500
20201121_oldpaperreading_computing_machinery_and_intelligence
diracdiego
0
170
20200906_ACL2020_metric_for_ordinal_classification_YoheiKikuta
diracdiego
1
1.3k
20191102_ACL2019_adversarial_examples_in_NLP_YoheiKIKUTA
diracdiego
2
1.4k
20190223_nlpaperchallenge_CV_4.3to5.5
diracdiego
2
840
20180701_CVPR2018_reading_YoheiKIKUTA
diracdiego
3
1.2k
20180414_WSDM2018_reading_YoheiKIKUTA
diracdiego
0
720
20180306_NIPS2017_DeepLearning
diracdiego
4
5.9k
20180215_MLKitchen7_YoheiKIKUTA
diracdiego
0
450
Other Decks in Technology
See All in Technology
re:Invent完全攻略ガイド
junjikoide
1
370
Progressive Deliveryで支える!スケールする衛星コンステレーションの地上システム運用 / Ground Station Operation for Scalable Satellite Constellation by Progressive Delivery
iselegant
1
190
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
960
ABEJA FIRST GUIDE for Software Engineers
abeja
0
3.2k
LINEヤフー バックエンド組織・体制の紹介
lycorptech_jp
PRO
0
770
JAWS-UG SRE支部 #14 LT
okaru
0
110
やり方は一つだけじゃない、正解だけを目指さず寄り道やその先まで自分流に楽しむ趣味プログラミングの探求 2025-11-15 YAPC::Fukuoka
sugyan
2
810
今、MySQLのバックアップを作り直すとしたら何がどう良いのかを考える旅
yoku0825
2
400
技術広報のOKRで生み出す 開発組織への価値 〜 カンファレンス協賛を通して育む学びの文化 〜 / Creating Value for Development Organisations Through Technical Communications OKRs — Nurturing a Culture of Learning Through Conference Sponsorship —
pauli
5
360
仕様駆動 x Codex で 超効率開発
ismk
2
1.5k
AWS資格は取ったけどIAMロールを腹落ちできてなかったので、年内に整理してみた
hiro_eng_
0
230
[mercari GEARS 2025] Keynote
mercari
PRO
1
280
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Optimizing for Happiness
mojombo
379
70k
Building Adaptive Systems
keathley
44
2.8k
Designing for Performance
lara
610
69k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
Navigating Team Friction
lara
190
15k
The Invisible Side of Design
smashingmag
302
51k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.1k
Transcript
٠ా ངฏ ݚڀ։ൃ෦ Solve “unsolved” image recognition problems in service
applications Cookpad Inc. Feb 10th, 2018
ࣗݾհ → https://github.com/yoheikikuta/resume ɾ໊લɿ٠ా ངฏ @yohei_kikuta ɾॴଐɿݚڀ։ൃ෦ ɾݞॻɿϦαʔνΤϯδχΞ ɹɹɹɹത࢜ʢཧֶʣ ɾઐɿը૾ੳ
ɾɿম͖ᰤࢠɺण࢘ɺDr Pepper 2
࣍ 3 ɾݚڀ։ൃ෦ͷհ ɾ࣮ۀʹ͓͚Δը૾ੳͷࠔ ɾΫοΫύουͰ۩ମతʹը૾ੳʹऔΓΜͰ͍Δࣄྫͷհ - ྉཧ͖Ζ͘ɿҙͷը૾ͷྉཧ/ඇྉཧྨ - Ϩγϐྨɿྉཧը૾ͷϨγϐΧςΰϦྨ -
ϞόΠϧ࣮ɿϞόΠϧͰಈ͘ྉཧը૾ྨͷϞσϧߏங ɾ·ͱΊ
ݚڀ։ൃ෦ͷϝϯόʔ 4 ৽نٕज़Λ׆༻ͨ͠αʔϏεͷ։ൃɾվળ [ରྖҬ] σʔλ࡞ɺը૾ੳɺࣗવݴޠॲཧ ରɺ৯จԽɺIoTσόΠεɺ։ൃج൫උ
ݚڀ։ൃ෦ͷऔΓΈ 5
ݚڀ։ൃ෦ͷऔΓΈɿը૾ੳ 6 ྉཧ/ඇྉཧఆ http://techlife.cookpad.com/entry/2017/09/14/161756 http://techlife.cookpad.com/entry/2017/11/08/132538 ྉཧ/ඇྉཧྨɺϨγϐྨɺղ૾ɺϑΟϧλ࡞ɺͳͲ
ݚڀ։ൃ෦ͷऔΓΈɿࣗવݴޠॲཧ 7 http://techlife.cookpad.com/entry/2015/09/30/170015 http://techlife.cookpad.com/entry/2017/10/30/080102 MYϑΥϧμͷࣗಈཧɺࡐྉදهͷਖ਼نԽɺͳͲ
ݚڀ։ൃ෦ͷऔΓΈɿAmazon Echo ͚ͷΫοΫύουεΩϧ http://techlife.cookpad.com/entry/2017/11/21/181206 http://techlife.cookpad.com/entry/2017/11/22/alexa-skilldesign
ݚڀ։ൃ෦ͷऔΓΈɿΠϯϑϥڥͱαʔϏεͷܨ͗ࠐΈ 9 https://youtu.be/Jw9CpQkCvpM
ݚڀ։ൃ෦ͷऔΓΈɿ৯จԽݚڀ 10 https://cookpad.com/kitchen/14604664 https://info.cookpad.com/pr/news/press_2016_1208
ݚڀ։ൃ෦ͷऔΓΈɿֶज़ํ໘ͷߩݙ 11 ɾ֤छֶձͷจߘεϙϯαʔ ɹ IJCAI, SIGIR, JSAI, ALNP, IPSJ, CEA,
XSIG2017, … ɾݚڀ༻ʹσʔληοτΛఏڙ ɹ https://www.nii.ac.jp/dsc/idr/cookpad/cookpad.html ɾίϯϖςΟγϣϯ༻ʹઃఆͱσʔληοτΛఏڙ ɹ- ਓೳٕज़ઓུձٞओ࠵ ୈ1ճAIνϟϨϯδίϯςετ ɹ https://deepanalytics.jp/compe/31 20170331ऴྃ ɹ- JSAI Cup 2018 ਓೳֶձσʔλղੳίϯϖςΟγϣϯ ɹ https://deepanalytics.jp/compe/59 20180329క
ࠓը૾ੳͷΛ͠·͢
࣮ۀʹ͓͚Δը૾ੳͷࠔɿͦͦղ͚͍ͯΔͰʁ 13 ྨʮղ͚ͨʯ 0 7.5 15 22.5 30 2010 2011
2012 2013 2014 2015 2016 2017 2.25 2.99 3.57 7.41 11.2 15.3 25.8 28.2 Classification error [%] Deep Learning !! human ability
࣮ۀʹ͓͚Δը૾ੳͷࠔɿͦͦղ͚͍ͯΔͰʁ 14 ྨʮղ͚ͨʯ※ཧతͳঢ়گԼͰ ɾదͳϥϕϧͷ༩ ɹ ҰఆҎ্ͷ࣭Ͱ֤ը૾ʹϥϕϧ͕༩͞Ε͍ͯΔ ɾదͳΧςΰϦͷઃܭ ɹ ࢹ֮తʹྨͰ͖ΔΑ͏ͳΧςΰϦʹ͚ΒΕ͍ͯΔ ɾclosed
set ɹ ֶशσʔλͷͱςετσʔλͷ͕͍͠
࣮ۀʹ͓͚Δը૾ੳͷࠔɿͦͦղ͚͍ͯΔͰʁ 15 ཧ ≠ ݱ࣮ ɾదͳϥϕϧͷ༩ɿ˚ ͋ΔఔσʔλྔͰΧόʔՄೳ ɾదͳΧςΰϦͷઃܭɿ☓ {ϥʔϝϯ, ύελ,
ΧϧϘφʔϥ} ͳͲ ɾclosed setɿ☓ ςετσʔλଟ༷Ͱ͔ͭಈత ࣮ͦͦαʔϏεͰղ͖͘ଟ͘ͷ߹ ”ؒҧ͍ͬͯΔ” → trial & error Ͱղ͖͕͘Կ͔Λ໌Β͔ʹ͍ͯ͘͠ͷ͕ओ
զʑ͕ͲͷΑ͏ʹͦΕΒͷʹऔΓΜͰ͍Δ͔ʁ ɾྉཧ͖Ζ͘Ͱͷػೳ ɹ Ϣʔβͷ࣋ͭը૾Λྉཧ/ඇྉཧྨ ɾϨγϐྨͰͷػೳ ɹ ྉཧࣸਅΛదͳϨγϐʹྨ ɾྉཧ/ඇྉཧྨϞσϧͷϞόΠϧ࣮ ɹ ϞσϧΛϞόΠϧʹҠ২ͯ͠ϓϥΠόγʔͷͳͲΛղܾ
16 ۩ମతͳࣄྫͷհ
۩ମతͳࣄྫɿྉཧ͖Ζ͘Ͱͷྉཧ/ඇྉཧྨ ɾTechConf2017 Ͱհ ɾྉཧͷࣸਅΛࣗಈతʹྨͯ͠දࣔɹ ɹ- CNNʹΑΔྨͰྉཧը૾Λநग़ ɹ- ৯ࣄͷৼΓฦΓͭ͘ΕΆͷଅਐ ɾ20180206࣌Ͱ ɹ-
Ϣʔβɿ19ສਓҎ্ ɹ- ྦྷੵྉཧຕɿ1900ສຕҎ্ 17 ྉཧ͖Ζ͘ͷਐԽͱݱࡏ https://speakerdeck.com/ayemos/real-world-machine-learning
۩ମతͳࣄྫɿྉཧ͖Ζ͘Ͱͷྉཧ/ඇྉཧྨ 18 ػցֶशͷ؍͔Βॏཁͳ ɾΫΠοΫελʔτ ɹը૾ੳͷݟ͕ෆेͳͱ͖͔Β CaffeNet Ͱૉૣ࣮͘ ɾϞσϧͷվળͱۤखͳΧςΰϦͷߟྀ ɹ Inception
V3 ͷ༻ multi-class Ϟσϧͷ༻ ɾςετσʔλͷ֦ॆ ɹࣾһ͔ΒσʔλΛूΊ࣮ͯڥʹ͍ۙঢ়گͰݕূ ɾہॴੑΛऔΓࠐΉͨΊͷύονԽ ɹࣸਅͷҰ෦ʹྉཧ͕͍ࣸͬͯΔঢ়گʹదԠ http://techlife.cookpad.com/entry/2017/09/14/161756 http://techlife.cookpad.com/entry/2017/11/08/132538
۩ମతͳࣄྫɿྉཧ͖Ζ͘Ͱͷྉཧ/ඇྉཧྨ 19 ɾہॴੑΛऔΓࠐΉͨΊͷύονԽ ɹ- ෦తͳྉཧը૾Λर͍͍ͨʢsegmentation ·Ͱ͍Βͳ͍ʣ ɹ- ը૾Λύονʹ͚ͯͦΕͧΕͰྨ͢ΔϞσϧΛߏங
۩ମతͳࣄྫɿྉཧࣸਅͷϨγϐΧςΰϦྨ ɾྉཧࣸਅΛదͳϨγϐΧςΰϦʹྨ ɾ୯७ͳྨʹݟ࣮͑ͯඇৗʹ͍͠ ɹ- open set ʹ͓͚Δ༧ଌ ɹ- ༧ଌରͷΧςΰϦͷઃܭ ɹ-
ྨࣅΧςΰϦͷଘࡏ ɾ༷ʑͳ࣮ݧΛܦͯϞσϧΛ࡞ ɹ- ྨࣅΧςΰϦͷྨͱ precision ʹྗ 20 ྉཧ͖Ζ͘ͷͦͷઌ
۩ମతͳࣄྫɿྉཧࣸਅͷϨγϐΧςΰϦྨ 21 ػցֶशͷ؍͔Βॏཁͳ ɾྨͷରͱͳΔΧςΰϦͷઃܭ ɹαʔϏεͱ݉Ͷ߹͍ΛਤΓͭͭ༧ଌରΧςΰϦΛબఆ ɾྨࣅΧςΰϦʹର͢Δྨ ɹ ΧςΰϦؒͷྨࣅ͕େ͖͘ҟͳΔͷͰఆྔతͳධՁ๏ΛߟҊ ɾopen set
ͳྨʹ͓͚Δ precision ͷ֬อ ɹOne vs. Rest ྨثΛΈ߹Θͤͯ precision ΛߴΊΔΑ͏ௐ ɾධՁํ๏ͷઃܭ ɹΦϯϥΠϯͰϑΟʔυόοΫɺΦϑϥΠϯͰσʔλ࡞ จ : https://arxiv.org/abs/1802.01267
۩ମతͳࣄྫɿྉཧࣸਅͷϨγϐΧςΰϦྨ 22 ɾΧςΰϦߏͱΧςΰϦؒྨࣅͷఆࣜԽ ɹ- ੜϞσϧͷ؍ɺϥϕϧ͚ͷ֬ੑɺ༧ଌϥϕϧͱͷؔ ɹ- ֶशϞσϧͷ ”ޡྨ” ͔ΒΧςΰϦؒྨࣅΛఆٛ
۩ମతͳࣄྫɿྉཧࣸਅͷϨγϐΧςΰϦྨ 23 ɾ࣮ࡍͷΧςΰϦઃܭͷεςοϓ ɹ- ϝλσʔλ͔ΒશΧςΰϦΛநग़ʢશ෦Ͱ1,000ΧςΰϦఔʣ ↓ ɹ- ࢹ֮తͰͳ͍ͷ͕গͳ͍ͷΛআ֎ʢେࡼྉཧͳͲʣ ↓ ɹ-
αʔϏεʹ͓͍ͯ༗༻ͦ͏ͳͷΛਓྗͰநग़ʢ͜͜ॏཁʣ ↓ ɹ- ޡྨʹجͮ͘ྨࣅͰ౷ഇ߹ʢ࠷ऴతʹ50ΧςΰϦఔʣ ྫʣ͖ͦͱϏʔϑϯΛಉ͡ΧςΰϦͱͯ͠౷߹
۩ମతͳࣄྫɿྉཧࣸਅͷϨγϐΧςΰϦྨ 24 ɾprecision ΛߴΊΔͨΊʹ One vs. Rest ྨثʹΑΔϞσϧΛߏங ɹ- རɿݸʑͷΧςΰϦʹ߹Θͤͨॊೈͳઃܭ͕Մೳ
ɹ- ܽɿॱ൪ᮢͳͲ hand crafted ͳ෦গͳ͘ͳ͍ feature extractor for c in {αϥμ, ύελ, …} 0 1 ྉཧը૾Ͱ pre-train ͨ͠ Inception V3 1 0 αϥμ next next f2 ྨࣅ͕ߴ͍ΧςΰϦ ͚ͩΛूΊֶͯशͨ͠ One vs. Rest ྨث
۩ମతͳࣄྫɿը૾ྨϞσϧͷϞόΠϧͷҠ২ ɾղܾ͍ͨ͠·ͩ·ͩ͋Δ ɹ- ଈ࣌ੑɿࡱͬͨࣸਅ͕Ͱ͖Δ͚ͩૣ͘ө͞Εͯཉ͍͠ ɹ- ػີੑɿϢʔβͷࣸਅݟ͍ͯͳ͍͕৺ཧత߅Δ ɹ- ֦େੑɿܭࢉࢿݯΛ؆୯ʹεέʔϧ͍ͤͨ͞ ɹ- Ԡ༻ੑɿΞϓϦͰྨ༷ͯ͠ʑͳαʔϏεʹԠ༻͍ͨ͠
ɾϞόΠϧ࣮ͷػӡ ɹ - ܰྔͰߴੑೳͳϞσϧ͕֤छଘࡏ ʢSqueezeNet MobileNetʣ ɹ - ֤छϥΠϒϥϦͷॆ࣮ʢCore ML TensorFlow Liteʣ 25 ϞόΠϧͷҠߦ
۩ମతͳࣄྫɿը૾ྨϞσϧͷϞόΠϧͷҠ২ 26 ػցֶशͷ؍͔Βॏཁͳ ɾਫ਼Λग़དྷΔݶΓམͱͣܰ͞ྔͳϞσϧΛ࡞Δ ɹܰྔԽΛతͱͨ͠ߏྔࢠԽͳͲͷཧղ ɾϞόΠϧଆͱͷ࿈ܞ ɹ iOS Android
ଆͷݟ͕ෆՄܽ ɾใ͕গͳ͍தͰͷϓϩδΣΫτਪਐ ɹ ػցֶशͱϞόΠϧͷͦΕͧΕͷྖҬͰਂ͍ཧղ͕ॏཁ ɾϥΠϒϥϦͷόʔδϣϯґଘੑͳͲΛదʹѻ͏ ɹྫʣcoremltools 201802 ·Ͱ python 2.7 ܥͰͷΈར༻Մ
۩ମతͳࣄྫɿը૾ྨϞσϧͷϞόΠϧͷҠ২ 27 ɾྉཧ/ඇྉཧྨϞσϧΛϞόΠϧʹҠ২ ɹ- MobileNet ͱہॴԽͷͨΊͷύονԽΛ߹Θͤͨߏ ɹ- αʔό্ͷ࣮ݧʢը૾20,000ຕఔʣͰ 1% ఔͷਖ਼ͷࠩ
ɹ- iOS, Android ڞʹ࣮ػͰݕূ͓ͯ͠Γಉఔͷੑೳ ɾBristol ΦϑΟεͷग़ு࣌ʹਐΊͨϓϩδΣΫτ ɹ- iOS, Android ΤϯδχΞʹڠྗͯ͠Β͍ҰؾʹਐΜͩ ɹ- ࠃ֎ͰਐΊ͍͚ͯͦ͏ͳτϐοΫ
۩ମతͳࣄྫɿը૾ྨϞσϧͷϞόΠϧͷҠ২ 28 ɾAndroid (Pixel 2 at Bristol) Ͱͷ࣮ݧ݁Ռ Original Quantized
Model Size 12 [MB] 3.3 [MB] Accuracy 0.97 0.97 Precision 0.98 0.98 Recall 0.96 0.96 CPU Usage 40-60 [%] 40-60 [%] Memory Usage 120 [MB] 90 [MB] FPS 7.54 [FPS] 7.72 [FPS] DEMO
ը૾ੳͷίϯϖͬͯ·͢ʂ JSAI Cup 2018 క : 20180329 https://deepanalytics.jp/compe/59
·ͱΊ 30 Λఆٛ͠ɺͦΕΛਵ࣌ߋ৽ͯ͠ղ͍͍ͯ͘ ɾ࣮ۀͰͷը૾ੳͷ·ͩ·ͩ “ղ͚ͯͳ͍“ ɹ ਖ਼֬ʹղ͖͕͘໌֬ʹఆٛͰ͖͍ͯΔ͜ͱ͕গͳ͍ ɾࢼߦࡨޡͷʹͦΕΛݱঢ়ͷٕज़Ͱղ͚Δʹམͱ͠ࠐΉ ɹ ը૾ੳͷཁૉٕज़ख़͖͍ͯͯͯ͜͠Ε͕ॏཁͳϑΣʔζ
ɹ ΫοΫύουͰྉཧ͖Ζ͘Ϩγϐྨʹը૾ੳΛಋೖ ɾϞόΠϧͷҠ২ಈըͳͲ͕ը૾ੳͷ࣍ͷ໘നͦ͏ͳྖҬ
࠷ޙʹɿΫοΫύουʢগͳ͘ͱࣗʹͱͬͯʣಇ͖͍͢ 31 ݚڀ։ൃ෦Ͱಇ͘͜ͱ = ྑήʔ ɾྑετʔϦʔ ɹʮຖͷྉཧΛָ͠Έʹ͢Δʯͱ͍͏ϛογϣϯͷԼͰڠಇ ɾߴࣗ༝ ɹ৽͍͠ઓʹॏ͖Λஔ͍͍ͯͯ trial
& error Λਪ ɾָγεςϜ ɹैۀһ͕ಇ͖͘͢ύϑΥʔϚϯεΛग़͍͢͠ڥ
[એ] ਓೳֶձओ࠵ͷNIPS2018ใࠂձͰൃද͠·͢ 32 https://www.ai-gakkai.or.jp/no74_jsai_seminar/