機械学習: Python による分類

機械学習: Python による分類

子供にリンゴとオレンジの区別を教えたいとします。これを行うには複数の方法があります。お子様にこの 2 つの果物を触らせて、その形や柔らかさに慣れてもらうことができます。リンゴとオレンジの例を複数見せて、違いを視覚的に見分けられるようにすることもできます。このプロセスの技術的同等物は機械学習と呼ばれます。

機械学習は、コンピューターに特定の問題を解決し、経験を積むことで改善することを教えます。ここで説明する例は、マシンにさまざまなラベル付きサンプルが与えられ、ラベル付きサンプルから得た知識を使用してラベルなしサンプルにラベルを付ける分類問題です。機械学習の問題は回帰の形をとることもあり、既知の例とその解決策に基づいて、特定の問題に対する実数値の解決策を予測することが求められます。分類と回帰は、一般的に教師あり学習と呼ばれます。機械学習は教師なし学習も可能です。教師なし学習では、機械がラベル付けされていないデータ内のパターンを識別し、類似したパターンを持つ例のクラスターを形成します。機械学習のもう 1 つの形式は強化学習です。これは、機械が間違いを犯すことで環境から学習するものです。

分類

分類とは、既知のポイントから取得した情報に基づいて、特定のポイント セットのラベルを予測するプロセスです。データセットに関連付けられたカテゴリまたはラベルは、バイナリまたは多変量のいずれかになります。たとえば、文章に関連付けられた感情にラベルを付ける必要がある場合、それを肯定的、否定的、または中立的としてラベル付けできます。一方、果物がリンゴかオレンジかを予測しなければならない問題には、バイナリ ラベルが付きます。表面
1 は分類問題のサンプルデータセットを示します。

この表では、最後の列であるローン承認の値は、他の変数に基づいて予測されるものと予想されます。次のセクションでは、Python を使用して分類器をトレーニングおよび評価する方法を学習します。

信用格付け

仕事

不動産を所有する

ローン承認

35

良い

はい

はい

はい

32

違い

はい

いいえ

いいえ

22

一般的に

いいえ

いいえ

いいえ

42

良い

はい

いいえ

はい

表1

分類器のトレーニングと評価

分類器をトレーニングするには、ラベル付けされた例を含むデータセットが必要です。このセクションではデータのクリーニングのプロセスについては説明しませんが、データセットを分類器に渡す前に、さまざまなデータの前処理とクリーニングの手法について読んでおくことをお勧めします。 Python でデータセットを操作するには、 ​pandas​​​ パッケージと DataFrame 構造をインポートします。次に、決定木、サポートベクター分類器、ランダムフォレスト、XG ブースト、ADA ブーストなどのさまざまな分類アルゴリズムから選択できます。複数の決定木を使用して形成されたアンサンブル分類器であるランダム フォレスト分類器について説明します。

 sklearn.ensemble からRandomForestClassifier インポートする
sklearn からメトリックをインポート

分類子= RandomForestClassifier ()

#70:30 の割合でトレーニングとテストの分割を作成する
X_trainX_testy_trainy_test = train_test_split ( Xytest_size = 0.33 )

classifier.fit ( X_train , y_train ) # トレーニングセットで分類器をトレーニングする

y_pred = classifier . predict ( X_test ) # 未知のデータを使用して分類器を評価する

print ( "Accuracy: " , metrics .accuracy_score ( y_test , y_pred )) # テスト計画の実際の値と精度を比較する

この手順ではパフォーマンス メトリックとして精度を使用しますが、テスト セットのバランスが取れていない場合、精度では代表的でない結果が生成される傾向があるため、メトリックを組み合わせて使用​​する必要があります。たとえば、モデルがすべてのレコードに対して同じ予測を行い、モデルのテストに使用されたデータセットが不均衡である場合、つまりデータセット内のほとんどのレコードがモデルによって予測されたものと同じカテゴリである場合、高い精度が得られます。

分類器の調整

チューニングとは、モデルのハイパーパラメータ値を変更してパフォーマンスを向上させるプロセスを指します。ハイパーパラメータは、アルゴリズムの学習プロセスを改善するために値を変更できるパラメータです。

次のコードは、ランダム検索ハイパーパラメータの調整について説明しています。ここでは、アルゴリズムがさまざまな値を選択し、最良の結果を生成する値を選択するための検索スペースを定義します。

 sklearn.model_selection からRandomizedSearchCV インポートする
#検索空間を定義する
最小サンプル分割= [ 2 , 5 , 10 ]
最小サンプル数= [ 1 , 2 , 4 ]
グリッド= { 'min_samples_split' : min_samples_split'min_samples_leaf' : min_samples_leaf }
分類子= RandomizedSearchCV ( 分類子グリッドn_iter = 100 )
# n_iterは検索空間から抽出されたサンプルの数を表します
# result.best_scoreとresult.best_params_を使用すると、モデルの最高のパフォーマンスとパラメータの最適な値を取得できます。
分類器.fit ( X_train , y_train )

投票分類子

複数の分類子とその予測を使用して、個々の予測に基づいて単一の予測を提供するモデルを作成することもできます。このプロセス (各予測に投票した分類器の数のみを考慮) は、ハード投票と呼ばれます。ソフト投票は、各分類器が特定のレコードが特定のクラスに属する確率を生成し、投票分類器によって生成された予測が最大確率を取得するクラスとなるプロセスです。

以下に、ソフト投票分類子を作成するコード スニペットを示します。

 soft_voting_clf = 投票分類子(
推定値= [( 'rf' , rf_clf ), ( 'ada' , ada_clf ), ( 'xgb' , xgb_clf ), ( 'et' , et_clf ), ( 'gb' , gb_clf )],
投票= 'ソフト' )
soft_voting_clf . fit ( X_trainy_train )

この投稿では、分類器の使用、分類器の調整、複数の分類器の結果の結合のプロセスをまとめます。各エリアを詳しく探索する際の参考にしてください。

<<:  説明可能な不正防止AIについてお話しましょう

>>:  患者が人工知能から得られる恩恵

ブログ    

推薦する

【慎重に応募】今後10年間で消滅する可能性が最も高く、代替される可能性が最も低い22の職業

[[373618]] 5Gの商用利用、人工知能、スマートシティ、スマートホーム、自動運転車、無人スー...

米国の3つの事例を踏まえた、医療AIの正しい導入アプローチとは?

[[287239]]先ほど終了したRSNAでは、国内外のAI企業が製品と科学研究の両面で再び世界の...

AIは期待に応えられていない?これらの人為的ミスが発生した可能性がある

人工知能は、ほとんどのビジネス分野で必須のテクノロジーになりつつあります。顧客対応チャットボットとし...

アルゴリズムエンジニアの日常生活において、トレーニングされたモデルが失敗した場合はどうすればよいでしょうか?

[[353013]]みなさんこんにちは。今日は職場でのアルゴリズム エンジニアの日常生活、つまりモ...

Google X、手作業でラベル付けすることなく一目で対象部品を見つけられるグリッパーアームをオープンソース化

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

危険な顔認識:「尊厳を保たなければ」私たちは裸になる

[[276736]] AI顔変換ソフトウェアZAOの人気により、顔データアプリケーションのパンドラの...

予測 AI は顧客とのつながりをどのように変えるのでしょうか?

[[422098]]予測分析は、私たちが必ずしも気づいていないとしても、私たちの生活の多くの分野に...

...

ブラックテクノロジー界の「魏英洛」は人の表情を読むのが得意

[51CTO.comよりオリジナル記事] 今ではAIでも人の表情を読んだり、心を理解したり、感情を分...

欧州の複数の企業が、産業の発展を制限するEUのAI法案を批判する公開書簡に署名した。

欧州議会は7月4日、6月14日に人工知能法案草案を可決した。これは、欧州企業が立ち上げたAIモデルを...

AIの安全性問題への対応: NIST人工知能リスク管理フレームワーク

他の情報技術と同様に、人工知能もさまざまなセキュリティ問題や、プライバシー、差別、不公平などの新たな...

860万の超軽量中国語と英語のOCRモデルをオープンソース化し、ワンストップでトレーニングと展開が可能

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

人間の脳神経の「100万分の1」の3D接続マップを描きます!膨大な量のデータは14億個の1Tハードドライブを埋め尽くす

少し前に、Google とハーバード大学が共同で、人間の脳の神経の 3D 接続マップを公開しました。...

画像認識技術を実装し、多様な応用シナリオを探索

Alpha Goの勝利により、人工知能における「ディープラーニング」の概念が急速に普及し、画像認識の...

...