![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
一个小路人
这个作者很懒,什么都没留下…
展开
-
机器学习记录第一天:简单的线性回归
菜鸟一个,希望每天记录自己所得,以便以后可以嘲笑自己今天学了线性回归,公式什么的都推导了一遍,但是感觉还是编程会学的更快。虽然python有线性回归的包,可以使用但是为了加深理解还是手动来一遍把。在网上随机找了一组数据:现在我们就需要利用这样一组数据来进行预测。首先利用我们的最小二乘来写出我们的预测函数:def predictfunc(x, w, b): y ...原创 2019-03-30 21:28:42 · 190 阅读 · 0 评论 -
机器学习第七篇:Knn、kd树
1.Knn:knn是目前为止接触到的最简单之一的算法,算法很简单,就是求取测试样本距离最近的几个点,然后采用多数表决的规则,将测试样本归为那一类。算法流程:计算已知类别数据集中的点与当前点之间的距离 按照距离递增次序排序 选取与当前点距离最小的k个点 确定前k个点所在类别出现的频率 返回前k个点出现频率最高的类别作为当前点的预测分类def classify0(inX, da...原创 2019-04-24 10:06:35 · 168 阅读 · 0 评论 -
机器学习第六篇:集成学习AdaBoost
1.理论知识:集成学习根据学习器之间是否存在依赖关系划分为两类:学习器之间存在强依赖关系、必须串行生成的序列化方法——Boosting 学习器之间不存在强依赖关系、可同时生成的并行化方法——Bagging和随机森林这里主要介绍Boosting的主要代表Adaboost。Adaboost采取加权多数表决的方法,加大分类误差率小的弱分类器的权值,使其在表决中起较大的作用。算法如下:...原创 2019-04-23 11:28:36 · 311 阅读 · 0 评论 -
决策树的补充:剪枝与CART树
1.剪枝:预剪枝:对每个节点划分前先进行估计,若当前节点的划分不能带来决策树泛化能力的提升,则停止划分,并将当前节点标记为叶节点(当划分前的性能跟划分后的一样,则也不划分) 后剪枝:先从训练集生成一颗完整的决策树,然后自底向上的对非叶节点进行考察,若将该节点对应的子树替换为叶节点能带来性能上的提升,则将子树替换为叶节点(当替换前与替换后性能相同,则保留不进行替换) 预剪枝显著减少了决...原创 2019-04-22 21:33:27 · 160 阅读 · 0 评论 -
机器学习第五篇,朴素贝叶斯
在学习朴素贝叶斯的过程中我接触到了一个新的概念,生成模型和判别式模型。究竟什么是生成模型,什么是判别式模型呢,在我的个人理解当中:判别模型:就是通过学习,得到一个分类面(即学得一个模型),用该分类面来区分不同的数据分别属于哪一类生成模型:生成模型是学得各个类别各自的特征(即可看成学得多个模型),可用这些特征数据和要进行分类的数据进行比较,看新数据和学得的模型中哪个最相近,进而确定新数据...原创 2019-04-17 21:29:01 · 138 阅读 · 0 评论 -
机器学习第八篇:逻辑回归
今天学习了逻辑回归,逻辑回归可以看做是线性回归的一种特殊情况吧。1.理论知识为什么说逻辑回归可以看做是线性回归的特殊情况呢?首先是我们的线性回归模型,那么加入我们更替我们的y将y替换为lny,又会如何呢?这被称作‘广义线性模型’。线性模型有很多,但又一种非常特殊的函数,sigmod函数,当我们把范围扩大,就呈现出阶跃函数的趋势,那么我们能不能用这样的一个特性去进行分类呢?答案是肯定...原创 2019-04-25 19:51:14 · 377 阅读 · 0 评论 -
机器学习第四篇:SVM,SMO算法的实现
这两天摸索了SVM,刚开始的时候接触SMO的时候就很懵,但是我有机器学习三大法宝护体,最终还是搞懂了一些。前面的细节部分就不予阐述了,直接从SMO算法部分开始讲起:下面讨论具体方法: (1) ...原创 2019-04-12 21:50:50 · 555 阅读 · 0 评论 -
机器学习第二篇:决策树算法
决策树的基础部分还是很简单易懂的,但是剪枝处理和多决策问题我现在还没有接触到。我也是个初学者,从初学者角度写的,大佬就绕道了吧。我们决策树的划分都是建立在熵的基础之上的,首先是熵的计算公式: (其中k是我们的种类编号)然后还有一个很重要的概念--信息增益: ...原创 2019-04-02 21:10:59 · 270 阅读 · 0 评论 -
机器学习学习第三篇:BP神经网络
根据配套的教材:西瓜书首先整个流程就是先是前向传输,再是反向传播,根据最后的输出值与实际值的差距来更改我们的阈值(在实际代码中用biases表示)和权值,利用梯度下降法找到我们的最优解。我们利用这个模型来解释整个过程,我们采用sigmod函数讲隐藏层和输出层的输入转化为输出。在西瓜书里面每一层的输出就是sigmod(输入-阈值),输入呢就是x1,x2,x3乘以相应的权值的和,而...原创 2019-04-08 11:28:00 · 683 阅读 · 0 评论 -
机器学习小插曲:几种常见的优化方法,梯度下降、牛顿法、拟牛顿以及共轭梯度法
1.梯度下降法:梯度下降法是最早最简单,也是最为常用的最优化方法。梯度下降法实现简单,当目标函数是凸函数时,梯度下降法的解是全局解。一般情况下,其解不保证是全局最优解,梯度下降法的速度也未必是最快的。梯度下降法是寻找当前点下降最快的方向。梯度下降就是希望寻找我们的最优解,也就是希望,然后根据我们的泰勒公式展开:,欲满足,那么可以选择: ...原创 2019-04-10 12:05:34 · 516 阅读 · 0 评论 -
概率与似然
概率和似然到底什么关系呢?就跟你推导公式一样,推导公式有两种方法,一种正推,一种逆推。而概率和似然就是这样的一个关系。概率就是我们的正推,似然就是逆推从结果出发。先举一个生动的小例子:比如说 我们现在有两个黑盒子,1号黑盒子装了99个白球一个黑球,2号黑盒呢刚好相反,打乱两个黑盒,随机从一个黑盒里面拿出一个球 , 发现是黑球,那么正常人应该都想着是从2号黑盒拿出来的,毕竟概率非常大呀。而这样的...原创 2019-03-31 13:00:05 · 443 阅读 · 0 评论 -
机器学习第九篇:EM算法及其在高斯混合模型和K-means中的应用
1.EM算法:EM算法产生的前提:当概率模型的变量都是观测变量的时候可以直接用极大似然估计法求得我们的最优解,但是当模型含有隐变量的时候,就无法直接求得最优解,而此时就产生了我们的EM算法。假设Y表示可观测的变量,Z(跟Y是存在关联的)表示不可观测的数据而我们最终的目的是通过迭代来求解出,每次迭代分两步:E步,求期望;M步,求极大化。算法:选择初始参数,开始迭代; E步:第i次迭...原创 2019-05-06 20:20:17 · 551 阅读 · 0 评论