More Related Content
PDF
PDF
PDF
PPTX
PDF
PDF
PDF
PDF
クラシックな機械学習入門:付録:よく使う線形代数の公式 What's hot
PDF
PDF
SchNet: A continuous-filter convolutional neural network for modeling quantum... PPTX
PPTX
PPTX
近年のHierarchical Vision Transformer PDF
PPTX
PDF
PPTX
PDF
PPTX
PDF
Stochastic Variational Inference PDF
LSTM (Long short-term memory) 概要 PPTX
[DL輪読会]Vision Transformer with Deformable Attention (Deformable Attention Tra... PDF
PRML上巻勉強会 at 東京大学 資料 第1章後半 PDF
PDF
状態空間モデルの考え方・使い方 - TokyoR #38 PDF
PPTX
PDF
Similar to [第2版]Python機械学習プログラミング 第10章
PDF
PDF
PDF
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4 PPTX
PDF
PDF
正則化つき線形モデル(「入門機械学習第6章」より) PPTX
PDF
PPTX
第7回 KAIM 金沢人工知能勉強会 回帰分析と使う上での注意事項 PDF
PPTX
Rabbit challenge machine learning PPT
Model seminar shibata_100710 PDF
PDF
PDF
PDF
PPTX
Analyze by StatsModels or Numpy PDF
PPTX
PDF
Regression and decision-tree More from Haruki Eguchi
PDF
[第2版]Python機械学習プログラミング 第15章 PDF
[第2版] Python機械学習プログラミング 第2章 PDF
[第2版]Python機械学習プログラミング 第6章 PDF
[第2版] Python機械学習プログラミング 第5章 PPTX
[第2版]Python機械学習プログラミング 第11章 PDF
[第2版] Python機械学習プログラミング 第4章 PDF
[第2版]Python機械学習プログラミング 第7章 PDF
[第2版]Python機械学習プログラミング 第16章 PDF
[第2版]Python機械学習プログラミング 第13章 PDF
[第2版]Python機械学習プログラミング 第14章 PDF
[第2版] Python機械学習プログラミング 第3章(~4節) PDF
[第2版] Python機械学習プログラミング 第1章 PPTX
[第2版]Python機械学習プログラミング 第12章 PDF
[第2版] Python機械学習プログラミング 第3章(5節~) PDF
[第2版]Python機械学習プログラミング 第12章 PDF
[第2版]Python機械学習プログラミング 第8章 PPTX
[第2版]Python機械学習プログラミング 第9章 Recently uploaded
PDF
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信 PDF
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望 PDF
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis PDF
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector PDF
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版 PDF
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」 PDF
PPTX
PDF
さくらインターネットの今 法林リージョン:さくらのAIとか GPUとかイベントとか 〜2026年もバク進します!〜 [第2版]Python機械学習プログラミング 第10章
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
勾配降下法を使って回帰パラメータの回帰を解く
● ADALINEから単位ステップ関数を削除した線形回帰モデル
● ADALINEでは予測するときに、
閾値を設けて1か-1のクラスラベルに
振り分けていたが、値をそのまま
出力する。
15
classLinearRegressionGD(object):
def __init__(self, eta=0.001, n_iter=20):
self.eta = eta
self.n_iter = n_iter
def fit(self, X, y):
self.w_ = np.zeros(1 + X.shape[1])
self.cost_ = []
for i in range(self.n_iter):
output = self.net_input(X)
errors = (y - output)
self.w_[1:] += self.eta * X.T.dot(errors)
self.w_[0] += self.eta * errors.sum()
cost = (errors**2).sum() / 2.0
self.cost_.append(cost)
return self
def net_input(self, X):
return np.dot(X, self.w_[1:]) + self.w_[0]
def predict(self, X):
return self.net_input(X)
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
scikit-learnを使って多項式の項を追加する
● PolynomialFeatures変換器クラス
28
from sklearn.preprocessingimport PolynomialFeatures
X = np.array([258.0, 270.0, 294.0,
320.0, 342.0, 368.0,
396.0, 446.0, 480.0, 586.0])¥
[:, np.newaxis]
y = np.array([236.4, 234.4, 252.8,
298.6, 314.2, 342.2,
360.8, 368.0, 391.2,
390.8])
lr = LinearRegression()
pr = LinearRegression()
quadratic = PolynomialFeatures(degree=2)
X_quad = quadratic.fit_transform(X)
MSE : 570 → 61
R^2 : 0.832 → 0.982
- 29.
- 30.
- 31.
- 32.
- 33.
Editor's Notes
- #3 IMDb: Internet Movie Database
- #6 重みw0はy切片を表し、w1は説明変数の係数を表す。
この重みを調整することで説明変数に対する目的変数を予測することができる。
残差:予測値の誤差
- #7 特徴量が2つであれば2次元の超平面として表すことが可能だが、
3つ以上の特徴量になるとうまく可視化する方法がない。
- #9 CRIM・・・犯罪発生率(人口単位)ZN・・・25,000平方フィート以上の住宅区画の割合INDUS・・・非小売業の土地面積の割合(人口単位)CHAS・・・チャールズ川沿いかどうか(1:Yes、0:No)NOX・・・窒素酸化物の濃度(pphm単位)RM・・・1戸あたりの平均部屋数AGE・・・1940年よりも前に建てられた家屋の割合DIS・・・ボストンの主な5つの雇用圏までの重み付きの郷里RAD・・・幹線道路へのアクセス指数TAX・・・10,000ドルあたりの所得税率PTRATIO・・・教師あたりの生徒の数(人口単位)B・・・アフリカ系アメリカ人居住者の割合(人口単位)LSTAT・・・低所得者の割合
MEDV・・・住宅価格の中央値
- #11 データセットから5つの特徴量についてプロット
LSTAT・・・低所得者の割合INDUS・・・非小売業の土地面積の割合(人口単位)NOX・・・窒素酸化物の濃度(pphm単位)
RM・・・1戸あたりの平均部屋数
MEDV・・・住宅価格の中央値
- #12 σxはxの標準偏差を、σyはyの標準偏差を、σxyはxとyの共分散を表す
物質が燃焼するときにも一酸化窒素や二酸化窒素などが発生する。
NOX・・・窒素酸化物の濃度(pphm単位)
INDUS・・・非小売業の土地面積の割合(人口単位)
LSTAT・・・低所得者の割合
MEDV・・・住宅価格の中央値
RM・・・1戸あたりの平均部屋数
MEDV・・・住宅価格の中央値
- #17 5epochsから収束している。
部屋数だけでは住宅価格を説明しきれていない。
- #18 標準化していない変数を学習した例
- #20 ロバスト回帰分析:外れ値の影響を小さくして回帰係数を推定する方法
求めたパラメータ、プラスマイナスRANSACの許容範囲内にあるデータ数だけそのパラメータに投票する。
- #21 イテレーション数:max_trials
ランダムに選ぶサンプルの最小値:min_samples
学習直線に対するサンプル点の縦の距離の絶対値を計算:'absolute_loss'
許容する直線からの距離:residual_threshold
RANSACを使用するとこのデータの外れ値の影響は抑えられるが、
- #23 残差:実際の値と予測された値の差
0から大きく離れているものは外れ値
- #24 SSE: 誤差平方和
SST: 総平方和(平均からの差の二乗和)
MSEをスケーリングしたものといえる
R^2は0~1に収まり、1だと最もモデルがフィットしているといえる(その時MSE=0)
- #26 λが増えると正則化が強まる
正則化については、4章参照
全てscikit-learnに実装されているので使うことができる。
- #29 決定係数(R^2)
- #30 次数をあげると過学習の可能性は高まる
- #31 MEDV・・・住宅価格の中央値
データをよく見ることが大事
- #33 結果をみると過学習気味である