关于学习曲线的具体形状

2024-04-25 23:00:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我的模型抛出学习曲线,如下所示。这些好吗?我是一个初学者,在互联网上我看到,随着训练实例的增加,训练分数应该降低,然后趋于一致。但是这里的训练分数是增加enter image description here然后收敛。因此,我想知道这是否表明我的代码有缺陷/我的输入有问题吗?在

好吧,我知道我的代码出了什么问题。在

train_sizes , train_accuracy , cv_accuracy = lc(linear_model.LogisticRegression(solver='lbfgs',penalty='l2',multi_class='ovr'),trainData,multiclass_response_train,train_sizes=np.array([0.1,0.33,0.5,0.66,1.0]),cv=5)

我没有输入Logistic回归的正则化参数。在

但现在

^{pr2}$

学习曲线看起来不错。在

enter image description here 谁能告诉我为什么会这样吗?i、 e.使用默认reg术语时,培训分数增加,reg较低时降低?在

资料明细:10个班。大小不一的图像。数字分类.街景数字


Tags: 实例代码模型train互联网数字reg分数
3条回答

根据Alex的答案,模型的默认正则化参数似乎有点不符合数据,因为当您放松正则化时,您会看到“更合适”的学习曲线。不管你给一个不合身的模型投多少个例子。在

至于你对为什么培训分数在第一种情况下增加而不是减少的担忧,这可能是你使用的多类数据的结果。使用较少的训练示例,每个类的图像数量就更少(因为lc试图在cv的每个折叠中保持相同的类分布),因此使用正则化(如果您调用C=1正则化,也就是说),您的模型可能更难准确地猜测某些类。在

看看scipy的相关网页: http://scikit-learn.org/stable/modules/learning_curve.html 分数通常是一些需要最大化的指标(ROCAUC,准确度,…)。直观地说,你可以期望你看到的训练例子越多,你的模型就越好,因此得分就越高。不过,你应该记住一些关于过度和不合身的微妙之处。在

你需要对你的指标更加精确。这里使用什么指标?在

损失一般指:越低越好,得分通常意味着:越高越好。在

这也意味着,在培训和交叉验证期间,图的解释取决于使用的指标。在

相关问题 更多 >