目录

  • 机器学习流程
  • 有监督算法(回归,分类)
    • 1.分类(classification)与回归(regression)的区别与关系
    • 2.线性回归
    • 3.逻辑回归(是一个分类算法,可处理二元分类及多元分类)
      • 3.1逻辑回归解决二分类问题
      • 3.2 逻辑回归python实现并可视化
    • 4.K近邻算法(k-nearest neighbor classification算法)
    • 5.朴素贝叶斯分类器(Naive Bayes Classifier)-判垃圾邮件
    • 6.SVM(支持向量机-线性分类器)
    • 7.决策树(处理非线情况)
      • 7.1使用决策树判断是否打golf
    • 8.随机森林
    • 9.XGBoost
    • 10.矩阵分解--推荐系统
  • 无监督学习(聚类)
    • 1.K-means聚类
    • 2.PCA

说明:贪心科技的机器学习视频,推荐给希望入门机器学习但又找不到合适资源的小伙伴,UP主将常见的机器学习算法分析的通俗易懂,看完后收获很多,下面是我学习的部分笔记,供以后回顾!


机器学习流程

  1. 数据清洗:丢弃异常值
  2. 特征工程:将输入的数据比如文本,语音,图片表示成张量的形式。
  3. 数据预处理:特征提取(提取hog直方图,NLP中提取文字n-gram),缺失值处理(均值,使用众数,丢弃),数据标定(归一化,标准化)
  4. 看模型是否为线性模型,就看它的决策边界是不是线性的。






有监督算法(回归,分类)

1.分类(classification)与回归(regression)的区别与关系

参考

分类通常是建立在回归之上:例如判断一幅图片上的动物是一只猫还是一只狗,还是猪,需要先计算一个连续的概率值,然后分类的最后一层通常要使用softmax函数进行判断其所属类别。

2.线性回归

就是找到一条直线,来拟合上面所有的点(应用:比如进行房价预测,横坐标是面积,纵坐标是价钱)
假设线性回归是个黑盒子,那按照程序员的思维来说,这个黑盒子就是个函数,然后呢,我们只要往这个函数传一些参数作为输入,就能得到一个结果作为输出。那回归是什么意思呢?其实说白了,就是这个黑盒子输出的结果是个连续的值。如果输出不是个连续值而是个离散值那就叫分类。
参考

3.逻辑回归(是一个分类算法,可处理二元分类及多元分类)

视频
前面讲到模型输出是连续值就是回归,输出是离散值就是分类!
逻辑回归虽然叫回归,但通常干的是分类的活,与回归最大的联系就是:在线性回归上套了一个逻辑函数,就得到逻辑回归,输出的是一个连续的值wx+b,用这个连续的值+sigmoid进行概率计算,然后再分类。
逻辑回归的目标函数就是极大化似然函数

3.1逻辑回归解决二分类问题

分类问题:就是一个条件概率问题,主要解决:1.如何定义这个条件概率(使用什么函数f)2.根据条件概率如何分类



逻辑回归的决策边界是线性的,所以逻辑回归是线性的




在进行梯度下降时,GD考虑的是全部样本,SGD考虑的是单个样本,MBGD就是折中的每次迭代考虑一小批。

3.2 逻辑回归python实现并可视化


视频1
博客

4.K近邻算法(k-nearest neighbor classification算法)


5.朴素贝叶斯分类器(Naive Bayes Classifier)-判垃圾邮件

朴素贝叶斯分类(NBC)是以贝叶斯定理为基础并且假设特征条件之间相互独立的方法,先通过已给定的训练集,以特征词之间独立作为前提假设,学习从输入到输出的联合概率分布,再基于学习到的模型,输入x求出使得后验概率最大的输出y。
通过先验概率和条件概率,求得未知分类的后验概率,利用后验概率进行分类



6.SVM(支持向量机-线性分类器)

  1. 逻辑回归也线性分类器,它考虑的是每一个数据,SVM线性分类器只考虑支持向量,只考虑边界上具有代表性的点(最好是三个点确定唯一性)。
  2. 若数据的位置发生变化,则逻辑回归的w,b也要发生变化,但SVM不会变化,也就是说SVM对奇异值不敏感。




7.决策树(处理非线情况)

将不同的条件当成节点构建一棵树,然后进行分类,因为节点有多个,那么如何构建一棵树才是最合理的呢:即保证信息增益最大化
信息增益=信息熵-条件熵。




7.1使用决策树判断是否打golf




8.随机森林

  1. 随机森林同时训练多个决策树,预测的时候,综合考虑多个结果做预测.例如取多个结果的均值(回归情况),或者众数(分类情况)
  2. 随机森林的随机体现在每次生成决策树时,只使用一部分训练数据集(有放回的)比如70%,再者随机性体现在选择分叉特征时,也只使用一部分特征,比如一共4个特征,那么生成决策树时只使用3个特征。
  3. 减小过拟合,减小预测结果因为训练数据小的变化带来的影响

9.XGBoost

XGBoost(eXtreme Gradient Boosting)全名叫极端梯度提升,XGBoost是集成学习方法的王牌,在Kaggle数据挖掘比赛中,大部分获胜者用了XGBoost,XGBoost在绝大多数的回归和分类问题上表现的十分顶尖,主要是一种残差思想。
参考



10.矩阵分解–推荐系统






无监督学习(聚类)



1.K-means聚类

K-means聚类包含两部分:

  1. k-means就是将样本分为 k类,所以先随机选k个点,作为初始化的中心点,每个点就是一个group
  2. 接下来就是一个迭代的过程,a.计算每个点到中心点的距离,并根据最近原则将所有点进行分组
    b.针对每一组的点计算它们的均值得到新的中心点。
  3. 最后就是迭代的过程,根据新的中心点进行聚类,再获得新的中心点,直到中心点不发生变化,聚类结束






K-means一个点就属于一个group,hard clusting
GMM与K-means相似,只不过一个点可能属于多个类,每个类的喜好不同

2.PCA

视频


机器学习视频推荐-绝对的通俗易懂(线性回归,逻辑回归,朴素贝叶斯分类器,K-近邻,SVM,决策树,随机森林,XGboost,k-means聚类)相关推荐

  1. 线性回归与逻辑回归/朴素贝叶斯

    一.线性回归与逻辑回归 (一)线性回归 1. 算法概述 回归的目的是预测数值型的目标值. 线性回归的优点:结果易于理解,计算上不复杂.缺点:对非线性的数据拟合不好.适用数据类型:数值型和标称型数据. ...

  2. 机器学习实战——第四章(分类):朴素贝叶斯

    前言 首先感谢博主:Jack-Cui 主页:http://blog.csdn.net/c406495762 朴素贝叶斯博文地址: https://blog.csdn.net/c406495762/ar ...

  3. 机器学习实验 - 朴素贝叶斯分类器

    目录 一.报告摘要 1.1 实验要求 1.2 实验思路 1.3 实验结论 二.实验内容 2.1 方法介绍 2.2 实验细节 2.2.1 实验环境 2.2.2 实验过程 2.2.3 实验与理论内容的不同 ...

  4. 机器学习100天(三十七):037 朴素贝叶斯-挑个好西瓜!

    <机器学习100天>完整目录:目录 机器学习100天,今天讲的是:朴素贝叶斯-挑个好西瓜! 红色石头已经了解了贝叶斯定理和朴素贝叶斯法,接下来已经可以很自信地去买瓜了.买瓜之前,还有一件事 ...

  5. Python3《机器学习实战》学习笔记(五):朴素贝叶斯实战篇之新浪新闻分类

    转载请注明作者和出处:http://blog.csdn.net/c406495762 Github代码获取:https://github.com/Jack-Cherish/Machine-Learni ...

  6. Python3《机器学习实战》学习笔记(四):朴素贝叶斯基础篇之言论过滤器

    转载请注明作者和出处: http://blog.csdn.net/c406495762 运行平台: Windows Python版本: Python3.x IDE: Sublime text3 文章目 ...

  7. 机器学习实战 朴素贝叶斯分类器

    基于概率论的分类方法: 朴素贝叶斯 我的微信公众号: s406205391; 欢迎大家一起学习,一起进步!!! k-近邻算法和决策树会给出"该数据属于哪一类"的明确回答.不过,分类 ...

  8. 机器学习算法 - 朴素贝叶斯分类器

    ​ 一.算法简介 1.1 背景 监督学习分为生成模型 (generative model) 与判别模型 (discriminative model) 判别模型:SVM, LR, KNN, NN, CR ...

  9. 机器学习(3)高斯判别分析朴素贝叶斯分类器

    判别模型与生成模型 判别模型 判别模型是对观测数据进行直接分类,常见的判别模型有逻辑回归和感知机算法等.此模型仅对数据进行分类,并不能具象化或者量化数据本身的分布状态,因此也无法根据分类生成可观测的图 ...

  10. [机器学习]一个例子完美解释朴素贝叶斯分类器

    何为"朴素":属性条件独立性假设 如果已知条件不止一个属性,二是多个呢,这个时候贝叶斯公式可以写作 上述公式假设特征属性 a1,a2⋯ 相互独立,这也是"朴素" ...

最新文章

  1. Qt designer设计界面
  2. Java虚拟机垃圾收集器初步学习
  3. 软考可以一次报两门吗
  4. Electron中与Vue集成流程
  5. 单例模式--工厂模式
  6. Java写入Excel文件
  7. 火狐 html5 退出 白屏,Html5+ 后退按钮出现白屏(webView.back会白屏)
  8. Json与List的相互转换 [谷歌的Gson.jar和阿里的fastJson.jar]
  9. Excel如何快速生成二维码图片?
  10. matlab中卡尔曼滤波,卡尔曼滤波算法及MATLAB实现
  11. Kero---knockout
  12. 利用极域电子教室控制别人电脑
  13. Unity3D制作塔防类游戏
  14. Bit Miracle Jpeg2000-SEO狼术
  15. Ardunio——ULN2003驱动板和直流电机风扇——控制风扇转速
  16. Centos7系统安全漏洞及修复方案
  17. java sequencer_UVM学习笔记--sequence和sequencer(转)
  18. 当你输入信用卡号码的时候,有没有担心输错了而造成损失呢?其实可以不必这么担心,因为并不是一个随便的信用卡号码都是合法的,它必须通过Luhn算法来验证通过。 该校验的过程:1、从卡号最后一位数字开始,逆
  19. sso php 实现,Jasny-SSO
  20. 【R语言】必学包之dplyr包

热门文章

  1. multisim10中设置变压器匝数比的两种方法
  2. 基于NSIS的Qt项目打包
  3. QT出现应用程序无法正常启动0xc000007b的错误
  4. 关于Redis在windows上运行及fork函数问题
  5. CMOS数字集成电路
  6. API函数之GetUserName
  7. windows和Linux下西部数据C1门解决方法
  8. 【系统分析师之路】2010年系统分析师上午综合知识真题
  9. 输入框中有内容才激活组件
  10. 人口流动趋势matlab,中国人口增长模型(论文).doc