キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
DataRobot コミュニティ

101以上の項目の多クラス分類について

wasshi
青色LED

101以上の項目の多クラス分類について

お世話になります。

現在のDataRobotにおける多クラス分類の上限数は100と見えますが、101以上の分類を行いたい場合はどのような方法が考えられるでしょうか?

「こうしたら良いのでは?」というアイデアであったり、実際に101以上の分類を利用されている事例があれば差し支えない範囲でお伺いしたいです。

 

なお、当方の要件はまだ不明確なのですが、人力で250項目の分類を行っている作業があるようで、これの自動化を検討しています。

まずは大分類や中分類に分類し、100以下の分類で段階的に対応できれば良いのですが、そのような上位の分類は無い(※)と言われており、どう進めるとよいかを考えているところです。

※まだrawデータ確認できておらず、人力でも250項目も頭に入れて正しく分類できるとは考えづらいため、何かしら上位分類はあるだろうと想定はしています。

 

*1: 多クラス分類リファレンス

https://app.datarobot.com/docs-jp/modeling/investigate/evaluate/multiclass.html

ターゲットデータ型値の数デフォルトの問題タイプ多クラス分類の使用
数値3-10連続値あり(オプション)
数値> 10連続値あり(オプション)
数値以外2二値なし
数値以外3-100多クラスあり(自動)

 

*2: ユニーク数が101以上の場合、ターゲットとして選択できない

wasshi_1-1608171235861.png

 

ラベル(1)
2件の返信2
Miogawa
データサイエンティスト
データサイエンティスト

@wasshi さん、

いろんな意見があるかと思うので、私のも一つのアプローチと考えていただければと思いますが、

やはり、上位分類はあると思いますので、そちらから多段階のマルチクラスをされるのが一番王道だとは思います。別のアプローチとしては、特定のクラスをその他としてしまうのがあるかと思います。基本的に多クラス分類はよほど効く特徴量を持っていないと少数クラスはやはり学習しづらい傾向にはあるので、少数クラスをある程度束ねてその他として100クラス以内に抑え込み、その他の中のどのクラスなのか問題を解かせるというアプローチもあるかと思います。この2つは実績としても多数見てきています。

その他アプローチもある種のドメイン知識ない上でのグルーピングアプローチですが、よりテクニカルには、250クラスから適当に83,83,84クラスとかで選び、多値分類を行い、分類精度がそれぞれのプロジェクトでいいものは抜いて、3つ合わせた状態でもいいかいいかを改めて判断して、高い確率で単独で分離できるものはそのままのクラス、他と混ざってしまうものはそこで一時的にグループ化してを繰り返し100クラスに納めてのモデリング。一応グループ化したものに対して多段階のモデリングを実施してもいいかと思いますが、そもそも分離できていないグループ同士なので、そこは按分してもよいかなと思います。手間はかかるアプローチですが、ドメイン知識ない状態で、ある程度API化して連続で回せる環境あるならありなアプローチかなと思っています。

@Miogawa さん 早速のご返信ありがとうございます!こちら遅くなり失礼しました。 その他クラスとしての対応、機械的な対応、それぞれ手段として認識しておきたく存じます。 (確かに過去のメール分類等でも大半は特定クラスに偏っており、少数クラスは誤差の範囲だったことを思い出しました。) まずは王道の手段を検討できるよう、ヒアリングを進めてみます。