今日は、機械学習における一般的な分類アルゴリズム 6 つ (K 最近傍法、決定木、単純ベイズ、ロジスティック回帰、サポート ベクター マシン、ランダム フォレスト、AdaBoost、GBDT、XGBoost) を紹介します。 以下では、各アルゴリズムの概念と特徴を紹介します。
1. K近傍法(KNN)k近傍法アルゴリズム(KNN)は、異なる特徴値間の距離を測定する方法を使用して分類を行います。つまり、トレーニングデータセットが与えられた場合、新しい入力インスタンスに対して、トレーニングデータセット内のインスタンスに最も近いK個のインスタンス(上記のK近傍)が検索されます。これらのK個のインスタンスのほとんどが特定のクラスに属している場合、入力インスタンスはこのクラスに分類されます。 KNN は、基本的な分類および回帰手法です。基本的なアプローチは、テスト インスタンスが与えられた場合、特定の距離メトリックに基づいてトレーニング セット内でそれに最も近い k 個のインスタンス ポイントを見つけ、これらの k 個の最近傍の情報に基づいて予測を行うことです。 通常、「投票法」は分類タスクで使用できます。つまり、これらの k 個のインスタンスで最も頻繁に出現するラベル カテゴリを予測結果として選択します。「平均法」は回帰タスクで使用できます。つまり、これらの k 個のインスタンスの実数値出力ラベルの平均を予測結果として取得します。距離に基づいて加重平均または加重投票を実行することもでき、インスタンスが近いほど重みが大きくなります。 k近傍法には明示的な学習プロセスがありません。実際、これはよく知られている怠惰な学習の代表例です。このタイプの学習技術は、トレーニング時間のオーバーヘッドをゼロにして、トレーニングフェーズ中にサンプルを保存するだけで、テストサンプルを受け取った後に処理します。 k 最近傍法の 3 つの要素、つまり距離測定、k 値の選択、分類決定ルールは、k 最近傍法の 3 つの基本要素です。 kNN アルゴリズムの特徴:利点:高精度、外れ値の影響を受けない、データ入力の仮定がない デメリット:計算の複雑さと空間の複雑さが高い 適用可能なデータ範囲:数値および名目値 2. 決定木決定木は非パラメトリックな教師あり学習法です。つまり、固定パラメータを持たず、データに対して分類または回帰学習を実行します。決定木の目的は、既知のデータから一連のルールを学習し、単純なルールベースの判断を通じて未知のデータを予測することです。 決定木は基本的な分類および回帰手法です。分類問題では、特徴に基づいてインスタンスを分類するプロセスを表します。これは、特徴空間とクラス空間で定義された一連の if-then ステートメントまたは条件付き確率分布として考えることができます。 決定木には通常、特徴選択、決定木生成、決定木の剪定という 3 つのステップがあります。 決定木を使用した分類: ルート ノードから始めて、インスタンスの特徴がテストされ、テスト結果に基づいてインスタンスが子ノードに割り当てられます。このとき、各子ノードは特徴の値に対応します。インスタンスは、リーフ ノードに到達するまで再帰的にテストおよび割り当てられ、最終的にインスタンスはリーフ ノードのクラスに割り当てられます。 決定木モデル 決定木学習の目的は、与えられたトレーニング データ セットに基づいて決定木モデルを構築し、インスタンスを正しく分類できるようにすることです。 決定木学習の本質は、トレーニング セットから一連の分類ルールを要約すること、またはトレーニング データ セットから条件付き確率モデルを推定することです。 決定木学習の損失関数: 正規化された最大尤度関数。 決定木学習のテスト: 損失関数の最小化。 決定木の原理は、一連のデータに基づいてゲームの答えを出す、質問と回答の推測ゲームに似ています。 決定木アルゴリズムの機能:利点:計算の複雑さは高くなく、出力結果は理解しやすく、中間値の欠落の影響を受けにくく、無関係な特徴データを処理できます。 デメリット:過剰マッチングの問題が発生する可能性があります。 適用可能なデータ型:数値および名目値 3. ナイーブベイズナイーブベイジアンは、ベイズの定理と特徴の条件付き独立仮定に基づいた分類方法です。特徴を通じて分類の確率を計算し、分類の確率が高いケースを選択します。 ナイーブベイズは、古典的な機械学習アルゴリズムの 1 つであり、確率理論に基づく数少ない分類アルゴリズムの 1 つです。ほとんどの分類アルゴリズムでは、すべての機械学習分類アルゴリズムの中で、ナイーブ ベイズは他の大多数の分類アルゴリズムとは異なります。たとえば、決定木、KNN、ロジスティック回帰、サポートベクターマシンなどはすべて判別法であり、決定関数または条件付き分布のいずれかを使用して、特徴出力 Y と特徴 X の関係を直接学習します。ただし、ナイーブベイズは生成手法であり、アルゴリズムは原理的に単純で実装も簡単です。 ナイーブベイズ scikit-learn には、合計 3 つの単純ベイズ分類アルゴリズム クラスがあります。それらは、GaussianNB、MultinomialNB、BernoulliNB です。このうち、GaussianNB は事前分布としてガウス分布を使用するナイーブベイズ、MultinomialNB は事前分布として多項式分布を使用するナイーブベイズ、BernoulliNB は事前分布としてベルヌーイ分布を使用するナイーブベイズです。 ナイーブベイズアルゴリズムの特徴:利点:データが少ない場合でも効果的であり、複数カテゴリの問題を処理できます。 デメリット:入力データの準備方法に左右されます。 適用可能なデータタイプ:名目データ 4. ロジスティック回帰ロジスティック回帰は、過去の観察に基づいて従属変数の結果を予測するために使用される統計手法です。これは回帰分析の一種であり、バイナリ分類問題を解決するためによく使用されるアルゴリズムです。 ロジスティック回帰アルゴリズムの機能:利点:計算コストが低く、理解しやすく実装しやすい デメリット:アンダーフィッティングになりやすく、分類精度が高くない可能性がある (ここでは構築されたデータを使用しており、効果はより高く、複数回実行すると結果が異なる可能性があります) 5. サポートベクターマシン (SVM)サポートベクターマシン(略して SVM)は、サポートベクターマシンの英語名です。これは、統計的分類や回帰分析で広く使用されている教師あり学習法です。サポート ベクター マシン (SVM) は非常に一般的な分類器です。基本的な考え方は、セグメンテーション サーフェスを構築してデータを分離することです。 SVM は、教師あり学習を使用してデータのバイナリ分類を実行する一般化線形分類器の一種です。その決定境界は、学習サンプルに対して解決される最大マージン超平面であり、問題を凸二次計画法を解く問題に変換できます。ロジスティック回帰やニューラル ネットワークと比較すると、サポート ベクター マシンは、複雑な非線形方程式を学習するためのよりクリーンかつ強力な方法を提供します。 具体的には、元の空間で 2 種類のサンプルが線形分離可能な場合に、それらのサンプルの最適な分類超平面を見つけることです。問題が線形分離不可能な場合、スラック変数が追加され、低次元入力空間のサンプルが非線形マッピングを使用して高次元空間にマッピングされ、線形分離可能になるため、特徴空間で最適な分類超平面を見つけることができます。 SVM の使用基準: n は特徴の数、m はトレーニング サンプルの数です。
SVM アルゴリズムの機能:利点:計算コストが低く、理解しやすく実装しやすい デメリット:アンダーフィッティングになりやすく、分類精度が高くない可能性がある 適用可能なデータタイプ:数値データと名目データ 6. ランダムフォレストランダム フォレストは複数の決定木を含む分類器であり、その出力のカテゴリは個々の木によって出力されるカテゴリのモードによって決まります。ランダム フォレストは、決定木の一般化能力が弱いという問題を解決します。 ランダムフォレストアルゴリズムの具体的なプロセス ランダムフォレストアルゴリズムの機能:アドバンテージ:
欠点:
7. AdaBoostアルゴリズムブースティング法は、弱学習アルゴリズムから始まり、繰り返し学習して一連の弱分類器(つまり、基本分類器)を取得し、これらの弱分類器を組み合わせて強分類器を形成します。ブースティング法のほとんどは、トレーニングデータセットの確率分布(トレーニングデータの重み分布)を変更し、弱学習アルゴリズムを呼び出して、異なるトレーニングデータ分布の一連の弱分類器を学習します。 AdaBoost アルゴリズムの機能:アドバンテージ: 1. 高い分類精度 2. サブ分類子の構築にはさまざまな方法を使用できますが、Adaboost アルゴリズムはフレームワークを提供します。 3. シンプルで、機能スクリーニングは必要ありません。 4. 過剰適合は発生しません。 欠点: 1. 誤分類されたサンプルが複数回誤分類され、複数回重み付けされた後、重みが大きくなりすぎて分類器の選択に影響し、劣化の問題が発生します。(重み更新方法を改善する必要がある) 2. データの不均衡の問題により分類精度が急激に低下します。 3. アルゴリズムのトレーニングには時間がかかり、拡張が困難です。 4. 過剰適合や堅牢性の欠如などの問題がある。 8. GBDT GBDT の基本構造は決定木のフォレストであり、学習方法は勾配ブースティングです。 GBDT アルゴリズムの機能:アドバンテージ: 1) 連続値、離散値など、さまざまなタイプのデータを柔軟に扱うことができます。 2) パラメータ調整時間が比較的短いため、予測精度も比較的高くなります。これは SVM に関連しています。 3) 外れ値に対して非常に堅牢ないくつかの堅牢な損失関数を使用します。たとえば、Huber 損失関数と Quantile 損失関数。 欠点: 1) 弱学習器間の依存関係により、データを並列にトレーニングすることが困難です。ただし、部分的な並列処理は、自己サンプリング SGBT を通じて実現できます。 9. XGBoostアルゴリズムeXtreme Gradient Boosting (XGBoost)。 XGBoost は、Tianqi Chen らが開発したオープンソースの機械学習プロジェクトです。GBDT アルゴリズムを効率的に実装し、アルゴリズムとエンジニアリングに多くの改善を加えています。Kaggle コンテストやその他の多くの機械学習コンテストで広く使用されており、優れた結果を達成しています。 これは、超並列ブーストツリー用のツールです。現在、最速かつ最高のオープンソース ブーストツリー ツールキットです。 XGBoost で使用されるアルゴリズムは、分類問題と回帰問題の両方に使用できる GBDT (勾配ブースティング決定木) を改良したものです。 GBDT との最大の違いは、xgboost が目的関数に対して 2 次テイラー展開を実行して、次のステップでフィッティングするツリーのリーフ ノードの重みを見つけ (最初にツリーの構造を決定する必要があります)、次に損失関数に従って各分割ノードの損失削減を見つけ、分割損失に従って分割に適切な属性を選択することです。 1.XGBoost には GBDT と比較して次の利点があります。過剰適合を避けるためにツリー モデルの複雑さが正則化項に追加されるため、一般化パフォーマンスは GBDT よりも優れています。 損失関数はテイラー展開を使用して展開され、最適化を高速化するために 1 次導関数と 2 次導関数の両方が使用されます。 GBDT は基本学習者として CART のみをサポートしますが、XGBoost は基本学習者として線形分類器もサポートします。 ランダム フォレストのような特徴サブサンプリングが導入され、過剰適合を回避し、計算を削減できます。 最適な分割点を探す際には、従来の貪欲アルゴリズムの効率の低さを考慮して、近似貪欲アルゴリズムを実装し、高速化とメモリ使用量の削減を図っています。また、スパースデータセット内の欠損値の処理も考慮されています。 XGBoost は並列処理をサポートしています。 XGBoost の並列性は、モデル生成の並列性ではなく、特徴の並列性です。特徴はブロックの形でメモリ内にソートされて保存され、この構造は後続の反復で再利用されます。このブロックにより並列化も可能になります。次に、ノードが分割されると、各機能のゲインが計算され、最終的にゲインが最大の機能が分割用に選択されます。その後、各機能のゲイン計算を複数のスレッドで実行できます。 2. lightGBMと比較した欠点:XGBoosting は事前ソートを使用します。反復処理の前に、ノードの特徴が事前ソートされ、最適なセグメンテーション ポイントがトラバースされて選択されます。データ量が多い場合、貪欲法は時間がかかります。LightGBM 法はヒストグラム アルゴリズムを使用します。これは、メモリの占有量が少なく、データ セグメンテーションの複雑さが低くなります。 XGBoosting はレベルごとに決定木を生成し、同じ層の葉を同時に分割することで、マルチスレッド最適化を実行し、過剰適合になりにくくなっています。ただし、多くの葉ノードの分割ゲインは低いため、さらに分割する必要がなく、不要なオーバーヘッドが発生します。LightGBM は、ディープ最適化と葉ごとの成長戦略を使用して、現在の葉から最大のゲインを持つノードを毎回選択して分割し、ループで反復しますが、より深い決定木が成長し、過剰適合を引き起こします。そのため、それを制限し、過剰適合を防ぐためにしきい値が導入されています。 どの分類アルゴリズムを選択するかを決定する方法ここでは、ビジネス上の問題を解決するためにどの分類アルゴリズムを使用すべきかを理解するのに役立つリストを示します。
|
[51CTO.com クイック翻訳]ディープニューラルネットワークは、視覚情報を処理する強力な能力で...
[[421304]]製造業における自動化の推進力は非常に単純です。自動化は人間の作業をシミュレート...
【51CTO.com クイック翻訳】ヘルスケアのあらゆる側面において、時間は常に最も貴重な部分である...
今年 8 月、スタンフォード大学を卒業し、現在 NVIDIA の人工知能アプリケーション チームに勤...
昨日、米国議会の公聴会が中国国内の複数のメディアのトレンド検索のトップに躍り出た。 これを一言でまと...
企業がクラウド管理について考えるとき、主にパフォーマンスの監視、セキュリティの維持、コンプライアンス...
[[331362]] 1 はじめにトラバーサルとは、特定のノードから開始し、特定の検索ルートに従って...
5月19日北京時間午後11時、マイクロソフトの年次「Build Developer Conferen...
[[263282]]機械学習分野の学生、研究者、企業の開発者は、より高い精度/AUC/mAP など...
この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...
世界は、スーパーヒーローのマントを身につけていない強力な世界的勢力のような人工知能 (AI) が支配...
[[422011]] 2013年、バハマで仕事をしていたとき、私は現在ドローンとして知られているもの...