秦曾昌人工智能课程---5、KNN和朴素贝叶斯

一、总结

一句话总结:

拟合和概率:构建机器学习模型,一般有拟合和概率两种方式
轻学无用:一定要保证学有所用,要深入学习,比如之前做的安卓,一定要学通,不然真的没用,完全浪费时间

1、参数模型(Parametric model)是什么?

通过结构化表达式和参数集表示的模型

参数模型(Parametric model)一类可以通过结构化表达式和参数集表示的模型.参数模型是以代数方程、微分方程、传递函数等形式表达的,或采用机抑方法建立的模型。

2、非参数模型K-Nearest Neighbor (k-NN)的原理和作用是什么?

解决的问题:监督学习:有空心点和实心点,我要判断一个三角形属于哪种点
原理:找离这个点最近的k个点,那种类型的已知点多,k就是哪种点
用途:used for classification andregression
特点:k越大越平滑(太大的话就没有意义了),k=1的时候overfitting,一般5-10之间

k-nearest neighbors algorithm (k-NN) is a non-parametric method used for classification and regression. The input consists of the k closest training examples in the feature space.

3、机器学习模型为什么没有必要做到overfitting?

因为数据本身就有噪声污染,所以没有必要,这样过犹不及

4、比如我们想知道一个同学的英语成绩,我们怎么用k-NN做?

采样他的多个朋友的成绩,然后取均值,比如3个

5、How k-NN Work for Prediction?

1. Assume K and x0:Assume a value for the number of nearest neighbors K and a prediction point x0.
2. identifies:KNN identifies the training observations No closest to the prediction point x0.
3. using the average:KNN estimates f (x0) using the average of all the responses in N0

1.假设最近邻居数K和预测点x0的值。
2. KNN识别训练观察结果最接近预测点x0。
3. KNN使用N0中所有响应的平均值来估计f(x0)

6、k-NN判断的时候,如果k=4,如果最接近新点的两种已知点的个数都是2,那么这个时候如何判断新点的归属?

看距离和:计算新点到两种已知点的具体距离然后比较

7、常用的Distance Measure的方式?

Euclidean distance (r=2):欧式距离:其实就是应用勾股定理计算两个点的直线距离
Manhattan distance (r=1):曼哈顿距离:x上绝对值,y上绝对值
Hamming distance:求异或Xor:相同为0,不同为1:when all features are binary

Minkowski Distance:闵可夫斯基距离:闵氏距离不是一种距离,而是一组距离的定义。
闵氏距离不是一种距离,而是一组距离的定义。

(1)闵氏距离的定义

两个n维变量a(x11,x12,…,x1n)与b(x21,x22,…,x2n)间的闵可夫斯基距离定义为:

其中p是一个变参数。
当p=1时,就是曼哈顿距离
当p=2时,就是欧氏距离
当p→∞时,就是切比雪夫距离
       根据变参数的不同,闵氏距离可以表示一类的距离。

8、Edited Distance Measure是什么?

measure the similarity between two objects:比如a戴耳环,b不带耳环,那么距离为1,a长头发,b也是,距离就是0

To measure the similarity between two objects, transform one into the other, and measure how much effort it took. The measure of effort becomes the distance measure.

measure
英 ['meʒə]  美 ['mɛʒɚ]
n. 测量;措施;程度;尺寸
vt. 测量;估量;权衡
vi. 测量;估量
[ 过去式 measured 过去分词 measured 现在分词 measuring ]

9、如何理解“算法没什么好坏之分”?

不同算法适应于不同的模型,可能这个算法在这个模型中的应用很好,但是在别的模型中的表现就很一般了

10、贝叶斯法则是什么?

问题:Pr(A|B) 一般不等于 Pr(B|A)
公式:后验概率= (相似度 *先验概率)/标准化常量:Pr(A|B) = Pr(B|A)*Pr(A)/Pr(B)
定义:Pr(A|B)是已知B发生后A的条件概率

通常,事件A在事件B(发生)的条件下的概率,与事件B在事件A的条件下的概率是不一样的;然而,这两者是有确定的关系,贝叶斯法则就是这种关系的陈述。
Pr(A)是A的先验概率或边缘概率。之所以称为"先验"是因为它不考虑任何B方面的因素。
Pr(A|B)是已知B发生后A的条件概率,也由于得自B的取值而被称作A的后验概率。
Pr(B|A)是已知A发生后B的条件概率,也由于得自A的取值而被称作B的后验概率。
Pr(B)是B的先验概率或边缘概率,也作标准化常量(normalized constant)。

11、朴素贝叶斯中,x’=(Outlook=Sunny, Temperature=Cool, Humidity=High, Wind=Strong),那么P(Yes|x’)怎么算?

乘积:P(Yes|x’) ≈ [P(Sunny|Yes)P(Cool|Yes)P(High|Yes)P(Strong|Yes)]P(Play=Yes) = 0.0053

P(No|x’) ≈ [P(Sunny|No) P(Cool|No)P(High|No)P(Strong|No)]P(Play=No) = 0.0206

12、k临近算法的作用是什么?

分类
预测(回归)

13、相对独立的两个随机变量的协方差是怎样的?

趋于0:协方差表示两者之间的关系,关系为0表示没什么关系

14、协方差是什么?

衡量两个变量的总体误差。方差是协方差的一种特殊情况,即当两个变量是相同的情况。

协方差(Covariance)在概率论和统计学中用于衡量两个变量的总体误差。而方差是协方差的一种特殊情况,即当两个变量是相同的情况。
协方差表示的是两个变量的总体的误差,这与只表示一个变量误差的方差不同。 如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值,另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值。 如果两个变量的变化趋势相反,即其中一个大于自身的期望值,另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值。

15、两个变量之间相互独立的图形表示是什么?

变量组成的点在坐标系中是随机的
如果变量组成的点大致形成某些图形,比如圆,比如直线,那么这两个变量不是独立的

16、朴素贝叶斯方法的基本假设是什么?

特征变量之间相对独立

17、朴素贝叶斯方法在机器学习中能用来干什么?

NB for Spam Filtering:选择常用50000个单词,看这些单词在正常邮件,垃圾邮件中出现的概率,垃圾邮件里面有一些词,根据【这些词】及【之前词在正常和垃圾邮件中的概率】判断是不是垃圾邮件

But if we have, say, y ∈ {0,1} for being spam or non-spam email, a vocabulary
of 50000 words, then x ∈ {0, 1}上标50000:看每个参数出现还是没有出现,出现为0,没出现为1

18、朴素贝叶斯方法做垃圾邮件分类的原理是什么?

判断词的概率:选择常用50000个单词,看这些单词在正常邮件,垃圾邮件中出现的概率,垃圾邮件里面有一些词,根据【这些词】及【之前词在正常和垃圾邮件中的概率】判断是不是垃圾邮件

19、邮件如何映射成高维空间的向量?

选择常用50000个单词,看每个词出现的次数或是否出现

20、朴素贝叶斯方法做垃圾邮件分类的正确率一般有多少?

94%+:其实朴素贝叶斯要求的是特征变量之间相对独立,但是我们说话其实词与词之间是不独立的,比如我要喝...,后面出现的一般都是什么饮料,水之类的

21、我们说话,或者邮件里面的语句中的词是相互独立的么,可以用朴素贝叶斯方法么?

不独立,但是可以用,精确度小一点而已
词与词之间是不独立:我们说话其实词与词之间是不独立的,比如我要喝...,后面出现的一般都是什么饮料,水之类的

22、使用朴素贝叶斯方法做垃圾邮件分类的python代码我们要特别注意的是什么?

pip安装jieba包:引入了jieba包,我们需要用pip安装jieba包:D:\software\coding\python>pip install jieba

23、python中常用的安装包的工具是什么?

pip:比如pip安装jieba包:pip install jieba

二、内容在总结中

 

秦曾昌人工智能课程---5、KNN和朴素贝叶斯的更多相关文章

  1. 秦曾昌人工智能课程---7、决策树集成学习Tree Ensembles

    秦曾昌人工智能课程---7.决策树集成学习Tree Ensembles 一.总结 一句话总结: 其实机器模型减少variance的比较好的方式就是 多个模型取平均值 1.CART是什么? classi ...

  2. 秦曾昌人工智能课程---6、Decision Tree Learning

    秦曾昌人工智能课程---6.Decision Tree Learning 一.总结 一句话总结: 怎样去构建决策树:比如一维:***|00|***|000|***,|为分割线,每个分割点都是一种情况, ...

  3. 腾讯公司数据分析岗位的hadoop工作 线性回归 k-means算法 朴素贝叶斯算法 SpringMVC组件 某公司的广告投放系统 KNN算法 社交网络模型 SpringMVC注解方式

    腾讯公司数据分析岗位的hadoop工作 线性回归 k-means算法 朴素贝叶斯算法 SpringMVC组件 某公司的广告投放系统 KNN算法 社交网络模型 SpringMVC注解方式 某移动公司实时 ...

  4. 3.朴素贝叶斯和KNN算法的推导和python实现

    前面一个博客我们用Scikit-Learn实现了中文文本分类的全过程,这篇博客,着重分析项目最核心的部分分类算法:朴素贝叶斯算法以及KNN算法的基本原理和简单python实现. 3.1 贝叶斯公式的推 ...

  5. 什么是机器学习的分类算法?【K-近邻算法(KNN)、交叉验证、朴素贝叶斯算法、决策树、随机森林】

    1.K-近邻算法(KNN) 1.1 定义 (KNN,K-NearestNeighbor) 如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类 ...

  6. 人工智能_4_k近邻_贝叶斯_模型评估

    机器学习常用算法 k近邻算法 求出未知点 与周围最近的 k个点的距离 查看这k个点中大多数是哪一类 根号((x已知-x未知)^2+(y已知-y未知)^2) 即平面间2点距离公式 收异常点影响较大,因此 ...

  7. 斯坦福经典AI课程CS 221官方笔记来了!机器学习模型、贝叶斯网络等重点速查...

    [导读]斯坦福大学的人工智能课程"CS 221"至今仍然是人工智能学习课程的经典之一.为了方便广大不能亲临现场听讲的同学,课程官方推出了课程笔记CheatSheet,涵盖4大类模型 ...

  8. 基于贝叶斯模型和KNN模型分别对手写体数字进行识别

    首先,我们准备了0~9的训练集和测试集,这些手写体全部经过像素转换,用0,1表示,有颜色的区域为0,没有颜色的区域为1.实现代码如下: # 图片处理 # 先将所有图片转为固定宽高,比如32*,然后再进 ...

  9. 课程分享 企业普及版贝斯OA与工作流系统

    企业普及版贝斯OA与工作流系统 基于J2EE+JBPM3.x/JBPM4.3+Flex流程设计器+Jquery+授权认证企业普及版贝斯OA与工作流系统 假设对这个课程有兴趣的.能够和我联系.QQ205 ...

随机推荐

  1. python -jieba 安装+分词+定位

    1.jieba 库安装 方法1:全自动安装(容易失败):easy_install jieba 或者 pip install jieba / pip3 install jieba 方法2:半自动安装(推 ...

  2. 操作系统之IO管理

    IO系统结构 设备的分类 按数据组织分 块设备: 信息的存取总是以数据块为单位. 它属于有结构设备,如磁盘等. 磁盘设备的基本特征是传输速率较高,以及可寻址,即对它可随机地读/写任一块. 字符设备: ...

  3. Vue学习笔记【9】——Vue指令之v-for和key属性

    迭代数组(普通数组.对象数组) <ul> <li v-for="(item, i) in list">索引:{{i}} --- 姓名:{{item.name ...

  4. linux环境下安装PHP的OpenSSL扩展

    先安装依赖包:yum install openssl openssl-devel 进入PHP安装包里的OpenSSL文件夹,根据个人的安装包位置不同,此处是 cd /home/local/php.5. ...

  5. Springboot开篇

    1.Spring -boot-starter-web:用于构建web 应用模块,加入后包含spring mvc框架,默认内嵌tomcat容器 2.spring-boot-starter-jpa:用于构 ...

  6. windows10安装sqlmap与简单配置

    一.获取sqlmap压缩包: 注意:安装sqlmap之前,先确认已有python2.x环境 获取sqlmap压缩包并解压 下载地址:http://sqlmap.org/ 二.将解压缩的文件放在pyth ...

  7. DOS和DDOS攻击

    1.什么是DOS攻击 首先注意这里是DOS(Denial Of Service)攻击,并非DoS.DoS是微软早期的系统版本. DoS即Denial Of Service,拒绝服务的缩写.DoS是指故 ...

  8. PHP简单读取XML

    DOM document object model,文档对象模型,就是树形结构 节点的分类 元素节点 属性节点 值节点 注释节点 根节点(document才是根节点) 生成XML文档 xml的根节点为 ...

  9. SDUTOJ 3374 数据结构实验之查找二:平衡二叉树

    题目链接:http://acm.sdut.edu.cn/onlinejudge2/index.php/Home/Index/problemdetail/pid/3374.html 题目大意 略. 分析 ...

  10. Logic回归总结

    转自http://blog.csdn.net/dongtingzhizi/article/details/15962797 当我第一遍看完台大的机器学习的视频的时候,我以为我理解了逻辑回归,可后来越看 ...