TECHNOLOGY

機械学習のアルゴリズム10選を紹介!活用事例も合わせて解説

 

機械学習は、近年大きな注目を集めている「AI」や「人工知能」、「ディープラーニング」といった分野と非常に深い関わりがあります。これらの最新技術は、どれもシステムを用いることでこれまで以上に効率的な業務や社会を実現することを目的としていますが、その仕組みには複雑な考え方も多く含まれています。
今回紹介するアルゴリズムもその一つでしょう。機械学習にはアルゴリズムが活用されているのですが、そのアルゴリズムとは具体的にどんなものなのか、わからない方もいると思います。本記事では機械学習におけるアルゴリズムとはどんなものかや、どんな種類があるのか、実際の活用例をご紹介していきます。

▼更に機械学習について詳しく知るには?
【完全版】機械学習とは?解決できる課題から実例まで徹底解説

▼社内のデータをAI化するには?
ノーコードAIツールUMWELT紹介ページ(活用事例あり)

機械学習のアルゴリズムの仕組み


アルゴリズムとは問題を解決するための手順や計算方法を示す言葉で、算法とも訳されます。コンピュータや機械学習の文脈ではプログラムで問題を解決するための手順を表す言葉として使われます。アルゴリズムを改善することは情報処理の改善に繋がり、業務の効率化や利益の増加が見込まれるため、多くの企業や技術者が常に大きな関心を寄せています。

機械学習の代表的なアルゴリズム


アルゴリズムと一口に言っても、その方法は単一ではありません。例えば、四角い容器に入った水の量を知るために、重さを量る方法と容れ物の体積を量る方法があるように、問題解決のアプローチは常に一つではなく、それぞれの方法には必ずメリットとデメリットがあります。以下では、機械学習の代表的なアルゴリズムを紹介するとともに、そのメリットとデメリットにも触れていきます。

1.線形回帰

線形回帰は応答変数の予測を最適に行うためのアルゴリズムです。1つ以上の独立した予測子変数を使用し、線形方程式の係数を推定します。線形回帰モデルの一般的な式は次の形式です。

y=β0+∑ βiXi+ϵi(yは応答変数、Xは予測子、βは線型方程式の係数、ϵは誤差項)

線形回帰は予測子の数によっていくつかにタイプに分化し、単一の応答変数に対して1つの予測子のみをもつモデルを単回帰、複数の予測子をもつものを重回帰、複数の応答変数に対応するためのモデルを多変量回帰といいます。

2.ランダムフォレスト

ランダムフォレストはカリフォルニア大学バークレー校の統計学者 レオ・ブレイマンが提案したアルゴリズムです。複数の決定木を用いることで、平均や多数決を計算することができ、より精度の高いデータを求めることが可能です。ただ、使用する決定木は類似したデータだとあまり機能しません。異なるデータを基にし、説明変数を分割候補とすることで計算結果の多様性を確保できます。このモデルのメリットは計算速度が速いことと、結果を論理的に説明しやすい点が挙げられます。

3.決定木

決定木は意思決定を補助するためのグラフで、回帰木や分類木とも呼ばれます。問題解決への選択肢を木構造にすることが大きな特徴です。例えば目的地へ電車で行くか車で行くかを計算する場合、「電車」か「車」かの2つに別れた枝が、出発時間のダイヤから考えたより良い選択肢を導き、電車の本数が多い時間なら電車、しかし混雑した車両を避けたいなら特定の時間は車を提案、といった具合に枝分かれしたグラフをデータで出し、最上部の結果が全データのまとめになります。そのため、決定木は複雑な意思決定を構造化するために役立つモデルといえます。

4.k近傍法(k-NN)

機械学習アルゴリズムの中で最も単純とされているのがk近傍法(ケイきんぼうほう)です。すでに答えが明確な問題を教師とともに学習する手法で、遅延学習に分類されています。このモデルでは学習データをベクトル空間上にプロットしておき、未知のデータが現れた際には距離の近い方のデータを任意でk個取得します。そして最終的には多数決によってデータが属するクラスを推定します。
ただ、このモデルではデータセットの特徴に見合ったkを選ぶことが必要となるため、その選び方を間違えると答えが一つに確定しないという懸念もあります。適切な分類を行うためには、ユーグリッド距離やマンハッタン距離などを正しく選ぶことが重要です。

5.ニュートラルネットワーク

ニューラルネットワークは、ヒトの脳神経系ニューロンを数理モデルに落とし込んだアルゴリズムです。このモデルには教師あり学習と教師データなしの学習の2つがあり、誤差逆伝播法によってパラメータを調整します。また、ニューラルネットワークには種類があり、最も広く用いられているものがディープニューラルネットワーク(DNN)です。
また、近年はニューラルネットワークを多層に重ねた深層学習モデルで、大きな規模でも構築可能な畳み込みニューラルネットワーク(CNN)も非常に注目を集めており、画像認識処理や自然言語処理のためにFacebookやGoogleでも運用されています。

6.サポートベクターマシン(SVM)

サポートベクターマシンは優れた認識性能を発揮する教師あり学習モデルです。分類や回帰の問題解決に役立ち、異なるクラスの境界線を明確に分けることができます。サポートベクターマシンはデータが線形分離可能であるが故に、境界を示すときに必要なデータがサポートベクトルだけとなり、計算が不要になるためコストの削減というメリットがあります。境界の種類は、2次元なら線、3次元なら平面、n次元なら超平面となる点も特徴の一つです。

7.ナイーブベイズ(単純ベイズ分類器)

ナイーブベイズは、確率論の定理であるベイズの定理を基にしたアルゴリズムです。入力データから全ての推定の確率を算出し、最も確からしい結果を出力します。教師あり学習モデルであり、文書データとの相性が良い点が特徴です。このモデルのメリットは2つあり、データセットが大きくても有効な点と、少しのトレーニングデータでも高速計算が実現できる点です。具体的には株価や災害といったリアルタイム予測、テキスト分類、レコメンドシステム、センチメント分析などに応用されています。

8.正則化(Regularization)

正則化法は、機械学習における過学習を防ぐ手段としてよく用いられています。この方法では、学習が複雑化するとペナルティが設定されます。そのため、訓練誤差にペナルティを加えた量が最小になるようなモデルを構築する必要があります。一方、過度な正則化は性能を阻害することもあるため、調整には十分な注意が必要です。
一般的によく使用されるのは、L1正則化とL2正則化です。前者では特定のデータ量をゼロにすることで不要なデータを削除し、後者ではデータサイズに応じてデータ量を調整することでモデルをより滑らかにしていきます。

9.ロジスティック回帰

ロジスティック回帰分析は複数の要因が考えられる際に、特定の事象が起こる確率を予測するために用いられるモデルです。多変量解析の一つで、因子から結果を予測したい場合に役立ちます。反対に、結果から要因を逆算する場合にも活用できます。実際に活用例としては、生活習慣の定量的な数値から疾病発症率の相関関係を調べることで潜在的な病気を予測するシステムなどが挙げられます。ただ注意が必要なのは、ロジスティック回帰はあくまでも特定の現象の有無を求める際に有効なだけであり、目的変数の値が予測できる重回帰分析とは異なる運用となります。

10.マルコフ連鎖

マルコフ連鎖モンテカルロ法(MCMC)では、マルコフ連鎖を使用することによってモンテカルロ法が強化されます。この方法で最も広く用いられているのは、多重積分の計算です。一様分布や正規分布とは異なる確率分布で、乱数を生成できるというメリットがあり、ランダムにサンプリングを実行するモンテカルロ法ではデメリットとなる計算コストの高さや精度の低さも、マルコフ連鎖を運用することで改善できます。

機械学習の手法


問題解決の手順・方法であるアルゴリズムが単一ではないのと同様に、機械学習の手法も一つではありません。解決したい課題や目的に応じて学習の方法を変える必要があります。以下では機械学習の手法について説明していきます。

1.教師あり学習

教師あり学習アルゴリズムは入力と出力を基に予測を行います。例えば、過去の販売データを入力することで適切な価格や在庫を管理できます。教師あり学習では、ラベル付きのトレーニング用データからなる入力変数と、それに対応する望ましい出力変数があります。
アルゴリズムにはトレーニング用データを分析することで、入力を出力にマッピングする関数を学習でき、これは入出力の関係を一般化することで推定可能です。この関数に新しいデータを入力することでそれに応じた出力が得られ、データから結果を予測することができます。

2.教師なし学習

教師なし学習では、機械にはラベルなしのデータのみが与えられます。学習の目的は主にクラスタリング構造や低次元の多様体など、データの基底をなす固有パターンの発見です。

3.強化学習

強化学習は、環境からのフィードバックを基に「エージェント」の行動を分析、および最適化します。強化学習ならではの特徴は「試行錯誤」と「遅延報酬」で、その過程では、どのようなアクションが最大の報酬を生み出すかを発見するために、さまざまなシナリオを試行し、取るべきアクションを選択ではなく、構築することができます。

深層強化学習

深層強化学習とは強化学習と深層学習の手法を組み合わせた物で、代表的な手法に、Deep-Q-Network(DQN)があります。元来Q学習では、状態数 s × 行動数 a のテーブルを更新することによってQ関数を更新していました。しかし、状態数が積み重なっていくとテーブルを使って関数を求めることが非効率になってしまいます。そこで生み出されたのがDQNです。DQNは行動価値関数(Q関数)を畳み込みニューラルネットワークに置き換えた上で、学習を収束させるための調整を行ったものです。

半教師あり学習

半教師あり学習は少数のラベル付きデータと大量のラベルなしデータを使用し、機械学習を行うアルゴリズムです。これはもともと教師あり学習法のデメリットの一つであった、ラベル付きデータの収集の手間とコストを削減するために生み出されました。この方法を用いることでラベル付きデータの量を大幅に抑えることができるため、データを用意するための労力とコストを抑えられます。
 

機械学習を導入している実例


最後に、機械学習を実際に運用している例を3つ紹介します。システムの仕組みを知るだけでなく、それによって得られる恩恵も把握することで全体像をよりイメージしやすくなります。

1.空調設備のエネルギー最適化

一つ目の実例は機械学習を活用した空調設備のエネルギー最適化です。オフィスや商業施設、病院などを含めた大規模施設の冷暖房空調システムは、基本的に室温しか管理していません。気候パターンやエネルギーのコスト、建材の特性などを考慮していないため、現場の環境に合わせてエネルギーを最適化できていないことが多々ありますが、現在では機械学習を活用したシステムを導入することで、複眼的な観点からエネルギーを最適化できるようになっています。

2.美術作品の分析

ラトガース大学 美術・人工知能研究所(the Art and Artificial Intelligence Laboratory)の研究者チームは、機械学習によってコンピュータが人間と同じように絵画の様式やジャンルなどを識別できるようにしました。過去550年間に66人の画家によって描かれた1,700点を超える絵画作品を用いてテストし、ディエゴ・ベラスケスの「教皇インノケンティウス10世の肖像」がフランシス・ベーコンの「ベラスケス作『教皇インノケンティウス10世の肖像』に基づく習作」に影響を与えた事実など、新しい発見も生まれました。

3.自動車の低速域での衝突検知

800万人超の会員を擁する英国最大の自動車関連組織「RAC」は機械学習を活用し、自動車の低速域での衝突検知システムを開発しました。これにより、道路での故障・事故等への迅速な対応、衝突事故の削減、保険コストの低減を実現し、上記のような事故と運転中によくあるアクシデント(減速帯や路面の穴を通過した場合など)とを区別することもできます。

機械学習の導入にはTRYETINGの「UMWELT」がおすすめ

社内システムに機械学習の導入を検討しているのであれば、TRYETINGの「UMWELT(ウムヴェルト)」がおすすめです。UMWELTには自動機械学習や自動組合せ最適化など、さまざまな機能を備えるシステム構築基盤があり、機能を組み合わせることで、会社オリジナルのシステムを構築できます。システム間の連携を重視し、システムから企業全体の業務の流れを効率化したいと考えている方は、UMWELTの導入を検討してみてはいかがでしょうか。

まとめ

機械学習には複数のアルゴリズムが存在し、それぞれに長所と短所があるため、自社の課題を解決するために運用する場合はまず自社にどのアルゴリズムで構成されたものが必要かを考えるといいでしょう。もし、それでも判断がつきにくい場合は、実際の活用例から自社の課題解決プロセスと最も近しいものを選ぶこともできます。

WRITING BY

TRYETING

公式

TRYETING公式です。
お知らせやIR情報などを発信します。