Menu
CoddyTech

まずは見てみよう

CoddyのMachine Learningジャーニー「機械学習のための統計」セクションの一部。レッスン 56/64。

すべてのモデルは、誰かがそのデータを注意深く見ることから始まります。この章の最後には、腫瘍をクラスごとに分ける2つの測定値を示す、次のような図が登場します。

点で示した乳房組織のサンプル。横軸は平均凹点数、縦軸は平均周囲長:良性サンプルは左下に集中し、悪性サンプルは右上に広がる

まず4つを確認します:サイズ、欠損値、範囲、クラス。ワインデータセットでは:

wine = load_wine(as_frame=True)
df = wine.frame
print(df.shape)
print(df.isna().sum().sum())

これは次のように出力します:

(178, 14)
0

13 個の特徴量と target があり、.sum().sum() ではどこにも欠損が見つかりませんでした。df.describe() で各特徴量の範囲がわかります。

最後に、クラスです。normalize=True を指定すると、カウントが割合になります。

shares = df["target"].value_counts(normalize=True)

3つのワインクラスの棒グラフ: class_0 33%、class_1 40%、class_2 27%。40%の位置に、常にclass_1: 40%と示す破線がある

常に class_1 と答えると、正解率は40%です。これは実際のモデルが上回る必要のあるベースラインです。

challenge icon

チャレンジ

中級

モデルが学習する前に、load_breast_cancerを最初に確認します。スターターコードではデータをdfに読み込み、特徴量の名前を読み取ります。次を出力してください。

  1. サイズと欠損セルの数。
  2. describe()による特徴量の最小値、最大値、中央値。
  3. 各クラスの割合を、クラスの順番どおりに整数のパーセントで。
  4. ベースライン:最大の割合とそのクラス。

アヤメの花と入力petal length (cm)に対して、次のように出力します。

Size: 150 samples, 4 features
Missing cells: 0
petal length (cm): 1.0 to 6.9, median 4.35
setosa: 33%
versicolor: 33%
virginica: 33%
Baseline: 33% by always answering setosa

アヤメのデータは完全に均衡しています。組織データもそうでしょうか?

自分で試してみよう

from sklearn.datasets import load_breast_cancer

feature = input()
cancer = load_breast_cancer(as_frame=True)
df = cancer.frame

# 以下にコードを書いてください
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

機械学習のための統計のすべてのレッスン

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