機械学習の強化:機能、タイプ、機能とは

公開: 2020-05-29

機械学習の強化は重要なトピックです。 多くのアナリストは、この用語の意味について混乱しています。 そのため、この記事では、機械学習ブースティングの意味とその仕組みについて説明します。 ブーストは、MLモデルが予測精度を向上させるのに役立ちます。 このアルゴリズムについて詳しく説明しましょう。

目次

機械学習のブースティングとは何ですか?

機械学習のブースティング」について説明する前に、まずこの用語の定義を検討する必要があります。 ブーストとは、「何かを改善することを奨励または支援すること」を意味します。 機械学習ブースティングは、機械学習モデルを強化し、その精度を高めるのとまったく同じことを行います。 このため、これはデータサイエンスで人気のあるアルゴリズムです。

MLでのブースティングとは、弱い学習モデルを強い学習モデルに変換するアルゴリズムを指します。 電子メールを「スパム」と「非スパム」のカテゴリに分類する必要があるとします。 これらを区別するために、次のアプローチをとることができます。

  • メールに画像ファイルが1つしかない場合は、スパムです(画像は通常宣伝用であるため)
  • メールに「宝くじに当選しました」のようなフレーズが含まれている場合は、スパムです。
  • メールに大量のリンクしか含まれていない場合は、スパムです。
  • メールが連絡先リストにある送信元からのものである場合、それはスパムではありません。

さて、分類のルールはありますが、メールがスパムかどうかを識別するのに十分な強度があると思いますか? ではない。 個人ベースでは、これらのルールは弱く、「スパムではない」または「スパム」に電子メールを分類するには不十分です。 それらをより強くする必要があり、加重平均を使用するか、より高い投票の予測を考慮することによってそれを行うことができます。

したがって、この場合、5つの分類子があり、そのうち3つの分類子が電子メールを「スパム」としてマークします。したがって、このクラスの投票数は「スパムではない」よりも高いため、デフォルトで電子メールを「スパム」と見なします。カテゴリー。

この例は、ブースティングアルゴリズムとは何かを理解するためのものです。 これよりも複雑です。

ご覧ください:25の機械学習インタビューの質問と回答

それらはどのように機能しますか?

上記の例は、ブーストが弱い学習者を組み合わせて厳格なルールを形成することを示しています。 では、これらの弱いルールをどのように特定しますか? 不確実なルールを見つけるには、インスタンスベースの学習アルゴリズムを使用する必要があります。 基本学習アルゴリズムを適用すると、弱い予測ルールが生成されます。 このプロセスを複数の反復で繰り返し、各反復で、ブースティングアルゴリズムが弱いルールを組み合わせて強いルールを形成します。

ブースティングアルゴリズムは、いくつかのステップを通じて、反復ごとに適切な分布を選択します。 まず、さまざまな割り当てをすべて取り、それらに等しい重みを割り当てます。 最初の基本学習アルゴリズムでエラーが発生した場合、それらの観測値により多くの重みが追加されます。 重みを割り当てたら、次のステップに進みます。

このステップでは、アルゴリズムの精度が上がるまでこのプロセスを繰り返します。 次に、弱い学習者の出力を組み合わせて、モデルに力を与え、より良い予測を行うのに役立つ強力な学習者を作成します。 ブースティングアルゴリズムは、ルールが弱いために高いエラーを引き起こす仮定に焦点を当てています。

詳細:機械学習の5つの画期的なアプリケーション

さまざまな種類のブースティングアルゴリズム

ブースティングアルゴリズムは、マージンマキシマイザー、決定スタンプなど、さまざまな種類の基盤となるエンジンを使用できます。 主に、機械学習ブースティングアルゴリズムには次の3つのタイプがあります。

  1. アダプティブブースティング(AdaBoostaとも呼ばれます)
  2. 勾配ブースティング
  3. XGBoost

この記事では、最初の2つであるAdaBoostとGradientBoostingについて簡単に説明します。 XGBoostははるかに複雑なトピックであり、これについては別の記事で説明します。

1.アダプティブブースティング

5つのプラスと5つのマイナスがあるボックスがあるとします。 あなたの仕事はそれらを分類し、それらを異なるテーブルに置くことです。

最初の反復では、すべてのデータポイントに等しい重みを割り当て、ボックスに決定株を適用します。 ただし、この行はグループから2つのプラスを分離するだけであり、他のすべては一緒に残ります。 あなたの決定株(想定されるボックスを通る線)は、すべてのデータポイントを正しく予測できず、マイナスに3つのプラスを配置しました。

次の反復では、以前に見逃していた3つのプラスにさらに重みを割り当てます。 しかし今回は、決定株はグループから2分しか離れていません。 この反復で見逃したマイナスにさらに重みを割り当て、プロセスを繰り返します。 1回または2回繰り返した後、これらの結果のいくつかを組み合わせて、1つの厳密な予測ルールを作成できます。

AdaBoostはこのように機能します。 最初に元のデータを使用して予測し、すべてのポイントに等しい重みを割り当てます。 次に、最初の学習者が正しく予測できない観察結果をより重要視します。 モデルの精度の限界に達するまで、このプロセスを繰り返します。

Adaboostでは、意思決定スタンプやその他の機械学習アルゴリズムを使用できます。

PythonでのAdaBoostの例を次に示します。

sklearn.ensembleからインポートAdaBoostClassifier

sklearn.datasetsからimportmake_classification

X、Y = make_classification(n_samples = 100、n_features = 2、n_informative = 2、

n_redundant = 0、n_repeated = 0、random_state = 102)

clf = AdaBoostClassifier(n_estimators = 4、random_state = 0、algorithm ='SAMME')

clf.fit(X、Y)

2.勾配ブースティング

勾配ブースティングは、勾配降下法を使用して、操作全体の損失関数を減らします。 最急降下法は、関数(微分可能関数)の極小値を見つける一次最適化アルゴリズムです。 勾配ブースティングは、複数のモデルを順次トレーニングし、新しいモデルに適合させて、応答のより良い推定値を取得できます。

これは、損失関数の負の勾配と相関し、システム全体に接続できる新しい基本学習者を構築します。 Pythonでは、グラデーションツリーブースティング(GBRTとも呼ばれます)を使用する必要があります。 分類や回帰問題に使用できます。

Pythonでのグラデーションツリーブースティングの例を次に示します。

sklearn.ensembleからインポートGradientBoostingRegressor

モデル=GradientBoostingRegressor(n_estimators = 3、learning_rate = 1)

model.fit(X、Y)

#分類用

sklearn.ensembleからインポートGradientBoostingClassifier

モデル=GradientBoostingClassifier()

model.fit(X、Y)

機械学習におけるブースティングの機能

ブーストには多くの利点があり、他のアルゴリズムと同様に、次のような制限もあります。

  • アンサンブルモデルであるため、ブースティングの予測を解釈することは非常に自然です。
  • これは、機能を暗黙的に選択します。これは、このアルゴリズムのもう1つの利点です。
  • ブースティングアルゴリズムの予測力は、決定木やバギングよりも信頼性があります。
  • ブーストのすべての推定量は先行する推定量に基づいているため、スケールアップはやや注意が必要です。

また読む:初心者のための機械学習プロジェクトのアイデア

ここからどこへ行くの?

ブーストに関するこの記事がお役に立てば幸いです。 最初に、このアルゴリズムとは何か、そしてそれが機械学習の問題をどのように解決するかについて説明しました。 次に、その動作とその動作を確認しました。

また、そのさまざまなタイプについても説明しました。 AdaBoostとGradientBoostingについても、例を共有しながら知りました。 機械学習について詳しく知りたい場合は、IIIT-BとupGradの機械学習とAIのPGディプロマをご覧ください。これは、働く専門家向けに設計されており、450時間以上の厳格なトレーニング、30以上のケーススタディと課題、IIIT-を提供します。 B卒業生のステータス、5つ以上の実践的なキャップストーンプロジェクト、トップ企業との仕事の支援。

機械学習のブースティングを簡単な言葉で定義するにはどうすればよいですか?

マシンでのブーストは、学習の弱いモデルを強いモデルに変換するのに役立つアルゴリズムを参照することで構成されます。 電子メールをスパムではなくスパムとして分類する例をとると、理解しやすくするために使用できる特定の区別があります。 これらの区別は、電子メールに1つのファイルがあり、宝くじに当選したような類似のフレーズが含まれ、多数のリンクが含まれ、連絡先リストから供給されている場合にアプローチできます。

ブースティングアルゴリズムはどのように機能しますか?

弱いルールは、インスタンスベースの学習アルゴリズムを使用して識別されます。 基本学習アルゴリズムが複数の反復で適用されると、最終的に弱いルールが1つの強いルールに結合されます。 ブースティングアルゴリズムは、すべての反復を複数のステップに分散するための正しい選択を行います。 割り当てを行った後、エラーが発生するまで同じ重みを割り当てます。エラーが発生すると、さらに重みが割り当てられます。 このプロセスは、より良い精度が達成されるまで繰り返されます。 その後、すべての弱い出力が組み合わされて、強い出力が作成されます。

さまざまな種類のブースティングアルゴリズムとその機能は何ですか?

さまざまなタイプは、アダプティブブースティング、グラジエントブースティング、およびXGBoostです。 ブースティングには、機能を暗黙的に選択するような特性があります。 決定木は、予測力よりも信頼性が低くなります。 また、推定量は先行する推定量に基づいているため、スケーリングはより困難です。 また、ブーストの予測を解釈することは、アンサンブルモデルであるため自然です。