Fork me on GitHub
摘要: 一.简介 上一节已经介绍了提升树的算法流程,这一节只需要将下面的优化过程替换成求解具体的梯度即可: \[ w_m^*=arg\min_{w_m}\sum_{i=1}^NL(y_i,f_{m-1}(x_i)+T(x_i,w_m)) \] 下面介绍一下常用的损失函数及其对应的负梯度 (1)损失平方误差: 阅读全文
posted @ 2021-05-05 21:45 努力的番茄 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 简介 提升树与adaboost类似,也是boosting算法,它同样基于如下两点进行构建: (1)训练方法:前向分步算法,根据前面树的结果对当前树进行调整训练,以提高精度 (2)组合方法:基于树的加法模型,可以表示如下: \[ f_M(x)=\sum_{i=1}^MT(x,w_m) \] 这里,$T 阅读全文
posted @ 2021-05-05 21:41 努力的番茄 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 一.算法流程 adaboost回归模型与分类模型类似,主要的不同点在于错误率的计算、基模型的权重计算以及样本权重的更新,下面就直接介绍算法流程部分 输入:训练集$T={(x_1,y_1),(x_2,y_2),...,(x_N,y_N)}$,其中$x_i\in R^n,y_i\in R,i=1,2,. 阅读全文
posted @ 2021-05-04 16:05 努力的番茄 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 一.简介 adaboost是一种boosting方法,它的要点包括如下两方面: 1.模型生成 每一个基分类器会基于上一轮分类器在训练集上的表现,对样本做权重调整,使得错分样本的权重增加,正确分类的样本权重降低,所以当前轮的训练更加关注于上一轮误分的样本; 2.模型组合 adaboost是采用的加权投 阅读全文
posted @ 2021-05-04 15:53 努力的番茄 阅读(478) 评论(0) 推荐(0) 编辑
摘要: 简介 前面已经介绍过了一些模型,它们各有各的优缺点: (1)比如SVM中,虽然它的最大化间隔能带来不错的泛化能力,但如果某些支持向量恰好是异常点,那么它的决策边界可能会错的很离谱; (2)对于决策树,虽然它的非线性拟合能力很强,但如果放纵树的生长,它甚至会为了个别噪声点创建琐碎的规则; (3)而对于 阅读全文
posted @ 2021-05-04 15:45 努力的番茄 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 简介 CART树即分类回归树(classification and regression tree),顾名思义,它即能用作分类任务又能用作回归任务,它的应用比较广泛,通常会用作集成学习的基分类器,总得来说,它与ID3/C4.5有如下不同: (1)它是一颗二叉树; (2)特征选择的方法不一样,CART 阅读全文
posted @ 2020-05-27 06:29 努力的番茄 阅读(615) 评论(0) 推荐(0) 编辑
摘要: 简介 先看一个例子,某银行是否给用户放贷的判断规则集如下: if 年龄==青年: if 有工作==是: if 信贷情况==非常好: 放 else: 不放 else: if 有自己的房子==是: if 信贷情况==一般: 不放 else: 放 else: if 信贷情况==非常好 or 信贷情况==好 阅读全文
posted @ 2020-05-26 22:00 努力的番茄 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 简介 这一节主要是为模型打补丁,在这之前笔者已经介绍并实现了几种典型的机器学习模型,比如线性回归、logistic回归、最大熵、感知机、svm等,但目前它们都有一个共性,那就是构造的损失函数对每个样本都是“一视同仁”的,即每个样本在损失函数中权重都是一样的,为了方便,可以将它们的损失函数做如下抽象: 阅读全文
posted @ 2020-05-24 23:41 努力的番茄 阅读(2676) 评论(0) 推荐(1) 编辑
摘要: 一.简介 前两节分别实现了硬间隔支持向量机与软间隔支持向量机,它们本质上都是线性分类器,只是软间隔对“异常点”更加宽容,它们对形如如下的螺旋数据都没法进行良好分类,因为没法找到一个直线(超平面)能将其分隔开,必须使用曲线(超曲面)才能将其分隔,而核技巧便是处理这类问题的一种常用手段。 import 阅读全文
posted @ 2020-05-21 22:27 努力的番茄 阅读(1888) 评论(0) 推荐(0) 编辑
摘要: 一.简介 上一节介绍了硬间隔支持向量机,它可以在严格线性可分的数据集上工作的很好,但对于非严格线性可分的情况往往就表现很差了,比如: import numpy as np import matplotlib.pyplot as plt import copy import random import 阅读全文
posted @ 2020-05-21 08:28 努力的番茄 阅读(1440) 评论(0) 推荐(2) 编辑