Python環境を起動中... 初回のみ数秒かかります
Lesson 1 / 12

AIと機械学習とは?

このレッスンで学ぶこと

  • AI・機械学習・ディープラーニングの関係を説明できる
  • 「ルールを書く」と「データから学ぶ」の違いが分かる
  • 機械学習の3種類(教師あり・教師なし・強化)を区別できる
  • scikit-learnを動かして「機械学習の入口」に立てる

1. AIってなんだろう?

「AI」という言葉は、いまや毎日のように耳にします。でも改めて 「AIって結局なに?」と聞かれると、説明が難しいかもしれません。 このコースは、AI・機械学習の知識がゼロでも大丈夫。まずは身近な例から、ゆっくり始めましょう。

実はあなたは、毎日たくさんのAIに触れています。

これらに共通するのは、「これまで人間がやっていた“判断”を、コンピュータが代わりに行っている」こと。 このように、人間の知的な作業をコンピュータに行わせる技術を、ざっくり AI(人工知能) と呼びます。

⚠ 初回の読み込みについて: このコースのコードは scikit-learn(機械学習のライブラリ)を使います。pandasよりさらに大きいため、 各ページで最初にコードを実行するとき、読み込みに十数秒〜数十秒かかることがあります(2回目以降は速くなります)。 画面上部のバーが消えたら準備完了の合図です。

2. AI・機械学習・ディープラーニングの関係

ニュースでは「AI」「機械学習」「ディープラーニング」「生成AI」といった言葉が、ほぼ同じ意味のように使われます。 でも、これらは「入れ子(マトリョーシカ)」の関係になっています。

AI・機械学習・ディープラーニング・生成AIの入れ子の関係図
AIが最も広い概念。その内側に機械学習、さらにディープラーニング、その中に生成AIがある

💡 まずはここだけ: 「機械学習はAIの中心的な手段」とだけ覚えればOKです。 このコースで学ぶのは、その機械学習。ディープラーニングや生成AIは、機械学習を理解した先にある発展分野です (本格的にはE資格対策コース・医療AIコースで扱います)。

3. 「ルールを書く」から「データから学ぶ」へ

では、機械学習は今までのプログラムと何が違うのでしょうか。 「迷惑メールを見分けるプログラム」を例に考えてみます。

従来のやり方(ルールベース)では、人間がルールを1つずつ書きます。 「“当選”という単語が入っていたら迷惑メール」「URLが10個以上あったら迷惑メール」…。 でも、迷惑メールの手口は次々に変わるので、ルールを書き続けるのは大変です。

機械学習では、考え方が逆転します。ルールを人が書く代わりに、 「迷惑メールの例」と「普通のメールの例」を大量に見せて、コンピュータ自身にパターンを見つけさせるのです。

ルールベース(従来)機械学習
誰がルールを作る人間が1つずつ書くデータから自動で学ぶ
必要なもの細かいルールの知識たくさんの例(データ)
変化への強さ都度ルールを書き直す新しいデータで学び直せる
得意なこと条件がはっきりした作業パターンが複雑な作業(画像・言葉など)

🩺 医療データ文脈: 「検査値がいくつ以上なら病気」と単純なルールで割り切れない場面はたくさんあります。 複数の検査項目が複雑に絡み合うようなとき、過去の大量のデータからパターンを学ぶ機械学習が力を発揮します。

4. 機械学習の3つの種類

機械学習は、「何をヒントに学ぶか」で大きく3種類に分かれます。

教師あり学習と教師なし学習の違いの図
左:教師あり(正解ラベル付きで2クラスを学ぶ)/右:教師なし(正解なしで似たもの同士をグループ化)

🗺 このコースで学ぶ範囲:

  • 教師あり学習(回帰・分類)… Unit 2・3 でしっかり(メイン)
  • 教師なし学習(クラスタリング)… Unit 4 で体験
  • 強化学習… 考え方の紹介のみ(本コースでは深入りしない)

まずは「正解つきで学ぶ=教師あり」「正解なしでグループ分け=教師なし」の2つを押さえれば十分です。

5. scikit-learnにさわってみる

このコースで使う機械学習ライブラリが scikit-learn(サイキット・ラーン) です。 細かい使い方は次回以降。まずは「動く」ことを体験しましょう。 scikit-learnには練習用の医療データが最初から入っていて、追加のダウンロードなしで使えます

sample_1.py
Ctrl+Enter
出力

💡 いま動かしたデータの意味: このデータは 569人分の検査結果で、1人につき 30項目の数値(細胞核の大きさなど)が入っています。 この30項目が「手がかり=特徴量」、予測したい「悪性/良性」が「答え=ラベル」です。 特徴量から答えを当てる——これが、次回から作っていく機械学習モデルの正体です。

6. 練習問題

各セルのコードを書き換えて「▶ 実行」を押してみましょう。「↺ リセット」で元に戻せます。

問題 1

乳がんデータの大きさと区分を見てみよう

load_breast_cancer を読み込み、データの大きさ(shape)予測したい区分(target_names)を表示してください。

exercise_1.py
出力
ヒントを見る(答え+解説)
from sklearn.datasets import load_breast_cancer

data = load_breast_cancer()

# データの大きさ(shape)と、予測したい区分(target_names)を表示してください
print("大きさ:", data.data.shape)          # (569, 30)
print("区分:", list(data.target_names))   # ['malignant', 'benign']

569人 × 30項目のデータで、予測する区分は「malignant(悪性)」「benign(良性)」の2つ。正解(区分)が用意されている=教師あり学習のデータです。

問題 2

糖尿病データ(回帰用)をのぞいてみよう

load_diabetes(糖尿病の進行度データ)を読み込み、データの大きさと、答え(target)の最初の5件を表示してください。

exercise_2.py
出力
ヒントを見る(答え+解説)
from sklearn.datasets import load_diabetes

data = load_diabetes()

# データの大きさと、target の最初の5件を表示してください
print("大きさ:", data.data.shape)       # (442, 10)
print("答えの例:", list(data.target[:5]))  # [151.0, 75.0, 141.0, 206.0, 135.0]

こちらの答え(target)は「悪性/良性」のような区分ではなく、数値(連続値)です。 このように数値そのものを予測する問題を「回帰」と呼びます(Unit 2で扱います)。 答えが「区分」なら分類、「数値」なら回帰、と区別できます。

問題 3

「特徴量」の中身を見てみよう

乳がんデータの 特徴量名の最初の5個feature_names[:5])を表示して、「手がかり」が具体的に何かを確かめてください。

exercise_3.py
出力
ヒントを見る(答え+解説)
from sklearn.datasets import load_breast_cancer

data = load_breast_cancer()

# 特徴量名の最初の5個を表示してください
print(list(data.feature_names[:5]))
# ['mean radius', 'mean texture', 'mean perimeter', 'mean area', 'mean smoothness']

「半径(radius)」「きめ(texture)」「周囲長(perimeter)」「面積(area)」など、細胞核を測った数値が並びます。 こうした1項目1項目が「特徴量=予測の手がかり」。機械学習は、この30個の手がかりを総合して「悪性か良性か」を予測します。

7. まとめ

このレッスンのポイント

  • AI ⊃ 機械学習 ⊃ ディープラーニング(生成AIはその中の応用)。機械学習はAIの中心的な手段
  • 機械学習は「人がルールを書く」のではなく 「データからパターンを学ぶ」
  • 3種類:教師あり(正解つき)・教師なし(正解なし)・強化(試行錯誤)
  • データは 特徴量(手がかり)+ ラベル(答え) でできている
  • 答えが「区分」なら分類、「数値」なら回帰
  • scikit-learn には練習用の医療データが同梱(DL不要で動かせる)

自由に試してみましょう:

free_practice.py
出力

完了するとコース一覧に進捗が記録されます