• 即将更新编译原理,机器学习,JavaScript,HTML/CSS等文章,谢谢关注~
  • 由于算法限制,搜索时注意简化关键字,谢谢支持~
  • 网站不兼容IE5.0及以下,请使用主流浏览器访问.
  • 机器学习分类与回归

    分类,即classification:a process in which you put something into the group or class it belongs to,这是指将某物放入其所属的组或类的过程。

    回归,即regression:the relation between selected values of x and observed values of y (from which the most probable value of y can be predicted for any value of x)打个比方,如果父亲很矮,他的儿子也一般不会比父亲矮,而会向一般人的均值靠拢,当时这位英国遗传学家将这现象称为回归。

    在计算机科学中,对于如何区分二者,其他回答已经说得很好了。如何区分类与回归,看的不是输入,而是输出的连续与否(一种评判标准),或者这样说,回归与分类的根本区别在于输出空间是否为一个度量空间

    举几个例子(来自知乎):

    1. Logistic Regression 和 Linear Regression:

    • Linear Regression: 输出一个标量 wx+b,这个值是连续值,所以可以用来处理回归问题。
    • Logistic Regression:把上面的 wx+b 通过 sigmoid函数映射到(0,1)上,并划分一个阈值,大于阈值的分为一类,小于等于分为另一类,可以用来处理二分类问题。
    • 更进一步:对于N分类问题,则是先得到N组w值不同的 wx+b,然后归一化,比如用 softmax函数,最后变成N个类上的概率,可以处理多分类问题。

    2. Support Vector Regression 和 Support Vector Machine:

    • SVR:输出 wx+b,即某个样本点到分类面的距离,是连续值,所以是回归模型。
    • SVM:把这个距离用 sign(·) 函数作用,距离为正(在超平面一侧)的样本点是一类,为负的是另一类,所以是分类模型。

    3. 神经网络用于 分类 和 回归:

    • 用于回归:最后一层有m个神经元,每个神经元输出一个标量,m个神经元的输出可以看做向量 v,现全部连到一个神经元上,则这个神经元输出wv+b,是一个连续值,可以处理回归问题,跟上面 Linear Regression 思想一样。
    • 用于N分类:现在这m个神经元最后连接到 N 个神经元,就有 N 组w值不同的 wv+b,同理可以归一化(比如用 softmax )变成
      N个类上的概率。

    拓展: 上面的例子其实都是从 prediction 的角度举例的,如果从training角度来看,分类模型和回归模型的目标函数不同,分类常见的是 log loss, hinge loss, 而回归是 square loss

    比较图:

    读者评分
    [评分人数: 0 平均分: 0]

    评论

    OmegaXYZ