コレクション | データアナリストがよく使用する機械学習アルゴリズム 10 個!

コレクション | データアナリストがよく使用する機械学習アルゴリズム 10 個!

機械学習の分野では、「世の中にただ飯はない」という格言があります。簡単に言えば、あらゆる問題に対して最高の効果を発揮できるアルゴリズムはないということです。この理論は、教師あり学習において特に重要です。

たとえば、ニューラル ネットワークが常に決定木よりも優れているとは言えませんし、その逆も同様です。モデルのパフォーマンスは、データセットのサイズや構造など、多くの要因によって影響を受けます。

したがって、テスト データ セットを使用してパフォーマンスを評価し、最適なものを選択しながら、問題に対してさまざまなアルゴリズムを試す必要があります。

もちろん、試すアルゴリズムは問題に関連している必要があり、これが機械学習の主なタスクです。たとえば、家を掃除したい場合、掃除機やほうき、モップを使うかもしれませんが、シャベルを手に取って掘り始めることは絶対にないでしょう。

機械学習の基礎を学びたい機械学習初心者のために、データ サイエンティストが使用する機械学習アルゴリズムのトップ 10 を紹介します。これらの 10 個のアルゴリズムの特徴を紹介し、理解を深めて適用できるようにしましょう。ぜひご覧ください。

1. 線形回帰

線形回帰は、おそらく統計学と機械学習において最もよく知られ、よく理解されているアルゴリズムの 1 つです。

予測モデリングは、主にモデルのエラーを最小限に抑えること、つまり解釈可能性を犠牲にして最も正確な予測を行うことに重点を置いています。 私たちはさまざまな分野からアルゴリズムを借用、再利用、盗用していますが、その中には統計に関わるものもあります。

線形回帰は、入力変数の特定の重み (B) を見つけることによって、入力変数 (x) と出力変数 (y) 間の線形関係を記述する方程式で表されます。

線形回帰

例: y = B0 + B1 * x

入力 x が与えられると、y を予測します。線形回帰学習アルゴリズムの目的は、係数 B0 と B1 の値を見つけることです。

線形回帰モデルは、通常の最小二乗法や勾配降下法の最適化のための線形代数ソリューションなど、さまざまな手法を使用してデータから学習できます。

線形回帰は 200 年以上前から存在し、広範囲に研究されてきました。 この手法を使用する際の経験則としては、非常に類似した(相関のある)変数を削除し、可能であればデータからノイズを除去することが挙げられます。 これは迅速かつシンプルな手法であり、最初のアルゴリズムとして適しています。

2. ロジスティック回帰

ロジスティック回帰は、機械学習が統計学の分野から借用したもう 1 つの手法です。 これは、バイナリ分類問題(2 つのクラス値を持つ問題)に特化した方法です。

ロジスティック回帰は、両方の目的が各入力変数の重みを見つけることであるという点で線形回帰に似ています。 線形回帰とは異なり、出力予測はロジスティック関数と呼ばれる非線形関数を使用して変換されます。

ロジスティック関数は大きな S のような形をしており、任意の値を 0 から 1 の範囲に変換します。これは、ロジスティック関数の出力にルールを適用して値を 0 と 1 に分類し (たとえば、IF が 0.5 未満の場合は 1 を出力する)、クラスの値を予測できるため便利です。

ロジスティック回帰

モデルの学習方法により、ロジスティック回帰による予測を使用して、クラス 0 またはクラス 1 に属する確率を計算することもできます。これは、多くの根拠を必要とする問題に役立ちます。

線形回帰と同様に、ロジスティック回帰では、出力変数に関連しない属性と、互いに非常に類似している (相関している) 属性を削除すると、パフォーマンスが向上します。 これは、迅速に学習し、バイナリ分類問題に効果的に機能するモデルです。

3. 線形判別分析

従来のロジスティック回帰は、バイナリ分類問題に限定されています。 2 つ以上のクラスがある場合、線形判別分析 (LDA) が最適な線形分類手法です。

LDA の表現は非常にシンプルです。 これは、各カテゴリごとに計算されたデータの統計プロパティで構成されます。 単一の入力変数の場合、これには以下が含まれます。

  • 各カテゴリーの平均値。
  • すべてのカテゴリにわたって計算された分散。

線形判別分析

LDA は、各クラスの判別値を計算し、最適な値を持つクラスの予測を行うことで機能します。この手法では、データがガウス分布(ベル型曲線)を持っていると想定されるため、最初にデータから外れ値が手動で削除されます。これは、分類予測モデリングの問題におけるシンプルでありながら強力なアプローチです。

4. 分類木と回帰木

決定木は機械学習にとって重要なアルゴリズムです。

決定木モデルはバイナリツリーで表すことができます。はい、それはアルゴリズムとデータ構造からのバイナリツリーであり、特別なものではありません。 各ノードは、単一の入力変数 (x) とその左と右の子 (変数が数値であると仮定) を表します。

決定木

ツリーのリーフ ノードには、予測を行うために使用される出力変数 (y) が含まれます。 予測は、ツリーをトラバースし、リーフ ノードに到達したら停止し、リーフ ノードのクラス値を出力することによって実行されます。

決定木は素早く学習し、素早く予測を行います。 また、多くの問題を適切に予測できるため、データに対して特別な準備を行う必要がありません。

5. ナイーブベイズ

ナイーブベイズは、シンプルでありながら非常に強力な予測モデリング アルゴリズムです。

モデルは、トレーニング データから直接計算できる 2 種類の確率で構成されています。1) 各クラスの確率、2) x の各値が与えられたクラスの条件付き確率です。 確率モデルが計算されると、ベイズの定理を使用して新しいデータの予測を行うことができます。 データが数値の場合、これらの確率を簡単に推定できるように、ガウス分布 (ベル曲線) を想定するのが一般的です。

ベイズの定理

ナイーブベイズは、各入力変数が独立していると仮定するため、ナイーブと呼ばれます。 これは実際のデータに対しては非現実的な強い仮定ですが、この手法はさまざまな複雑な問題に対して非常に有効に機能します。

6. K 最近傍点

KNN アルゴリズムは非常にシンプルで非常に効果的です。 KNN モデルは、トレーニング データセット全体によって表されます。 とても簡単じゃないですか?

トレーニング セット全体で最も類似した K 個のインスタンス (近傍) を検索し、これらの K 個のインスタンスの出力変数を要約することで、新しいデータ ポイントを予測します。 回帰問題の場合、新しいポイントは平均出力変数になる可能性があり、分類問題の場合、新しいポイントはモードカテゴリ値になる可能性があります。

成功の秘訣は、データ インスタンス間の類似性をどのように判断するかにあります。属性がすべて同じスケールである場合、最も簡単な方法はユークリッド距離を使用することです。これは、各入力変数間の差に基づいて直接計算できます。

K近傍法

KNN では、すべてのデータを格納するために大量のメモリまたはスペースが必要になる場合がありますが、計算 (または学習) は予測が必要な場合にのみ実行されます。 また、予測の精度を維持するために、いつでもトレーニング セットを更新および管理できます。

距離や近さの概念は、高次元の設定(入力変数の数が多い)では崩れる可能性があり、アルゴリズムに悪影響を与える可能性があります。この種のイベントは次元の呪いとして知られています。また、出力変数の予測に最も相関する入力変数のみを使用する必要があることも意味します。

7. ベクトル量子化の学習

K 最近傍法の欠点は、トレーニング データセット全体を維持する必要があることです。 学習ベクトル量子化 (略して LVQ) は、任意の数のトレーニング例を取得して、そこから正確に学習できる人工ニューラル ネットワーク アルゴリズムです。

ベクトル量子化の学習

LVQ はコードブック ベクトルの集合によって表されます。ベクトルは最初にランダムに選択され、その後複数の反復を通じてトレーニング データセットに適応されます。 学習後、コードブック ベクトルは K 近傍法と同じように予測に使用できます。 各コードブック ベクトルと新しいデータ インスタンス間の距離を計算することによって最も類似した近傍 (最も近い一致) が見つかり、最も近い一致ユニットのクラス値、または回帰の場合は実際の値が予測として返されます。 データを同じ範囲(たとえば、0 から 1 の間)内に制限すると、最適な結果が得られます。

KNN がデータセットに対して良好な結果をもたらすことがわかった場合は、LVQ を使用して、トレーニング データセット全体を保存するためのメモリ要件を削減してみてください。

8. サポートベクターマシン

サポート ベクター マシンは、おそらく最も議論され、最も人気のある機械学習アルゴリズムの 1 つです。

超平面は、入力変数の空間を分割する線です。 SVM では、入力変数空間内のポイントをクラス (0 または 1) に応じて分離するために超平面が選択されます。 2 次元空間では、線として表示でき、すべての入力ポイントはこの線によって完全に分離できます。 SVM 学習アルゴリズムは、超平面でカテゴリの分離が最適になるように係数を見つけることです。

サポートベクターマシン

超平面と最も近いデータ ポイント間の距離はマージンと呼ばれ、マージンが最小の超平面が最適な選択となります。同時に、これらの近いデータ ポイントのみが、超平面の定義と分類器の構築に関係します。これらのポイントはサポート ベクターと呼ばれ、超平面をサポートまたは定義します。実際には、最適化アルゴリズムを使用して、境界を最大化する係数値を見つけます。

SVM はおそらくすぐに使用できる最も優れた分類器の 1 つであり、データセットで試してみる価値があります。

9. バギングとランダムフォレスト

ランダム フォレストは、最も人気があり、最大の機械学習アルゴリズムの 1 つです。 これは、ブートストラップ集約またはバギングとして知られるアンサンブル機械学習アルゴリズムです。

ブートストラップは、データのサンプルから平均などの量を推定するための強力な統計手法です。 多数のサンプルデータを抽出し、平均を計算し、すべての平均を平均して、真の平均をより正確に推定します。

バギングでも同じアプローチが使用されますが、統計モデル全体を推定する代わりに、決定木が最もよく使用されます。トレーニング データの複数のサンプリングを実行し、各データ サンプルのモデルを構築します。新しいデータについて予測を行う必要がある場合、各モデルが予測を行い、その予測を平均化して、実際の出力値のより正確な推定値を取得します。

ランダムフォレスト

ランダム フォレストは、決定木を調整したものです。最適な分割ポイントを選択する場合と比較して、ランダム フォレストはランダム性を導入することで、最適ではない分割を実現します。

したがって、各データ サンプルに対して作成されたモデルは互いに大きく異なりますが、それ自体は依然として正確です。予測を組み合わせることで、正しい潜在的な出力値をより正確に推定できるようになります。

決定木のような高分散アルゴリズムで良好な結果が得られる場合は、これを追加すると結果がさらに良くなります。

10. ブースティングとAdaBoost

ブースティングは、多数の弱い分類器から強い分類器を作成するためのアンサンブル手法です。 まず、トレーニング データからモデルを構築し、次に 2 番目のモデルを作成して最初のモデルのエラーを修正します。 トレーニング セットの予測が最も多くなるか、上限まで追加されるまで、モデルを追加し続けます。

AdaBoost は、バイナリ分類用に開発された最初の本当に成功したブースティング アルゴリズムであり、ブースティングを理解するための最適な出発点でもあります。 現在、AdaBoost に基づいて構築された最も人気のあるアルゴリズムは、確率的勾配ブースティングです。

アダブースト

AdaBoost は短い決定木でよく使用されます。 最初のツリーが作成された後、そのツリー上の各トレーニング インスタンスのパフォーマンスによって、次のツリーがそのトレーニング インスタンスにどれだけの注意を払うべきかが決まります。予測が難しいトレーニング データには大きな重みが与えられ、予測が容易なインスタンスには小さな重みが与えられます。 モデルは順番に作成され、各モデルの更新はシーケンス内の次のツリーの学習効果に影響します。すべてのツリーが構築された後、アルゴリズムは新しいデータに対して予測を行い、トレーニング データの精度に応じて各ツリーのパフォーマンスに重み付けを行います。

アルゴリズムはエラー訂正を重視しているため、外れ値のないクリーンなデータが非常に重要です。

***で書かれた

さまざまな機械学習アルゴリズムに直面した初心者がよく尋ねる質問は、「どのアルゴリズムを使用すればよいですか?」です。この質問に対する答えは、次のような多くの要因によって異なります。

  • データのサイズ、品質、性質。
  • 利用可能な計算時間。
  • タスクの緊急性。
  • データを使って何をしたいですか?

経験豊富なデータ サイエンティストであっても、さまざまなアルゴリズムを試してみなければ、どのアルゴリズムが最も優れたパフォーマンスを発揮するかを知ることはできません。 他にも多くの機械学習アルゴリズムがありますが、これらは最高のものです。 機械学習を初めて学ぶ場合は、ここから始めるのが最適です。

<<:  畳み込みニューラルネットワークの「修理工」のための「マニュアル」

>>:  ガートナーは、人間と機械の境界を曖昧にする5つの新たな技術トレンドを明らかにした。

ブログ    
ブログ    

推薦する

...

SEO技術における人工知能の応用

[[188760]] SEO はますます「難しく」なっていると誰もが感じているはずです。すでに、SE...

もう感情を隠せない?歩く姿勢からAIがわかる!

歩き方は人それぞれ違います。歩き方は、その時々の気分など、あなたに関する秘密を明らかにします。たとえ...

人工知能が教育に与える影響は技術サポートだけにとどまらない

統合と国境を越えた発展が進む今日の世界において、教育が象牙の塔に留まり、自己満足に浸っているだけでは...

小さくても素晴らしい、ミニプログラムのデビュー

[51CTO.comより引用] 2017年1月9日にWeChatミニプログラムが正式リリースされて以...

初めて精度が人間を超えました!アリババの機械読解力が世界記録を更新

2018年の初めに、人工知能は大きな進歩を遂げました。 1月11日、スタンフォード大学が主催する世界...

3つの大きな弱点がAIスタートアップへの扉を閉ざしている

先月、投資会社a16zがAIスタートアップが直面する困難を分析した記事を発表しました。AIスタートア...

人工知能で最前線の医療従事者を守る

私たちは前例のない危機を生きています。 COVID-19パンデミックの間、医療従事者は最前線のヒーロ...

人間の髪の毛のわずか200分の1の太さ!科学者たちは脳のように電気を生成できる「ナノワイヤーネットワーク」を構築した

今日の主流の人工知能技術は、ある意味では脳の構造にヒントを得たものです。しかし、コンピュータの計算能...

1 つの記事で NLP 実装の難しさを理解する

[51CTO.comからのオリジナル記事] 近年、自然言語処理技術は徐々に最も広く使用されている人工...

...

AIとIoTが建設業界に価値をもたらす方法

モノのインターネット (IoT) センサーは主に運用スタックの可視性を提供し、リアルタイムで正確な運...

教師なし学習のための最も強力な戦略

[[279087]] MLKはMachine Learning Knowledgeの略で、機械学習の...

...

ディープラーニングの未来に関する6つの予測

[51CTO.com クイック翻訳] ディープラーニングは複雑な概念であり、その中の各要素は単純では...