- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我对 SVM 理论不是很熟悉,我在 python 中使用这个 LinearSVC 类:
http://scikit-learn.org/stable/modules/generated/sklearn.svm.LinearSVC.html#sklearn.svm.LinearSVC
我想知道 penalty 和 loss 参数有什么区别?
最佳答案
在机器学习中,损失函数衡量解决方案的质量,而惩罚函数对您的解决方案施加一些限制。
具体来说,让 X 成为您的数据,y 成为您数据的标签。然后,损失函数 V(f(X),y) 衡量您的模型 f 将您的数据映射到标签的程度。这里,f(X) 是预测标签的向量。
L1 和 L2 范数是常用且直观理解的损失函数(参见*)。 L1 范数:V(f(X),y) = |f(x1) - y1| + ... + |f(xn) - yn|
,其中 f(xi) - 第 i 个对象的预测标签,yi 是实际标签。 L2 范数:V(f(X),y) = sqrt(|f(x1) - y1|^2 + ... + |f(xn) - yn|^2 )
,其中 sqrt 是平方根。
至于惩罚函数,它用于对您的解 f 施加一些约束 R(f)。 L1 范数可以是 R(f)=|f1| + ... + |fm|
,同样可以定义 L2 范数。这里,f1,...,fm 是模型的系数。您最初不知道它们,这些是机器学习算法从您的数据中学习的值。
最终,总成本函数为 V(f(X),y) + lambda*R(f)
。目标是找到可以最小化成本函数的 f。然后这个 f 将用于对新的看不见的物体进行预测。为什么我们需要惩罚函数?事实证明,惩罚函数可能会为您的解决方案添加一些不错的属性。例如,当您拥有太多特征时,L1 范数可通过生成稀疏解来帮助防止过度拟合。
* 这并不是支持向量机的工作原理,但可能会让您对这些术语的含义有所了解。例如,在 SVM 中,使用了 L1-hinge 损失函数和 L2-hinge 损失函数。 L1-铰链:V(f(X),y) = max(0,1 - y1*f(x1)) + ... + max(0,1 - yn*f(xn))
,以及L2 类似,但有平方项。您可能会在 Machine Learning class by Andrew Ng on Coursera 中找到对 ML 的很好介绍。
关于python - Sklearn LinearSVC 库中惩罚和损失参数的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25042909/
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 6 年前。 Improve this qu
如果我使用 Eigen 的成员函数 Matrix3Xf 矩阵 myMatrix.middleCols(a, b) with a = 0, b = myMatrix.cols() -1,我得到了性能损失
我有一个关于 SEO 的小问题,尤其是对于 Google。在 WooCommerce 中,您可以将产品添加到类别中,也可以为产品添加产品标签。 所以我的问题是,当我有一个产品,例如梅赛德斯汽车,并将其
我正在制作一个网站,该网站将对 Internet 上数十万个其他网站的隐私政策进行审查。它的初始内容基于我对 CommonCrawl 的运行50 亿页网页转储和 analyzing all the p
我正在考虑使用 HTML5 数据属性来更轻松地为我的应用程序编写第三方脚本。因此,考虑两种情况: 页面上有 10'000 个 HTML 元素,如 Sticker . 还有其他 10,000 个 HTM
像这样在相应的设备上显示视网膜和非视网膜: 有效。但是 Google Pagespeed Insight 告诉我们在加载 CSS 之前它无法呈现它,我们因此受到惩罚。但是,仅在移动
我正在开发一个基于 Bootstrap 的响应式网站。主网站导航中的下拉菜单是通过单击而不是悬停打开的。每个部分没有索引内容,只有下拉列表中的特定页面链接。 如果内容位于: 是否会受到 SEO 惩罚
给定 vector 加法: NPNumber NPNumber::plus(const double o) const { vector c; for (double a : va
我正在使用带有 LogisticRegression 的嵌入式方法(L1 - Lasso)运行分类问题的特征选择过程。 我正在运行以下代码: from sklearn.linear_model imp
我是一名优秀的程序员,十分优秀!