#author("2024-03-13T10:39:42+00:00","","")
#author("2024-03-13T10:40:19+00:00","","")
[[武藤]]

#contents

*機械学習 [#ecf50d06]
**バイアスとバリアンス [#jbd76aac]
https://dse-souken.com/2021/03/26/ai-15/

モデルのデータに対するフィット度合いを指す
-線形モデル
--バイアス高,バリアンス低~
データ点への近似が甘いが,データ増減によるモデル変化が少ない
-非線形モデル
--バイアス低,バリアンス高~
データ分布により近い回帰曲線になるが,データ増減でモデルが大きく変化(汎化性能弱)

*ランダムフォレスト [#ne271668]
-決定木の強化版(アンサンブル学習)
-一部のデータに過剰適合している決定木モデルを複数組み合わせ,平均をとったもの
-決定木(非線形モデル)の低バイアスを改善
--決定木作成時に一部訓練データのみ使用
--指定した数だけの特徴量を使用
-パラメータ調整をあまりしていなくても高精度
**手順 [#n8fdbfa7]
-1. 訓練データからn個のサンプルをn回復元抽出(デフォルト:全データ)(ブーストラップサンプリング)
-2. 抽出したデータ(重複あり)に対して,任意の数の特徴量をランダム選択し,それらをもとに1つの決定木を作成する
-3. 1と2を繰り返して複数の決定木を作る
**ハイパーパラメータ(手動設定のパラメータ)((https://ebi-works.com/random-forest/)) [#hfc437fa]
**ハイパーパラメータ(手動設定のパラメータ) [#hfc437fa]
https://ebi-works.com/random-forest/

sklearn.ensemble.RandomForestClassifier の場合
-n_estimaters(デフォルト100)
--決定木の数(数百~数千が妥当,計算コストに注意)
-max_features(デフォルト:特徴量数の√)
--各決定木に用いる特徴量の数(あまりいじらない)
-max_depth(木の最大深度)
--デフォルトだと葉まで(教師データの完全クラス分け)
--決定木で葉まで分岐させると訓練データに対して過剰適合になりやすいため,閾値の深さで止める(事前枝刈りと呼ばれる)
--決定木が少ないときに制約をかけると分類性能向上?

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS