機械学習: 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についてお話しましょう

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

ブログ    
ブログ    
ブログ    

推薦する

手書きの最も単純なLRUアルゴリズム

1 LRUとは何かLRU (Least Recently Used) は、最も最近使用されていないデ...

...

テクノロジーは無罪? AIが女性の服を直接「脱がす」!

今朝、またひとつのAI奇抜なアプリケーションが公開されました!アルゴリズムを使って女性の服を直接「脱...

ソフトウェアプログラマー試験: 最もシンプルなコード実装による最速のソートおよび検索アルゴリズム

アルゴリズムの中心的な問題はソートと検索です。これら 2 つの分野は最も広く使用され、最も徹底的に研...

ビジネスに適したRPAソフトウェアの選び方

[[407278]] RPA(ロボティック・プロセス・オートメーション)は、ビジネスユーザーを退屈で...

ByteDanceは、従来の4倍の速度を誇る高性能トレーニングおよび推論エンジンLightSeqを発表した。

Transformer モデルは、Google チームが 2017 年に発表した論文「Attent...

ニューラルネットワークの仕組みを1つの記事で学ぶ

出典: getwallpapers.comディープラーニングは機械学習の重要な分野の 1 つです。そ...

TensorFlow ワイド&ディープラーニングチュートリアル

[[211918]]この記事では、TF.Learn API を使用して、ワイド線形モデルとディープ ...

ビッグデータアルゴリズムとアプリケーションシナリオパート1: 統計と分布

アルゴリズムはビッグデータの最も価値のある部分です。ビッグデータマイニングとは、大量、不完全、ノイズ...

上場企業上位500社を調査し、人工知能の7つの主要トレンドをまとめました。

近年、人工知能技術の研究が継続的に進歩するにつれて、資本は熱い傾向を示し、さまざまな業界が人工知能に...

トップ 10 のディープラーニング フレームワークの比較分析

2016 年が過ぎ、BEEVA Labs のデータ アナリスト Ricardo Guerrero G...

...

人工知能は教育のバランスのとれた発展に貢献する

最近、中国人工知能学会、中国言語知能研究センターなどの主催による第3回中国知能教育会議が西安で開催さ...

オフサイトのコンピューティング能力の使用率が 55% 向上し、オープンソースになりました。 「東洋のデータと西洋のコンピューティング」のAIインフラへの対応

AIの波の中で、企業や国を問わず、コンピューティング能力に対する需要は日々高まっています。最近立ち上...

人工知能は「大きい」と「小さい」に分けられる

大規模な多国籍産業企業は、進行中のデジタル産業革命で効果的に競争できるように、機械をよりスマートにす...