旅游网站功能,网页设计与网站开发的总结,做网站需要哪些技能,山东做网站建设的好公司排名Java实训代码、答案#xff0c;如果能够帮到您#xff0c;希望可以点个赞#xff01;#xff01;#xff01;
如果有问题可以csdn私聊或评论#xff01;#xff01;#xff01;感谢您的支持 第1关#xff1a;为什么要有训练集与测试集 1、下面正确的是#xff1f;如果能够帮到您希望可以点个赞
如果有问题可以csdn私聊或评论感谢您的支持 第1关为什么要有训练集与测试集 1、下面正确的是 D
A、将手头上所有的数据拿来训练模型预测结果正确率最高的模型就是我们所要选的模型。
B、将所有数据中的前百分之70拿来训练模型剩下的百分之30作为测试集预测结果正确率最高的模型就是我们所要选的模型。
C、将所有数据先随机打乱顺序一半用来训练模型一半作为测试集预测结果正确率最高的模型就是我们所要选的模型。
D、将所有数据先随机打乱顺序百分之80用来训练模型剩下的百分之20作为测试集预测结果正确率最高的模型就是我们所要选的模型。
2、训练集与测试集的划分对最终模型的确定有无影响 A
A、有
B、无 第2关欠拟合与过拟合 1、请问图中A与B分别处于什么状态 B A、欠拟合欠拟合
B、欠拟合过拟合
C、过拟合欠拟合
D、过拟合过拟合 2、如果一个模型在训练集上正确率为99%测试集上正确率为60%。我们应该怎么做( ABD )
A、加入正则化项
B、增加训练样本数量
C、增加模型复杂度
D、减少模型复杂度 第3关偏差与方差 如果一个模型它在训练集上正确率为85%测试集上正确率为80%则模型是过拟合还是欠拟合其中来自于偏差的误差为来自方差的误差为 B
A、欠拟合5%5%
B、欠拟合15%5%
C、过拟合15%15%
D、过拟合5%5% 第4关验证集与交叉验证 1、假设我们现在利用5折交叉验证的方法来确定模型的超参数一共有4组超参数我们可以知道5折交叉验证每一组超参数将会得到5个子模型的性能评分假设评分如下我们应该选择哪组超参数 D
A、子模型1:0.8 子模型2:0.7 子模型3:0.8 子模型4:0.6 子模型5:0.5
B、子模型1:0.9 子模型2:0.7 子模型3:0.8 子模型4:0.6 子模型5:0.5
C、子模型1:0.5 子模型2:0.6 子模型3:0.7 子模型4:0.6 子模型5:0.5
D、子模型1:0.8 子模型2:0.8 子模型3:0.8 子模型4:0.8 子模型5:0.6 2、下列说法正确的是( BCD )
A、相比自助法在初始数据量较小时交叉验证更常用。
B、自助法对集成学习方法有很大的好处
C、使用交叉验证能够增加模型泛化能力
D、在数据难以划分训练集测试集时可以使用自助法 第5关衡量回归的性能指标 下列说法正确的是( AB )
A、相比MSE指标MAE对噪声数据不敏感
B、RMSE指标值越小越好
C、R-Squared指标值越小越好
D、当我们的模型不犯任何错时R-Squared值为0 第6关准确度的陷阱与混淆矩阵 import numpy as npdef confusion_matrix(y_true, y_predict):构建二分类的混淆矩阵并将其返回:param y_true: 真实类别类型为ndarray:param y_predict: 预测类别类型为ndarray:return: shape为(2, 2)的ndarray#********* Begin *********#def TN(y_true, y_predict):return np.sum((y_true 0) (y_predict 0))def FP(y_true, y_predict):return np.sum((y_true 0) (y_predict 1))def FN(y_true, y_predict):return np.sum((y_true 1) (y_predict 0))def TP(y_true, y_predict):return np.sum((y_true 1) (y_predict 1))return np.array([[TN(y_true, y_predict), FP(y_true, y_predict)],[FN(y_true, y_predict), TP(y_true, y_predict)]])#********* End *********# 第7关精准率与召回率 import numpy as npdef precision_score(y_true, y_predict):计算精准率并返回:param y_true: 真实类别类型为ndarray:param y_predict: 预测类别类型为ndarray:return: 精准率类型为float#********* Begin *********#def TP(y_true, y_predict):return np.sum((y_true 1)(y_predict 1))def FP(y_true,y_predict):return np.sum((y_true 0)(y_predict1))tp TP(y_true, y_predict)fp FP(y_true, y_predict)try:return tp /(tpfp)except:return 0.0#********* End *********#def recall_score(y_true, y_predict):计算召回率并召回:param y_true: 真实类别类型为ndarray:param y_predict: 预测类别类型为ndarray:return: 召回率类型为float#********* Begin *********#def FN(y_true, y_predict):return np.sum((y_true 1)(y_predict 0))def TP(y_true,y_predict):return np.sum((y_true 1)(y_predict1))fn FN(y_true, y_predict)tp TP(y_true, y_predict)try:return tp /(tpfn)except:return 0.0#********* End *********# 第8关F1 Score import numpy as npdef f1_score(precision, recall):计算f1 score并返回:param precision: 模型的精准率类型为float:param recall: 模型的召回率类型为float:return: 模型的f1 score类型为float#********* Begin *********#try:return 2*precision*recall / (precisionrecall)except:return 0.0#********* End ***********#第9关ROC曲线与AUC import numpy as npdef calAUC(prob, labels):计算AUC并返回:param prob: 模型预测样本为Positive的概率列表类型为ndarray:param labels: 样本的真实类别列表其中1表示Positive0表示Negtive类型为ndarray:return: AUC类型为float#********* Begin *********#a list(zip(prob,labels))rank [values2 for values1,values2 in sorted(a, keylambda x:x[0])]rankList[i1 for i in range(len(rank))if rank[i] 1]posNum 0negNum 0for i in range(len(labels)):if(labels[i]1):posNum1else:negNum1auc (sum(rankList)-(posNum*(posNum1))/2)/(posNum*negNum)return auc #********* End *********#第10关sklearn中的分类性能指标 from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, roc_auc_scoredef classification_performance(y_true, y_pred, y_prob):返回准确度、精准率、召回率、f1 Score和AUC:param y_true:样本的真实类别类型为ndarray:param y_pred:模型预测出的类别类型为ndarray:param y_prob:模型预测样本为Positive的概率类型为ndarray:return:#********* Begin *********#return accuracy_score(y_true, y_pred),precision_score(y_true, y_pred),recall_score(y_true, y_pred),f1_score(y_true, y_pred),roc_auc_score(y_true, y_prob)#********* End *********#