データサイエンティスト養成読本 機械学習入門編

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

ダウンロード

本書で使用するサンプルデータをダウンロードできます。

2015年9月4日更新

P45 図4
P46 図5
P46 図6
P47 click_data_sample.csv
P48 図7
P51 図9
P51 図10
P52 図11
P54 図14
P54 図15
P55 図16
P57 図18
P57 図19
P59 cv_data_sample.csv
P61 図22
P126 図6
P155 図1

お詫びと訂正(正誤表)

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2016年7月22日更新)

P.60 例32 予測モデルの構築のコード差し替え

> library(rpart)   # 決定木
> library(rattle)  # きれいな決定木の描画
> # クラスタ番号を因子型に変換
> target.data[,-c(1,ncol(target.data))] <- 
+   apply(target.data[,-c(1,ncol(target.data))], 2, as.factor)
> # 決定木の実行
> cvr.fit <- rpart(cvr~., data=target.data[,-1])

初版第2刷以降で以下の修正について訂正しております
目次

戸嶋達哉
戸嶋

P.30 左段4行目の式

l(w0, w1, w2, x1, x2, y ) = max(0, 1 - y(i) (x1(i), x2(i) ))
l(w0, w1, w2, x1, x2, y ) = max(0, 1 - y(i) f(x1(i), x2(i) ))

P.41 左段

平均(μ1,μ2)と2行2列の共分散行列σとなります。
平均(μ1,μ2)と2行2列の共分散行列Σとなります。

P.47 例4 2行目

ggplot(click.user.data, aes(x=no, y=click.num)) +
ggplot(click.user.data[1:5000,], aes(x=no, y=click.num)) +

P.114 右段下

> sudo apt-get install -y libfreetype6-dev libblas-dev liblapack-dev
gfortran
> sudo apt-get install -y libfreetype6-dev libblas-dev liblapack-dev
gfortran tk-dev

P.118 例1の5行目

b = np.array(np.arange(10))
b = np.arange(10)

P.129 右段下

LinearRegressio()
LinearRegression()

P.130 左段中

datasetモジュール
datasetsモジュール

P.133 リスト7下部のインデント,コメント位置のずれ

# 描画
markers = ["o", "v", "x"]
for i in range(3):
    xx = X[kmeans.labels_ == i]
    plt.scatter(xx[:, 0], xx[:, 1], c="k", marker=markers[i])
plt.show()

P.157 リスト1下部に不要なコードの入り込み

ax2.add_patch(rect)は不要です。

P.159 リスト2の1行目のコメント

import sys
import numpy as np
from skimage import io
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import numpy as np
from skimage import io
from skimage import transform
import matplotlib.pyplot as plt
import matplotlib.cm as cm

「# (省略)リスト1と同様にimport」に加えてfrom skimage import transformが必要です。

P182 リスト6
true_positive += 1 → true_negative += 1
false_negative += 1 → false_positive += 1


else: # 教師データ中で異常とされる物 if may_anomaly: # Jubatusが正しく異常とみなした true_positive+= 1
else: # Jubatusが間違えて正常とみなした false_negative += 1 ====== 


else: #教師データ中で異常とされる物 if may_anomaly: # Jubatusが正しく異常とみなした true_negative += 1
else: # Jubatusが間違えて正常とみなした false_positive += 1