自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 个人总结:推荐算法篇(附协同过滤等) 综述

现代推荐系统对于在线部分来说,一般要经历几个阶段。首先通过召回环节,将给用户推荐的物品降到千以下规模(因为在具备一定规模的公司里,是百万到千万级别,甚至上亿。所以对于每一个用户,如果对于千万级别物品都使用先进的模型挨个进行排序打分,明显速度上是算不过来的,资源投入考虑这么做也不划算);如果召回阶段返回的物品还是太多,可以加入粗排阶段,这个阶段是可选的,粗排可以通过一些简单排序模型进一步...

2019-06-29 10:26:30 5378 1

原创 个人总结:K近邻(KNN)

前言提到K近邻,K-nearest neighbors(它的K是指有多少个邻居),总是容易想起另外一个叫K-means的聚类算法(它的K指有多少个质心),容易搞混淆,它们有一部分思路也很接近,但是KNN能做分类和回归。K近邻之所以叫K近邻,是因为它的思想就是“你与你的邻居很相似”。所以对于分类来说,找到K个最近的邻居,用投票法找出最多数的类别,就将数据点预测为该类别。同理,回归的话输出最近...

2019-06-26 20:22:23 1515

原创 个人总结:聚类 K-Means

K-Means是无监督聚类算法,实现简单且效果不错。只看名字容易与可以分类回归的K-近邻搞混。原理它将样本按照距离的大小,将其划分为K个簇。簇内的点尽量紧密,簇间距离越大越好。假设簇有k个,分别为,为簇Ci的均值向量,称为质心或者簇心,表示为:于是我们的目标可以设为,使所有簇内数据到它对应的簇心的距离最小:求E的最小值是一个NP难问题,于是采用迭代方法如下图,红点和蓝点...

2019-06-25 21:59:39 924

原创 个人总结:机器学习分类模型评估指标 准确率、精确率、召回率、F1等以及关联规则支持度、置信度

机器学习分类中的常用指标,这几个指标最大的特点,其实是容易看完就忘。。英文TP true positive, 前面的字母代表预测是否正确,后面的字母代表预测的类型,TP是预测正确的正例,预测为1实际也为1TN true negative预测正确的负例,预测为0实际也为0FP false positive预测错误,预测为正例,实际为负例,所以是预测错误的负例,预测为1实际为0FN...

2019-06-25 16:09:46 8667 2

原创 个人总结:数据、特征预处理(含word2vec)

缺失值处理连续值一般采用取平均值或者中位数来进行填充。离散值最频繁出现的类别(或者众数)来填充。异常值清洗异常数据可能给模型带来很大的偏差。聚类清洗例如,通过KMeans将训练样本分成若干簇,如果某一个簇里的样本数很少,而且簇质心和其他所有的簇都很远,那么这个簇里面的样本极有可能是异常特征样本。可将其从训练集过滤掉。同样道理还可以使用BIRCH和DBSCAN密...

2019-06-25 09:19:45 2497

原创 个人总结:降维 特征抽取与特征选择

降维在维度灾难、冗余,这些在数据处理中常见的场景,不得不需要我们进一步处理,为了得到更精简更有价值的信息,我们所用的的各种方法的统称就是降维。降维有两种方式:(1)特征抽取:我觉得叫做特征映射更合适。因为它的思想即把高维空间的数据映射到低维空间。比如PCA和LDA即为一种特征映射的方法。还有基于神经网络的降维等。(2)特征选择:过滤式(打分机制):过滤,指的是通过某个阈值进行过...

2019-06-24 09:35:26 1640

原创 个人总结:从 白化(whitening) 到 批标准化(Batch Normalization)

白化 Whitening由于图像中像素之间具有很强的相关性,所以用于训练时输入是冗余的。白化的目的是降低输入的冗余性,我们希望通过白化过程使得算法的输入有如下性质:1、特征间相关性较低。2、所有特征具有相同的方差。z-score白化将图片调整为平均像素值为0,方差为单位方差的分布。PCA白化假设输入数据是冗余的,经过白化处理后:1、特征间相关性较低。2、所有特征具有相同的方差。...

2019-06-20 14:47:43 2718 3

原创 个人总结:从 SVM分类 到 线性支持回归SVR

回顾前面的SVM分类模型中,我们的目标函数是让最小,同时让各个训练集中的点尽可能远离自己类别一边的支持向量,即;若加入一个松弛变量,则目标函数变为,对应约束条件变为。线性支持回归也是尽量将训练集拟合到一个线性模型。但是损失不是使用常用的均方差作为损失函数,而是定义一个常量,对于某一个点,如果,则认定为没有损失。若,则对应的损失为。这个损失和均方差的区别在于,就会有损失。如图蓝色透明...

2019-06-14 11:16:10 1347

原创 个人总结:从 感知机 到 SVM分类(详)(附:梯度下降家族)

前言SVM是一个二元分类算法,线性分类和非线性分类都支持。经过演进,现在也可以支持多元分类,以及回归问题。而感知机在思想上可以看做SVM的前辈。回顾感知机感知机模型就是尝试找到一个超平面,能够把所有二元类分开。如果找不到这么一条直线,就说明类别线性不可分,也就意味着感知机模型不适合你的数据分类。使用感知机的前提就是数据线性可分。而其他模型在面对线性不可分的情况下,比如支持向量机可...

2019-06-11 16:14:30 937

原创 个人总结 :SVM 与 拉格朗日函数、对偶问题 和 KKT条件 以及 SMO算法

提到SVM,可能首先想到的是令人头大的公式推导,通过确定思想,公式等式转化,拉格朗日函数,求梯度,约束变换,KKT、SMO。。。最后终于得到我们的最优解。而在这其中,不免作为核心的就是拉格朗日函数以及KKT条件,就像建筑高楼大厦前需要打地基,如果说SVM这个模型方法是高楼大厦的话,拉格朗日函数和KKT这些最优化方法就是我们需要提前打好的地基。只有对这两个东西有了理解后,才能对SVM的公式推导能够有...

2019-06-10 20:03:08 1580

原创 个人总结:从 线性回归 到 逻辑回归 为什么逻辑回归又叫对数几率回归?

逻辑回归不是回归算法,是分类算法,可以处理二元分类以及多元分类。线性回归线性回归的模型是求出特征向量Y和输入样本矩阵X之间的线性关系系数θ,满足Y = Xθ。此时Y是连续的,所以是回归模型。对应n维样本数据,对应的模型是这样的:其中θ为模型参数。一般用均方误差作为损失函数,损失函数的代数法表示如下:用矩阵形式表示为:采用梯度下降法,则θ的迭代公式为:如果采...

2019-06-04 15:13:19 2434

原创 个人总结:从 GBDT 到 XGBoost和LightGBM 用统一的视角看待它们

上次讲到GBDT,就不得不提到现在应用最广泛,效果也是数一数二的XGBoost,我们可以用统一的视角看待它们,因为它们本质上其实是一样的,可以把XGBoost看作GBDT的工程实现。如果非要说一些区别的话,最明显的是,GBDT使用了一阶泰勒公式展开(梯度下降/最速下降),而XGBoost使用了二阶泰勒公式展开(牛顿法),但是这些并不影响它们其实是同样的东西。如果你很熟悉下面的基础知识,那么可...

2019-06-03 20:30:06 1142 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除