Scikit-learnは、統計によりAIに予測をさせるためのライブラリだが
その予測の方法は主に6つある
1.分類
2.回帰
3.クラスタリング
4.次元削減
5.モデル評価
6.前処理
今回はこの6つの使い方を簡単にみてみます
⚫︎1.分類
分類は、言葉の通りでデータを決まった種類に分ける事です
わかりやすいのだと、猫の画像を100枚読ませて学習させて、
次に犬の画像を100枚読ませて学習させる
猫と犬の画像を学習させて、猫・犬のカテゴリーを覚えさせてから
新しい画像を見せて、猫か犬かを予測させる
これが分類です。
分類の特徴は教師あり(先に正解を覚えさせる)であることです。
他にも、有名な「あやめ」の花のデータセットを使って、
花の種類を予測させるのも分類です。
天気のデータを1年分読ませて、晴れか、雨か曇りかを予測させるのも分類です。
最初に正解を読ませてから、どのデータが近いか予測させるのが分類
⚫︎2.回帰
回帰は、数値をAIに予測させる方法です。
例えば、1年分の気温データを読ませて次の日の気温を予測させる
6畳の部屋の地域ごとの家賃を読ませて、次の部屋の家賃を予測させる
1年の8時のテレビの視聴率を読ませて、次の8時の視聴率を予測させる
等々、これも先にデータを学習させる教師ありのAI予測方法です。
教師ありはこの分類と回帰の2つです!!
⚫︎3.クラスタリング
クラスタリングは、データをグループ分けする方法です。
ここからは教師なしのAI予測方法になります。
例えば、花のデータを読ませて、花の種類をグループ分けする
ただ、今回は正解データを読ませていないので、AIが自分で勝手にグループを作ります。
例えば、花のデータを読ませて、花の色でグループ分けするかもしれないし、
花の大きさでグループ分けするかもしれない
花のデータを読ませて、花の色と大きさでグループ分けするかもしれない
このように、正解データを読ませないで、AIが自分でグループ分けするのがクラスタリングです。
他にもお客さんの購買データを読ませて、似たような購買傾向のお客さんをグループ分けするのもクラスタリングです。
他にも、異常検知に使う
99%のデータは大体同じなのに、1%のデータだけが異常なデータだったとする
この異常なデータをグループ分けして、異常なデータを見つけるのもクラスタリングです。
あとは、例えばメールの文章を読ませて、似たような内容のメールをグループ分けするのもクラスタリングです。
httpが多いメールをグループ分けして、スパムメールを見つけるのもクラスタリングです。
⚫︎4.次元削減
次元削減は、データの特徴を減らす方法です。
例えば、花のデータを読ませて、花の色と大きさと花びらの数と花の香りの強さを特徴があるとします。
・花の色
・花の大きさ
・花びらの数
・花の香りの強さ
この4つの特徴がありますが、特徴が多すぎるとデータが膨大になります。
このような時に特徴を削減する事を次元削減と言います。
花のデータは
・花の色
・花の大きさ
・花びらの数
この3つだけにして、香りのデータを削除すればデータが少なくなります。
このように特徴を減らす事で
データが少なくなって、AIの学習が早くなります。
他にも、売り上げデータに
・金額
・個数
・売り上げ時間
の3つのデータがあるとします。
ただ、売り上げ時間を削除する事で売り上げ予測の精度があまり変わらないとしたら
売り上げ時間のデータを削除して、金額と個数のデータだけにするのも次元削減です。
⚫︎5.モデル評価
モデル評価とは、AIの予測の精度を評価する方法です。
今まで見た4つの予測方法
・分類
・回帰
・クラスタリング
・次元削減
これらの結果を評価する方法がモデル評価です。
教師ありデータの場合
正解データを8割にして
評価用データを2割にしたりします。
この正解データ8割がどんだけ正確か評価させます。
⚫︎6.前処理
前処理は、データをAIが学習しやすいように加工する方法です。
例えば、花のデータを読ませるときに、花の色を赤、青、黄色の3種類にしているとします。
この花の色を赤を0、青を1、黄色を2に置き換えるのも前処理です。
データをAIが学習しやすいように加工する事が前処理です。
他にも、名前でクラスわけするとします。
ただ同じ田中さんでも
・田中
・たなか
・TANAKA
この3つの表記があると、AIは同じ人だと認識できません。
このような場合に、全ての表記を「田中」に統一するのも前処理です。
前処理は時間かかります
⚫︎まとめ
Scikit-learnの6つの使い方を勉強してみました
偉そうに書きましたが、今現在全然わかってません!!
これから勉強していきます。

コメント