欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Python中sklearn機(jī)器學(xué)習(xí)算法的示例-創(chuàng)新互聯(lián)

這篇文章主要介紹Python中sklearn機(jī)器學(xué)習(xí)算法的示例,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計與策劃設(shè)計,馬關(guān)網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:馬關(guān)等地區(qū)。馬關(guān)做網(wǎng)站價格咨詢:18980820575

導(dǎo)入必要通用模塊


import pandas as pdimport matplotlib.pyplot as pltimport osimport numpy as npimport copyimport reimport math

一 機(jī)器學(xué)習(xí)通用框架:以knn為例

#利用鄰近點方式訓(xùn)練數(shù)據(jù)不太適用于高維數(shù)據(jù)from sklearn.model_selection import train_test_split#將數(shù)據(jù)分為測試集和訓(xùn)練集from sklearn.neighbors import KNeighborsClassifier#利用鄰近點方式訓(xùn)練數(shù)據(jù)#1.讀取數(shù)據(jù)data=pd.read_excel('數(shù)據(jù)/樣本數(shù)據(jù).xlsx')#2.將數(shù)據(jù)標(biāo)準(zhǔn)化from sklearn import preprocessingfor col in data.columns[2:]:#為了不破壞數(shù)據(jù)集中的離散變量,只將數(shù)值種類數(shù)高于10的連續(xù)變量標(biāo)準(zhǔn)化
       if len(set(data[col]))>10:
              data[col]=preprocessing.scale(data[col])#3.構(gòu)造自變量和因變量并劃分為訓(xùn)練集和測試集X=data[['month_income','education_outcome','relationship_outcome', 'entertainment_outcome','traffic_', 'express',
       'express_distance','satisfac', 'wifi_neghbor','wifi_relative', 'wifi_frend', 'internet']]y=data['wifi']X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3)#利用train_test_split進(jìn)行將訓(xùn)練集和測試集進(jìn)行分開,test_size占30%#4.模型擬合model=KNeighborsClassifier()#引入訓(xùn)練方法model.fit(X_train,y_train)#進(jìn)行填充測試數(shù)據(jù)進(jìn)行訓(xùn)練y_predict=model.predict(X_test)#利用測試集數(shù)據(jù)作出預(yù)測#通過修改判別概率標(biāo)準(zhǔn)修改預(yù)測結(jié)果proba=model.predict_proba(X_test)#返回基于各個測試集樣本所預(yù)測的結(jié)果為0和為1的概率值#5.模型評價#(1)測試集樣本數(shù)據(jù)擬合優(yōu)度,model.score(X,y)model.score(X_test,y_test)#(2)構(gòu)建混淆矩陣,判斷預(yù)測精準(zhǔn)程度"""
混淆矩陣中行代表真實值,列代表預(yù)測值
TN:實際為0預(yù)測為0的個數(shù)       FP:實際為0預(yù)測為1的個數(shù)
FN:實際為1預(yù)測為0的個數(shù)       TP:實際為1預(yù)測為1的個數(shù)

精準(zhǔn)率precision=TP/(TP+FP)——被預(yù)測為1的樣本的的預(yù)測正確率
召回率recall=TP/(TP+FN)——實際為1的樣本的正確預(yù)測率
"""from sklearn.metrics import confusion_matrix
cfm=confusion_matrix(y_test, y_predict)plt.matshow(cfm,cmap=plt.cm.gray)#cmap參數(shù)為繪制矩陣的顏色集合,這里使用灰度plt.show()#(3)精準(zhǔn)率和召回率from sklearn.metrics import precision_score,recall_score
precision_score(y_test, y_predict)# 精準(zhǔn)率recall_score(y_test, y_predict)#召回率#(4)錯誤率矩陣row_sums = np.sum(cfm,axis=1)err_matrix = cfm/row_sums
np.fill_diagonal(err_matrix,0)#對err_matrix矩陣的對角線置0,因為這是預(yù)測正確的部分,不關(guān)心plt.matshow(err_matrix,cmap=plt.cm.gray)#亮度越高的地方代表錯誤率越高plt.show()

二 數(shù)據(jù)處理

#1.構(gòu)造數(shù)據(jù)集from sklearn import datasets#引入數(shù)據(jù)集#n_samples為生成樣本的數(shù)量,n_features為X中自變量的個數(shù),n_targets為y中因變量的個數(shù),bias表示使線性模型發(fā)生偏差的程度,X,y=datasets.make_regression(n_samples=100,n_features=1,n_targets=1,noise=1,bias=0.5,tail_strength=0.1)plt.figure(figsize=(12,12))plt.scatter(X,y)#2.讀取數(shù)據(jù)data=pd.read_excel('數(shù)據(jù)/樣本數(shù)據(jù).xlsx')#3.將數(shù)據(jù)標(biāo)準(zhǔn)化——preprocessing.scale(data)from sklearn import preprocessing#為了不破壞數(shù)據(jù)集中的離散變量,只將數(shù)值種類數(shù)高于10的連續(xù)變量標(biāo)準(zhǔn)化for col in data.columns[2:]:
       if len(set(data[col]))>10:
              data[col]=preprocessing.scale(data[col])

三 回歸

1.普通最小二乘線性回歸

import numpy as npfrom sklearn.linear_model import LinearRegressionfrom sklearn.model_selection import train_test_split

X=data[['work', 'work_time', 'work_salary',
       'work_address', 'worker_number', 'month_income', 'total_area',
       'own_area', 'rend_area', 'out_area',
       'agricultal_income', 'things', 'wifi', 'internet_fee', 'cloth_outcome',
       'education_outcome', 'medcine_outcome', 'person_medicne_outcome',
       'relationship_outcome', 'food_outcome', 'entertainment_outcome',
       'agriculta_outcome', 'other_outcome', 'owe', 'owe_total', 'debt',
       'debt_way', 'distance_debt', 'distance_market', 'traffic_', 'express',
       'express_distance', 'exercise', 'satisfac', 'wifi_neghbor',
       'wifi_relative', 'wifi_frend', 'internet', 'medical_insurance']]y=data['total_income']model=LinearRegression().fit(X,y)#擬合模型model.score(X,y)#擬合優(yōu)度model.coef_#查看擬合系數(shù)model.intercept_#查看擬合截距項model.predict(np.array(X.ix[25,:]).reshape(1,-1))#預(yù)測model.get_params()#得到模型的參數(shù)

2.邏輯回歸Logit

from sklearn.linear_model import LogisticRegression#2.1數(shù)據(jù)處理X=data[['month_income', 'education_outcome','relationship_outcome', 'entertainment_outcome','traffic_', 'express',
       'express_distance','satisfac', 'wifi_neghbor','wifi_relative', 'wifi_frend', 'internet']]y=data['wifi']X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3)#利用train_test_split進(jìn)行將訓(xùn)練集和測試集進(jìn)行分開,test_size占30%#2.2模型擬合model = LogisticRegression()model.fit(X_train,y_train)model.score(X_test,y_test)#2.3模型預(yù)測y_predict = model.predict(X_test)#2.4通過調(diào)整判別分?jǐn)?shù)標(biāo)準(zhǔn),來調(diào)整判別結(jié)果decsion_scores = model.decision_function(X_test)#用于決定預(yù)測值取值的判別分?jǐn)?shù)y_predict = decsion_scores>=5.0#將判別分?jǐn)?shù)標(biāo)準(zhǔn)調(diào)整為5#2.5通過 精準(zhǔn)率——召回率曲線圖 尋找最優(yōu)判別標(biāo)準(zhǔn)#由于隨著判別標(biāo)準(zhǔn)的變化,精確率和召回率此消彼長,因此需要尋找一個很好的判別標(biāo)準(zhǔn)使得精準(zhǔn)率和召回率盡可能大from sklearn.metrics import precision_recall_curve
precisions,recalls,thresholds = precision_recall_curve(y_test,decsion_scores)#thresholds表示所有可能得判別標(biāo)準(zhǔn),即判別分?jǐn)?shù)較大與最小值之間的范圍#由于precisions和recalls中比thresholds多了一個元素,因此要繪制曲線,先去掉這個元素plt.plot(thresholds,precisions[:-1])plt.plot(thresholds,recalls[:-1])plt.show()y_predict = decsion_scores>=2#根據(jù)上圖顯示,兩線交于-0.3處,因此將判別分?jǐn)?shù)標(biāo)準(zhǔn)調(diào)整為-0.3#2.6繪制ROC曲線:用于描述TPR和FPR之間的關(guān)系,ROC曲線圍成的面積越大,說明模型越好"""TPR即是召回率_越大越好,F(xiàn)PR=(FP)/(TN+FP)_越小越好"""from sklearn.metrics import roc_curve
fprs,tprs,thresholds = roc_curve(y_test,decsion_scores)plt.plot(fprs,tprs)plt.show()#2.7繪制混淆矩陣from sklearn.metrics import confusion_matrix,precision_score,recall_score
cfm =confusion_matrix(y_test, y_predict)# 構(gòu)建混淆矩陣并繪制混淆矩陣熱力圖plt.matshow(cfm,cmap=plt.cm.gray)#cmap參數(shù)為繪制矩陣的顏色集合,這里使用灰度plt.show()precision_score(y_test, y_predict)# 精準(zhǔn)率recall_score(y_test, y_predict)#召回率

四 模型評價

#1.混淆矩陣,精準(zhǔn)率和召回率from sklearn.metrics import confusion_matrix,precision_score,recall_score"""
混淆矩陣中行代表真實值,列代表預(yù)測值
TN:實際為0預(yù)測為0的個數(shù)       FP:實際為0預(yù)測為1的個數(shù)
FN:實際為1預(yù)測為0的個數(shù)       TP:實際為1預(yù)測為1的個數(shù)

精準(zhǔn)率precision=TP/(TP+FP)——被預(yù)測為1的樣本的的預(yù)測正確率
召回率recall=TP/(TP+FN)——實際為1的樣本的正確預(yù)測率
"""cfm =confusion_matrix(y_test, y_predict)# 構(gòu)建混淆矩陣并繪制混淆矩陣熱力圖plt.matshow(cfm,cmap=plt.cm.gray)#cmap參數(shù)為繪制矩陣的顏色集合,這里使用灰度plt.show()precision_score(y_test, y_predict)# 精準(zhǔn)率recall_score(y_test, y_predict)#召回率#2.精準(zhǔn)率和召回率作圖:由于精準(zhǔn)率和召回率此消彼長,應(yīng)當(dāng)選擇適當(dāng)?shù)膮?shù)使二者同時盡可能的大#3.調(diào)和平均值"""精準(zhǔn)率和召回率的調(diào)和平均值"""from sklearn.metrics import f1_score
f1_score(y_test,y_predict)#4.錯誤率矩陣row_sums = np.sum(cfm,axis=1)err_matrix = cfm/row_sums
np.fill_diagonal(err_matrix,0)#對err_matrix矩陣的對角線置0,因為這是預(yù)測正確的部分,不關(guān)心plt.matshow(err_matrix,cmap=plt.cm.gray)#亮度越高的地方代表錯誤率越高plt.show()

以上是“Python中sklearn機(jī)器學(xué)習(xí)算法的示例”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前標(biāo)題:Python中sklearn機(jī)器學(xué)習(xí)算法的示例-創(chuàng)新互聯(lián)
本文路徑:http://chinadenli.net/article46/jgieg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、微信公眾號、品牌網(wǎng)站建設(shè)響應(yīng)式網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
视频一区日韩经典中文字幕| 午夜视频免费观看成人| 亚洲黄香蕉视频免费看| 国产精品乱子伦一区二区三区| 亚洲另类女同一二三区| 男人的天堂的视频东京热| 日韩国产亚洲欧美激情| 久热这里只有精品九九| 日韩一级欧美一级久久| 亚洲中文字幕高清视频在线观看| 日韩成人中文字幕在线一区| 国产亚洲欧美日韩精品一区| 欧美偷拍一区二区三区四区| 亚洲专区中文字幕在线| 国产老女人性生活视频| 亚洲专区中文字幕在线| 中日韩免费一区二区三区| 日韩人妻免费视频一专区| 国内自拍偷拍福利视频| 国产精品欧美一区二区三区| 九九热这里只有精品哦| 不卡视频在线一区二区三区| 激情五月激情婷婷丁香| av在线免费观看一区二区三区| 免费观看成人免费视频| 五月天丁香婷婷狠狠爱| 欧美国产日产综合精品| 日韩中文字幕在线不卡一区| 日韩一区欧美二区国产| 亚洲一区二区三区在线免费| 精品国产成人av一区二区三区| 午夜亚洲少妇福利诱惑| 精品日韩视频在线观看| 三级高清有码在线观看| 少妇在线一区二区三区| 国产一区二区三区口爆在线| 欧美日韩国产黑人一区| 99久久国产精品亚洲| 欧美日韩精品视频在线| 99秋霞在线观看视频| 激情五月天免费在线观看|