![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
文章平均质量分 60
huobumingbai1234
路漫漫其修远兮,吾将上下而求索
展开
-
用户性别预测
一、背景 公司的注册信息里没有用户性别这一项,但是我们的场景算是电商,如果知道用户的性别,对用户的商品推荐及排序都会比较重要,产品体验会更好二、大致思路 参考现有的数据,一种是用户的维度数据,比如用户使用的手机型号,用户装的app(会有很多维的数据),用户是不是活动来的(我们平台的拉新活动),另一种是用户在app上的行为,比如用户浏览的商品的价格,用户选择的尺码,用...原创 2020-02-21 22:13:18 · 3975 阅读 · 0 评论 -
集成学习-Boosting
一、Adaboosting 1、Adaboosting的大致思路,第一个模型跑完之后,根据这个模型和实际数据的误差调整样本点的权值,不断进行下去2、Adaboosting的公式推导(补)3、Adaboosting的具体使用import numpy as npimport matplotlib.pyplot as plt from sklearn import ...原创 2019-04-06 00:50:43 · 216 阅读 · 0 评论 -
集成学习-随机森林
一、Random Forest 随机森林sklearn中有封装好的类库,不仅有对特征和数据集的随机选择,在节点划分上,在随机的特征子集上寻找最优划分特征(这也是开源库比自己实现的效果好的原因,在细微处都是有优化的,同时,看别人写的源码和自己实现都是获益匪浅)。 使用实例:import numpy as npimport matplotlib.pyplot as p...原创 2019-04-06 00:08:17 · 412 阅读 · 0 评论 -
集成学习-Bagging和Pasting
一、Bagging和Pasting 上一节说到了集成学习的Voting,基于投票的集成学习就集成了几个分类器的结果,相对来说不是很多,我们需要更多的模型,也就是投票的人更多,且这些模型之间不一样,使得我们的模型更为健壮。 我们可以让每个子模型只看数据的一部分,算法可以使用同一个;使用一部分数据会使得单个模型准确率降低,但是这些模型结合起来效果...原创 2019-04-05 23:01:46 · 1875 阅读 · 0 评论 -
集成学习-Voting
一、什么是集成学习 集成学习是使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合从而获得比单个学习器更好的学习效果的一种机器学习方法。一般情况下,集成学习中的多个学习器都是同质的"弱学习器"。 上面的描述来自百度百科,看定义的话知道是基于‘弱学习器’的,很多讲集成学习的教程都会先讲决策树,然后讲到随机森林和GBDT,也就是bagging和boosting,...原创 2019-04-05 21:40:41 · 4098 阅读 · 0 评论 -
K-means算法过程及使用实例
一、K-means算法主要过程 (1)从数据中选择k个对象作为初始聚类中心; (2)计算每个聚类对象到聚类中心的距离来划分; (3)再次计算每个聚类中心 (4)聚类中心不再变化或到最大迭代次数,则停止,否则,重复2、3。二、K-means算法手写公式化表示三、K-means算法适用范围适用于凸数据集,且数据集符合混合高斯分布,这也是由算法特性决...原创 2018-12-15 20:08:43 · 16586 阅读 · 2 评论 -
特征编码方法-OneHotEncoding
对于一些特征工程方面,有时会用到LabelEncoder和OneHotEncoder。一、为什么需要这种编码方式 在实际的机器学习的应用任务中,特征有时候并不总是连续值,有可能是一些分类值,如性别可分为“male”和“female”,如果我们用简单的0,1代替就会有问题,因为男女之间不存在大小关系。二. 为什么使用one-hot编码来处理离散型特征?1.使用on...原创 2018-12-11 22:24:27 · 2971 阅读 · 0 评论 -
降维算法--PCA理论、公式推导
一、降维算法的主要的目的 1、降维可以减少数据共线性,减少冗余特征,提高算法运行效率 2、可视化需要二、主要的降维算法三、降维算法的主要思想 在高维数据中,有一部分特征是不带有有效信息的,还有一部分特征之间存在共线性(特征间有线性关系),我们需要过滤掉这一部分特征。 PCA算法中,我们用方差表示特征是不是包含更多的信息...原创 2018-12-08 17:55:23 · 2080 阅读 · 0 评论 -
KNN简单实现
KNN算是机器学习入门算法中比较容易理解的了,要注意和K-means的一些区别 KNN K-Means 1.KNN是分类算法 2.监督学习 3.喂给它的数据集是带label的数据,已经是完全正确的数据 1.K-Means是聚类算法 2.非监督学习 3.喂给它的数据集是无label的...原创 2018-11-18 19:54:21 · 196 阅读 · 0 评论 -
逻辑回归算法实现
逻辑回归算法原理还是比较容易理解的,根据计算的结果实现一下:手写的推导过程如下:然后我们开始写实现的过程1、写出判断模型准确性的函数,这个比较容易理解import numpy as npfrom math import sqrtdef accuracy_score(y_true, y_predict): """计算y_true和y_predict之间的准确率"...原创 2018-08-05 23:07:47 · 3501 阅读 · 1 评论 -
梯度下降算法Python代码实现--批量梯度下降+随机梯度下降+小批量梯度下降法
在学习线性回归的时候很多课程都会讲到用梯度下降法求解参数,对于梯度下降算法怎么求出这个解讲的较少,自己实现一遍算法比较有助于理解算法,也能注意到比较细节的东西。具体的数学推导可以参照这一篇博客(http://www.cnblogs.com/pinard/p/5970503.html)一、 首先,我们用一个简单的二元函数用梯度下降法看下算法收敛的过程 ...原创 2018-07-29 23:43:17 · 9630 阅读 · 5 评论 -
最好的评价线性回归的指标-R Squared
在学习线性回归的时候大多数教程会讲到RMSE,MSE(MAE提到的较少)这两个指标评价模型模型拟合的效果,当然MSE也就是模型的损失函数。在分类模型中针对不同的数据我们可以用分类的准确度评价谁的模型效果较好,这两者的量纲是一致的,但是在回归中预测不同的实际场景,比如一个预测股市,一个预测房价,比较MSE或者RMSE就不能比较谁好谁坏;所以将预测结果转换为准确度,结果都在[0, 1]之间,针对不同问...原创 2018-07-14 12:07:07 · 17092 阅读 · 0 评论 -
线性回归算法的简单实现
最近在看慕课网BOBO老师的机器学习入门课程,之前有看过很多的相关课程,讲数据原理推导及sklearn使用较多,顺便推荐一波,看过的课程中,个人觉得邹博老师讲的就蛮好(也看过吴恩达的斯坦福的课程,数学推导看的时候多看几遍也看的懂,过一会儿就忘了,哎),文章的话可以参照https://www.cnblogs.com/pinard/category/894692.html这位的博客,觉得写得清楚明了,...原创 2018-07-16 21:25:03 · 786 阅读 · 0 评论 -
时间序列型的数据做预测
最近在公司有做一个 快递中转中心<--->另一个快递操作中心 操作量预测的项目,有一些方法和感想总结一下一、问题背景1、主要目的是为了预测T+7日内快递某操作中心到其他操作中心的发件量,即中心的操作量2、T+1日的预测精度高对实际工作帮助较大二、主要思路1、做仿真系统,把实际影响的因素都考虑进去,读快递网点实时的收件数据,然后和快递中心的人、车等影响因素相匹配,...原创 2018-06-03 22:19:36 · 3837 阅读 · 0 评论 -
线性回归目标函数-----最小二乘法推导过程
在学习线性回归的时候原创 2018-06-05 20:27:59 · 7512 阅读 · 2 评论