Pythonで学ぶ機械学習入門
手を動かして学ぶ無料の機械学習講座です。本物のscikit-learnのコードを書き、実際のデータセットでモデルを訓練し、自分のグラフが「グラフ」タブに表示されるのを一歩ずつ確かめます。
233 レッスン231 チャレンジ965 クイズの問題
- 初心者向け
AIによるコーディングサポート
実践的なインタラクティブレッスン
全レッスンに音声ナレーション付き
知識を確かめるクイズ
無料の修了証明書
ブラウザでモデルを学習させよう
本物の scikit-learn のコードと、その本物の出力。スライダーで1行を変えて、モデルが何を学ぶか見てみましょう。
k が小さいと学習データの点をすべて覚えて、ギザギザの境界を描きます。k を大きくすると境界がなめらかになります。
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_moons
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
X, y = make_moons(n_samples=200, noise=0.3, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)
k = 5
model = KNeighborsClassifier(n_neighbors=k)
model.fit(X_train, y_train)
print(f"train accuracy: {model.score(X_train, y_train):.2f}")
print(f"test accuracy: {model.score(X_test, y_test):.2f}")
xx, yy = np.meshgrid(np.linspace(-2, 3, 56), np.linspace(-1.5, 2, 40))
proba = model.predict_proba(np.c_[xx.ravel(), yy.ravel()])[:, 1]
proba = proba.reshape(xx.shape)
plt.figure(figsize=(5, 4))
plt.pcolormesh(xx, yy, proba, cmap="coolwarm", alpha=0.35)
plt.scatter(X_train[:, 0], X_train[:, 1], c=y_train,
cmap="coolwarm", edgecolors="k")
plt.title(f"k-nearest neighbors, k = {k}")
plt.show()
シラバス
セクション 1
データとプロット専用ページ
セクションを始める開始あらゆる機械学習プロジェクトの出発点となるツールキット:NumPyの配列、matplotlibのグラフ、pandasのテーブル。実際のデータセットを読み込み、要約し、見つけたことをプロットします。はじめに
4 レッスン320NumPy配列
5 レッスン520配列の数学演算
6 レッスン625データの形を整える
4 レッスン415折れ線グラフと散布図
6 レッスン625データのグラフ
5 レッスン520pandas DataFrame
6 レッスン625フィルタリングと並べ替え
5 レッスン520グループ化とデータの整理
5 レッスン520DataFrameのプロット
5 レッスン520MLのデータセット
5 レッスン520セクション 2
機械学習のための統計専用ページ
セクションを始める開始あらゆるモデルを支える統計の基礎:中心とばらつき、分布、シミュレーションによる確率、サンプル、外れ値、相関、トレンドライン、グループ検定、そして特徴量のスケーリングとエンコーディング。すべての概念を実データで計算し、プロットします。中心とばらつき
6 レッスン625分布
6 レッスン625シミュレーションで学ぶ確率
6 レッスン625標本と母集団
5 レッスン520外れ値
5 レッスン520関係性
6 レッスン525トレンドライン
6 レッスン625グループの比較
6 レッスン625特徴量スケーリング
5 レッスン520カテゴリのエンコーディング
4 レッスン415データセットを探る
5 レッスン520最終課題
4 レッスン420セクション 3
教師あり学習専用ページ
セクションを始める開始scikit-learnで実際のモデルを学習:データの分割、学習、予測、評価。k-NN、線形回帰とロジスティック回帰、決定木、ランダムフォレストとブースティング、交差検証による公正な評価、パイプラインを学び、ペンギンのエンドツーエンドプロジェクトで締めくくります。初めてのモデル
5 レッスン520最近傍法
5 レッスン520線形回帰
5 レッスン520ロジスティック回帰
5 レッスン520分類器の評価
6 レッスン625決定木
5 レッスン520過学習
5 レッスン520交差検証
4 レッスン415アンサンブル
4 レッスン415パイプライン
5 レッスン520プロジェクト:ペンギンの種
5 レッスン525セクション 4
教師なし学習専用ページ
セクションを始める開始ラベルなしのデータから構造を見つける:k-means、階層的クラスタリングと密度ベースクラスタリング、多数の特徴量を可視化・圧縮するPCA、異常検知を学び、数字データの探索プロジェクトで締めくくります。グループを見つける
5 レッスン520kの選び方
5 レッスン520クラスタを読み解く
5 レッスン520次元を減らす
5 レッスン520実践で学ぶPCA
5 レッスン520異常検知
5 レッスン520クラスタの活用
4 レッスン415プロジェクト:数字を探ろう
5 レッスン525最終課題
4 レッスン420
実践で学ぶ
実際のコードを書き、データベースをクエリし、ウェブサイトを構築し、AIプロンプトをマスターしましょう。インタラクティブなレッスンで現代の開発者に必要なすべてのスキルを網羅しています。
連続記録を築こう
継続して進捗を見守りましょう!毎日のコーディング習慣を追跡し、フリーズ日で連続記録を守り、毎日参加することで報酬を獲得しましょう。
12 日連続
明日も戻ってきて連続記録を維持しましょう!
January 2026
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
21
22
23
24
25
26
27
28
29
30
ダブル・オア・ナッシング
7日中5日目
連続記録フリーズ
2 left
あなたは一人じゃない
グローバルリーダーボードで競い、友達を招待して報酬を獲得し、お互いの成功を祝いましょう。プログラミングは友達と一緒の方が楽しい!
あらゆる学び方に対応
読む・聴く・自分を試す・AIに聞く・学んだことを調べる。どんな学び方にも対応したレッスンです。
変数は、後でプログラム内で参照できる値を格納する、名前のついた入れ物です。
Pythonでは、名前、イコール記号、格納したい値の順で書くことで作成します。
値は後から変えられます。再代入すると、名前は新しい値を指すようになります。
修了証を取得
完了したすべてのコースで証明書を獲得しましょう。LinkedInプロフィールや履歴書に追加して、雇用主にプログラミングスキルをアピールしましょう。
Coddyで機械学習を学ぶ理由
- 読む前に、まず見る。どのレッスンも図やグラフから始まります。irisの花の散布図、決定境界、デンドログラム。そのあとコードを書くと、自分のグラフが隣の「グラフ」タブに表示されます。
- 本物のPython、本物のライブラリ。
numpy、pandas、matplotlib、scipy、scikit-learnがCoddy上で、データサイエンティストが使うのと同じバージョンで動きます。だからここでのmodel.fit(X_train, y_train)は、仕事でのmodel.fit(X_train, y_train)とまったく同じです。インストールもノートブックの準備も要りません。 - 実際の作業の順に並んだ4つのセクション:データと可視化、機械学習のための統計、教師あり学習、そして教師なし学習。短いレッスンが233あり、どれも新しいアイデアが1つと、それを使う課題が1つです。
- ストーリーのある本物のデータセット:irisの花、ワインの化学成分、手書き数字、Palmer penguins。ペンギンの種を分類するモデルと手書き数字エクスプローラーという2つのプロジェクトを完成させます。どのグラフにもタイトルとラベルを付けるので、そのままレポートに載せられます。
機械学習の学習についてよくある質問
機械学習とは何ですか?
機械学習とは、ルールではなく例を見せてコンピューターに教えることです。たとえば花びらの大きさと種類が書かれた花のデータのように、たくさんの行をモデルに見せると、モデルはパターンを学び、見たことのない行にもそれを使えるようになります。行に答えが付いていれば教師あり学習、答えがなくモデルが自分でグループを見つけるなら教師なし学習です。この講座では両方を学びます。
機械学習を学ぶには数学が得意である必要がありますか?
いいえ。必要なのは学校で習う算数と、グラフを読む根気です。機械学習で使う統計(平均、ばらつき、分布、相関、p値)はシミュレーションと図で学び、重い計算はscikit-learnが引き受けます。微積分と線形代数は、将来新しいアルゴリズムを作りたくなったときには役立ちますが、モデルを訓練し、テストし、理解するためには必要ありません。
先にPythonを知っておく必要がありますか?
if、ループ、関数、リスト。これはPythonコースの基礎セクションにあたり、1日1時間で数週間ほどです。そこから先のimport、NumPy、pandas、matplotlib、scikit-learnは、ここで最初の1行から教えます。どのPythonライブラリを学びますか?
機械学習の定番ライブラリです。配列のNumPy、表のpandas、グラフのmatplotlib、統計のSciPy、そしてモデルのscikit-learn(k近傍法、線形回帰とロジスティック回帰、決定木、ランダムフォレスト、勾配ブースティング、k-means、DBSCAN、PCAなど)。Coddyでは最新バージョンが動くので、ここで書いたコードは自分のパソコンでも同じように動きます。
GPUや高性能なパソコンは必要ですか?
いいえ。コードはCoddyのサーバーで動き、グラフがブラウザに返ってくるので、ノートパソコン、Chromebook、タブレットで十分です。そもそもscikit-learnを使う古典的な機械学習は、普通のCPUで問題なく動きます。GPUが重要になるのは大規模なニューラルネットワークの訓練で、この講座では扱いません。
この講座を終えたら何が作れますか?
表データから実際の問いに答えるモデルです。このメールはスパムか、どの顧客が離れそうか、このペンギンはどの種か、明日は何台の自転車が貸し出されるか、どんな買い物客のグループがあるか、どのサーバーの数値がおかしいか。さらに、テストセット、交差検証、混同行列、ROC曲線でモデルを正直に評価する方法も学びます。それこそが、信頼できるモデルの条件です。
機械学習の習得にはどのくらい時間がかかりますか?
この機械学習講座は無料ですか?
はい。レッスン、グラフ、AIヒント、修了証は無料です。無料アカウントでは1日に数レッスンまで進められ、Proなら1日の上限がなくなります。