还剩3页未读,继续阅读
文本内容:
实验三逻辑回归#实验目的理解和掌握逻辑回归模型基本原理和方法,学会使用逻辑回归模型对分类问题进行建模和预测,掌握分类问题上模型评估方法#实验内容编程实现逻辑回归模型,在给定数据集上,绘制损失函数曲线图使用混淆矩阵、错误率、精度、查全率、查准率、指标评估逻辑回归模型性能表现F1#实验环境pythonnumpymatplotlib#实验代码关键代码、中文注释、必要说明,源代码随实验报告一同提交import numpyas npimportmatplotlib.pyplot aspit#read datafrom files,;load_datal=np.loadtxtexperiment_03_training_set.csv\delimiter^,load_data2=np.loadtxtexperiment_03_testing_set.csv\delimiter^train_x=load.datalf:,:-l];train_y=load_datal[:-lJ.reshapeffload.datal.shapefO],1]test_x=load_data2[:,:-l]test_y=load_data2]:,-l].reshape[load_data
2.shape[0L1]#给添加一列值为的矩阵train_x1one=np.oneslentrain_x,1#给添加一列值由的矩阵train_x=np.concatenatetrain_x,one],axis=l]test.x1one=np.oneslentest_x11test_x=np.concatenate[[test_x,one],axis=l]#sigmoiddef hypothesis[%w:hx=1/1+np.exp-np.dotx,w.T]return hx#损失函数def lossh,y:loss=-np.meanfy*np.logh+1-y*np.logfl-h returnloss#梯度,工def loss_grad[x,h,y:return-np.doty-h x/x.shape
[0]#初始权值#学习率w=np.zerosl,train_x.shape[l]J迭代次数#s=
0.1epoch=100存放后续迭代次的列表#epoch loss从至#,mloss=np.zerosepoch11ll epochcount=np.arangefl,epoch+lj.reshapefepoch,1for iin rangeepoch:h=hypothesis train_x,w/w=w-s*loss_gradtrain_x h,train_y mloss[i]=lossfh,train_y绘制损失曲线迭代图#plt.plotfcount,mloss]nplt.xlabel EpochHnplt.ylabel Lossplt.showQ计算混淆矩阵##预测值cm=np.zeros2,2pred=hypothesistest_x,wcm
[0]
[0]=np.sumtest_y==1pred=
0.5]cm
[0][l]=np,sumtest_y==1pred
0.5cm[l]
[0]=np.sum[test_y==0]pred=
0.5]]cm[l][l]=np.sum[test_y==0]pred
0.5print[Confusion Matrix:print[cm计算错误率#error_rate=[cm[O][l]+cm[l][O]/np.sumcm printerror_rate:%
0.2f%error_rate]计算精度#accuracy=[cm[O][O]+cm[l][l]J/np.sumcm printaccuracy:%
0.2f%accuracy]计算查全率#recall=cm[O][O]/[cm[O][O]+cm[O][l]H nprintrecall:%
0.2f%recall计算查准率#precision=cm
[0]
[0]/[cm
[0]
[0]+cm[l]
[0]Jnprint[precision:%
0.2f%precision计算值#Fl%Fl=2*precision*recall/[precision+recallprint”FL%
0.2f Fl结果分析(列表、绘图对结果分析)#初始权值设为,学习率设为迭代次数为损失曲线迭代图w=[0,0…,0],
0.1,
1000.
7000.
6750.
6500.
6250.
6000.
5750.
5500.
5250.500020406080100Epoch混淆矩阵:预测结果真实情况正例反例正例反例430224指标数值错误率精度errorrate
0.03评价指标:查全率accuracy
0.97recall
1.00查准率precision
0.96Fl
0.98。
个人认证
优秀文档
获得点赞 0