iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 23
0
AI & Data

30天從嫩嫩的人工智慧奇幻旅程系列 第 23

學習完了~然後呢?

前面提到的三種演算法都是常見的機器學習方式,我們可以發現在 sklearn 中提供的 iris 資料庫基本上都是執行後不到一秒鐘答案就跑完了。
但是,這只有 150 筆資料,在機器學習的路上我們隨便都會遇到 15000 筆,甚至是後面多出好多 0 的。那這樣跑起來會變成怎樣呢?正常來說我們會需要按下執行後先去大個便之類的才能完成。

這不對吧!如果我們每次需要答案都要等很久,那麼這個技術就沒啥用了不是嗎?

首先我們要先有個觀念:
資料 -> 演算 -> 模型 -> 測驗

這些東西是分開獨立的,我們不需要每次需要答案的時候都去從資料端開始跑,而是我們長出模型後應該要可以被儲存。然後需要測驗的時候再去找模型出來計算即可。會花大量時間和運算的其實都是資料和演算這兩關,會到模型這個地方的時候已經是被整理歸納後的公式了,所以如果直接從模型開始執行測驗就會出現飛快的速度。

因此我們可以在幾次的演算後,挑選一個喜歡的模式儲存下來:

#儲存 model
from sklearn.externals import joblib
joblib.dump(tree, 'iris.pkl')  #把 tree 模式存下來

等到需要的時候拿出來算

#使用model
clf3 = joblib.load('iris.pkl')
data = [[5.1, 3.5, 2.4, 0.2]] #載入數據
print(clf3.predict(data))

https://ithelp.ithome.com.tw/upload/images/20181103/20041383T1Y68iIAQu.png


上一篇
鳶尾花我來了 (4 支援向量機
下一篇
python 物件導向 function
系列文
30天從嫩嫩的人工智慧奇幻旅程25

尚未有邦友留言

立即登入留言