Source : Oreilly
此書中譯本為機械工業出版的簡體版, 參考 :
# 機器學習實戰 : 基於Scikit-Learn和TensorFlow
# https://www.tenlong.com.tw/products/9787111603023
Source : 天瓏
此書範例檔可在 GitHub 下載 :
# http://github.com/ageron/handson-ml
在 /dataset 目錄下有三個資料集目錄 :
1. 目錄 /dataset/lifesat 下存放的是加州普查的住房資料 :
# https://github.com/ageron/handson-ml/blob/master/datasets/housing/housing.csv
2. 目錄 /dataset/lifesat 底下存放了兩個資料集, 一個是世界貨幣組織 (IMF) 的國民生產毛額各國 GDP 資料 :
# https://github.com/ageron/handson-ml/blob/master/datasets/lifesat/gdp_per_capita.csv
另一個是經濟合作發展組織 (OECD) 2015 年的全球生活滿意度指數統計資料 :
# https://github.com/ageron/handson-ml/blob/master/datasets/lifesat/oecd_bli_2015.csv
3. 目錄 /dataset/inception 下存放的是 ImageNet 的分類資料 :
# https://github.com/ageron/handson-ml/blob/master/datasets/inception/imagenet_class_names.txt
下面是在樹莓派進行的加州住房資料測試 :
1. 首先下載 housing.tgz 壓縮檔 :
pi@raspberrypi:~ $ wget https://raw.githubusercontent.com/ageron/handson-ml/master/datasets/housing/housing.tgz
--2019-04-25 08:18:03-- https://raw.githubusercontent.com/ageron/handson-ml/master/datasets/housing/housing.tgz
正在查找主機 raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.228.133
正在連接 raw.githubusercontent.com (raw.githubusercontent.com)|151.101.228.133|:443... 連上了。
已送出 HTTP 要求,正在等候回應... 200 OK
長度: 409488 (400K) [application/octet-stream]
Saving to: ‘housing.tgz’
2019-04-25 08:18:10 (469 KB/s) - ‘housing.tgz’ saved [409488/409488]
2. 使用 tar 解壓縮即可得到 housing.csv 檔 :
pi@raspberrypi:~ $ tar -zxvf housing.tgz
housing.csv
pi@raspberrypi:~ $ ls -ls housing.csv
1392 -rw-r--r-- 1 pi pi 1423529 5月 3 2016 housing.csv
也可以直接下載 csv 檔, 例如 :
pi@raspberrypi:~ $ wget https://github.com/ageron/handson-ml/blob/master/datasets/housing/housing.csv
--2019-04-25 14:42:43-- https://github.com/ageron/handson-ml/blob/master/datasets/housing/housing.csv
正在查找主機 github.com (github.com)... 192.30.253.112, 192.30.253.113
正在連接 github.com (github.com)|192.30.253.112|:443... 連上了。
已送出 HTTP 要求,正在等候回應... 200 OK
長度: 未指定 [text/html]
Saving to: ‘housing.csv’
2019-04-25 14:42:45 (104 KB/s) - ‘housing.csv’ saved [58348]
pi@raspberrypi:~ $ ls -ls housing.csv
60 -rw-r--r-- 1 pi pi 58348 4月 25 14:42 housing.csv
3. 進入 Python Shell 讀取 csv 檔 :
pi@raspberrypi:~ $ python3
Python 3.5.3 (default, Sep 27 2018, 17:25:39)
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pandas as pd
>>> df=pd.read_csv('housing.csv')
>>> df.head()
longitude latitude ... median_house_value ocean_proximity
0 -122.23 37.88 ... 452600.0 NEAR BAY
1 -122.22 37.86 ... 358500.0 NEAR BAY
2 -122.24 37.85 ... 352100.0 NEAR BAY
3 -122.25 37.85 ... 341300.0 NEAR BAY
4 -122.25 37.85 ... 342200.0 NEAR BAY
[5 rows x 10 columns]
>>> df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 20640 entries, 0 to 20639
Data columns (total 10 columns):
longitude 20640 non-null float64
latitude 20640 non-null float64
housing_median_age 20640 non-null float64
total_rooms 20640 non-null float64
total_bedrooms 20433 non-null float64
population 20640 non-null float64
households 20640 non-null float64
median_income 20640 non-null float64
median_house_value 20640 non-null float64
ocean_proximity 20640 non-null object
dtypes: float64(9), object(1)
memory usage: 1.5+ MB
閱讀此書的前提是必須有 Python 基礎, 特別是熟悉 Numpy, Pandas, Matlabplot 等科學運算套件. 作者的序有一段話值得記下 : 雖然在機器學習中深度學習無疑是令人驚奇的領域, 但切莫急於跳下去, 你應該先熟習機器學習的基本功才對. 事實上許多問題只要用較簡單的技術例如隨機森林等就能漂亮地解決. 深度學習比較適合用在較複雜的問題, 例如影像處理, 語音識別, 或者自然語言處理等領域, 只要你有足夠的資料, 計算力, 以及耐力.
嗯, 有道理, 先把 Scikit-learn 好好學完再說吧.
沒有留言:
張貼留言