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
不動産webサービスを強くする機械学習の使い方
Search
hiddy
July 29, 2016
Technology
3
1.2k
不動産webサービスを強くする機械学習の使い方
2016/07/28(木) 19:30〜
【不動産テック勉強会#1】人工知能時代に備えて不動産関連データについて色々語らう勉強会
※画像や物件名などについてはマスクしております。ご了承下さい。
hiddy
July 29, 2016
Tweet
Share
Other Decks in Technology
See All in Technology
Kotlinで型安全にバイテンポラルデータを扱いたい! ReladomoラッパーをAIと実装してみた話
itohiro73
3
240
激動の2025年、Modern Data Stackの最新技術動向
sagara
0
530
OTEPsで知るOpenTelemetryの未来 / Observability Conference Tokyo 2025
arthur1
0
440
最近読んで良かった本 / Yokohama North Meetup #10
mktakuya
0
450
AIを使ってテストを楽にする
kworkdev
PRO
0
410
ざっくり学ぶ 『エンジニアリングリーダー 技術組織を育てるリーダーシップと セルフマネジメント』 / 50 minute Engineering Leader
iwashi86
9
4.4k
dbtとAIエージェントを組み合わせて見えたデータ調査の新しい形
10xinc
7
1.8k
AWS re:Invent 2025事前勉強会資料 / AWS re:Invent 2025 pre study meetup
kinunori
0
1.1k
[re:Inent2025事前勉強会(有志で開催)] re:Inventで見つけた人生をちょっと変えるコツ
sh_fk2
1
1.2k
SREのキャリアから経営に近づく - Enterprise Risk Managementを基に -
shonansurvivors
1
730
次世代のメールプロトコルの斜め読み
hirachan
3
350
激動の時代を爆速リチーミングで乗り越えろ
sansantech
PRO
1
250
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Unsuck your backbone
ammeep
671
58k
It's Worth the Effort
3n
187
28k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Agile that works and the tools we love
rasmusluckow
331
21k
A better future with KSS
kneath
239
18k
Side Projects
sachag
455
43k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
640
Transcript
ෆಈ࢈XFCαʔϏεΛڧ͘͢Δ ػցֶशͷ͍ํ ෆಈ࢈ςοΫษڧձ 5XJUUFS!IJEEZZ
͓ଋ ͜ͷ-5εϐʔΧʔݸਓͷ ݟղͰ͋Γɺॴଐ͢ΔاۀஂମΛද͢Δ ͷͰ͋Γ·ͤΜɻ Disclaimer This LT expresses the viewpoints
of ME and is not reviewed for correctness or accuracy by my company.
୭ʁ
*%!IJEEZZ ৬ۀɿ1.ʢϓϩμΫτͷ΄͏ʣ ͓ࣄɿΨνίʔσΟϯάҎ֎ ಛٕɿXFCαʔϏεͮ͘Γ ɹͦΕඞཁʁͱݴ͍์ͭ ݴޠɿ3MFWFMͪΐͬ͜ͱSVCZSBJMT ઐ߈ɿܭྔܦࡁֶʢ541ʣ
͜Ε·Ͱ࡞ͬͨܞΘͬͨαʔϏε ohmy!Ո
ି݅ใαΠτΛ͍ͬͯ·͢
σʔλੳɺϏδϡΞϥΠθʔγϣϯʹΑΓɺ Ϣʔβʔ͕݅બͼΛ͘͢͢͠Δ
ࠓ-3ିͰͷ ػցֶशͷ ͍ํΛ ͝հ͍ͨ͠
ڪΔ͖͕݅ଘࡏ͢Δ
None
None
None
None
͜ͷΜΘ͔Γ͍͢
͜ͷΜΘ͔Γ͍͢ ೖྗϛε
None
͜ΕϗϯϞϊ
None
͜ΕχηϞϊ
ՈؒऔΓɺ͞ͳͲͱ ͍Ζ͍Ζؔ࿈͍ͯ͠Δ
ՈؒऔΓɺ͞ͳͲͱ ͍Ζ͍Ζؔ࿈͍ͯ͠Δ ͘͡ͷ͕ΊΜͲ͍͘͞
ՈؒऔΓɺ͞ͳͲͱ ͍Ζ͍Ζؔ࿈͍ͯ͠Δ ͘͡ͷ͕ΊΜͲ͍͘͞ Ϟσϧͱ͔ߟ͑ͨ͘ͳ͍
0OFDMBTT47. TWN͞Μ͕దʹ֎Εఆͯ͘͠ΕΔ ڭࢣσʔλΛ༻ҙ͠ͳͯ͘ΠΠ Βͪ͘Μ
One-class svm library(kernlab) # make data to one-class svm model
DF <- data.frame(DF, class=1) outlier.svm <- ksvm(x=class ~bukken_shubetsu +struct +struct_all +madori +history_TOTAL +log_price_with_kanrihi, data=DF, type="one-svc",C=1000,scaled=TRUE,nu=0.01, kernel="rbfdot") #judge outlier DF$outlier <- predict(outlier.svm, DF, type = "response") ݅छผ ݐஙλΠϓ ઐ༗໘ੵ ؒऔΓ ங ཧඅࠐΈՈʢରԽʣ
None
None
Կߟ͑ͣ ߦ͘Β͍Ͱ ֎Ε͚ͨ͡ʂ 0 ʾ˜ʽ 0ƂŖŘ̇
ʢతʣ ೖྗϛεσʔλͷݮ ʢख๏ʣ "OPNBMZ%FUFDUJPO ʢํ๏ʣ 0OFDMBTT47.
͞ΒͳΔ
None
࢛ɺ෩࿊ແɺτΠϨڞಉɺτΩϫͷΑ͏ͳ݅
χʔζ ͋Δ͔͠Εͳ͍
χʔζ ͋Δ͔͠Εͳ͍ ʢ͕ͩʣ
͋·Γʹଟ͘ ϦετϖʔδʹͰΔͱ ݟ͕ͨѱ͍ɻɻ
ΑΖ͍͠ɺ ͳΒɺ ఆثΛͭ͘Ζ͏
ಛघ݅ΛਓྗͰ݅ఔऩू ਓྗͰݟʂ ʢϋʔτΛڧͭ͘͜ͱʣ ˞݅ࣗମѱ͋͘Γ·ͤΜ
ಛघ݅ΛਓྗͰ݅ఔऩू ಛघ݅Ͱͳ͍ͷΛ݅நग़ ͜͜Կߟ͑ͳͯ͘ΠΠ
Boro detection svm library(kernlab) boro.svm <- ksvm( boro~bukken_shubetsu +struct +struct_all
+madori_num +madori_type_num +history_TOTAL +log_price_with_kanrihi, data=DF, C=1.584893, scaled=TRUE,nu=0.01, kernel="rbfdot",kpar=list(sigma=10),cross=13) ಛघ݅ΛਓྗͰ݅ఔऩू ಛघ݅Ͱͳ͍ͷΛ݅நग़ 47.ʹͯɺʮಛघ݅ఆثʯΛੜ ݅छผ ݐஙλΠϓ ઐ༗໘ੵ ؒऔΓ ؒऔΓλΠϓ ཧඅࠐΈՈʢରԽʣ ங http://d.hatena.ne.jp/sleepy_yoshi/20120624/p1 Λνϡʔχϯάͷࢀߟʹ͠·ͨ͠
None
ಛघͳ͕݅ Ϧετ্Ґʹग़ͳͬͨ͘ʂ 0 ʾ˜ʽ 0ƂŖŘ̇
ʢతʣ Ϧετϖʔδͷ69վળ ʢख๏ʣ ̎ྨث ʢํ๏ʣ 47.
ࣈ͍͋͛ͨͰ͢ ઌੜɻ
$73͕͋Βͳ͍͔ͳʔ ʢ͕͋Βͳ͍ʣ
ͦ͏͔ɺ $7ʢ߹ͤʣ͞ΕΔ ͨ ݅ʹͳʹ͔ಛ͕͋Δ ͷͰʁ
8FCϚʔέతΞϓϩʔνͩͱɺ ϢʔβʔηάϝϯτΛ͖Γɺ ରԠ͢Δ݅Λஸೡʹਫ਼ߴ͘ Ϩίϝϯυ͢Δͱ͜Ζ͕ͩɺɺɺ
ࡶʹ σʔλυϦϒϯͰ $73վળ͍ͤͨ͞
σʔλαΠΤϯςΟετϨϕϧද IUUQEIBUFOBOFKQTIBLF[P
Ϩϕϧ ϨϕϧͷਓୡूܭੳʹՃ͑ͯɺ࠷ݶͷػցֶश ౷ܭֶͷख๏Λ͍ͬͯ·͢ɻ47.ϥϯμϜϑΥϨ ετͳͲͷϝδϟʔͳख๏Λ֮͑ɺσʔλੳ͕໘ന͘ ͳͬͯ͘ΔࠒͰ͢ɻ͔͠͠ͳ͕Β34144ͳͲͷઐ༻ ιϑτΛৗʹσϑΥϧτઃఆͷύϥϝʔλͰੳ͍ͯ͠ ͨΓɺಛྔબલॲཧͷॏཁੑΛ͘ݟΔ͕͋ Γ·͢ɻ ͍ۙ͏ͪʹݱ࣮ͷσʔλJSJTͷΑ͏ʹ͘ͳ͍͜ͱΛ Δ͜ͱʹͳΔͰ͠ΐ͏ɻ
͋Γ͕ͪͳൃݴ ʮϥϯμϜϑΥϨετ࠷ڧʯ
͋Γ͕ͪͳൃݴ ʮϥϯμϜϑΥϨετ࠷ڧʯ
͋Γ͕ͪͳൃݴ ʮϥϯμϜϑΥϨετ࠷ڧʯ
ϥϯμϜϑΥϨετͰ $7͞Ε͍݅͢Λ༧ଌ
ϥϯμϜϑΥϨετͰ $7͞Ε͍݅͢Λ༧ଌ http://nakhirot.hatenablog.com/entry/20130704/1372874761 ΑΓൈਮ
ϥϯμϜϑΥϨετͰ $7͞Ε͍݅͢Λ༧ଌ CVͨ͠ ݅σʔλ CV͠ͳ͔ͬͨ ݅σʔλ 3BEPN 'PSFTU ʢύλʔϯೝࣝʣ ࠓͷ
݅σʔλ $7ͦ͠͏ͳ ݅σʔλʂ Πϝʔδ ֶश ֶश ༧ଌ
3ͷSBOHFSQBDLBHFͳΒ QSPCBCJMJUZ͕ग़ྗՄೳ install.packages('Rcpp') install.packages('ranger') # make CV model CV.ranger <-
ranger(formula = CV ~ walk_time1+struct+struct_all +level3+direction+madori_num+madori_type_num+price_with_kanrihi +history_TOTAL+station1+bukken_shubetsu+gyosha_no, data = DFtrain, num.trees=300, write.forest =TRUE, probability =TRUE, always.split.variables= "station1") # prediction of CV model cv.predict <- predict(CVmodel,DF) # draw probabilities cv.predict$predictions[,2]
$71SPCBCJMJUZͷߴ͍ ॱʹϦετදࣔ
$71SPCBCJMJUZͷߴ͍ ॱʹϦετදࣔ ্
ʢతʣ $73վળ ʢख๏ʣ ̎ྨʢ$7֬Λܭࢉʣ ʢํ๏ʣ 3BOEPN'PSFTU RͩͱrangerͳͲ৽͍࣮͕͠Φεεϝʂʂ
ƅƁƅ Űŕ
ʮਓೳ࣌ʹඋ͑ͯ ෆಈ࢈ؔ࿈σʔλʹ͍ͭ ͯ৭ʑޠΒ͏ษڧձʯ
ਓೳͷఆٛ
ਓೳͷఆٛ %FFQ-FBSOJOHͰ ͳΜ͔Ͱ͖ͳ͍͔ͳʔ
%FFQ-FBSOJOH ͱ͍͑ը૾ղੳ
͜Ε·Ͱͷ݅αΠτʹ ͳ͍ըظతػೳʂ
ࣜτΠϨఆث
ࣜτΠϨఆث ࣜτΠϨ͚ͩઈରʹݏͩʂ ͱݴ͏ਓ͖ͬͱ͍Δʹ͕͍ͪͳ͍
H2O Deeplearning library(h2o) # Deep learningͰֶशͤ͞Δ localH2O <- h2o.init(ip =
"localhost", port = 54321, startH2O = TRUE, nthreads=-1) res.dl <- h2o.deeplearning(x = 2:10001, y = 1, training_frame = as.h2o(target), activation = "TanhWithDropout", hidden=rep(160,5), epochs = 20) pred.dl <- h2o.predict(object=res.dl, newdata = as.h2o(target)) pred <- as.data.frame(pred.dl) # ਖ਼ղΛ֬ೝ print(1-sum(abs(round(pred[,1]) - target[,1]))/length(target[,1])) ࣜτΠϨը૾ΛਓྗͰ݅ఔऩू ը૾αΠζΛἧ͑ͯɺάϨʔεέʔϧʹม %FFQMFBSOJOHͰࣜτΠϨఆثΛ࡞
H2O Deeplearning ਖ਼ղɿ ࣜτΠϨը૾ΛਓྗͰ݅ఔऩू ը૾αΠζΛἧ͑ͯɺάϨʔεέʔϧʹม %FFQMFBSOJOHͰࣜτΠϨఆثΛ࡞
ʢࠓͷ͓ʣ ೖྗϛεσʔλআ ಛघ݅ఆ $73վળϑΟϧλ ࣜτΠϨఆث
ͬͱ݅બͼΛ ָ͍͠ͷʹͯ͠ ͍͖·͠ΐ͏ʂ
͋Γ͕ͱ͏͍͟͝·ͨ͠