在之前的BLOG中,我们一同学习了如何用逻辑回归模型解决双类别的分类问题(即y = 0 或 1),现在就让我们看看多类别的分类问题吧。 多类别分类问题 什么是多类别分类问题呢?我们先看这样一些例子,假如说我们现在需要一个学习算法能自动地将邮件归类到不同的文件夹里或者说可以自动地加上标签,比如来自工作的邮件、来自朋友的邮件 来自家人的邮件或者是有关兴趣爱好的邮件,那么我们就有了这样一个分类...
在之前的BLOG里,我们一同学习了如何使用梯度下降法来解决回归问题和分类问题,现在我们就来看看如何优化这一过程。 高级优化算法 首先让我们来换个角度,来看什么是梯度下降。 我们梯度的目的是对于代价函数 J ,我们想要找到合适的 θ ,使其最小化。在梯度下降中我们做的事情可以分为两部分:第一件事是对当前参数 θ , 编程计算出两样东西 J(θ) 以及 J 关于 θ1 到 θn 的偏导数项;...
在之前的BLOG中,我们探讨了分类问题的逻辑回归模型。这篇BLOG,我们就将探讨逻辑回归的代价函数以及如何使用梯度下降法计算逻辑回归模型。 代价函数 让我们回顾一下我们的逻辑回归模型: 和线性回归模型一样,我们有一套训练集,我们的每个特征向量也和往常一样是 n + 1 维的(n是特征值的个数),其中 x0 恒等于1。而因为这是一个分类问题,所以我们的训练集的 y 都是 0 或 1 。h...
在之前的BLOG中,我们一同学习了监督学习中的回归问题及其解法。在接下来的几篇BLOG中,我们将着眼于监督学习中的另一块内容-分类问题进行学习。 分类问题 首先,先让我们回顾一下分类问题。什么是分类问题?此前我们谈到的过电子邮件垃圾邮件分类就是一个经典的分类问题;而网上交易,比如一个交易的网站是不是欺诈网站也是分类问题;还有我们经常提到的,判断一个肿瘤是否是良性的也是分类问题。 我们想要...
让我们回归机器学习的算法部分。这篇BLOG我们将会一同学习加速我们算法的有一个常用技巧-参数向量化,特别感谢大佬的推导思路。 为什么要参数向量化 为什么我们要参数向量化呢? 首先,无论我们是用Octave 还是别的语言,比如MATLAB Python NumPy 或 Java C C++ 所有这些语言都具有各种方便的线性代数库,这些库文件通常都是内置的,且已经经过高度优化,这为我们的参数...