【python入門】機械学習の「分類」を行う

分類とは?

機械学習には「教師あり学習」と「教師なし学習」の2つがあります。

教師あり学習には前回の記事で行った「回帰」と、今回行う「分類」があります。

分類とはデータから複数のクラスに分ける方法で、例えば、「書籍」を「小説」「漫画」「雑誌」に分けることを言います。

具体的な分類手法には、

・ロジスティック回帰分析

・決定木

・K近傍法

の3つがあります。

今回は「ロジスティック回帰分析」を用いてデータの分類をしていきたいと思います。

ロジスティック回帰分析について

ロジスティック回帰では0~1の値が返されます。というのも確率を出力するからです。

特徴量と重みの掛け合わせを入力すると、sigmoid関数で確率となって出力されます。




データセットを導入

irisデータセットと呼ばれる、アヤメの特徴量が入ったデータセットを使用します。

このデータを操作しやすいように構造化データに変換します。

データセットの整理

:100というのは行を上から100行取得するという意味です。irisは上から50がクラス1、51から100までがクラス2となっています。

今回はクラス1とクラス2の2値分類を行うので上から100行を取得しました。

データセットの分割

回帰分析のときと同様にデータを分けます。

ロジスティック回帰モデルの読み込み

fitメソッドで、与えられた引数から機械学習を行います。

predictメソッドを使って学習済みのモデルから予測を行います。

妥当性の確認とモデルの評価

これで混合行列が作成されます。返り値から、正答、誤答件数が分かります。

accuracy_scoreクラスから正答率を導き出します。

おそらく、ほぼ100%で出力されるはずです。

これでロジスティック回帰分析の手順は終了です。

次回はこれに基づいたグラフ作成を行いたいと思います。




コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です