DEVELOPER’s BLOG

技術ブログ

機械学習とは?学習の種類や予測プロセスの紹介

2019.11.22 入江 佳輝
コラム 機械学習
機械学習とは?学習の種類や予測プロセスの紹介

もくじ

機械学習の概要

  機械学習とは与えられたデータからデータに潜む規則性を自動的に発見し、データの分類や未知のデータの予測をコンピュータの計算手法を利用して行うことである。データから予測を行うとき、扱うデータによっては膨大な規則を用いたり、人力では見つけることの難しい規則が存在したりするので、人間だけでは予測が困難な場合があるが、それをコンピュータの計算に落とし込むことで予測が容易になる。機械学習を用いてデータの予測を可能にすることよって、以下の例のように私達の生活の中で大きな役割を果たしているのである。

  • 工場の製造ラインでの不良品検出
  • 株価の予測
  • ECサイトでのレコメンド機能

人工知能と機械学習の違い

 機械学習と並べて話題に出されるものとして、人工知能が挙げられる。人工知能とは人間が行っている言語理解や推論、問題解決などの知的な活動をコンピュータに行わせる技術である。人工知能と機械学習は、一見すると同じようなものに聞こえる。しかし、機械学習はある特定の分野においてデータに基づいて予測の結論を下すため、人工知能における人間の知的な活動のすべてを網羅しているわけではない。つまり、人工知能の一つのトピックとして機械学習が位置づけられる。 AIと機械学習の関係性

機械学習の種類

機械学習は主に以下の3種類に大別される。

  1. 教師あり学習
    教師あり学習とは予測するものの正解が分かっているデータに対して未知のデータの予測をする機械学習である。教師あり学習の中にはデータをカテゴリ別に分ける決定境界を引く分類と、カテゴリではなく、入力のデータからどのような値をとるか予測する回帰モデルを求める回帰の2種類の方法が存在する。工場の生産ラインで、部品の形状などから不良品かどうか判別するのは分類であり、今までの株価の変動から将来の株価を予測するのは回帰だと言える。 教師あり画像

  2. 教師なし学習
    教師あり学習に対して、教師なし学習正解の無いデータから情報を見つけることを目的とする機械学習である。教師なし学習はデータのみからグループ分け(クラスタリングなど)やデータの次元縮減(例えば、空間上の3次元のデータを平面上の2次元のデータとして写すなど)をすることで、データの隠れた構造を見つけ出す手法と言える。ECサイトでの顧客の購買行動から、一緒に買われているものを見つけ出して提案するレコメンドは教師なし学習である。

  3. 強化学習
    強化学習エージェントと呼ばれるシステムと環境とがやり取りをすることで行われる機械学習である。エージェントは何かしらの行動をすることによって環境から報酬を得ることができ、この報酬が最大になるように自身のシステムを改善していく 。ラベルや値などの決まった正解は無いが、エージェントの行動の出来を数値化して学習を進めていく。 強化学習

機械学習のプロセス

 ここで、機械学習がどのようなプロセスで予測まで行われるのか説明する。

  1. データの収集
    まず必要なのはデータの収集である。当然、データから何かを予測するためにはそのためのデータを集計しなければならない。
  2. データの前処理
    ほとんどの場合、実際に学習を始める前に、データに対して前処理を行っておく。機械学習を行う上では予測に必要な情報だけを抽出しておくことで、この後の学習の段階でコンピュータが行う計算を簡潔にすることができる。例えば用いるデータが画像ならば、画像のサイズの拡大や縮小、回転などすることで前処理を行う。 機械学習では予測したい情報に対して、それを特徴づける他の情報を特徴量と呼ぶ。そのため、前処理のことを特徴抽出と呼ぶこともある。
  3. 学習
    前処理によって抽出した特徴量を用いて学習を行う。予測したい情報に合わせて予測に用いる計算手法を選び、その後データを入力して結果を出力する規則算出する。この規則を作るために用いる計算手法やルールをモデルと呼び、ここで用いられるデータは訓練データと呼ばれる。この学習のモデルをどう構築するかによって予測の精度が大きく変わってくる。
  4. 精度の評価
    学習したモデルに対してどのぐらいの精度で予測が成功しているのか評価する必要がある。そのため先程学習で使った訓練データとは別に、テストデータを用いて精度を測定する。これによって、学習に用いてないデータに対しても良い精度が出ているか(汎化という)を確認する。精度が悪ければ、もう一度モデルの構築や場合によってはデータの収集に戻って学習を繰り返す。
  5. 未知のデータに対して予測
    良い精度のモデルが得られたのならば、それを用いて新たに得られる未知のデータに対して予測が行うことができる。

機械学習のこれからの発展

冒頭で示した例から分かる通り、機械学習は今もなお研究され続けられている分野であり、また今後も発展していく分野であることが分かる。最近ではPythonやRなどのデータサイエンスの分野で用いられることの多いプログラミング言語に便利なライブラリが用意されている。特にPythonは多次元配列の高速なベクトル演算を可能にするNumPyや、機械学習ライブラリとしてscikit-learn などを用いることで、オープンソースのライブラリを使って簡単に機械学習のプログラムを実装することができる。他にも表形式のデータ操作を可能にするpandasやデータの可視化を実現するmatplotlibも存在し、Pythonのライブラリの発展とともに、高度な機械学習プログラミングが可能となっていく。

まとめ

今回の記事では以下のことを述べた。

  • 機械学習の簡単な説明
  • 人工知能と機械学習の違い
  • 機械学習の3つの分類である教師あり学習、教師なし学習、強化学習について
  • 機械学習とPythonのライブラリの発展

機械学習は人間では困難な膨大なデータからの予測を可能にし、私達の生活の中で重要な役割を担っている。また研究がされていくことで、より機械学習が発展していきよりよいサービスが創造されていくに違いない。

関連記事

「コスパならBigQuery」?実験で比較してみた【Redshift vs. BigQuery】

.blue-link, .blue-link:visited { color: blue; } 目次 「費用対効果」で選ぶには? 結果:BigQueryは「安定」している 実験条件 データセット データウェアハウス設定・計測条件 クエリ コード集 前処理 データロード等 計測記録の取得(BigQuery) リザルトキャッシュの無効化(Redshift Serverless) クエリ1-1:小規模構造化データ、単純集計 ク

記事詳細
「コスパならBigQuery」?実験で比較してみた【Redshift vs. BigQuery】
AWS コラム データ分析
【Redshift vs. BigQuery】「運用性でRedshift」という選び方

.blue-link, .blue-link:visited { color: blue; } 目次 結局、何が違うのか? Redshiftの運用性 1. AWS上の対向システムとの統合容易性 2. 機械学習ベースの管理タスク自動化 3. Glue/Lake Formation による一元的なメタデータ・アクセス権限管理 まとめと次回予告 出典(いずれも記事公開時点閲覧) 結局、何が違うのか? こんにちは、アクセルユニバ

記事詳細
【Redshift vs. BigQuery】「運用性でRedshift」という選び方
AWS コラム データ分析
SREを外部委託するメリットと課題:適切なパートナー選びの重要性

導入 SREにおける視点の違い SREを外部に委託する利点 SRE外部委託の課題とコストの問題 自社の一員として動いてくれるSREパートナーを選ぶ SREを社内で運用するか外部に委託するかの選択 まとめ SRE(Site Reliability Engineering)の外部委託における利点と課題について、システム運用の効率化とコスト管理の観点で適切な委託先の選び方を解説します。 1. 導入 SREは、システムの安定運用と信頼

記事詳細
SREを外部委託するメリットと課題:適切なパートナー選びの重要性
SRE コラム
生成AI導入案件の30%が中止見込み、従来システム導入と大きく異なるアプローチ

Gartner社による生成AIのレポート 生成AI導入の進め方 まとめ Gartner社による生成AIのレポート Gartner社は、データ品質の低さ、リスク管理の不十分さ、コストの増大、ビジネス価値の不明確さなどの理由で、2025年末までに生成AIプロジェクトの30%がPoC以降に中止されるだろうと発表しました。 2024/07/29に発表されたGartner社によるレポート 2024/7/29にシドニーで開催されたGartner Data

記事詳細
生成AI導入案件の30%が中止見込み、従来システム導入と大きく異なるアプローチ
コラム 生成AI

お問い合わせはこちらから