この記事では、機械学習アルゴリズムについて説明します

1. 一般的な機械学習アルゴリズムとは?

KNNアルゴリズム、線形回帰法、決定木アルゴリズム、ランダムフォレストアルゴリズム、PCAアルゴリズム、SVMアルゴリズムなど

2.機械学習とは

簡単に言えば、機械学習とは、機械にデータから学習させ、現実の法則に沿ったモデルを取得することです.モデルを使用することで、機械は以前よりも優れたパフォーマンスを発揮できます.これが機械学習です. .

上記の文の理解:

データ: 実生活から抽象化された、いくつかのものまたは通常の機能のデジタル化。

学習:データに基づいて、機械に一連の特定のステップ(学習アルゴリズム)を繰り返し実行させて、物事の特徴を抽出し、より現実に近い記述を取得します(この記述は、それ自体が関数である可能性があるモデルです)。 . 現実を大まかに記述するこの関数を学習モデルと呼びます。

より良い: モデルを使用することで、世界をより適切に説明し、モデルに関連する問題を解決できるようになります。

3. 教師あり機械学習と教師なし機械学習の違いを説明してください。

教師あり学習には、トレーニング用のラベル付きデータが必要です。言い換えれば、教師あり学習はグラウンド トゥルースを使用します。つまり、出力とサンプルに関する事前知識があることを意味します。ここでの目標は、入力と出力の関係を近似する関数を学習することです。

一方、教師なし学習は、ラベル付けされた出力を使用しません。ここでの目標は、データセットの自然な構造を推測することです。

4. KNN アルゴリズムの紹介

近接アルゴリズム、または K-Nearest Neighbor (KNN、K-NearestNeighbor) 分類アルゴリズムは、データ マイニング分類テクノロジで最も単純な方法の 1 つです。いわゆる K 最近傍とは、K 最近傍を意味します。これは、各サンプルをその最も近い K 近傍で表すことができることを意味します。Nearest Neighbor アルゴリズムは、データ セット内の各レコードを分類する方法です。

k 最近傍法は分類と回帰の基本的な方法であり、教師あり学習法で一般的に使用される方法です。k 最近傍アルゴリズムは、トレーニング データ セットが与えられ、その中のインスタンス カテゴリが決定されていることを前提としています。分類するとき、新しいインスタンスは、その k 最近傍トレーニング インスタンス カテゴリに従って多数決によって予測されます。

k 最近傍法の 3 つの要素: 距離測定、k 値の選択、および分類決定規則。一般的に使用される距離の尺度は、ユークリッド距離と、より一般的な pL 距離です。k の値が小さい場合、k 最近傍モデルはより複雑になり、過剰適合しやすくなります。k の値が大きい場合、k 最近傍モデルはより単純になり、過適合になりがちです。したがって、k 値の選択は、分類結果に大きな影響を与えます。k 値の選択は、近似誤差と推定誤差の間のトレードオフを反映しており、通常、最適な k は交差検証によって選択されます。

アドバンテージ

  1. シンプルで理解しやすく、実装が簡単で、パラメータを推定する必要がなく、トレーニングも必要ありません。

  2. まれなイベントの分類に適しています。

  3. 特に多分類の問題 (マルチモーダル、オブジェクトに複数のカテゴリ ラベルがある) に適しており、kNN は SVM よりも優れたパフォーマンスを発揮します。

欠点

  1. 分類におけるこのアルゴリズムの主な欠点は、あるクラスのサンプル サイズが大きく、他のクラスのサンプル サイズが小さいなど、サンプルが不均衡な場合、新しいサンプルが入力されると、K が近隣のバルク クラスのサンプルが大部分を占めています。
  2. この方法のもう 1 つの欠点は、計算量が大きいことです。これは、分類するテキストごとに、すべての既知のサンプルまでの距離を計算して、その K 個の最近傍を取得する必要があるためです。

5. 線形回帰の紹介

線形回帰は、回帰方程式 (関数)を使用して、1 つ以上の独立変数 (固有値) と従属変数 (ターゲット値)の間の関係をモデル化する分析方法です。

  • 特徴:独立変数が1つの場合を単変量回帰、独立変数が複数の場合を重回帰と呼ぶ

線形回帰には 2 つの主要なモデルがあり、1 つは線形関係で、もう 1 つは非線形関係です。

6. PCAアルゴリズムの紹介

PCA (主成分分析) は、主成分分析とも呼ばれる主成分分析技術であり、次元削減の考え方を使用して、複数の指標をいくつかの包括的な指標に変換することを目的としています。

PCA アルゴリズムの利点:
1. データ セットを使いやすくする;
2. アルゴリズムの計算オーバーヘッドを削減する;
3. ノイズを除去する;
4. 結果を理解しやすくする;
5. パラメータの制限がまったくない.

PCA アルゴリズムの短所:
1. 主成分の解釈には、元のサンプルほど完全ではない、ある程度のあいまいさが含まれることがよくあります. 2.
寄与率の小さい主成分には、サンプルの差異に関する重要な情報が含まれていることがよくあります。 、それらはサンプルのカテゴリ(ラベル)を区別するのに役立つかもしれません)はより便利です
3.固有値行列の直交ベクトル空間が一意であるかどうかはまだ議論されていません
4.教師なし学習

PCA アルゴリズムのソリューションの手順:

  1. 平均を削除

  2. 共分散行列を計算する

  3. 共分散行列の固有値と固有ベクトルを計算する

  4. 固有値を並べ替える

  5. 最初の N 個の最大固有値に対応する固有ベクトルを保持する

  6. 元の特徴を、上記で取得した N 個の特徴ベクトルによって構築された新しい空間に変換します (最後の 2 つのステップで特徴圧縮が達成されます)**

PCA は、一般的に使用されるデータ分析手法です。PCA は、データ角度の最も重要な方向にデータ座標軸を回転させることにより、データの主な特徴コンポーネントを識別して抽出するために使用できる線形変換により、元のデータを各次元の線形に独立した表現のセットに変換します。 (最大分散); その後 固有値分析を通じて、保持する必要がある主成分の数が決定され、データの次元削減を達成するために、他の非主成分が破棄されます。次元削減により、データがより単純かつ効率的になるため、データ処理速度が向上し、多くの時間とコストを節約するという目的が達成されます。次元削減は、非常に広く使用されているデータ前処理方法にもなっています。PCAアルゴリズムは、高次元データセットの探索と視覚化に広く使用されており、データ圧縮、データ前処理、画像、音声、通信分析と処理、およびその他の分野でも使用できます。

7. サポート ベクター マシン SVM の概要

SVM (サポート ベクター マシン) は、一般的な判別方法であるサポート ベクター マシンを指します。機械学習の分野では、これは教師あり学習モデルであり、通常はパターン認識、分類、および回帰分析に使用されます。小さなサンプル、非線形および高次元のパターン認識を解決する際に多くの独自の利点を示し、関数フィッティングなどの他の問題に拡張できます。
サポート ベクター マシン (SVM) は、教師あり学習に従ってデータのバイナリ分類 (binary classification) を実行する一般化線形分類器 (generalized linear classifier) の一種であり、その決定境界は学習サンプルを解くことです。の 。

  1. SVM の主な機能:
    SVM の主なアイデアは、2 種類の分類問題の 2 つのカテゴリの分割として、高次元空間で超平面を見つけて、最小の分類エラー率を確保することです。
    SVM は、分類要件を満たす超平面を見つけることを検討し、トレーニング セット内のポイントを分類面からできるだけ離します。つまり、両側のマージンを最大化する分類面を見つけます。
    2 種類のサンプルのうち分類面に最も近い点を通り、最適な分類面に平行な超平面上のトレーニング サンプルをサポート ベクターと呼びます。
    最適な分類曲面では、分類線が 2 つのクラスを正しく (トレーニング エラー率が 0 で) 分離できるだけでなく、分類間隔を最大化できる必要があります。

8. ランダム フォレスト アルゴリズムの概要

ランダム フォレストとは、複数のツリーを使用してサンプルのトレーニングと予測を行う分類器を指します。

ランダム フォレストの利点は次のとおりです。

1) 多くの種類のデータに対して、高精度の分類子を生成できます。

2) 多数の入力変数を処理できます。

3) カテゴリを決定する際に、変数の重要性を評価できます。

4) フォレストを構築するときに、一般化された誤差の偏りのない推定値を内部的に生成できます。

5) 欠落しているデータを推定し、データの大部分が欠落している場合でも精度を維持するための優れた方法が含まれています。

6) 学習プロセスは非常に高速です。

アルゴリズム処理

1. 標本サイズ N の標本を置換しながら N 回抽出し、そのたびに 1 つの標本を抽出し、最終的に N 個の標本を作成します。選択された N 個のサンプルは、決定木のルート ノードでサンプルとして決定木をトレーニングするために使用されます。

2. 各サンプルが M 個の属性を持つ場合、決定木の各ノードを分割する必要がある場合、条件 m << M を満たす M 個の属性からランダムに m 個の属性を選択します。次に、これらの m 個の属性から特定の戦略 (たとえば、情報取得) を使用して、ノードの分割属性として 1 つの属性を選択します。

3. 決定木の形成中に、各ノードをステップ 2 に従って分割する必要があります (ノードが次に選択する属性が、親ノードが分割されたときに使用された属性である場合、ノードは次のように分割されます。葉ノードに到達した場合、分割できなくなるまで、分割を続行する必要はありません)。デシジョン ツリーの形成全体で枝刈りは実行されないことに注意してください。

4. ステップ 1 ~ 3 に従って多数の決定木を構築し、ランダム フォレストを形成します。

データの無作為選択
まず、元のデータセットから置換を伴うサンプリングを行い、サブデータセットを構築します。サブデータセットのデータ量は、元のデータセットと同じです。異なるサブデータセット内の要素を繰り返すことができ、同じサブデータセット内の要素も繰り返すことができます。次に、サブデータセットを使用してサブデシジョン ツリーを構築し、このデータを各サブデシジョン ツリーに配置すると、各サブデシジョン ツリーが結果を出力します。最後に、新しいデータがあり、ランダム フォレストを介して分類結果を取得する必要がある場合、ランダム フォレストの出力結果は、サブ決定木の判定結果に投票することによって取得できます。

選択する機能のランダム選択

データセットのランダム選択と同様に、ランダム フォレストのサブツリーの各分割プロセスは、選択するすべての機能を使用するのではなく、選択するすべての機能から特定の機能をランダムに選択し、選択した機能をランダムに選択します。 . 機能の中から最適な機能を選択します。これにより、ランダム フォレスト内の決定木が互いに異なったものになり、システムの多様性が向上し、分類のパフォーマンスが向上します。

おすすめ

転載: blog.csdn.net/weixin_53795646/article/details/129583495