darkmocha.dev
私「機械学習の勉強」始めます。
Back to Home
2026-06-11機械学習Machine Learning9 min read

私「機械学習の勉強」始めます。

機械学習の勉強が必要になったので初学者ながら学ばせていただきます。

機械学習初学者による絶望アウトプット記録

Claude Fable 5 が話題になっているこの頃、
この世界・未来がどうなっていくのか?
私の存在価値とはなんなのだろうか?
と考えることが増えてきた。
まあ、そんなこと考えても何も前に進まないので...
このビッグウェーブに乗り遅れないよう、 「AIを支配する側にまわるぞ!」 という気概で機械学習を0から学んでいく。その記録をここに書き残していく。
今回は初回なので、とりあえず「機械学習の概要」をアウトプットしていこうと思う。
(初学者なので間違ってることもあるかもしれないけど大目に見てください。)

機械学習とは?

機械学習とは文字通り 機械に学習させる ことである。
これまでは、人間がデータを分析して規則性を見つけ、自分でプログラムとしてルールを書いていた。
機械学習はそのアプローチを逆転させる。データをたくさん与えて、ルール自体を機械に発見させるのだ。
たとえばスパムメール判定を例にすると、従来のやり方では「"無料"という単語が含まれていたらスパム」のようにルールを人間が書いていた。機械学習では、大量のスパム・非スパムメールを学習させることで、機械が自分でそのパターンを見つけ出す。

機械学習の3分類

機械学習には大きく3種類の学習方法が存在する。
種類正解データ主な用途
教師あり学習あり分類・回帰
教師なし学習なしクラスタリング・次元削減
強化学習なし(報酬あり)ゲームAI・ロボット制御

教師あり学習

教師あり学習は、ラベル(正解)付きのデータからモデルを学習する方法だ。
たとえば「花の画像」と「その花の種類(アヤメの品種など)」をセットにしたデータを大量に与えることで、新しい花の画像を見たときに品種を予測できるようになる。
教師あり学習には大きく2種類のタスクがある。
  • 分類:入力データがどのクラスに属するかを予測する。メールがスパムか否か(2値分類)、手書き数字が0〜9のどれか(多値分類)など。
  • 回帰:連続した数値を予測する。明日の気温、家の価格など。
分類モデルが学習するのは 決定境界 だ。特徴量の空間上に線(または曲面)を引き、どちら側にデータが属するかを判断する。
ラベルとは?
教師あり学習における「ラベル」とは、各データに対応する正解のこと。
花の画像データなら「Iris-setosa(ヒオウギアヤメ)」「Iris-virginica」のような品種名がラベルにあたる。

強化学習

強化学習は、エージェント(AI)が環境の中で行動し、報酬を最大化するように学習する方法だ。正解データは与えず、「良い行動をしたら報酬を与える」という仕組みで学習が進む。
チェスや囲碁のAI、自動運転、ロボット制御などに使われている。
実は私もUnityでオセロゲームを作ったとき、機械学習とは別の話になるが、報酬を使った擬似AIアルゴリズムを実装したことがある。駒を取ったらスコア加算、角を取ったら大きくスコア加算、というような設計で、考え方としては強化学習に近いものがあった。

教師なし学習

教師なし学習は、ラベルなし(正解がわからない)データから構造やパターンを発見する方法だ。
代表的なタスクが クラスタリング だ。ラベルなしで似たデータを自動でグループ分けする。顧客を購買傾向で自動グループ分けしてマーケティングに活用する、といった使われ方をする。
もうひとつが 次元削減 だ。たくさんの特徴量を持つデータから、余分なノイズを取り除きつつ本質的な情報だけを残す。データの可視化や、後続の機械学習モデルの精度向上に役立てられる。

機械学習を構築するためのロードマップ

実際に機械学習モデルを作るには、データの準備から最終的な予測まで、いくつかのステップを踏む必要がある。
生データ

データセットの収集・整形

訓練データ / テストデータへの分割

前処理(スケーリング・次元削減など)

機械学習アルゴリズムで学習

モデルの評価・選択

最終モデルで未知データを予測

前処理

花の画像を例にすると、機械が直接画像ピクセルをそのまま学習するのではなく、実際には 特徴量 に変換して使う。花びらの長さ・幅、がくの長さ・幅などの数値データだ。
前処理で特に重要なのが 特徴量のスケーリング だ。「花びらの長さ(単位:cm)」と「価格(単位:円)」のように、特徴量によってスケールが大きく違う場合、そのまま学習すると大きい値の特徴量が結果を支配してしまう。標準化(平均0・分散1に揃える)や正規化(0〜1に揃える)で各特徴量のスケールを統一する。

予測モデルの作成と選択

モデルを作ったら「どれくらい性能が出るか」を評価しなければならない。そのとき重要な考え方が 交差検証(クロスバリデーション) だ。
データをK個のブロックに分割し、そのうちの1つをテスト用・残りを訓練用として学習と評価を繰り返す。これにより、特定のデータの偏りに引っ張られない安定した評価ができる。
また、機械学習の重要な考え方として「どんなデータに対しても最強のアルゴリズムは存在しない」というノーフリーランチ定理がある。問題の性質に合わせてアルゴリズムを選ぶことが大切だ。

モデルの評価と汎化性能

モデルを評価するときに気をつけないといけないのが 過学習(オーバーフィッティング) だ。
訓練データにはバッチリ適合しているのに、見たことのない新しいデータには全然当てはまらない、という状態のこと。「教科書の問題は完璧に解けるけど、初見の問題は全滅」というイメージに近い。
機械学習モデルが求められるのは、訓練データへの適合ではなく、未知のデータに対しても正確に予測できる汎化性能だ。
過学習に注意
モデルの評価は必ず学習に使っていないテストデータで行うこと。
訓練データで評価すると過学習していても高スコアが出てしまい、実際の性能を見誤る。

これから学んでいく分類アルゴリズムたち

今後の記事で以下のアルゴリズムを順に深掘りしていく予定だ。今回は軽く顔見せだけ。
アルゴリズムひとことメモ
パーセプトロン最もシンプルな線形分類器。ニューラルネットワークの祖先
ADALINEパーセプトロンの進化版。連続値で誤差を計算するのがポイント
ロジスティック回帰確率を出力できる。2値分類の定番
SVM決定境界のマージンを最大化。カーネルトリックで非線形も扱える
決定木条件分岐の木構造。理由を説明しやすい
ランダムフォレスト決定木を大量に作って多数決。過学習しにくくて実用的
KNN(K近傍法)近くにいる似たデータの多数決。学習コストゼロ
どれを使えばいいの?
迷ったらまず ロジスティック回帰でベースラインを作り、精度が足りなければ ランダムフォレスト を試すのが実務の定番の流れらしい。それぞれ得意不得意があるので、問題に合わせて選んでいく。

まとめ

今回学んだことを整理するとこんな感じだ。
  • 機械学習は「データからルールを自動で学ばせる」仕組み
  • 学習の種類は「教師あり・教師なし・強化学習」の3種類
  • 実際に使うには「前処理 → 学習 → 評価」のロードマップがある
  • 過学習に気をつけながら汎化性能を高めることが目標
まだ全体像を掴んだ段階で、数式レベルの理解には至っていないが、なんとなく「機械学習がどういうものか」のイメージはついてきた。次回からは各アルゴリズムを1つずつ深掘りしていく。
数式から逃げないようにする(予定)。

//Related Posts

Thanks for reading.