コラム
2023-08-25
機械学習でのアルゴリズムとは?種類や手法、システムの仕組みを分かりやすく解説
機械学習にはさまざまな種類のアルゴリズムがあり、目的に応じて使い分けられています。本記事では、言葉の定義や機械学習の手法の種類、具体的なアルゴリズムを詳しく解説します。
目次
アルゴリズムと機械学習の基礎知識
機械学習でのアルゴリズムがどのようなものかを知るためには、言葉の定義を押さえておくことが必要です。また、アルゴリズムと機械学習の関係性を把握しておくと、システムの仕組みも理解しやすくなります。
アルゴリズムとは?
簡潔に言うと、アルゴリズムとは問題を解決するための計算方法や手法のことです。一定の手順に従うと、誰が実行しても同じ答えになる特徴があります。アルゴリズムは形のないものですが、コンピュータでの処理を可能にするためにプログラミング言語で記述するのが基本です。
アルゴリズムの基本構造
●【順次構造】「Aの処理の後はB」といったように、決められた順番通りに進める構造
●【選択構造】「Aを選ぶと正解」「Bは不正解」といったように、選択方法によって異なる処理をおこなう構造
●【反復構造】「Bが出てくるまでAを繰り返す」といったように、一定の条件のもとで同じ処理を繰り返す構造
機械学習とは?
機械学習とは、コンピュータが膨大なデータからルールを学習し、そのルールにしたがって処理や判断を実現する技術のことです。人間が学習や経験に基づいて予測・判断するプロセスと似ていますが、機械学習で学習されるデータは人間と比較にならないほど膨大なものになります。
機械学習と深層学習(ディープラーニング)との違い
機械学習に内包される存在として、深層学習というものがあります。深層学習は機械学習の一部ですが、機械学習よりも深いレベルで分析しますので、複雑なプロジェクトに最適です。また、機械学習では人間が学習目的や内容に手を加えますが、深層学習では学習内容もAIが決めます。
機械学習については以下の記事で解説していますので、詳しく知りたい方はこちらの記事をご確認ください。
機械学習とアルゴリズムの関係性
機械学習は、学習手順のアルゴリズムを組んでコンピュータにプログラミングすることで実行されます。つまり、アルゴリズムは機械学習の実行に不可欠な存在だと言えます。機械学習アルゴリズムの種類はさまざまで、目的によって使い分けることが重要です。
機械学習の3種類の手法
機械学習で用いる手法(アルゴリズム)は、主に3つです。アルゴリズムの具体的内容を一覧で見ていく前に、まずは各種類の大まかな特徴を解説します。
教師あり学習
教師あり学習とは、まるで教師が機械に正解を教えるように、正しい答えのある学習データを学ばせる機械学習の手法です。製造ラインの故障予測やシステム上の不正検出など、正解と不正解を明確に区別できる問題の解決に活用されます。
教師あり学習の仕組み
まず、AIモデルに判断基準となる学習データを学ばせます。例えばりんごの収穫時期を判断する場合、さまざまなりんごの画像を読み込ませて、収穫時期のりんごの特徴を掴みます。そして、実際のりんごの状態をデータで入力し、学習をもとに収穫時期を判断するという仕組みです。
教師あり学習のメリット・デメリット
教師あり学習は、正解が決まっていることに対しての判断となるため、他の機械学習に比べてスピーディーで予測精度が高いことがメリットです。ただし、高い精度と迅速な判断を維持するためには、機械学習で使うデータの数と品質を維持し続けなければならないデメリットもあります。
教師なし学習
教師なし学習とは、教師がいない、つまり正解がない学習データを読み込ませる機械学習の手法です。人間が気づかなかった類似点を見つけて分類するなど、未知のパターンを見つけ出す目的で活用されます。つまり、正解・不正解が明確でない問題の解決に使われるのが特徴です。
教師なし学習の仕組み
教師なし学習では、膨大なデータの学習は実施せず、データ自体が持っている特徴や構造を解析します。主な作業は、グループ分けやデータの簡略化です。機械学習は処理を繰り返しながら目標のモデルに近づいていきますが、教師なし学習ではコンピュータがモデル自体を作成します。
教師なし学習のメリット・デメリット
教師なし学習は、正解・不正解のラベル付けが必要ないため、教師あり学習と比べると時間やコストをかけずに始められるのがメリットです。ただし、正解が決まっていない分、機械学習によって新しい規則性が見出だせてもそれが役に立たない可能性もあります。
強化学習
強化学習とは、最大の利益を得るために、システム自らが試行錯誤を繰り返して適切な制御方法を学んでいく機械学習の手法です。例えば掃除ロボットは、日々の掃除を実行しながら、効率よくゴミを収集する方法や最適なルートを学んでルールを構築し、将来の掃除に役立てています。
強化学習の仕組み
強化学習を構成する要素は、学習主体である「エージェント(AI)」と制御対象である「環境」です。エージェントが環境に対して行動を起こすと、その結果に応じて報酬を手に入れます。これを繰り返しながらエージェントの行動を最適化していくのが、強化学習の仕組みです。
強化学習のメリット・デメリット
強化学習は、学習過程で行動の評価方法も見直してさらに学習するため、AIのミスを減らしたりロボットを制御したりといった方法で活用できるのがメリットです。一方で、学習に膨大なデータを使って試行錯誤しながら学習するため、時間がかかるデメリットもあります。
深層強化学習とは?
強化学習には、深層学習と強化学習を組み合わせた深層強化学習という手法もあります。最大の利益を得られるように学習する点は強化学習と同じですが、人の脳の思考プロセスを模した「ニューラルネットワーク」を用いて、深層学習のように複雑な判断を下せるところが異なります。
教師あり学習のアルゴリズムの種類一覧
教師あり学習で使うアルゴリズムは、Yes/Noを予測する「分類」と値を予測する「回帰」の2つの対応に使われます。これは、教師あり学習が明確な答えのある学習データを学ぶためです。以下の分類と回帰の違いを確認した後、具体的なアルゴリズムを一覧で解説していきます。
カフェの例で考える分類と回帰の違い
●【分類】カフェAが好きか好きじゃないかを予測する
●【回帰】カフェAに将来何回訪問するかを予測する
線形回帰
回帰分析は結果の数値と要因の数値の関係を調べる統計的アルゴリズムですが、中でも線形回帰はデータの特徴を直線(線形)で表現して数値を予測するアルゴリズムです。簡潔に言うと、線形回帰はx軸とy軸から成るグラフに線を引いたもので、万能なアルゴリズムとして使われます。
線形回帰の活用例
●アルゴリズムを使って売上を線形回帰にマッピングし、最適な商品の価格を予測する
ロジスティック回帰
ロジスティック回帰は、ある事象が起こる確率を解析する機械学習アルゴリズムです。線形回帰を応用した機械学習アルゴリズムですので名前に「回帰」とついていますが、実際にはYes/Noを明確に定義する分類問題に使われます。
ロジスティック回帰の活用例
●アルゴリズムを使ってマーケティングの効果を測定する
●飲酒量に基づいた特定の病気の発生率を予測する
決定木
決定木とは、樹形図を使ってデータを解析する機械学習アルゴリズムで、計画を立案して目標を達成する際に活用されます。例えば商品Aを購入する・しないの選択肢がある場合、その選択肢はさらに休日に買う・買わない、スーパーで買う・買わないなど枝分かれしていきます。
決定木の活用例
●ECサイトにおいて、購入履歴や登録済みの属性情報からある商品を買うかどうかを予測する
ランダムフォレスト
ランダムフォレストは、決定木で出力された複数の結果を使う機械学習アルゴリズムです。決定木の分類精度は、他の機械学習アルゴリズムよりも高いとは言えません。しかし、複数の結果を組み合わせることで精度の低い決定木を補えるようになり、全体としての精度が向上します。
ランダムフォレストの活用例
●天気や季節、地域性などの要素が清涼飲料水の売上にどのくらい影響を与えているのか分析する
k近傍法
k近傍法は、データを分類するときに活用するアルゴリズムです。似たようなデータをk個集めてベクトル空間内でクラス分けし、分析したいデータがどのクラスに属するのかを判別します。仕組みが直感的で、機械学習アルゴリズムの中でも特に単純と言われているアルゴリズムです。
k近傍法の活用例
●アルゴリズムを活用して工場生産時の不良品を検知する
SVM(サポートベクターマシン)
SVMは、分類問題と回帰問題の両方に利用できる機械学習アルゴリズムです。予測に必要なサポートベクターと呼ばれるデータを活用し、グラフ上で分割線を決定したら、その分割線の上か下かを判断してクラスを分類します。識別能力も精度高い機械学習アルゴリズムです。
SVMの活用例
●SVMの2分類の線形識別を株価の予測に活用する
●地質や降水量などのデータを機械学習し、大雨で土砂崩れが起きるモデルを構築して災害を予測する
教師なし学習のアルゴリズムの種類一覧
教師なし学習では正解が存在しないため、回帰問題や分類問題には対応できません。教師なし学習で実行できるアルゴリズムは、似ているデータのグルーピングや、データを圧縮して特徴を抽出することです。では、教師なし学習の具体的な機械学習アルゴリズムを解説していきます。
クラスター分析(クラスタリング)
クラスター分析は、類似する集団を見出す機械学習アルゴリズムです。一見「分類」に当てはまりそうですが、類似データのグルーピングまでしかできず、人間の解釈が必要となります。グルーピングによって最適なターゲットがわかるなど、マーケティングで役立つアルゴリズムです。
クラスター分析の活用例
●グルーピングにより、自社の商品が適した顧客像を導き出す
アソシエーション分析
アソシエーション分析は、「Aを買う人はBも買う」といったデータ間の関連性を発見する機械学習アルゴリズムです。このアルゴリズムを活用すると、人間による分析では気づかなかった規則性を見出だせることがあります。特にPOSデータ分析によく使われるアルゴリズムです。
アソシエーション分析の活用例
●アルゴリズムの活用で一見関連性がなさそうな商品が同時購入されていることがわかり、売り場のレイアウトを変える
強化学習のアルゴリズムの種類一覧
強化学習の機械学習アルゴリズムは、特定の環境においてできるだけ多くの報酬がもらえるように学習させていきます。試行錯誤を繰り返しながら学習させるところが、他の機械学習アルゴリズムとの違いです。それでは、強化学習のアルゴリズムの一覧を解説していきます。
Q-Learning(Q学習)
Q-Learningとは、ある行動でもらえそうな報酬をQ値として「Q関数」に入力し、行動するたびにQ値を更新するアルゴリズムです。行動ごとにQ関数を埋める流れを繰り返すことで、その時点で最大の価値が得られる行動をAIに学ばせる目的があります。
Q-Learningの活用例
●深層学習とQ学習を組み合わせたAIを使い、対戦ゲームを構築する
Sarsa
SarsaはQ学習と同様にQ関数を使いますが、もらえそうな報酬の期待値を学習に使うQ学習と違って、実際に行動した結果を使います。また、Q学習は事前に予測してから行動しますが、SARSAは行動が先であり、その結果で方策を再構築する機械学習アルゴリズムです。
Sarsaの活用例
●カーナビゲーションシステムで複数のルートから選ぶ場合、Q学習では最短ルートを提案するのみだが、Sarsaを活用すると安全や快適さまで考えてルートを提案する
モンテカルロ法
モンテカルロ法は、結果が不明な場合に用いられる機械学習アルゴリズムです。大量の乱数を使って何度もシミュレーションし、近似解を求めます。コンピュータで膨大な乱数を生成してスピーディーに対応することで、以前よりも効率的な解析が可能となりました。
モンテカルロ法の活用例
●プロジェクト実行においてモンテカルロ法を使用し、偶然生じうる事象まで含めたリスクを予測する
●投資家が株価や為替の変動をシミュレーションする目的で活用する
機械学習のマーケティングへの活用事例
機械学習アルゴリズムは身近な場面で機能していますが、マーケティングにおいてもさまざまな分野で活用されます。例えば、ビッグデータを使った規則性の発見による購入者の自動分類や、直感でなく客観的な要因分析などです。ここでは、弊社での機械学習活用事例を2つ紹介します。
ターゲティング
機械学習は、ターゲティング精度の向上に有効です。例えば不動産業の住宅データを用いて機械学習をおこなうと、住宅提供エリアの特徴ごとの分類が可能となり、その分類を応用すると自社がアプローチすべき顧客が明確になります。
拡大推計
拡大推計とは、標本調査の結果を母集団に当てはめて類推する方法です。これをビッグデータを使った機械学習に応用すると、新しい知見を得られます。例えば金融商品のプロモーションでビッグデータをもとにスコアリングし、興味のある顧客を絞ってアプローチした事例があります。
機械学習による高精度で高速なターゲティング分析を実現
今日では、機械学習で大量のデータを迅速に処理できるようになり、データ活用の必要性が増しています。とはいえデータを分析・活用するには適切なリソースと時間が必要になり、踏み出せないという場合も多いのではないでしょうか。
弊社では膨大なPontaデータの分析に機械学習の予測モデルを使い、迅速で高精度なターゲティング分析を実現しています。データ活用にお悩みの場合はぜひ一度お問い合わせください。
お気軽にお問い合わせください
詳しくお知りになりたい方はお問い合わせ