
算法
文章平均质量分 96
我不爱机器学习
这个作者很懒,什么都没留下…
展开
-
PCA(用数学原理进行推导和解释)
首发于 我不爱机器学习 公众号,微信号:learning_free1、相关数学知识1.1 均值x={1,2,3}E[a+x]=a+E[x]E[αx]=αE[x]E[αx+a]=αE[x]+a\begin{aligned}E[a+x] &=a+E[x] \\E[\alpha x] &=\alpha E[x] \\E[\alpha x+a] &=\alpha...原创 2020-03-17 21:10:53 · 913 阅读 · 0 评论 -
期望最大化 (EM)(原理详细说明与推导)
在此之前大家可以了解一下在深入理解 EM 算法前,先了解一下 模型参数求解方法和Jensen'sinequality。1、模型参数求解方法有两种方法:1)训练数据是完整的,即不缺少某些属性值,则直接用训练数据去拟合模型得到模型的参数即可,如极大似然估计和最大后验估计等。2)训练数据是不完整的,即缺少某些属性数据,则此时不可用训练数据去拟合模型(某些属性没有数据,则无法对该属性...原创 2020-02-14 11:06:18 · 7256 阅读 · 3 评论 -
参数模型与非参数模型
1、参数模型(parametric models)在机器学习中,有一组训练数据 ,,通常都会先提出一个假设,然后通过训练这个假设让不断接近数据的真实的函数(也叫映射函数)。注意这个真实的函数是未知的,我们要做的只是不断逼近真实的函数。还有假设 其实就是一个方程,这个是人为定义的。比如根据数据的分布趋势,选取了线性回归,则假设函数 便是。这个假设中除了是已知的,均...原创 2020-01-11 19:55:00 · 5853 阅读 · 0 评论 -
集成算法学习(3)-Boosting(GBDT分类)(举例说明,通俗易懂)
通过前面两贴Bagging、Boosting(AdaBoost)原理与公式推导和Boosting(GBDT回归)(举例说明,通俗易懂)对GBDT有了大致了解,这帖就来讲一讲GBDT分类。GBDT分类是对类别变量进行分类。还是通过例子了解。1、案例讲解总共有 6 个样本,每个样本有三个属性Likes Popcorn,Age,Favorite Color,对每个样本是否Loves ...原创 2020-01-06 09:09:09 · 1398 阅读 · 1 评论 -
集成算法学习(1)-Bagging、Boosting(AdaBoost)原理与公式推导
1、决策树与集成学习的关系根据python3 决策树(ID3、C4.5、CART)原理详细说明与公式推导可知:决策树容易解释,可以处理离散和连续值,对输入变量的单调转换不敏感(因为分割点是基于数据点的排序),执行自动变量选择,对异常值相对稳定,可以很好地扩展到大型数据集,并且可以修正输入的缺失值。但是决策树与其他类型的模型相比,预测不是很准确。这部分是由于树构造算法的贪心本性。一个相关...原创 2019-12-30 09:53:28 · 3917 阅读 · 0 评论 -
python3 Boosting(AdaBoost)算法实现
算法原理:Bagging、Boosting(AdaBoost)原理与公式推导算法步骤: import numpy as npimport seaborn as snssns.set_style('white')from sklearn.tree import Dec...原创 2019-12-30 09:51:47 · 1069 阅读 · 0 评论 -
集成算法学习(2)-Boosting(GBDT回归)(举例说明,通俗易懂)
通过上帖Bagging、Boosting(AdaBoost)原理与公式推导了解了方差和偏差以及AdaBoost,下面详细讲解GBDT回归的原理以及实现。GBDT的初始化是一个叶节点,而不是生成一个树(随机森林)或树桩(AdaBoost)。这个叶节点代表所有样本的初始预测值。GBDT与AdaBoost的对比:两者都是利用前面模型的误差调节当前模型 两者都要构建固定大小的树(深度和叶节点...原创 2019-12-30 09:41:47 · 1755 阅读 · 0 评论 -
python3 决策树(ID3、C4.5、CART)原理详细说明与公式推导
1、简介1.1 树的定义决策树(decision tree)是一种描述对实例进行分类的树形结构,由结点 (node)和有向边 (directed edge)组成。结点有三种类型:根结点(root node):表示树根 内结点 (internal node):表示特征 叶结点(leaf node):表示类 边 (directed edge):表示划分的条件决策树的是...原创 2019-12-19 15:38:01 · 2590 阅读 · 0 评论 -
决策树 CART 自编代码 (Python3)
根据决策树CART的原理用Python3写出,代码如下:from random import randrange# 根据阈值对单个属性数据(数值)进行分割def split_numerical(attribute_index, thresh, datasets): left, right = [], [] for r in datasets: if r[...原创 2019-12-19 15:37:32 · 831 阅读 · 0 评论 -
核函数(Kernel function)(举例说明,通俗易懂)
将原始空间中的向量作为输入向量,并返回特征空间(转换后的数据空间,可能是高维)中向量的点积的函数称为核函数。使用内核,不需要显式地将数据嵌入到空间中,因为许多算法只需要图像向量之间的内积(内积是标量);在特征空间不需要数据的坐标。例1:考虑一个带有特征映射的二维输入空间特征映射二维到三维:特征空间中的内积:根据上面得,核函数为但核函数只是计算映射的内积,所以映射为也是可以得到上面的核函数但是特征空间变为4维了,所以对核函数来说特征空间不唯一。怎么理解高斯核可以扩展为无限维?原创 2019-12-12 15:00:57 · 147136 阅读 · 31 评论 -
python3 支持向量机 (详细说明与推导)
建议先看一下这两篇文章:核函数(Kernel function)(举例说明,通俗易懂)拉格朗日乘子、拉格朗日对偶问题 (举例说明,通俗易懂)1、支持向量机简介支持向量机(support vector machine)是一种用于分类、回归和异常值(离群点)检测的监督学习方法。支持向量机是一种二分类模型,其基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大有别于感知机;支...原创 2019-12-11 16:23:44 · 2127 阅读 · 0 评论