강의

챌린지

멘토링

로드맵

커뮤니티

【退勤後の副業】ビッグデータ分析技士 実技(作業型1・2・3)

非専攻者や初心者の方がビッグデータ分析技師の実技試験に早く合格できるよう、ご案内します! 理論は軽く、実践は確実に。複雑な基礎知識がなくても、過去問題を中心に、試験に必ず出るポイントだけを集中的に学習します。

難易度 入門

受講期間 12か月

Engineer Big Data Analysis
Engineer Big Data Analysis
Big Data
Big Data
Python
Python
Pandas
Pandas
Machine Learning(ML)
Machine Learning(ML)
Engineer Big Data Analysis
Engineer Big Data Analysis
Big Data
Big Data
Python
Python
Pandas
Pandas
Machine Learning(ML)
Machine Learning(ML)
roadmap님의 프로필 이미지

・

修正済み

📌 Tip) 分類不均衡データ 扱い方: 3つの実践的なコツ

ターゲット変数が不均衡な場合は、次の手法を適用してモデルのパフォーマンスを向上させることができます。
ただし、これらの技法が常に性能向上につながるわけではないので、適用前後の性能を必ず比較してみることが重要です。

ここで「不均衡」とは、次のような状況です。

  • バイナリ分類では、0と1の比率が90:10のように一方のクラスが著しく少ない場合

  • マルチクラス分類では、A、B、Cの比率が45:45:10のように、特定のクラスの比重が著しく低い場合

1.stratifyオプションを利用したデータ分割

trainデータをtrain_test_splitに

分割時にstratify=targetオプションを使用すると、クラス比を維持したままデータを分割できます。

アンバランスデータでは、特定のクラスのサンプルが少なすぎて学習が困難になる可能性があり、これを防ぐのに役立ちます。

 target = train.pop('타겟 컬럼') train_test_split(train,target, test_size=0.2, random_state=0, stratify=target)

2.class_weight='balanced' オプションを使用したランダムフォレスト

ランダムフォレストモデルを学習するときにclass_weight='balanced'を設定すると、各クラスのサンプル数に応じて行きます。

重さを自動的に調整することで、不均衡の問題を軽減できます。

 RandomForestClassifier(random_state=0, class_weight='balanced')

3.is _unb alance=True オプションを活用した LightGBM

LightGBM ではis_unbalance=Trueを設定すると内部的にクラスの分布を考慮して学習が進行

なる。つまり、サンプル数が少ないクラスに高い重みを与え、モデルがそのクラスを無視しないようにします。

する。

 lgb.LGBMClassifier(random_state=0,verbose=-1,is_unbalance=True)

実務では、これよりはるかに極端な不均衡データを扱うことが多い。
たとえば、詐欺取引は、99:1の比率のように、一方のクラスの比重が非常に小さい場合も一般的です。

このように不均衡なデータをそのまま学習に使用すると、モデルが少数クラスの予測を正しくできず、全体的なパフォーマンスが大幅に低下する可能性があります。さまざまな方法がありますが、その中で最も簡単に試すことができる方法です。

ファイティング💕

(上記内容は必須内容ではなく深化内容です。)

コメント