可以參照以下格式:
說明:這份資料集是金融資料(非原始資料,已經處理過了),我們要做的是**貸款使用者是否會逾期。**中 "status" 是結果標籤:0表示未逾期,1表示逾期。
from sklearn.metrics importrecall_score,precision_score,f1_score,accuracy_score,roc_curve,roc_auc_score
import numpy as np
def plot_roc_curve(fpr_train, tpr_train,fpr_test,tpr_test, name=none):plt.plot(fpr_train, tpr_train, linewidth=2,c='
r',label='
train')
plt.plot(fpr_test, tpr_test, linewidth=2,c='
b',label='
test')
plt.plot([0, 1], [0, 1], '
k--'
) plt.axis([0, 1, 0, 1])
plt.xlabel(
'false positive rate')
plt.ylabel(
'true positive rate')
plt.title(name)
plt.legend(loc='
best')
plt.show()
defmetrics(models,x_train_scaled,x_test_scaled,y_train,y_test):
results_test = pd.dataframe(columns=['
recall_score
','precision_score
','f1_score
','accuracy_score
','auc'])
results_train = pd.dataframe(columns=['
recall_score
','precision_score
','f1_score
','accuracy_score
','auc'])
for model in
models:
name =str(model)
result_train =
result_test =
model =models[model]
model.fit(x_train_scaled,y_train)
y_pre_test =model.predict(x_test_scaled)
y_pre_train =model.predict(x_train_scaled)
fpr_train, tpr_train, thresholds_train =roc_curve(y_pre_train,y_train)
fpr_test, tpr_test, thresholds_test =roc_curve(y_pre_test,y_test)
plot_roc_curve(fpr_train, tpr_train,fpr_test,tpr_test,name)
results_test.loc[name] =result_test
results_train.loc[name] =result_train
return results_test,results_train
results_test,results_train = metrics(models,x_train_scaled,x_test_scaled,y_train,y_test)結果如下
訓練集:
(數模型過擬合的很厲害!!)
測試集:
模型roc曲線:
研2的第42天
最近關於前端,看了好多篇部落格,比起研一零基礎學的時候看這些部落格,感悟和理解加深了好多,雖然很多以前看過,卻忘記了。記憶裡的有已經畢業的研三師兄找工作的經歷,還有這一屆研三師兄找工作的經歷,也接觸了一些面試筆試題,覺得好難。然後偶然間在書中看到了這些知識點,咦,太基礎了。是啊,很慚愧。乙個cs的研...
14天動手學深度學習 Task2
一 梯度消失 梯度 以及kaggle房價 隨機初始化模型引數 在神經網路中,通常需要隨機初始化模型引數。下面我們來解釋這樣做的原因。如果將每個隱藏單元的引數都初始化為相等的值,那麼在正向傳播時每個隱藏單元將根據相同的輸入計算出相同的值,並傳遞至輸出層。在反向傳播中,每個隱藏單元的引數梯度值相等。因此...
搬家第42天 excel中match函式的練習
為了後面的學習,先做match函式的練習,假設有這樣一張表,c列是公升序排列,d列隨機排列,e列降序排列。match函式的語法是match 查閱值,查閱區域,匹配方法 用於查詢符合條件的單元格在查詢區域中所處的相對位置。重點是匹配的方法,有三種方法 為1或者省略,查詢小於或等於 查閱值 的最大值。查...