(Photo credit: https://pixabay.com/en/team-businessmen-competence-2651909/)
元々書いていたネタが間に合わない*1っぽいので、ふと色々な記事を眺めていて思い出したネタで与太記事を書きます(笑)。と言ってもこれは実は色々なところで色々な人から相談を受ける話なので、もしかしたらこの程度の記事でもどなたかの何かしらのお役に立つかもしれません。
*1:自分の中で設定しているdeadlineに
(Photo credit: https://pixabay.com/en/team-businessmen-competence-2651909/)
元々書いていたネタが間に合わない*1っぽいので、ふと色々な記事を眺めていて思い出したネタで与太記事を書きます(笑)。と言ってもこれは実は色々なところで色々な人から相談を受ける話なので、もしかしたらこの程度の記事でもどなたかの何かしらのお役に立つかもしれません。
*1:自分の中で設定しているdeadlineに
A Neural Network PlaygroundというDeep Learningのパラメータを変えながらその挙動を見て学べる(楽しめる)サイトがTensorFlowプロジェクトからの提供であるんですが、そのサンプルデータセットの4番目に「渦巻きサンプル」(別名「スイスロール」)があります。以下の画像の右下のやつです。
これってDeep NNでやろうとすると意外としちめんどくさいんですが、確か杉山先生のイラスト機械学習本だとガウシアンカーネルSVMでサクッと分類できるみたいに書かれていた気がいたしまして。
イラストで学ぶ 機械学習 最小二乗法による識別モデル学習を中心に (KS情報科学専門書)
ということで、ちょうど今ネタ切れなのもあるのでちょっとした余興としてこのデータの二値分類をやってみようと思います。なおスペースの都合上試行錯誤した部分自体は割愛して、どんなパラメータにしたらどんな風にダメだったかを簡単にコメントするに留めておきますので、悪しからずご了承ください。。。
続きを読む弊社のランチゲストにお招きしたことのある[twitter:@tmaehara]さんが、こんなことをツイートしておられました。
imbalanced data に対する対処を勉強していたのだけど,[Wallace et al. ICDM'11] https://t.co/ltQ942lKPm … で「undersampling + bagging をせよ」という結論が出ていた.
— ™ 🔰 (@tmaehara) 2017年7月29日
不均衡(imbalanced)データのクラス分類における補正方法については、代表的な手法であるclass weight(損失関数に対して負例のコストを負例と正例の割合に応じて割り引くもの)のやり方を以前このブログでも取り上げたことがあります。
ということで、ほんの触り程度ですがやってみようと思います。ちなみに計算負荷とか自分の手間とか色々考えて、基本的にはrandomForest {randomForest}でしかやりません。他の分類器については皆さんご自身でお試しくださいm(_ _)m
続きを読む