【機械学習】決定木(decision tree)について。
公開日:
:
機械学習 desicion tree, Entropy, エントロピー, 決定木
教師あり学習の一つである決定木(desicion tree)について勉強したことを書いていきます。
決定木の特徴
決定木の特徴は、以下のようになります。
- フローチャートのようなもので、If-then ルールの集合で出力を決定する。
- Eager learning の一つで、事前の学習が必要だが、一旦学習すれば利用時は高速である。
- 人間にとって理解しやすい情報抽出が行われる。
決定木の学習
決定木では、(例えば2クラス分類の場合)正例と負例が混ざっている状況を「乱雑である」と表現します。そして、学習の際は、どんな条件で分割すると正例と負例が綺麗に分かれて整理され、乱雑さを小さくできるかを考えます。で、この乱雑さを定量化したものをエントロピーといい、このエントロピーを最小化するように学習していきます。
エントロピーは、正例の場合を \(P_+\) 負例の場合を \(P_-\) と書き、
$$Entropy = -P_+log{2}P_+-P_-log{2}P_-$$
と定義されます。
正例と負例が綺麗に分かれている(pが0や1に近い)ほど、エントロピーの値は0に近づき、逆に乱雑(pが0.5に近い)であるほど、エントロピーの値は1に近づきます。
関連記事
-
-
【PyTorch】GPUのメモリ不足でエラーになったときの対処方法。
PyTorch で深層学習していて、 GPUのメモリ不足でエラーが出てしまったので、対処方法のメモで
-
-
【画像認識】 Google画像検索結果を取得する方法 【google image download】
今回は、深層学習(DeepLearning)で画像認識をするための画像データの収集を、Google画
-
-
【Weka】欠損データを自動的に補完するフィルタを使ってみた。
機械学習で用いるデータについてです。データは完璧なことに越したことはないが、通常は、ある属性の値が入
-
-
【機械学習・手法比較】決定木とナイーブベイズを比較してみた。
同じデータを使って、教師有り機械学習手法の 決定木(Decision Tree)とナイーブベイズ(N
-
-
機械学習の手法のまとめ。
機械学習は、「与えられた入出力事例をモデル化する行為」のことで、ディープラーニングなどで注目を集めて
-
-
【Weka】CSVファイルを読み込んで決定木を実行。
フリーの機械学習ソフト Weka を使って、CSVファイルを読み込んで決定木(Decision Tr
-
-
【機械学習】 scikit-learn で不正解データを抽出する方法【Python】
Python の scikit-learn ライブラリを使って機械学習でテストデータを識別(2クラス
-
-
【深層学習】 TensorFlow と Keras をインストールする【Python】
今回は、Google Colaboratory 上で、深層学習(DeepLearning)フレームワ
-
-
【PyTorch】畳込みニューラルネットワークを構築する方法【CNN】
今回は、PyTorch を使って畳込みニューラルネットワーク(CNN)を構築する方法について紹介しま
-
-
【機械学習】 scikit-learn で精度・再現率・F値を算出する方法【Python】
今回は、2クラス分類で Python の scikit-learn を使った評価指標である、精度(P