生成AIは機械学習から始まる-その2:機械学習のアプローチ

「生成AIは機械学習から始まる:基礎から理解する技術の系譜と実装への道」の第二回目。生成AIの基礎中の基礎からスタートして、実際に生成AIをもちいたアプリケーションの開発するまでの解説をするAIアプリ開発技術解説記事です。
前回は”機械学習(ML)とは何か”と題した基本の解説から”伝統的なプログラミングとの違い”について解説しました。
今回は、機械学習の基本のキ。機械学習の”学習”についての基本をできるだけわかりやすく解説してきます。
では、さっそくはじめていきましょう!
機械学習のアプローチ
以下は前回の記事でご紹介した伝統的なプログラミングのアプローチです。
if メール本文に「無料」という単語が含まれる:
スパムスコア += 10
if 送信者アドレスが既知のスパムリストにある:
スパムスコア += 50
if メールに添付ファイルが多数ある:
スパムスコア += 20
if スパムスコア > 閾値:
return "スパム"
else:
return "正常"
このアプローチの構造は、「データ + ルール → 答え」という流れになっていることは、これまでプログラミングをしてきたDevであれば誰でも”なるほど、そうだよね”と思うところなのですが、機械学習は、このパラダイムを根本的に転換します。
機械学習に携わるプログラマーはルールを書く代わりに、学習のための仕組み(アルゴリズム)を用意します。
そして、大量のデータをシステムに与え、そこからルールを自動的に発見させるのです。
これが所謂、機械学習の”学習”というヤツです。
機械学習の”構造”にすれば、「データ + 答え → ルール」となるのです。伝統的なアプローチでは、「データ + ルール → 答え」でしたので、その考え方がまったく違うことに戸惑うかもしれませんが、そういうものだと覚えるしかありません。
せっかくですので、もうひとつ例を挙げてみます。
スパム判定の例です。
- 入力:数万通のメール(データ)と、それぞれが「スパム」か「正常」かのラベル(答え)
- プロセス:機械学習アルゴリズムがデータを分析し、スパムと正常メールを区別する特徴やパターンを自動的に発見
- 出力:学習済みモデル(自動的に発見されたルール)
このようなアプローチをとると、時に、機械学習システムは人間が思いつかないような特徴の組み合わせを発見することがあります。
例えば、「特定の時間帯に送信され、件名の長さが特定範囲にあり、HTMLタグの使用パターンが特定の形式である」といった、人間には明示的にルール化しづらい複雑な特徴の組み合わせです。
余談ですが、このような発見を機械学習ができるということは、サイバー攻撃を行う側にとっても同様の発見があり、サイバー攻撃の手札のひとつになりうるということです。
セキュアなシステムをつくる側にとっては、本当に大変な時代になってきました…。
話がそれてしまいましたので、元に戻します。
パラダイムシフトの意味
次に、機械学習が起こすパラダイムシフトの意味について簡単にご紹介しておきます。
前述した伝統的なプログラミングと機械学習のアプローチの違いは単なる技術的な差異ではなく、問題解決の哲学の違いを表しています。
伝統的プログラミングは演繹(えんえき)的アプローチです。人間が一般原則(ルール)を定義し、それを個別のケースに適用します。
一方、機械学習は帰納(きのう)的アプローチです。個別のケース(データ)から一般原則(モデル)を導き出すのです。
これにより、機械学習は以下のような問題に強みを発揮しています。
ただし、機械学習にも弱点があります。それが以下です。
- 大量のデータが必要:学習には十分な量と質のデータが不可欠です。
- ブラックボックス性:なぜその判断をしたのか説明が難しいケースがでてくることがあります。
- 予測不可能な失敗:訓練データにない状況で予期しない動作をすることがある。
もちろん、これらの弱点を克服しようと、新しいテクノロジーが次々に生まれていますので、時が経つことにより弱点が弱点ではなくなるときが来るのですが、世の中に完璧なものはありませんので、ここではこんな弱点があるのだなぁと心にとめておいてください。
機械学習の3つの学習方式:教師あり・教師なし・強化学習
機械学習は、学習方式によって大きく3つのカテゴリに分類されます。それぞれの方式は、異なる種類の問題に適しており、使用するデータの性質や学習のメカニズムが異なります。
これらの理解は、生成AIを含むあらゆる機械学習応用の基礎となります。
1.教師あり学習(Supervised Learning)
教師あり学習は、最も直感的で広く使われている機械学習の方式です。
「教師あり」という名前の通り、正解(ラベル)付きのデータを使って学習を行います。
教師あり学習の基本的な仕組み
教師あり学習では、システムに「問題と正解のペア」を大量に提示します。
例えば、
- 画像分類:猫の画像に「猫」というラベル、犬の画像に「犬」というラベル
- スパム判定:メールと「スパム」または「正常」というラベル
- 住宅価格予測:住宅の特徴(面積、立地など)と実際の販売価格
などです。
次に、学習プロセスは以下のように進みます。
- 初期状態:モデルはランダムな予測を行う
- 予測と比較:モデルが予測を行い、正解と比較する
- 誤差の計算:予測と正解の差(誤差)を計算する
- モデルの更新:誤差が小さくなるようにモデルのパラメータを調整する
- 反復:このプロセスを全データに対して繰り返す
この反復を通じて、モデルは徐々に正確な予測ができるようになります。
まるで生徒が練習問題を解き、答え合わせをして、間違いから学んでいく過程に似ています。
主な問題タイプ
教師あり学習は、さらに2つの主要な問題タイプに分類されます。
1. 分類問題(Classification)
分類問題とは、出力が離散的なカテゴリである問題のことです。
簡単に言えば、「AかBか」、「複数のクラスのうちどれか」を判定します。
以下に、分類問題の例をあげてます。
- メールがスパムか正常か(2値分類)
- 画像に写っているのが猫、犬、鳥のいずれか(多クラス分類)
- 医療診断で病気の種類を特定(多クラス分類)
- 商品レビューの感情分析(ポジティブ/ネガティブ/中立)
2. 回帰問題(Regression)
回帰問題とは、出力が連続的な数値である問題のことです。
具体的な量を予測するケースが回帰問題にあてはまります。
量を予測するケースの例を以下にあげます。
- 住宅価格の予測(金額)
- 明日の気温予測(温度)
- 広告のクリック率予測(確率)
- 株価の予測(価格)
- 売上金額の予測(金額)
最近、様々なネットサービスで、住宅価格の予測であったり、広告のクリック率の予測をするサービスが登場していますが、裏では機械学習システムがその予測を導き出しているかもしれません。
教師あり学習の強みと課題
教師あり学習の強みと課題の強みと課題についても大事なポイントですので、まとめておきます。
教師あり学習の強み:
- 明確な目標:正解があるため、モデルの性能を客観的に評価できる
- 実用性の高さ:多くのビジネス課題に直接適用できる
- 成熟した技術:豊富なアルゴリズムとツールが存在する
教師あり学習の課題:
- ラベリングコスト:大量の正解データを人間が用意する必要があり、時間とコストがかかる
- ラベルの品質:人間が付けたラベルに誤りやバイアスがあると、モデルもそれを学習してしまう
- 新しいクラスへの対応:訓練時に存在しなかったカテゴリは認識できない
AIとは言え、学習する際には人手が必要になり、AIが導きだす答えは、人が容易したデータに強く依存するということになります。
つまり、「学習の際に用意するデータがそのAIの精度を決める」と言ってしまっても決して過言ではないのが、教師あり学習なのです。
今回は、「機械学習のアプローチ」と「教師あり学習」についてご紹介しました。次回は、「教師なし学習」。そして、「ニューラルネットワーク」についてご紹介できればと思います。
解説記事「生成AIは機械学習から始まる-その2:機械学習のアプローチ」の続きは
現在準備中です。
公開までお待ちください。
APPSWINGBYは、最先端の技術の活用と、お客様のビジネスに最適な形で実装する専門知識を有しております。システム刷新(モダナイゼーション)やシステムリプレース、新規サービスの設計・開発、既存システムの改修(リファクタリング、リアーキテクチャ)、DevOps環境の構築、ハイブリッドクラウド環境の構築、技術サポートなど提供しています。
貴社のレガシーシステムの刷新についてご相談されたい方は、お問い合わせフォームからお気軽にご連絡ください。AI開発とSIの専門家が、貴社の課題解決をサポートいたします。

システム開発にお困りではありませんか?
もしも今現在、
- どのように開発を依頼したらよいかわからない
- どのように開発を依頼したらよいかわからない
- 企画や要件定義の段階から依頼できるのか知りたい
- システム開発費用がどれくらいかかるのか知りたい
- 見積りがほしい
など、システム開発に関するご相談・ご依頼がございましたら、お気軽にご相談ください。APPSWINGBYでは、「アプリでお客様のビジネスを加速し、お客様とともにビジネスの成功と未来を形作ること」をミッションとしています。大手SIerやR&D部門で培った経験やノウハウ、高度な技術力でお客様の「やりたい」を実現します。
この記事を書いた人

株式会社APPSWINGBY マーケティング
APPSWINGBY(アップスイングバイ)は、アプリケーション開発事業を通して、お客様のビジネスの加速に貢献することを目指すITソリューションを提供する会社です。
ご支援業種
情報・通信、医療、製造、金融(銀行・証券・保険・決済)、メディア、流通・EC・運輸 など多数

株式会社APPSWINGBY マーケティング
APPSWINGBY(アップスイングバイ)は、アプリケーション開発事業を通して、お客様のビジネスの加速に貢献することを目指すITソリューションを提供する会社です。
ご支援業種
情報・通信、医療、製造、金融(銀行・証券・保険・決済)、メディア、流通・EC・運輸 など多数
監修

株式会社APPSWINGBY CTO 川嶋秀一
動画系スタートアップや東証プライム上場企業のR&D部門を経て、2019年5月より株式会社APPSWINGBY 取締役兼CTO。
Webシステム開発からアプリ開発、AI導入、リアーキテクチャ、リファクタリングプロジェクトまで幅広く携わる。
C, C++, C#, JavaScript, TypeScript, Go, Python, PHP, Java などに精通し、Vue.js, React, Angular, Flutterを活用した開発経験を持つ。
特にGoのシンプルさと高パフォーマンスを好み、マイクロサービス開発やリファクタリングに強みを持つ。
「レガシーと最新技術の橋渡し」をテーマに、エンジニアリングを通じて事業の成長を支えることに情熱を注いでいる。

株式会社APPSWINGBY CTO 川嶋秀一
動画系スタートアップや東証プライム上場企業のR&D部門を経て、2019年5月より株式会社APPSWINGBY 取締役兼CTO。
Webシステム開発からアプリ開発、AI導入、リアーキテクチャ、リファクタリングプロジェクトまで幅広く携わる。
C, C++, C#, JavaScript, TypeScript, Go, Python, PHP, Java などに精通し、Vue.js, React, Angular, Flutterを活用した開発経験を持つ。
特にGoのシンプルさと高パフォーマンスを好み、マイクロサービス開発やリファクタリングに強みを持つ。
「レガシーと最新技術の橋渡し」をテーマに、エンジニアリングを通じて事業の成長を支えることに情熱を注いでいる。