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
【入門】 機械学習を行うための Python導入講座
Search
Manabu TERADA
February 24, 2018
Technology
3
2.2k
【入門】 機械学習を行うための Python導入講座
OSC2018東京 春での入門セッション
Manabu TERADA
February 24, 2018
Tweet
Share
More Decks by Manabu TERADA
See All by Manabu TERADA
コンテンツタイプとUMLで考えるPlone開発(1)
terapyon
0
31
Python Web UIフレームワークのススメ
terapyon
0
880
LLMを用いたPloneベクター検索 アドオンの開発の説明
terapyon
0
74
PyCon APACの軌跡
terapyon
0
1.7k
Pythonエンジニアになるためのテクニカルハイライトと学習方法
terapyon
0
95
Multi lingual Vector search using LLM
terapyon
1
81
メモリプロファイラMemrayのススメ
terapyon
3
1.1k
PoC for LLM search on Plone
terapyon
1
96
LLMを用いたPloneベクター検索 アドオンの開発状況の紹介
terapyon
0
120
Other Decks in Technology
See All in Technology
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
380
TypeScript、上達の瞬間
sadnessojisan
46
13k
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
120
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
130
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
300
OTelCol_TailSampling_and_SpanMetrics
gumamon
1
120
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
Taming you application's environments
salaboy
0
190
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.2k
いざ、BSC討伐の旅
nikinusu
2
780
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Featured
See All Featured
Music & Morning Musume
bryan
46
6.2k
Practical Orchestrator
shlominoach
186
10k
Docker and Python
trallard
40
3.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Building Your Own Lightsaber
phodgson
103
6.1k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Agile that works and the tools we love
rasmusluckow
327
21k
What's in a price? How to price your products and services
michaelherold
243
12k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
How STYLIGHT went responsive
nonsquared
95
5.2k
Scaling GitHub
holman
458
140k
Transcript
ʲೖʳ ػցֶशΛߦ͏ͨΊͷ 1ZUIPOಋೖߨ࠲ ࣉాɹֶ .BOBCV5&3"%" 04$4QSJOH5PLZP ໌େֶ
.BOBCV5&3"%" !UFSBQZPO ג $.4ίϛϡχέʔγϣϯζද Ұൠࣾஂ๏ਓ1Z$PO+1දཧࣄ 14'$POUSJCVUJOHNFNCFS Ұൠࣾஂ๏ਓ1ZUIPOΤϯδχΞҭਪਐڠձࢼݧमٴͼίϛϡχςΟࢧԉ 1MPOF'PVOEBUJPO"NCBTTBEPS 1ZUIPOΤϯδχΞ݉ΞʔΩςΫτ
"CPVUNF .BOBCV5&3"%" ࣉాɹֶ
݄ൃച 1ZUIPOॳ৺ऀ͚
"CPVUPVSPSHBOJ[BUJPO ʹճ࣮ࢪ͍ͯ͠Δ1ZUIPOͷΠϕϯτ ʹҰൠࣾஂ๏ਓԽͨ͠ Ұൠࣾஂ๏ਓ1Z$PO+1 ຖ࣮ࢪͷ1Z$PO+1ͷ࠲Λબग़ ࡒཧ ܖΛ࣮ࢪ 1ZUIPO#PPU$BNQΛશࠃʹల։ 1Z$PO+1
1ZUIPOͱ ϓϩάϥϛϯάݴޠ Θ͔Γͯ͘͢शಘ͕༰қ ߴͳϓϩάϥϛϯάͰ͖Δ ଟ͘ͷϢʔβ͕͍Δ ػցֶशͳͲσʔλܥॲཧͰඪ४తݴޠ Φʔϓϯιʔε
1Z$PO+1 ݄͔Β ౦ژͰ࣮ࢪ ໊
1Z$PONJOJ̋̋ ֤Ͱͷ։࠵ࢧԉ
1ZUIPO#PPU$BNQ શࠃπΞʔ ։࠵ืूத
1ZUIPO ͍ͬͯΔਓʁ
ػցֶश ͬͨΓɾษڧͯ͠Δ
ηογϣϯͷ༰ લ ػցֶश֓ཁ ػցֶशͷεςοϓ ͳͥ1ZUIPOΛ༻͍Δ͔ɾඞཁͳࣝ ޙ 1ZUIPOͱ Πϯετʔϧڥઃఆ +VQZUFS/PUFCPPLͷઆ໌ +VQZUFS/PUFCPPLΛͬͨػցֶशσϞ
લ
ػցֶशͱ σʔλαΠΤϯεͷ ਓؒͱಉ༷ʹίϯϐϡʔλֶ͕श͠ɺֶश݁Ռ Λ༻͍ͯ༧ଌͳͲΛߦ͏ɻ
ػցֶशͷछྨ ڭࢣ͋Γ ڭࢣͳ͠ ڧԽֶश
σʔλղੳͷΞϓϩʔν ػցֶश͕࠷ߴʹ͍͍ํ๏͔ʁ σΟʔϓϥʔχϯάඞཁ͔ʁ ౷ܭతΞϓϩʔνʁ σʔλ͔Βಋ͖ग़͞ΕΔͷԿ͔ʁ
ػցֶशͷ εςοϓ ڭࢣ͋Γ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ σʔλΛ୳͢ σʔλͷೖखɾμϯϩʔυ σʔλͷ֓ཁΛଊ͑Δ
ΠϯσοΫε໊ΧϥϜ໊Λ͚Δ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ σʔλͷॳظՃ σʔλͷ࿈݁ ܽଛॲཧ
ՃࡁΈσʔλͷ֬ೝ ՃࡁΈσʔλͷอଘ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ ՄࢹԽڥઃఆ σʔλͷಡࠐΈ άϥϑԽ
Ͱ֓ཁΛݟΔ ૬ؔΛ֬ೝ ඞཁʹͳΔσʔλΛ࡞Δ ଟมྔมΛݟΔ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ ΞϧΰϦζϜͷީิΛ্͛Δ ߹ʹΑͬͯσʔλ࠶Ճ ߹ʹΑͬͯओੳ
આ໌มͱతมΛܾΊΔ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ ֶशσʔλͱςετσʔλΛׂ ΞϧΰϦζϜͷॳظԽ ύϥϝʔλઃఆ
ֶश
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ ༧ଌ ༧ଌ݁ՌΛධՁ ࠞಉߦྻͰ֬ೝ
ద߹ɾ࠶ݱɾ' ଞͷϞσϧɾύϥϝʔλΛࢼ͢ ަࠩݕূ ΫϩεόϦσʔγϣϯʣ άϦουαʔν ύϥϝʔλௐʣ
σʔλબͼɾσʔλೖख σʔλՃɾσʔλ࿈݁ ՄࢹԽ ػցֶशΞϧΰϦζϜબఆ ػցֶशϞσϧֶश ػցֶशϞσϧධՁ
1ZUIPOͰͳͯ͘Ͱ͖Δ σʔλͷલॲཧʹQBOEBT &YDFMͰͰ͖Δ͚Ͳɻ ՄࢹԽ &YDFMͰͰ͖Δ͚ͲͶɻ ػցֶश ϞσϧΛࣗͰϓϩάϥϛϯά͍͍͚ͯ͠ ͲͶɻ σʔλׂධՁΛϓϩάϥϛϯά͍ͯ͠ ͍͚ͲͶɻ
֤छπʔϧͷղઆ &YDFM (6*Ͱ؆୯ʹ͑Δ جຊతͳ౷ܭใɺάϥϑԽ͕Մೳ 1ZUIPO ศརͳϥΠϒϥϦͱͷ߹ͤΛ͢Δ ߴͳ͜ͱରԠՄೳ ෯͍ͷద༻͕Մೳ 3
౷ܭղੳઐ༻ͷݴޠ खݩͰσʔλղੳؔΛ࣮ߦՄೳ ͦͷଞ ֤छϓϩάϥϛϯάݴޠͰऔΓΊΔ
1ZUIPOπʔϧͷղઆ 1ZUIPO ෯͍ʹར༻͞ΕΔϓϩάϥϛϯάݴޠ /VN1Z ܭࢉ༻ϥΠϒϥϦ 4DJ1Z ౷ܭͷՊֶٕज़ܭࢉ༻ϥΠϒϥϦ QBOEBT σʔλϋϯυϦϯάϥΠϒϥϦ
NBUQMPUMJC άϥϑԽπʔϧ TDJLJUMFBSO ػցֶशϥΠϒϥϦ +VQZUFS/PUFCPPL 8FCϒϥβͰ࣮ߦՄೳͳπʔϧ
༻͢Δπʔϧ 1ZUIPOIUUQTEPDTQZUIPOKQ /VN1ZIUUQTEPDTTDJQZPSHEPD 4DJ1ZIUUQTEPDTTDJQZPSHEPD QBOEBTIUUQQBOEBTQZEBUBPSHQBOEBTEPDTTUBCMF NBUQMPUMJCIUUQTNBUQMPUMJCPSHDPOUFOUTIUNM TDJLJUMFBSOIUUQTDJLJUMFBSOPSHTUBCMF
EPDVNFOUBUJPOIUNM +VQZUFSIUUQKVQZUFSOPUFCPPLSFBEUIFEPDTJPFOMBUFTU
1ZUIPOܥπʔϧͷศརͳϙΠϯτ +VQZUFS/PUFCPPL QBOEBT NBUQMPUMJC ܁Γฦ࣮͠ߦ͕༰қ ࠶ར༻Մೳ HJUIVCͰՄࢹԽՄೳ ࠶ࢼ༰қ TDJLJUMFBSO ػցֶश͕༰қ
ศརͳπʔϧ͕ͦΖ͍ͬͯΔ
ඞཁͳΤϯδχΞϦϯάͱʁ υϝΠϯࣝɾϏδωεࣝ σʔλαΠΤϯςΟετ σʔλੳऀ σʔλؔ࿈ΤϯδχΞ
ޙ
ޙηογϣϯͷ༰ 1ZUIPOͱ 1ZUIPOͷΠϯετʔϧɾڥઃఆ +VQZUFS/PUFCPPLͷઆ໌ +VQZUFS/PUFCPPLΛͬͨػցֶशͷσϞ
1ZUIPOͬͯͳʹ ϓϩάϥϛϯάݴޠ Θ͔Γͯ͘͢शಘ͕༰қ ߴͳϓϩάϥϛϯάͰ͖Δ ଟ͘ͷϢʔβ͕͍Δ ػցֶशͳͲσʔλܥॲཧͰඪ४తݴޠ Φʔϓϯιʔε
1ZUIPOͷಛ ίϯύΠϧෆཁ ߏΛΠϯσϯτͰදݱ όοςϦʔΠϯΫϧʔυ ଟ͘ͷαʔυύʔςΟϥΠϒϥϦ ༷ͷ໌จԽ όʔδϣϯΞοϓαΠΫϧͷެද
1ZUIPOͰͳʹ͕Ͱ͖Δ͔ 04Πϯϑϥ 8FCؔ Պֶٕज़ܭࢉػցֶश %άϥϑΟοΫ *P5 ΘΕ͍ͯΔྖҬ
1ZUIPOͰͳʹ͕Ͱ͖Δ͔ 3FE)BUܥ-JOVYΠϯετʔϥ ZVNύοέʔδϚʔδϟ "OTJCMFύοέʔδͷߏཧπʔϧ 0QFO4UBDLΫϥυγεςϜߏஙπʔϧ 04Πϯϑϥ
1ZUIPOͰͳʹ͕Ͱ͖Δ͔ 8FCϑϨʔϜϫʔΫ %KBOHP 'MBTL 1ZSBNJE 3%#.403Ϛούʔ %KBOHPଂ 42-"MDIFNZ 8FCؔ
ςϯϓϨʔτ +JOKB .BLP $IBNFMFPO ͦͷଞπʔϧ 4DSBQZ
1ZUIPOͰͳʹ͕Ͱ͖Δ͔ σʔλܕ /VN1Z QBOEBT Պֶٕज़ܭࢉ 4DJ1Z άϥϑπʔϧ NBUQMPUMJC Պֶٕज़ܭࢉػցֶश
ػցֶशϑϨʔϜϫʔΫ TDJLJUMFBSO σΟʔϓϥʔχϯά 5FOTPS'MPX $IBJOFS
1ZUIPOͰͳʹ͕Ͱ͖Δ͔ .BZB #MFOEFS %άϥϑΟοΫ
1ZUIPOͰͳʹ͕Ͱ͖Δ͔ 3BTQCFSSZ1J .JDSP1ZUIPO *P5
1ZUIPOද 1ZUIPO 1ZUIPO &WFOU 3FE)BU ʜ
14' &VSP1ZUIPO 3)&- 1Z$PO 64 3)&- 3)&- 1ZUIPO 3)&- 1Z$PO"1"$ 4( 3)&- 1Z$PO+1 1Z$PO"1"$ +1 3)&- ʜ &OEPG-JGF
όʔδϣϯ 1ZUIPOͰେ͖ͳมߋ 1ZUIPOͰαϙʔτऴྃ ͜Ε͔ΒΔͳΒ1ZUIPO ͨͩ͠ɺ1ZUIPOͷαϯϓϧ͕ଟ͘ݟ͔ͭΔ 1ZUIPOWT
ࢲͷΦεεϝڥ ߲ Φεεϝ ࣮ $1ZUIPO όʔδϣϯ Πϯετʔϧ ެࣜ൛Πϯετʔϥ
Ծڥ WFOW ύοέʔδΠϯετʔϧ QJQ ΤσΟλ 1Z$IBSN ͙࢝͢ΊΒΕΔɺ1ZUIPOͷڥߏஙCZ.BOBCV5&3"%" 1VCMJTIFE"QSJM IUUQTTQFBLFSEFDLDPNUFSBQZPOTVHVTIJNFSBSFSVQZUIPOGBMTFIVBOKJOHHPV[IV
Πϯετʔϧํ๏ $1ZUIPO ໊শ ֓ཁ ެࣜ൛Πϯετʔϥ FYFQLHͰΠϯετʔϧ ެࣜ൛ΛιʔείϯύΠϧ UH[UBSY[͔ΒίϯύΠϧ 04ύοέʔδϚωʔδϟ
ZVNBQUHFUͰΠϯετʔϧ "OBDPOEB Պֶٕज़ܭࢉ༻ΛύοέʔδԽ
ެࣜ൛Πϯετʔϥ ಛผͳཧ༝͕ͳ͚Ε ެࣜ൛Πϯετʔϥ -JOVYڥͷ߹ ެࣜ൛Πϯετʔϥ͕ఏڙ͞Εͯͳ͍ ެࣜ൛ιʔεΛίϯύΠϧͯ͠༻
ެࣜ൛1ZUIPOIUUQTXXXQZUIPOPSHEPXOMPBET
"OBDPOEB Պֶٕज़ܭࢉܥͷύοέʔδ͕ಉࠝ Πϯετʔϧ͕ख͕ܰͩɺ ·ΓϙΠϯτ͋ΔͷͰҙ 8JOEPXTڥͰՊֶٕज़ܭࢉܥͷ߹ "OBDPOEBΛબ͢Δ߹͋Δ
Ծڥ Ұͭͷ04্ʹɺෳͷ1ZUIPOڥΛ࡞ΕΔ ར༻͢Δ1ZUIPOϥΠϒϥϦΛ͚۠Ͱ͖Δ άϩʔόϧͳ1ZUIPOڥΛΫϦʔϯʹอͯΔ 1ZUIPOϨΠϠʔͷԾڥʹݶఆ 04ΛԾԽɺίϯςφԽ %PDLFSͷΑ͏ͳ ͱผ
ԾڥͷछྨͳͲ ໊শ ֓ཁ WFOWϞδϡʔϧ ެࣜ൛ʹಉࠝ Ҏ߱ඪ४ WJSUVBMFOW 1ZUIPOͰඞཁ QZFOW
1ZUIPOࣗମͷόʔδϣϯସՄೳ DPOEBίϚϯυ όʔδϣϯସՄೳ "OBDPOEBͰ༻Մೳ QZWFOWίϚϯυ WFOWϞδϡʔϧͱಉ͡ ݱࡏඇਪ
WFOWϞδϡʔϧͷ͍ํ WFOWϞδϡʔϧͱ ެࣜ൛1ZUIPOʹಉࠝ͞Ε͍ͯΔ ԾڥΛ࡞Δඪ४Ϟδϡʔϧ $ python -m venv env
FOWͱ͍͏ԾڥΛ࡞ $ source env/bin/activate Ծڥ༗ޮԽ (env) $ ϓϩϯϓτ͕มԽ (env) $ deactivate ԾڥͷແޮԽ $ rm -r env FOWͱ͍͏ԾڥϑΥϧμΛআ
ύοέʔδΠϯετʔϧ 1ZUIPOʹଟ͘ͷ αʔυύʔςΟʔύοέʔδ͕͋Δ 1Z1* ύΠϐʔΞΠͱಡΉ IUUQTQZQJQZUIPOPSHQZQJ
1Z1*IUUQTQZQJQZUIPOPSHQZQJ
ύοέʔδΠϯετʔϧ QJQίϚϯυ 1ZUIPOʹಉࠝ͞Ε͍ͯΔίϚϯυ QJQίϚϯυΛ͍ύοέʔδΠϯετʔϧ $ source env/bin/activate Ծڥ༗ޮԽ (env)
$ pip install pandas QBOEBTΠϯετʔϧ (env) $ pip freeze > requirement.txt ύοέʔδϦετ࡞ (env) $ pip install -r requirement.txt ύοέʔδϦετΛݩʹΠϯετʔϧ (env) $ pip install -u pandas QBOEBTΛ࠷৽൛ʹ
+VQZUFS/PUFCPPL δϡϐλʔɹϊʔτϒοΫͱಡΉ IUUQKVQZUFSPSH
+VQZUFS/PUFCPPLΠϯετʔϧ ҎԼͷίϚϯυͰϒϥβ͕ىಈ͢Δ $ source env/bin/activate Ծڥ༗ޮԽ (env) $ pip
install jupyter (env) $ jupyter notebook
+VQZUFS/PUFCPPL͍ํ +VQZUFS/PUFCPPLͷىಈ /FX͔ΒɺΧʔωϧͰ1ZUIPOΛબ ηϧʹίʔυΛهड़ ηϧͷछྨ $PEF .BSLEPXO ೖྗޙ &OUFSͰηϧվߦ $USM
&OUFSͰ࣮ߦ 4IJGU &OUFSͰ࣮ߦͯ͠ɺ࣍ͷηϧ
+VQZUFS/PUFCPPL࠶ར༻ ໊લΛ͚Δ 4BWFBOE$IFDLQPJOU HJUIVCʹͯJQZOCϑΝΠϧΛQVTI͢Δͱɺ͖ Ε͍ʹදࣔ͞ΕΔ
+VQZUFS/PUFCPPL σϞ
ػցֶशͷσϞ ΞΠεΫϦʔϜച্૬ؔΛٻΊΔ +VQZUFS/PUFCPPLΛ༻ ࣮ߦՄೳͳ༰(JTUͰެ։ IUUQTHJTUHJUIVCDPNUFSBQZPOCEEDDED
ػցֶशͷ σϞ
͓קΊຊ
݄ൃച 1ZUIPOॳ৺ऀ͚
1ZUIPOॳ৺ऀ͚ ϥΠόϧຊ
1ZUIPOॳ৺ऀ͚ ϥΠόϧຊ
1ZUIPOνϡʔτϦΞϧ ୈ൛
ॳ৺ऀʹ ͔ͳ͍
Ұาઌʹ
σʔλॲཧ લॲཧ QBOEBT ՄࢹԽ
1ZUIPOػցֶश
1ZUIPOσʔλղੳ ӳޠ
σΟʔϓϥʔχϯά
தڃऀ͚
্ڃऀ͚
࠷ޙʹ͏ճ
݄ൃച 1ZUIPOॳ৺ऀ͚ ϓϨθϯτ
5IBOLZPV $.4 1MPOF $POUBDUUPUFSBEB!QZDPOKQ
࣭ٙԠ
5IBOLZPV $.4 1MPOF $POUBDUUPUFSBEB!QZDPOKQ