多数の機械学習の手法とアルゴリズムがあります。選択する手法やアルゴリズムは、解決しようとしている問題やデータの特性によって異なります。次に、一部の一般的な手法やアルゴリズムの概要を示します。線形回帰は、目的が連続変数の予測であるときに使用されます。
線形回帰は、入力変数と目標変数の間に線形の関係があると想定します。たとえば、住宅価格を、面積、立地、寝室数、その他の特徴の線形結合として予測することです。
ロジスティック回帰は、目的がyes/noの結果である二項分類問題で使用されます。ロジスティック回帰は、入力変数の線形モデルに基づいて、目標変数の確率を推計します。たとえば、申込者のクレジットスコアやその他の金融データに基づいて、ローン申請が承認されるかどうかを予測することです。
決定木は、決定を可能な結果にマッピングするための木の形状のモデルに従います。各決定（ルール）は1つの入力変数のテストを表し、木の形状のモデルに従って複数のルールを連続して適用することができます。データをサブセットに分割し、木の各ノードで最も有意な特徴量を使用します。たとえば、決定木は、人口層や興味に基づいて、マーケティングキャンペーンの潜在顧客を特定するために使用できます。
ランダムフォレストは複数の決定木を組み合わせて、予測の正解率を改善します。各決定木は、学習データのランダムなサブセットと入力変数のサブセットで学習されます。ランダムフォレストは、個々の決定木よりも精度が高く、複雑なデータセットや欠損データを扱うのに適していますが、推論で使用するとかなり大きくなり、必要なメモリが多くなる可能性があります。
ブースティング決定木は、各決定木が前の決定木に基づいて改善されることで、一連の決定木を学習します。ブースティング手順は、決定木の前の反復によって誤分類されたデータポイントを取り、これらの以前に誤分類されたポイントの分類を改善するために、新しい決定木を再学習します。有名なXGBoost Pythonパッケージにはこのアルゴリズムが実装されています。
サポートベクターマシンは、あるクラスのデータポイントと別のクラスのデータポイントを最も適切に分離する超平面を探そうとします。そのために、クラスの間の「マージン」を最小化します。サポートベクターは、3つのポイントで定義される分離超平面の位置を識別する少数のオブザベーションを指します。標準SVMアルゴリズムは二項分類にのみ適用されます。多クラス分類の問題は、一連の二項分類の問題に分類されます。
ニュートラルネットワークは、人間の脳の構造と機能から発想を得ています。これは、相互に接続されたノードの層で構成され、ノード間の接続の強さを調整することで、データのパターンを認識するように学習できます。
クラスタリングアルゴリズムは、データポイントをその類似性に基づいてクラスターにグループ化するために使用されます。顧客セグメンテーションや異常検知などのタスクに使用できます。特に画像のセグメンテーションや処理に役立ちます。