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
Kaggle M5-Forecasting (Walmart)
Search
IHiroaki
July 19, 2020
Programming
440
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kaggle M5-Forecasting (Walmart)
先日開催された、Kaggle(M5-Forecasting)の当方のSolution資料です。
IHiroaki
July 19, 2020
Other Decks in Programming
See All in Programming
今さら聞けない .NET CLI
htkym
0
190
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
180
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.4k
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
210
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.5k
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
490
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
180
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
230
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
220
FDEが実現するAI駆動経営の現在地
gonta
2
280
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
320
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.4k
The Curious Case for Waylosing
cassininazir
1
450
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
340
Accessibility Awareness
sabderemane
1
170
The World Runs on Bad Software
bkeepers
PRO
72
12k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
170
Art, The Web, and Tiny UX
lynnandtonic
304
22k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Facilitating Awesome Meetings
lara
57
7.1k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
Transcript
LBHHMFOBNF*)JSPBLJ .'PSFDBTUJOH "DDVSBDZ6ODFSUBJOUZ
࣍ɿ 1. ࣗݾհ 2. ݁Ռ 3. ࠓճͷऔΓΈͱߟ͑ 4. Ϟσϧ֓ཁ 5.
σʔλ୳ࡧ 6. ಛྔબ 7. Ϟσϧৄࡉ 8. লͱ՝
̍ɽࣗݾհ
̎ɽ݁Ռ ίϯϕͷ֓ཁͪ͜ΒΛࢀরɿhttps://www.kaggle.com/c/m5-forecasting-accuracy/overview ίϯϕͷ֓ཁͪ͜ΒΛࢀরɿhttps://www.kaggle.com/c/m5-forecasting-uncertainty/overview
̏ɽࠓճͷऔΓΈ ͱߟ͑ ʻऔΓΈʼ ɾॳίϯϖɻ ɾ3݄த०ʙ6݄ͷίϯϖऴྃ·Ͱͷ̏ϲ݄΄΅ٳΈͳ͠ͰରԠɻ ɾҰฏۉ̍̎ʙ̍̒࣌ؒΛίϯϖʹ๋͛Δɻ ʻߟ͑ʼ Accuracyɿ ɾ༧ଌΛͬͨಛྔٴͼલͷ༧ଌΛ༻͍ͨཌͷ༧ଌʢ࠶ؼతΞϓϩʔνʣߦΘͳ͍ɻʢಛʹ࠶ؼత Ξϓϩʔν̎ɺ̏ͷ༧ଌͳΒ༗ޮ͔͠Εͳ͍͕̎̔ͷ༧ଌͩͱޡࠩͷੵ͕େ͖͘ͳΓ͗͢ΔՄೳੑ͕͋
Δɻʣ ɾલͷ28ؒTrainDataͱͯ͠༻͢ΔɻʢաֶशɺֶशෆͷڪΕ͕͋Δ͜ͱ͔ΒҙΛ͍ϞσϧΛ࡞͢ Δඞཁ͕͋Δɻʣ Uncertaintyɿ ɾAccuracyͰͷ࠷ऴఏग़ΛҐͷ̑̌ˋͱ͢Δɻ ɾAccuracyϞσϧʹ͓͚ΔValidationظؒͷ࣮ͱ༧ଌͱͷֹࠩΛෆ࣮֬ੑͱͯ͠༻͢Δɻ ɾΑͬͯAccuracyʹ͓͍ͯ൚Խੑೳͷߴ͍Ϟσϧͷ࡞͕ॏཁͱͳΔɻ
̐ɽϞσϧ֓ཁ "DDVSBDZ 6ODFSUBJOUZ Ϟσϧɿ LightGBMͷΈΛ༻ Ϟσϧߏ : 28Λਖ਼֬ʹ༧ଌ͢ΔͨΊʹ1ຖʹݸผͷϞσϧ Λ࡞ɻ·ͨϝϞϦͷ͋Γɺstore_idຖʹϞ
σϧΛׂɻ߹ܭ 28 day × 10 id = 280 models ॏཁͳಛྔ: ಛྔʹؔͯ͋͠·Γಛผͳͷͳ͘ඪ४త ͳͷͷΈͱͳͬͨɻ ex) Basic Lagʢmean, max, ,min, std, medianʣ Average Encoding ʢ֤Ϩϕϧຖʣ IDʢTrainDataʹͯ༩͑ΒΕͨIDʣ ֶश࣌ؒɿ 8ʙ9ʢՄೳͳݶΓϦεΫΛഉআ্ͨ͠Ͱͷ࣌ ؒʣ ※ֶश࣌ؒΛॖ͢ΔͨΊͷํ๏ɻʢ༧ଌ͕গ͠ߥ͘ͳΔ͕ͦ͜·Ͱ μϝʔδ͕ͳ͍ͷʣ ɾLearningRateΛେ͖͘͠ɺnum_iterΛݮΒ͢ɻʢlr0.03ͳΒ iter500~700ఔʣ ɾBasicLagಛྔΛআ͢Δɻʢಛʹmulti_2, 3, 5, ʣ ɾstore_id୯ҐϞσϧΛͳ͘͢ɻʢͨͩ͠ಛྔΛेݮΒ͞ͳ͍ͱϝ ϞϦͷൃੜʣ Ϟσϧ : AccuracyΛ࡞͢Δࡍʹ༻ͨ͠Model Λ༻ɻ ࢉग़ํ๏ : Ґͷ͏ͪ̑̌ˋʹؔͯ͠Accuracyͷ Final SubmissionΛ͏ɻ ͦͷଞ̔ʹؔͯ͠Accuracyʹͯࢉग़ͨ͠ Validationظؒʹ͓͚Δ࣮ͱ༧ଌͷࠩΛෆ֬ ࣮ੑͱ͠ɺల։͢Δɻ
̑. σʔλ୳ࡧ ച্ݸͷϓϩοτʢ߹ܭʣ Ұݟ͢Δͱશମʹͬͯ ্ঢͰ͋ΔΑ͏ʹݟ ͑Δɻ ຖͷొΞΠςϜ ຖʹΞΠςϜ͕Ճ͞Ε͓ͯΓ Totalͷ্ঢͷཁҼͱͳ͍ͬͯΔ͜ͱ ͕ఆ͞ΕΔɻ
30490 ʢ̍ʣτϨϯυ ্ਤɿຖͷച্ݸͷ߹ܭਪҠ ԼਤɿຖͷΞΠςϜొਪҠ ্ਤΛݟΔͱҰݟ௨ظʹΘͨͬͯ૿Ճ͠ ͍ͯΔΑ͏ʹݟ͑Δ͕ԼਤͰΞΠςϜ͕ ʑొ͞Ε͍ͯΔ͜ͱ͕Θ͔Δɻ Αͬͯ͜ΕΒͷ৽͘͠ೖͬͨΞΠςϜʹ ΑΓ্ঢ͕ݟΒΕΔ͜ͱ͕ߟ͑Β Εɺ͜ͷ߹্ਤͰΛଊ͑Δ͜ͱ ͕Ͱ͖ͳ͍ɻ Αͬͯ࣍ʹΞΠςϜొผʢച্։࢝ ʣͷຖͷച্ݸͷ߹ܭਪҠΛݟͯ ΈΔɻ
̑. σʔλ୳ࡧ ച্։࢝ผͷച্ݸͷϓϩοτ ਤɿച্։࢝ผͷചΓ্͛ݸͷ߹ܭਪ Ҡ Ͳͷਤʹ͓͍ͯ2015લ·Ͱݮগ ʹ͋Δͷʹ͔͔ΘΒͣɺ2015ޙ͔ Β2016ʹ͔͚ͯ૿Ճ͍ͯ͠Δ͜ͱ͕Θ͔ Δɻ ͜ΕԿ͔͠ΒτϨϯυ͕มΘͬͨ͜ͱΛ
ද͍ͯ͠ΔՄೳੑ͕͋ΓValidationͷऔΔظ ؒϞσϧͷߏஙํ๏ʹؾΛ͚ͭΔඞཁ͕ ͋Δɻ ͔͠͠ɺاۀଆͷԿ͔ࢼ࡞ʹΑΔͷͳͷ ͔ɺফඅτϨϯυʹΑΔͷͳͷ͔͕ෆ໌ Ͱ͋ΓɺࠓճͷίϯϖΛߟ͑Δ্Ͱ͍͠ ͱ͜Ζͱͳͬͨɻ ʢ̍ʣτϨϯυ 2011 2012 2013 2014 2015 2016
̑. σʔλ୳ࡧ ਤɿ28ຖͷച্ݸͷ߹ܭਪҠʢάϥϑ store_idຖ͓Αͼച্։࢝ຖͰ͋Δʣ 28ؒʹ͓͚Δ߹ܭച্ݸͷਪҠͲ͏ มಈ͍ͯ͠Δͷ͔ΛݟͨάϥϑͰ͋Δ͕ɺ Γधཁ͋ΔఔҰఆͰ͋Δ͜ͱ ͔Β͔ɺٸܹͳ্ঢͷ͋ͱͷ28͋Δఔ ͑ΒΕௐ͞Ε͍ͯΔΑ͏ʹݟ͑Δɻ xʹ̓̌PublicLBظؒͰ͋Δ͕ଟ͘ͷάϥ
ϑͰٸܹͳ্ঢΛԋ͍ͯ͡Δɻ ΑͬͯݟͨͰ༧͢ΔʹɺPrivateظؒͷ 28ؒͷ߹ܭച্ݸPublicLBظؒʹൺ ͯݮগ͢ΔՄೳੑ͕͋Δఔ͋Δ͜ͱ͕ ૾Ͱ͖Δɻ ʢ͜Εʹؔͯ͠LagಛྔͷRollingʹͯ Ϟσϧʹ৫ΓࠐΊΔ͔ʁʣ ̎̔ຖͷച্ݸͷϓϩοτʢstore_idຖʣ ʢ̍ʣτϨϯυ
̑. σʔλ୳ࡧ ̎̔ຖͷച্ݸͷϓϩοτʢstore_idຖʣ ʢ̍ʣτϨϯυ
̑. σʔλ୳ࡧ ਤɿ֤ΞΠςϜʹ͓͚Δ͍Ζ͍Ζͳθϩ ͷύλʔϯΛάϥϑԽͨ͠ͷɻ DiscussionͰθϩύλʔϯʹର͢Δҙ ݟ͕ඇৗʹଟ͔ͬͨͱࢥ͏ɻ ࠓճͷ࣌ܥྻʹଟ͘ͷθϩ͕͋Δ͕ઓ ུతɺඞવతͳθϩ͕ଟؚ͘·Ε͍ͯ ͨɻ اۀʹࡏݿઓུɺઓུ͕͋ΓͦΕ
ΒຖมΘΓ͏ΔɻͦͷͨΊࡏݿઓ ུɺઓུ͕Θ͔Βͳ͍ঢ়ଶͰθϩύ λʔϯΛ༧ଌ͢Δ͜ͱͦΕͳΓʹϦε Ϋ͕͋Δͱײ͡Δɻ ·ͨࡏݿΕͨ·ͨ·ച্͕ͳ͔ͬͨ ͳͲͷθϩΛ༧͢Δʹͯ͠ධՁࢦඪ ্1ͷζϨڐ͞Εͳ͍͜ͱ͔Βɺ ΓθϩύλʔϯΛ༧͢ΔϦεΫେ ͖͍ɻ ࡏݿઓུɺઓུΛΒͳ͍ঢ়ଶͰθϩύλʔϯΛ༧ ͖͢Ͱͳ͍ʁ ? Change strategy? Irregular Long term ʢ̎ʣ͍Ζ͍Ζͳθϩύλʔϯ
̒. ಛྔબ ॏཁͳಛྔ ɾجຊతͳLagಛྔ ɹˠstore_id × item_idʹ͓͚ΔLagಛྔ ɹˠstore_id × item_id͔༵ͭ୯Ґʹ͓͚ΔLagಛྔ
ɾฏۉ ɹˠstore_id × item_id, state_id × item_id, item_idʹ͓͚Δ༵୯Ґͷฏۉʢ݄ʙʣ ɹˠstore_id × item_id, state_id × item_id, item_idʹ͓͚Δ୯Ґͷฏۉʢ̍ʙ̏̍ʣ ɾՁ֨มಈ ɾTrainDataʹͯ༩͑ΒΕͨID ࢼ͕ͨ͠͏·͍͔͘ͳ͔ͬͨಛྔ ɾ༧ଌΛ༻ͨ͠ಛྔ(ച্θϩύλʔϯΛԽͨ͠ಛetc…) ɾΫϥελϦϯάʹΑΔ৽ͨͳΧςΰϦ͚ʢྨࣅɺิʣ ɾ֎෦σʔλ etc…..
̒. ಛྔબ pred_day1 1ͷϞσϧͱ28ͷϞσϧॏཁ ͕ߴ͍ಛྔ͕͔ͳΓҟͳΔɻ 1ʹ͍ۙ΄ͲLagܥ͕ߴ͘ɺ28ʹ ۙͮ͘΄ͲฏۉIDͳͲͷΑΓҰൠԽ ͞Εͨಛྔͷॏཁ্͕͕Δɻ ϞσϧΛ28ݸʹ͚Δ͖ࠜڌʹͳ Δɻ
※ಛྔ໊ͷઆ໌࣍ͷεϥΠυ Feature Importance Plot - Top 20 pred_day28
̒. ಛྔબ ಛྔ໊ͷઆ໌ • sales_residual_diff_28_roll_365 : Targetʢৄࡉ࣍ͷεϥΠυʣ • multi_5_sales_residual_diff_28_roll_365_shift_1_roll_4_mean :
Code: df[“Target_shift_1”] = df.groupby([“id”])[“Target”].transform(lambda x : x.shift(1)) df.groupby([“id”, “multi_5”])[“Target_shift_1”].transform(lambda x: x.rolling(4).mean()) • private_sales_residual_diff_28_roll_365_enc_week(day)_LEVEL12_mean: privateɿϓϥΠϕʔτظؒͷલ·ͰͷσʔλΛ༻͢Δɻ enc_week(day)_LEVEL12_meanɿLEVEL12ͷ༵()ͷฏۉചΓ্͛ • sell_price_minority12 : sell_priceͷগୈҰҐͱೋҐ ex) 10.58345 => 58 • id_serial : ֤ID୯Ґʹઃఆͨ͠0 ~ 30489ͷ࿈൪
̓. Ϟσϧৄࡉ <Accuracy> TARGET = TARGET - TARGET.shift(28).rolling(365) ʢ̍ʣτϨϯυআڈ ܾఆܥͷϞσϧΛ͏߹ɺকདྷ༧ଌ
Λ͢ΔʹτϨϯυΛ͘ඞཁ͕͋Δͱ ͍ͬͨ༰͕Discussionʹ͋ͬͨΑ͏ ʹࠓճ༩͑ΒΕͨσʔλͷτϨϯυΛऔ Γআ͘͜ͱʹͨ͠ɻ ͔͠͠ɺػցֶशͳͲͰ༧ͨ͠༧ଌ ΛτϨϯυআڈͷࡐྉͱͯ͠͏͜ͱ ϦεΫ͕͋ΔͨΊ༻ͨ͘͠ͳ͔ͬͨɻ ࣮ࡍ༧ଌʹΑΔτϨϯυͷআڈࢼ͠ ͕ͨτϨϯυʹͯΊΔࣜʹΑΓɺ কདྷͷ༧ଌʹେ͖ͳ͕ࠩ͋ͬͨɻ ͦͷͨΊ࣮ΛͬͨআڈΛߟ͑ΔதͰ Ұ൪҆ఆ͍ͯͨ͠TARGET͔Β TARGET.shift(28)rolling(365)Λݮͨ͡ ͷΛTARGETͱ͢Δ͜ͱͱͨ͠ɻ ͔͠͠ɺ࣮ΛͬͨͨΊશʹτϨϯ υΛऔΓআ͚͓ͯΒͣޮՌݶఆతͰ ͋ͬͨͱײ͍ͯ͡Δɻ ͨͩखݩͰݕূ͢ΔݶΓ̎̔ؒͷ༧ଌ ͷ͏ͪޙʢ28͍ۙͷ༧ଌʣʹͳΔ ʹͭΕτϨϯυআڈޙͷํ͕҆ఆੑ͕ߴ ͔ͬͨɻ TARGET TARGET.shift(28).rolling(365) TARGET - TARGET.shift(28).rolling(365)
̓. Ϟσϧৄࡉ <Accuracy> lightgbm.Datasets( x_train, y_train, weight = myweight )
ʢ̎ʣweight objective : regression ධՁࢦඪͰ͋ΔWRMSSEΛೋͨ͠ͷ ͷޯΛܭࢉ͠Λlightgbm.Datasets ͷWEIGHTͱͯͨ͠͠ɻ WEIGHT^2÷SCALED͋Β͔͡Ί42840 ݸΛܭࢉ͓͖ͯ͠30490ΞΠςϜʹల։ ͦ͠ͷ߹ܭͱͨ͠ɻ 42840 1 30490 12Ϩϕϧ 30490 1 શϨϕϧʢ42840ݸʣͷʢWeight^2 ÷ ScaledʣΛ ܭࢉ͢Δɻ 30490ΞΠςϜ×12Ϩϕϧʹม 30490Ҏ֎ͷΞΠςϜΛ֤IDΧςΰϦຖʹׂΓ ৼΔɻ Ϩϕϧํʹ߹ܭΛࢉग़͢Δɻ
̓. Ϟσϧৄࡉ <Accuracy> ʢ̏ʣΠςϨʔγϣϯճ ֶश࣌ؒΛߟ͑Ε LearningRate→0.03 Iter→ 500 ~ 700
ͰΑ͔͕ͬͨstore_idຖ·ͨظؒʹ ΑͬͯऩଋͷλΠϛϯάͷζϨ͕͢ ͜͠େ͖͔ͬͨͷͰࠓճίϯϖͱ ͍͏͜ͱ͋Γɺ LearningRate→0.01 Iter→ 1200 & 1500(Blend) Λ࠾༻ͨ͠ɻ
̓. Ϟσϧৄࡉ <Accuracy> ʢ̐ʣ day-by-day Ϟσϧ Γ1ͷϞσϧͷํ͕είΞ͕͔ͳ Γྑ͘ͳ͍ͬͯΔɻ ಛʹ̍ʙ̏ͷӨڹ͕େ͖͘ɺਫ਼Λ ٻΊΔͳΒ̎̔Ϟσϧॏཁͱײ͡Δɻ
0.016
̓. Ϟσϧৄࡉ <Accuracy> • ݕূظؒ ʢݕূظؒ̍ʣ2016-04-25 ~ 2016-05-22 : score
0.53(Public LB) ʢݕূظؒ̎ʣ2016-03-28 ~ 2016-04-24 : score 0.51 ʢݕূظؒ̏ʣ2016-02-29 ~ 2016-03-27 : score 0.60 ʢςετظؒʣ2016-05-23 ~ 2016-06-19 : score 0.576 (Private LB) ɹɹ=>ݕূظؒʹؔͯ͠ຖʹΞΠςϜ͕࣍ʑʹೖ͞Ε͍ͯΔͨΊɺ·ͨۙʹτϨϯυ͕มΘͬͯɹ ɹɹɹɹ͍ΔՄೳੑ͕͋Δ͜ͱ͔ΒͳΔ͘લΛͬͨɻ • ύϥϝʔλʔ store_idʹΑͬͯগ͠มߋɻ • ϝτϦοΫ ϊʔτϒοΫΛࢀߟʹ࡞ʢߦྻܭࢉΛ༻͍ͯ͠ΔͨΊܭࢉ͕͍ʣ ɹ (https://www.kaggle.com/girmdshinsei/for-japanese-beginner-with-wrmsse-in-lgbm) • ࠶ؼతΞϓϩʔνɺͷ༻ͳ͠ • ޙॲཧͳ͠ ʢ̑ʣ ͦͷଞ
̓. Ϟσϧৄࡉ <Uncertainty> ʢ̍ʣ̑̌ˋͷࢉग़ ̑̌ˋɺM5 - Accuracy ʹ͓͚Δ࠷ऴఏग़ͱ͢Δɻ ·ͨɺߟ͑ํͱͯ͠ Accuracyͷ༧ଌϞσϧʹؔͯ͠
ݕূظؒͷWRMSSEɹ㲈ɹςετظؒͷWRMSSE ͳΒ ݕূظؒͷޡࠩʢෆ࣮֬ੑʣɹ㲈ɹςετظؒͷޡࠩʢෆ࣮֬ੑʣ Accuracyͷ༧ଌϞσϧ͕ҰൠԽ͞Ε͍ͯɺAccuracyͷϞσϧͦͷ ··ෆ࣮֬ੑͱͯ͑͠Δɻ
̓. Ϟσϧৄࡉ <Uncertainty> ʢ̎ʣෆ࣮֬ྖҬͷࢉग़ํ๏ʢ̑̌ˋҎ֎ͷࢉग़ʣ Accuracyͷ࠷ऴఏग़Λࢉग़ͨ͠ϞσϧΛ༻ͯ͠ ݕূظؒʹ͓͚Δޡࠩʹʛ࣮ʔ༧ଌʛΛͱΓɺޡࠩΛঢॱʹฒΔ ࠓճݕূظؒΛ3ͭઃఆͨͨ͠Ί߹ܭ̎̔ˎ̏ʹ̔̐ݸͷޡ͕ࠩੜ͡Δɻ ex) diff =
[0.5, 0.7, 1.4, 1.6, 1.7, 2.2, 2.6 ɾɾɾ 8.2, 8.5] ̔̐ <EJ⒎@DPVOU> <EJ⒎> ̐̎ ̔̍ άϥϑԽ ̑̒ ̔̐ 99.5% 0.5%ͷෆ࣮֬ੑ A B C D 97.5% 2.5%ͷෆ࣮֬ੑ 75.0% 25.0%ͷෆ࣮֬ੑ 83.5% 16.5%ͷෆ࣮֬ੑ 50.0% ʔ D ʹ 0.5% 50.0% ʔ C ʹ 2.5% 50.0% ʔ B ʹ 16.5% 50.0% ʔ A ʹ 25.0% Accuracyͷ࠷ऴఏग़ ʹ 50.0% 50.0% ʴ A ʹ 75.0% 50.0% ʴ B ʹ 83.5% 50.0% ʴ C ʹ 97.5% 50.0% ʴ D ʹ 99.5% ঢॱԽͨ͠ޡࠩͷ͏ͪ̎̑ˋɺ̓̑ˋʹ͋ͨΔޡࠩʢ̐̎൪ͷޡࠩʣΛ̑̌ˋ͔Β૿ݮͤͨ͞ͷΛ̎̑ˋɺ̓̑ˋͱ ͠ɺଞಉ༷ʹల։͢Δɻ ※͜ͷޡ͕ࠩ͜ͷϞσϧʹ͓͚Δෆ࣮֬ੑͱͳΔ 5SVF 1SFE
̓. Ϟσϧৄࡉ <Uncertainty> ࠓճݕূظؒΛ̎̔×̏Ͱߦͳ͕ͬͨ ຊདྷ֎Ε͕͋ͬͨ߹ͷճආߟ͑ Δͱഒͷ̎̔×̒͋ͬͨํ͕Α͔ͬͨ ͱײ͡Δɻ ͕͔͔ͨͩ࣌ؒΓ͗͢ΔͨΊɺaccuracy ͷϞσϧΛΑΓ্ܰͨ͘͠Ͱਫ਼Λग़͢ ͜ͱ͕͍Ζ͍ΖͳҙຯͰͷվળͷ༨ͱ
ͳΔɻʢࠓޙͷ՝ʣ ࠓճίϯϖͰͷݕূظؒͷ༧ଌʹ earlystop=100, lr =0.08ͱ͠গ͠ߥͷઃ ఆͰߦ͍ͬͯΔɻʢaccuracyଆͷաֶ शɺֶशෆϦεΫରࡦɻʣ ʢ̏ʣ༧ଌຖͷෆ࣮֬ੑ ༧ଌʹԠͯ͡ෆ࣮֬ੑͷେ͖͞ҟͳΔɻ ࠓճAccuracyʹ͓͍ͯຖͷϞσϧ(̎̔Ϟσϧ)Λ࡞͓ͯ͠Γɺ ਫ਼̍ͷϞσϧͷํ͕̎̔ͷϞσϧΑΓྑ͘ͳΔɻ ͦͷͨΊෆ࣮֬ੑʹ͓͍ͯ̎̔ϞσϧͦΕͧΕʹ͓͚ΔޡࠩʢલϖʔδʣΛࢉग़͠ɺల։͢Δ͜ͱ͕·͍͠ɻ ※දͷAɺBɺCɺDલϖʔδͷͦΕΒͱಉ͡ҙຯ߹͍ɻ
̔. লͱ՝ ֶश࣌ؒɿ ͬͱݕূΛ͏·͘ΕɺείΞΛ΄ͱΜͲམͱͣ͞ʹֶश࣌ؒΛେ෯ʹ͘Ͱ͖ͨͱࢥ͏ɻ ɾಛྔΛݮΒͯ͠ɺstore_id୯ҐͷϞσϧΛͳ͘͢ɻ ɾLearningRateͱIterationճͷௐ Etc Validationͷେࣄ͞ɿ ίϯϖং൫ɺPublicLBͷείΞʹؾΛऔΒΕ͗ͯ͢ɺޙ͔Βߟ͑ΕΔ͖Ͱͳ͍͜ͱʹ࣌ؒΛ͔͚ͯ͠ ·ͬͨɻ͜ͷίϯϖͰValidationͷେ͞Λ௧ײͰ͖ͨ͜ͱΑ͔ͬͨɻ
େͳσʔλͷॲཧɿ ಛʹং൫ϝϞϦͷ੍ݶͷதͲ͏Δ͔Ͱ͔ͳΓ࿑ྗΛͬͨɻػցֶशҎલʹࢄॲཧσʔλܕͳͲ ͬͱษڧ͠ͳ͚Ε͍͚ͳ͍͜ͱ͕ͨ͘͞Μ͋Δɻ ධՁࢦඪͷཧղɿ ·ͣॳΊʹධՁࢦඪͷཧղΛਂΊͳ͚Ε͍͚ͳ͍͜ͱΛ௧ײͨ͠ɻॳධՁࢦඪͷཧղ͕ᐆດͷ··ਐ ΜͰ͍ͨͨΊɺΔ͖Ͱͳ͍͜ͱΛଟ͍ͬͯͨ͘ɻධՁࢦඪʹΑͬͯ࡞Δ͖Ϟσϧ͕େ͖͘ҟͳΔ͜ͱ ͕Θ͔ͬͨɻ