随笔分类 - 机器学习
摘要:安装 https://www.anaconda.com/distribution/ download section 虚拟环境创建 conda create name env2.7 python=2.7 opencv安装 conda install c menpo opencv 为jupyter n
阅读全文
摘要:yolov3 kmeans yolov3在做boundingbox预测的时候,用到了anchor boxes.这个anchors的含义即最有可能的object的width,height.事先通过聚类得到.比如某一个feature map cell,我想对这个feature map cell预测出一个
阅读全文
摘要:贝叶斯定理 P(A|B)代表B发生的情况下,A发生的概率. P(B)代表B发生的概率. P(AB)代表AB同时发生的概率.P(B|A)代表A发生的情况下,B发生的概率。 显然有P(AB)=P(A|B)*P(B),P(AB)=P(B|A)*P(A)。从而P(B|A)=P(A|B)P(B)/P(A)。
阅读全文
摘要:逻辑回归 逻辑回归和线性回归其实有不少类似的地方,不同的是逻辑回归的是离散的.线性回归的是连续的. 逻辑回归:拟合样本数据发生的概率,根据概率进行分类处理. 逻辑回归,拟合样本发生的概率.,之后根据概率的大小对样本做分类. 通常,将逻辑回
阅读全文
摘要:假设我们要判断一个人是否得癌症,比如下图:红色得癌症,蓝色不得. 看一下上图,要把红色的点和蓝色的点分开,可以画出无数条直线.上图里黄色的分割更好还是绿色的分割更好呢?直觉上一看,就是绿色的线更好.对吧. 为啥呢?考虑下图,新来了一个黑色点,明显靠蓝色点更近,如果用黄线分割,却把它划分到了红色点这个
阅读全文
摘要:梯度下降法/批量梯度下降法BGD 梯度下降法是一种基于搜索的最优化方法,即通过不断地搜索找到函数的最小值.并不是机器学习专属的方法.但是在机器学习算法中求解损失函数的最小值时很常用. 还记得之前说过的机器学习算法的普遍套路吗? 对有的损失函数来说,最小值是有着数学上的方程解的.但有的函数是不存在着数
阅读全文
摘要:机器学习笔记 多项式回归这一篇中,我们讲到了如何构造新的特征,相当于对样本数据进行升维. 那么相应的,我们肯定有数据的降维.那么现在思考两个问题 为什么需要降维 为什么可以降维 第一个问题很好理解,假设我们用KNN训练一些样本数据,相比于有1W个特征的样本,肯定是训练有1K个特征的样本速度更快,因为
阅读全文
摘要:上一篇机器学习笔记里,我们讲了线性回归.线性回归有一个前提:即我们假设数据是存在线性关系的. 然而,理想很丰满,现实很骨感,现实世界里的真实数据往往是非线性的. 比如你的数据分布,是符合y=0.5 + x + 2的. 那你用y=ax+b去拟合,无论如何都没法取的很好的效果. 这时候,我们又
阅读全文
摘要:先从最简单的例子开始,假设我们有一组样本(如下图的一个个黑色的圆点),只有一个特征,如下图,横轴是特征值,纵轴是label。比如横轴是房屋面积,纵轴是房屋价格. 现在我们要做什么呢?我们试图找到一条直线y=ax+b,可以尽量好的拟合这些点. 你可能要问了,为啥是直线,不是曲线,不是折线?因为我们的前
阅读全文
摘要:这篇其实应该作为机器学习的第一篇笔记的,但是在刚开始学习的时候,我还没有用博客记录笔记的打算.所以也就想到哪写到哪了. 你在网上搜索机器学习系列文章的话,大部分都是以KNN(k nearest neighbors)作为第一篇入门的,因为这个算法实在是太简单了.简单到其实没啥可说的. 问题:已知正方形
阅读全文
摘要:自然语言处理NLP( natural language process)是这几年越来越火了,kaggle上的比赛有关NLP的也日渐多起来了. NLP的应用场景很多,情感分析,邮件过滤,ai客服,机器翻译等等等等,就像这几年越来越火有成为BAT之后第四极的今日头条,为什么能够为每个人推送不同的感兴趣的
阅读全文
摘要:titanic数据集是个著名的数据集.kaggle上的titanic乘客生还率预测比赛是一个很好的入门机器学习的比赛. 数据集下载可以去https://www.kaggle.com/c/titanic/data. 本身写这个系列笔记是作为自己机器学习的记录,也为了加深自己对机器学习相关知识的理解.但
阅读全文
摘要:统计关系可视化 最常用的关系可视化的函数是relplot seaborn.relplot(x=None, y=None, hue=None, size=None, style=None, data=None, row=None, col=None, col_wrap=None, row_order=
阅读全文
摘要:seaborn是基于matplotlib的数据可视化库.提供更高层的抽象接口.绘图效果也更好. 用seaborn探索数据分布 绘制单变量分布 seaborn里最常用的观察单变量分布的函数是distplot()。默认地,这个函数会绘制一个直方图,并拟合一个核密度估计.如下所示: 首先解释一下啥叫核密度
阅读全文
摘要:random forest 和 extra-trees是对decison tree做ensemble而得到最终模型的两种算法. 阅读本文前需要先了解一下 机器学习笔记1:决策树 机器学习笔记2:集成学习 random_forest 决策树在节点划分上,在随机的特征子集中寻找最优划分特征.进一步增强了
阅读全文
摘要:每一种机器学习算法都可以看做是一种看待数据的视角. 就像我们看待一个问题,一个观点一样.每一种视角必然有他合理的地方,也有他片面的地方.对机器学习而言,也是一样.所以为了提高我们对数据的了解程度,我们要尽可能地从多个视角考察我们的数据. 这样对新的test data,不管是分类还是回归,我们才可能有
阅读全文