機器學習基礎自學五(審核分類演算法)

2021-10-02 11:44:05 字數 2506 閱讀 6404

from pandas import read_csv

from sklearn.model_selection import kfold

from sklearn.model_selection import cross_val_score

from sklearn.linear_model import logisticregression#邏輯回歸, 是分類演算法不是回歸演算法

from sklearn.discriminant_analysis import lineardiscriminantanalysis#線性判斷分類

from sklearn.neighbors import kneighborsclassifier#k近鄰演算法

from sklearn.*****_bayes import gaussiannb#貝葉斯分類

from sklearn.tree import decisiontreeclassifier#分類與回歸樹

from sklearn.svm import svc#支援向量機

# 匯入資料

filename = 'd:\example\machinelearning-master\pima_data.csv'

names = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']

data = read_csv(filename, names=names)

# 將資料分為輸入資料和輸出結果

array = data.values

x = array[:, 0:8]

y = array[:, 8]

num_folds = 10

seed = 7

kfold = kfold(n_splits=num_folds, random_state=seed)

model = logisticregression()#邏輯回歸

result = cross_val_score(model, x, y, cv=kfold)

print('邏輯回歸演算法:',result.mean())

model = lineardiscriminantanalysis()#線性判斷分類

result = cross_val_score(model, x, y, cv=kfold)

print('線性判斷分類:',result.mean())

model = kneighborsclassifier()#k近鄰演算法

result = cross_val_score(model, x, y, cv=kfold)

print('k近鄰演算法:',result.mean())

model = gaussiannb()#貝葉斯分類

result = cross_val_score(model, x, y, cv=kfold)

print('貝葉斯分類:',result.mean())

model = decisiontreeclassifier()#分類與回歸樹

result = cross_val_score(model, x, y, cv=kfold)

print('分類與回歸樹:',result.mean())

model = svc()#支援向量機

result = cross_val_score(model, x, y, cv=kfold)

print('支援向量機:',result.mean())

models={}#評估演算法

models['lr']=logisticregression()#邏輯回歸

models['lda']=lineardiscriminantanalysis()#線性判斷分類

models['knn']=kneighborsclassifier()#k近鄰演算法

models['nb']=gaussiannb()#貝葉斯分類

models['cart']=decisiontreeclassifier()#分類與回歸樹

models['svm']=svc()#支援向量機

num_folds=10

seed=7

scoring='neg_mean_squared_error'

results=

for key in models:

kfold=kfold(n_splits=num_folds,random_state=seed)

cv_result=cross_val_score(models[key],x,y,cv=kfold,scoring=scoring)

print('%s: %f (%f)'%(key,cv_result.mean(),cv_result.std()))

'''6種分類演算法

2種線性分類演算法

邏輯回歸

線性判斷分類

4種非線性演算法

k近鄰貝葉斯分類器

分類與回歸樹

支援向量機

'''

機器學習基礎自學五(整合演算法)

from pandas import read csv from sklearn.model selection import kfold from sklearn.model selection import cross val score from sklearn.ensemble import...

機器學習演算法效能審核

將資料集切分兩部分,一部分用來作為訓練模型,另一部分用來測試模型 from sklearn.model selection import train test split x train,x test,y train,y test train test split x,y,test size 0.3...

機器學習演算法分類

這些演算法按照學習方式分類的分的話,可以分為一下幾類 1 監督式學習 從給定的訓練資料集中學習出乙個函式,當新的資料到來時,可以根據這個函式 結果。監督學習的訓練集需要包括輸入和輸出,也可以說是特徵和目標。訓練集中的目標是由人標註的。常見的監督式學習演算法包括回歸分析和統計分類。2 非監督式學習 與...