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
YOLOで遊ぶ / pyml-niigata-20181013
Search
kasacchiful
October 13, 2018
Programming
0
350
YOLOで遊ぶ / pyml-niigata-20181013
Python機械学習勉強会 in 新潟 Restart #2 で発表した資料
kasacchiful
October 13, 2018
Tweet
Share
More Decks by kasacchiful
See All by kasacchiful
ワイがおすすめする新潟の食 / 20250912jasst-niigata-lt
kasacchiful
0
26
WorkersでDiscord botを試してみた / 20250822workers-tech-talk-niigata
kasacchiful
1
41
地域コミュニティへの「感謝」と「恩返し」 / 20250726jawsug-tochigi
kasacchiful
0
160
Amazon Q Developer for CLI を使って PHP Conference 新潟 2025 参加者向けにグルメサイトを構築した話 / 20250620niigata-5min-tech
kasacchiful
1
100
ワイがおすすめする新潟の食 / 20250530phpconf-niigata-eve
kasacchiful
0
420
生成AIでメタデータを生成してみた / 20250525generate-metadata-using-generative-ai
kasacchiful
0
100
Strands Agents SDK で AIエージェント作成 を試してみた / 20250525strands-agents
kasacchiful
0
350
いろんな世界を見てみよう / 20250508ninno_tech_fest
kasacchiful
0
46
Amazon Q Developer for CLIのある生活 / 20250427ai_craft_hacks_niigata1
kasacchiful
1
100
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
360
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
860
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
9
1.7k
オープンソースソフトウェアへの解像度🔬
utam0k
15
2.8k
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
820
明日から始めるリファクタリング
ryounasso
0
140
CSC509 Lecture 06
javiergs
PRO
0
260
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
190
ALL CODE BASE ARE BELONG TO STUDY
uzulla
19
4.9k
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
1k
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.6k
CSC509 Lecture 03
javiergs
PRO
0
340
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
How GitHub (no longer) Works
holman
315
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Rails Girls Zürich Keynote
gr2m
95
14k
Done Done
chrislema
185
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Leading Effective Engineering Teams in the AI Era
addyosmani
5
410
Transcript
YOLOͰ༡Ϳ Pythonػցֶशษڧձ in ৽ׁ 2018/10/13 @kasacchiful
ࣗݾհ • ּݪ (@kasacchiful) • ৽ׁࢢࡏॅ • Ruby͕͓ؾʹೖΓ •
JaSST৽ׁ࣮ߦҕһ • JAWS-UG৽ׁࢧ෦ • ୈ1ճษڧձΛ11݄24()ʹ։࠵ܾఆʂ
એ
ઌ݄NDSͰ͜Μͳ͠·ͨ͠ • ࢿྉ: https://speakerdeck.com/kasacchiful/nds57 • σϞιʔε: https://github.com/kasacchiful/nds57-sample/blob/master/ nds57_vgg16_sample.ipynb
OSC 2018 Niigata ͰΓ·͢ IUUQTXXXPTQOKQPTDOJJHBUBNPEVMFTFHVJEFFWFOUQIQ FJE
JAWS-UG ৽ׁࢧ෦ઃཱ • 11݄24()ʹୈ1ճษڧձΛ։࠵ʂ IUUQTKBXTVHOJJHBUBDPOOQBTTDPN
ຊ
࣍ • YOLOͬͯԿʁମݕग़ͬͯԿʁ • ·ͣಈ͔ͯ͠ΈΑ͏ • ΧελϜֶशͤͯ͞ΈΑ͏
࣍ • YOLOͬͯԿʁମݕग़ͬͯԿʁ • ·ͣಈ͔ͯ͠ΈΑ͏ • ΧελϜֶशͤͯ͞ΈΑ͏
YOLOͬͯԿʁ • ମݕग़(Object Detection)ͷ࣮ͷ1ͭ • ଞʹɺFaster R-CNNSSDͳͲ͕͋Δ • DarknetϑϨʔϜϫʔΫ্Ͱߏங (C࣮)
→ Keras࣮ͳͲ͋Δ • ࠓय़ʹv3ެ։ ( https://arxiv.org/abs/1804.02767 ) • v2͕19 → v3͕53 • ݕग़͕एׯ͘ͳ͕ͬͨɺݕग़ਫ਼͕େ෯Ξοϓ • “You Only Live Once" Λͬͯ͡ɺ”You Only Look Once”
ମݕͬͯԿʁ • ͋Δը૾ͷத͔ΒఆΊΒΕͨମͷΧςΰϦ(Ϋϥ ε)ͱͦͷҐஔΛݕग़ • ڭࢣ͋Γֶशͷྨʹ૬ • ಈըʹద༻Մೳ • ମͷҐஔɺମͷྖҬΛۣܗͰғͬͨΓɺྖ
ҬΛॴఆͷ৭ͰృΓͭͿͨ͠Γ
ྫ͑͜Μͳײ͡ ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
ެࣜͷσϞΛݟͯΈΑ͏ IUUQTQKSFEEJFDPNEBSLOFUZPMP
ମݕͷྺ࢙ ྖҬީิͷબఆ ಛྔͷநग़ ػցֶशͰྨ ैདྷ ྖҬީิͷબఆ σΟʔϓϥʔχϯά R-CNN Fast R-CNN
Faster R-CNN YOLO SSD σΟʔϓϥʔχϯά
ମݕͷࣄྫ • LIXIL (ABEJA SIX 2018Ͱͷߨԋ) • γεςϜΩονϯΛͬͨਓؒͷߦಈੳʹମݕΛ׆༻ • ମݕͷϩά͔Βɺ͍͍͢γεςϜΩονϯͷ։ൃʹͭͳ͍͛ͯΔ
• ମݕʹSSD͕ΘΕ͍ͯΔ • ࢀߟ: • https://six2018.abejainc.com/reports/ • https://logmi.jp/279849
࣍ • YOLOͬͯԿʁମݕग़ͬͯԿʁ • ·ͣಈ͔ͯ͠ΈΑ͏ • ΧελϜֶशͤͯ͞ΈΑ͏
darknetΠϯετʔϧ $ git clone https://github.com/pjreddie/darknet $ cd darknet $ make
ඞཁʹԠͯ͡Makefileฤू GPU=0 #=> NVIDIAͷGPU͕͑ͯɺCUDA͕ΠϯετʔϧࡁͳΒ1ʹ CUDNN=0 OPENCV=0 #=> OPENCV͕ΠϯετʔϧࡁͳΒ1ʹ OPENMP=0 DEBUG=0
Makefileमਖ਼ͨ͠Β࠶make $ make
ࢼ͠ʹ࣮ߦ $ ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
͜Μͳײ͡ʹग़ྗ͞ΕΔ ݁Ռpredictions.jpgʹग़ྗ
σϞ
࣍ • YOLOͬͯԿʁମݕग़ͬͯԿʁ • ·ͣಈ͔ͯ͠ΈΑ͏ • ΧελϜֶशͤͯ͞ΈΑ͏
GPU͕ແ͍ͱπϥΠͷͰ • ֶशڥ: • Amazon EC2 p2.xlarge Πϯελϯε • GPU:
NVIDIA K80 (Google Colabͱಉ͡) • Deep Learning Base AMI (Ubuntu) Ver.10.0 • CUDAΠϯετʔϧࡁ
darknetΠϯετʔϧ $ git clone https://github.com/pjreddie/darknet $ cd darknet
Makefileฤू GPU=1 CUDNN=0 OPENCV=0 OPENMP=0 DEBUG=0
make $ make
ֶशͷྲྀΕ 1. ը૾ΛूΊΔ 2. Ξϊςʔγϣϯ͢Δ 3. ը૾Λਫ૿͢͠Δʢࠓճলུʣ 4. ֶश͢Δ
ࠓճͷֶश༰ • ΠλϦΞϯͷը૾ͷத͔ΒɺΠλϦΞϯͷྖҬΛ ݕग़ • class: 1ͭ (ΠλϦΞϯ͚ͩ) • ը૾72ຕ
• ຊͬͱूΊΔඞཁ͕͋Δ͚Ͳɺࠓճগ ྔͷσʔλͰͬͯΈΔ
1. ը૾ΛूΊΔ • ΠλϦΞϯͷը૾ΛूΊΔ • Bing Search API v7Λͬͯɺը૾Λ700ຕ͘ Β͍ूΊͯɺͦͷத͔Β͑ͦ͏ͳը૾Λ72
ຕબͿ
2. Ξϊςʔγϣϯ͢Δ • ը૾ʹҐஔใΛՃ͑ͯɺڭࢣσʔλΛ࡞͢Δ • ࠓճɺVoTTΛ༻ • https://github.com/Microsoft/VoTT • VoTTYOLOͷܗࣜͰग़ྗͯ͘͠ΕΔͷͰศར
• Ξϊςʔγϣϯ࡞ۀɺσʔλ͕ଟ͚Εଟ͍΄Ͳɺख ؒͱ͕͔͔࣌ؒΔͷͰେม͕ͩɺػցֶशͷΩϞʹͳΔ
3. ը૾Λਫ૿͢͠Δ • ࠓճ໘ͩͬͨͷͰ͍ͬͯͳ͍ • ݩͷը૾͔ΒϥϯμϜʹͣΒͨ͠Γɺճస͞ ͤͨΓͱɺมܗͤͨ͞ը૾Λ࡞ͯ͠ɺը૾ Λ૿͢
4. ֶश͢Δ • Ξϊςʔγϣϯͨ͠ڭࢣσʔλΛdarknetͷ ϑΥϧμʹίϐʔ͠ɺֶशΛ࣮ߦ • ࠓճVoTT͕ग़ྗͨ͠YOLOͷcfgΛ༻
ڭࢣσʔλΛల։ $ unzip italian_output.zip $ cd darknet/cfg $ mv ~/italian_output
./italian $ cd italian $ ls data yolo-obj.cfg $ ls data obj obj.data obj.names test.txt train.txt $ ls data/obj 000001.jpg 000001.txt 000002.jpg 000002.txt ...
ֶश $ cd ~/darknet $ ./darknet detector train ./cfg/italian/data/obj.data \
./cfg/italian/yolo-obj.cfg
ਪ $ cd ~/darknet $ ./darknet detector test ./cfg/italian/data/obj.data \
./cfg/italian/yolo-obj.cfg \ ./backup/yolo-obj_500.weights \ ./italian1.jpg
͜Μͳײ͡ʹग़ྗ͞ΕΔ ݁Ռpredictions.jpgʹग़ྗ
σϞ
·ͱΊ • ମݕɺʑͷ࣮͕ొ͍ͯ͠ΔͷͰɺൺ ֱత؆୯ʹࢼͤ·͢ • ֶश༻σʔλͷऩूͱΞϊςʔγϣϯ͕͠ΜͲ͍ • YOLOSSDΛࢼ͢ྫൺֱతଟ͍ • KerasͰͷ࣮͋ΔͷͰɺࢼͯ͠Έ͍ͯͩ͘͞