機械学習アルゴリズムの種類と特徴、仕組みまとめ

機械学習を用いるのは、データを分析、処理して求めたい結果を得るためです。
短時間で効率的に結果を得るためには、適切なアルゴリズムを選択する必要があります。
機械学習アルゴリズムには大きく分けて「教師あり学習」と「教師なし学習」があり、それぞれに特徴があります。

教師あり学習とは

機械学習はAIを支える技術の一つで、コンピューターが自ら大量のデータを学習し、分析や予測と行ったタスクを遂行するためのアルゴリズムやモデルを構築する技術のことです。大きく分けて「教師あり学習」と「教師なし学習」の二種類があります。教師あり学習とは、判断するための基準を構築するのに必要なデータを、人間が与えることで教師データを作成し、それに基づいて判断を行うという方法です。アルゴリズムがデータから学習するプロセスが、まるで生徒が教師から勉強を教わっているように見えることからこの名前が付けられました。機械学習を実利用するときは、多くがこの教師あり学習を用います。

教師あり学習は、更に「分類」と「回帰」の二グループに分けることができます。分類とは、既存のデータを元に、予め設定したいくつかのクラスに分類するものを言います。例えば迷惑メールを振り分ける処理がこれに該当します。回帰は連続する値を予測する際に用いるもので、出力は実際の値で行います。不動産データにおいて、住宅規模データを元に販売価格を予想するような処理がこれに該当します。

代表的な教師あり学習

教師あり学習の代表的なアルゴリズムとして、「線形回帰」「ランダムフォレスト」「サポートベクトルマシン」の三つがあげられます。線形回帰は昔からあるシンプルな方法で、散らばっているデータから特徴を掴み、関数のグラフに近づけるという方法です。例えば、ある地域における住宅の広さと家賃の関係を収集しグラフにすると、ある程度の相関関係が表れ一次関数のグラフにすることができます。線形回帰は一次式以外の関数モデル化もすることができ、変動要素を加えることでより複雑な予測を行うことも可能です。部屋の広さだけではなく、築年数やアクセスの便利さと行った条件を加味した上で家賃を予測することができるのです。

ランダムフォレストとは、「決定木」を利用した手法のことです。決定木とはデータを元に樹木状のモデルを作成し、分類ルールに従って何らかの決定を行っていくという方法です。分類するための分類木と、回答を推定する回帰木があります。分類木の場合は多数決で分類結果を出力し、回帰木は各決定木の平均値を予測値として扱うことになります。同じような決定木を複数並べても意味がないので、それぞれ異なるデータを元にしたり、異なるルールを設定することで、予測の精度を上げることになります。

サポートベクトルマシンとは、分類と回帰両方に利用することができる教師あり学習です。サポートベクターと呼ばれる、データを分割する直線に最も近いデータ点を利用します。サポートベクターを定めて分割線を決めることができれば、分割線より上にあるか下にあるかによってクラスを分類することができます。識別能力が高く、精度もいいため人気の高いアルゴリズムです。

これらのアルゴリズムでは、分類や回帰を行うことができますが、どのアルゴリズムが最も精度の良い結果を出すかは、データの量や質によって変わります。
これらのアルゴリズムを複数試し、結果のいいアルゴリズムを選定するのが通常の流れです。

教師なし学習とは

教師あり学習が「正解」を元にデータを学習するのに対し、教師なし学習は「正解」データを与えることなく行います。人間は大量のデータを与えるだけで、後はアルゴリズム自身がそのデータを探索し、その構造やパターンを抽出したりデータ分類を行ったりします。データの中にある重要な構造を見つけ出す役割を持ちます。

代表的な教師なし学習

教師なし学習は、「クラスタリング」と「アソシエーション分析」の二つに分類することができます。クラスタリングは教師あり学習の「分類」の延長線上にある手法で、似たデータの集まりを機能やカテゴリごとに分けて集めるやり方です。同じメールの仕分けであっても、与えられた「迷惑メールか否か」という「正解」に基づいてグループ分けを行う教師あり学習に対し、クラスタリングではどのようなグループ分けになるか分からず、そのグループが何を意味するのかは人が解釈する必要があります。

クラスタリングのグループ分けには、「段階的クラスタリング」と「非段階的クラスタリング」があります。段階的クラスタリングは、最も似ている組み合わせをひとかたまりのグループとして分けていく方法です。出力されたまとまりを樹形図で見ることもできますが、大量のデータを分類するには向いておらず、主に対象の少ないデータを分けるときに用いられます。非段階的クラスタリングは、事前にまとまりの数を決めておき、その数のまとまりにデータを分類していくという仕組みです。段階的クラスタリングに比べて大量のデータでも分析することができます。

クラスタリングのように「グループ分け」を用いた手法に「主成分分析(PCA)」があります。これはできるだけ元の情報を損なわないようにしながら、ばらつきのある多次元データをより少ない次元に圧縮して表現する手法です。アンケートの各項目の評価結果から、総合評価を導くと行った活用方法があります。

アソシエーション分析は、データの大部分を表すようなルールを見つけ出す手法です。「If(もしこうだったら)、Then(こうなる)」という二つのアソシエーションルールを作り出し、それらの関連性を「支持度」と「信頼度」という二つの指標で計算します。アソシエーション分析の有名な実用例として「ビールと紙おむつの関連性」というものがあります。これはアメリカのスーパーマーケットでビールと紙おむつ両方を購入する人が多いと分かり、二つを並べて陳列することで売り上げが向上したという話です。

機械学習は、機械に大量のデータを学習させ、それがなんであるか判断させるモデルの他にもう一つ、入力されたデータや画像から新しい疑似データを生成するモデルが存在します。その一つがGANで、画像生成やディープラーニングを行う技術として注目されています。従来の、サンプル画像を傾けたり、色を変えるなどしてデータを増やすのではなく、特徴を含んだデータを新たに作り出すことができるので、データ不足という課題を克服することができるからです。GANでは、Generator(生成者)と Discriminator(判定者)の二つのネットワークが競合することで学習が行われます。Generatorが入力データに似た画像を生成し、Discriminatorは、それが訓練データなのか、Generatorが生成した画像なのかを判断します。この過程を繰り返すことで学習を進めていきます。データの増幅ができたり、他の技術との組み合わせが可能なユニークな仕組みではありますが、もろい部分もあるため、応用研究が進められている機械学習です。

適切な機械学習を選択するには

機械学習は、教師あり学習と教師なし学習の二種類に大別することができ、更に特徴に応じて細分化することができます。
更に半教師あり学習や強化学習と行った方法も存在します。
さまざまなデータに対して目的に応じた分析を行うためには、機械学習の特徴を知り適切なものを選んだり組み合わせたりすることが大切です。
また、機械学習を行う際には、入力するデータの質や量が非常に重要です。機械学習アルゴリズムの理解と、実際の業務知識やデータの整理を同時に進めることで精度の高いAIを作成できます。まずは機械学習について正しく理解し、活用できるようになるために知識をつけてみてはいかがでしょうか。

最新情報をチェックしよう!
企業向けAI人材育成サービス

企業向けAI人材育成サービス

AI事業発足やAI導入に必要な人材育成のステップとAI研究所が提供するサービス。AI研究所の人材育成サービスでは、3つのステップを軸に御社の業務内でAIを活用できる人材育成やAIプロジェクトの支援を行います。

CTR IMG