Menu
CoddyTech

振り返り:種の仕分け機

CoddyのMachine Learningジャーニー「教師あり学習」セクションの一部。レッスン 5/58。

challenge icon

チャレンジ

簡単

この章の冒頭に登場した種子を覚えていますか?今度はそれらを分類するプログラムを作りましょう。seeds.csvには180個の小麦の種子が含まれています。4つの測定値はfeaturesに、品種はvarietyに格納されています。スターターコードでは、新しい種子を1行のテーブルnew_seedに読み込みます。

  1. データを分割し、random_state=0を指定して4分の1をテスト用にし、それぞれのサイズを出力します。
  2. 訓練データで最も多い品種を出力します。これがベースラインの答えです。
  3. 測定値を使ってk近傍法モデルを学習させます。その正解率とベースラインを、小数点以下3桁に丸めて出力します。
  4. 新しい種子の品種を出力します。

別の農場の種子の場合:

Train: 120 seeds, test: 40
Most common in training: Rosa
Accuracy: 0.925 (baseline 0.4)
New seed: Canadian

自分で試してみよう

import pandas as pd

# 180粒の小麦の種子:4つの測定値と品種
seeds = pd.read_csv("seeds.csv")
features = ["area_mm2", "length_mm", "width_mm", "groove_mm"]

# 実験室から届いた新しい種子を、1行の表として表す
new_seed = pd.DataFrame({
    "area_mm2": [float(input())],
    "length_mm": [float(input())],
    "width_mm": [float(input())],
    "groove_mm": [float(input())],
})

# 以下にコードを書いてください

教師あり学習のすべてのレッスン

自分で練習してみよう: Pythonオンラインコンパイラ