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
330
YOLOで遊ぶ / pyml-niigata-20181013
Python機械学習勉強会 in 新潟 Restart #2 で発表した資料
kasacchiful
October 13, 2018
Tweet
Share
More Decks by kasacchiful
See All by kasacchiful
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
180
Amazon S3 TablesとAmazon S3 Metadataを動かしてみた / 20250125-niigata-5min-tech-lt
kasacchiful
0
19
dbt coreとFargateでデータ変換 / 20240928-jawsug-toyama-hokuriku-shinkansen
kasacchiful
1
96
What we keep in mind when migrating from Serverless Framework to AWS CDK and AWS SAM
kasacchiful
1
350
AWSでIcebergを使ってデータウェアハウスを構築してみる / 20240810-jawsug-akita
kasacchiful
0
42
サーバーレスパターンを元にAWS CDKでデータ基盤を構築する / 20240731_classmethod_odyssey_online_build_a_data_infrastructures_using_aws_cdk_based_on_serverless_patterns
kasacchiful
0
500
AWS IoT 1-clickがサービス終了するので、SORACOMに移行した話 / 20240518-jawsug-niigata-iotlt-niigata
kasacchiful
0
270
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
580
AWSの各種サービス紹介と活用方法 − AI・ML活用デモを交えて − / 20231208aws-aiml-seminar
kasacchiful
0
540
Other Decks in Programming
See All in Programming
sappoRo.R #12 初心者セッション
kosugitti
0
270
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
120
Honoとフロントエンドの 型安全性について
yodaka
7
1.4k
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
200
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
Ruby on cygwin 2025-02
fd0
0
170
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2.2k
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
770
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
620
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
260
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
890
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
870
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Building an army of robots
kneath
303
45k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Site-Speed That Sticks
csswizardry
4
400
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Designing for Performance
lara
604
68k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
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Ͱͷ࣮͋ΔͷͰɺࢼͯ͠Έ͍ͯͩ͘͞