機(jī)器學(xué)習(xí)試學(xué)班
第一天
?1? Pandas?加載數(shù)據(jù)? :?
pandas?打開?dataFram對象的數(shù)據(jù)集
import? pandas
data = pandas.read_csv("2_test.cvs")
2? ? Numpy數(shù)組
將pandas?加載的dataFram?數(shù)據(jù)集? 轉(zhuǎn)變成?numpy?數(shù)組:?numpy.array(data[['x']])? ?x?為?數(shù)據(jù)的列名
3? ? 使用sklearn?中的 算法?訓(xùn)練模型
邏輯回歸: (擬合數(shù)據(jù)?的線 ,讓分布 數(shù)據(jù)在?線周圍 )
from? sklearn .linear_moder? import? LogistcRegression
classifier = LogisticRegression()
classifier.fit()
神經(jīng)網(wǎng)絡(luò)
from? sklearn.neural_network import? ?MLPClassifier
classifier? = MLPClassifier()
classifier.fit()
決策樹
from? sklearn.tree import DecisionTreeClassifier
classifier = DecisionTreeClassifier()
classifier.fit()
支持向量機(jī)
from? sklearn.svm import? SVC
classifier = SVC()
classifier.fit()
4? ?手動調(diào)參
如? classifier =? SVC(kernel = ‘poly’,degree = 2 ,gamma = 200,C=c)
kernel? :?linear (線性)? poly(多項式)? rbf(高斯核)
degree :?多項式內(nèi)核的次數(shù)
gamma? : r?參數(shù)
C: c參數(shù)
5??
回歸? ?返回的是? 一個數(shù)值
分類? 返回的是? 一個狀態(tài)? (yes? or? no)
黃金法則:?不能將測試數(shù)據(jù)用于訓(xùn)練 ,測試數(shù)據(jù)放在最后用,不能用他們來訓(xùn)練模型
sklearn?可以輕松的將數(shù)據(jù)?拆分為?訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)? :?
from? sklearn.cross_validation? import? train_test_split
X_train, X_test , y_train,? y_test = train_test_split(X,y,test_size = 0.25)
注意? ?:test_size?是指用做測試數(shù)據(jù)的點
存在問題:
1
2? ?ancoda?命令行 導(dǎo)包?搞不清 ,包之間的依賴關(guān)系搞不清 ?
3? ? ?包之間的依賴關(guān)系搞不清? ?numpy?依賴? ?pandas? ?所以?導(dǎo)?numpy? 時? 沒有pandas 就自動導(dǎo)了 ,不 用專門導(dǎo)pandas? ? ?不 用專門導(dǎo)pandas? ? ?不 用專門導(dǎo)pandas!!!!!!!!!!!!!!!!!!!!!!
4? ?決策樹分出來的怎么是矩形??
5??
列舉機(jī)器學(xué)習(xí)領(lǐng)域的回歸算法 :線性回歸,多項式回歸,逐步回歸,嶺回歸,Lasso回歸,ElasticNet回歸
Pandas?用于解決python?中的數(shù)據(jù)分析任務(wù)?高效地操作大型數(shù)據(jù)集,numpy?主要用于定義和操作n維矩陣,數(shù)據(jù) 可視化一般會用到Matplotib?和?Seaborn?標(biāo)準(zhǔn)庫