11.8 机器学习-----自动归纳

数据挖掘是随着商务智能发展起来的一种相对比较新的一种算法学科。

只知道自己想学习的是数据挖掘和大数据,但是真的说出个所以然自己真的办不到。现在说是一种算法学科,忽然觉得自己学习那么多的算法还是挺好的。

“挖掘”就是说明一些东西不是在表面,需要进行不断的深度研究,等一系列的工作,从而获得知识。

机器学习也是计算机算法分支的一个学科。以前的算法大都是解决模型上的确定问题,有人直接的进行编写,然后计算机一步步的执行。而机器学习要解决的就是通过设计算法,对输入的数据进行归纳总结,然后根据归纳的结果进行相应的输出。

资料:

机器学习-----有监督,无监督,半监督学习的简单阐释 - CSDN博客
https://blog.csdn.net/luolang_103/article/details/79861257

1.非监督学习

非监督学习是直接对输入的数据进行建模例如聚类,隐马尔可夫模型。(输入数据不做监督,不做标签)


比如经常使用的K-Mean算法

资料2018-3-10 kKNN与K-mean的区别以及各自的Python代码(别人写的好的文章) - CSDN博客
https://blog.csdn.net/luolang_103/article/details/79508426

2.监督学习

(1)监督学习的工作环节:学习,分类

(2)具体的过程就是:

在实际的应用“学习”和“分类”迭代进行,用“分类”的结果验证“学习”的正确性,调整“学习”后,再用不断的“分类”时间来进行验证和反馈调整---------监督学习的完整过程

贝叶斯概率

资料来源:

概率--学习朴素贝叶斯分布 - 彭谨 - 博客园

https://www.cnblogs.com/SCUJIN/p/5927464.html

理解朴素贝叶斯和分类

朴素贝叶斯算法起源于18世纪数学家托马斯·贝叶斯(Thomas Bayes)的工作,贝叶斯发明了用于描述事件在已知的一系列事件发生的情况下发生的概率以及如何根据各种增加的附加信息修正概率的基本数学原理(现称为贝叶斯方法)。

利用贝叶斯算法可以通过已知条件来预测未知发生的事情。如果把已知条件理解为贝叶斯的先验概率分布,需要预测的结局看成是一种分类结果。那么利用贝叶斯算法对样本进行分类就被成为贝叶斯分类。朴素贝叶斯分类器(Naive Bayes classifier),是一种简单有效的常用分类算法。

4.2.1 贝叶斯定理

P(A|B)表示事件B已经发生的前提下,事件A发生的概率,叫做事件B发生下事件A的条件概率。其基本求解公式为:

更进一步,两件事情同事发生的概率P(AB),实际上等于某一件事情独立发生的概率(P(A))和在A发生的情况下B发生的概率(P(B|A))的乘积,因此有贝叶斯定理是关于条件概率的定理,其公式如下:

公式中P(A|B)是已知B发生后A的条件概率,也由于得自B的取值而被称作A的后验概率。

P(A)是A的先验概率或边缘概率(Prior probability)。代表着我们想考察事件在自然界中的一般分布。

P(B)是B的先验概率或边缘概率,又称为标准化常量(Normalized constant)。代表着我们已经知道的条件B在自然界当中的一般分布。

P(B|A) 是已知A发生后B的条件概率,叫做似然函数(likelihood)也由于得自A的取值而被称作B的后验概率。代表在已经发生的各种情况中,我们想考察的事件A是否经常伴随着条件B出现。

必须指出,即使事件A经常伴随着条件B出现,也不能说明条件B的出现一定意味着A会出现。因为如果条件B是一种非常常见的现象,那么条件B出现与否和A事件发生的关系也不会太大,因此我们可以将P(B|A)/ P(B)理解为调整因子,也被称为标准化似然度(standardised likelihood)。此时公式可以变为:

贝叶斯推断中有几个关键的概念需要说明下:

  • 第一个是先验概率,先验概率是一种分布,可以理解为我们一般条件下我们认为某件事情是不是经常发生。
  • 第二个是似然函数,似然函数是对某件事发生的可能性的判断,与条件概率正好相反。似然函数是给定某一参数值,求某一结果的可能性。可以理解为以前长期观察得到的两者相关概率。例如:概率是抛一枚匀质硬币,抛10次,问6次正面向上的可能性多大?而似然函数是问抛一枚硬币,抛10次,结果6次正面向上,问其是匀质的可能性多大?
  • 第三个是调整因子:调整因子是似然函数与先验概率的比值,这个比值相当于一个权重,用来调整后验概率的值,使后验概率更接近于真实概率。

贝叶斯定理之所以有用,是因为我们在生活中经常遇到这种情况:我们可以很容易通过对以往的事情观测直接得出P(A|B),而P(B|A)则很难直接得出,但我们更关心P(B|A),贝叶斯定理就为我们打通从P(A|B)获得P(B|A)的道路。贝叶斯推断可以理解为通过先验概率和调整因子来获得后验概率。

后验概率 = 先验概率 × 调整因子

举个例子:

某青年人在参加单位组织的体检时,被检出HIV呈阳性。这自然会让这人感到极度震惊。

假设整个人群感染HIV的概率是0.08%。这家医院使用的检测方法正确率是99%(也就是对已经确诊携带HIV病毒的病人检测出阳性的概率是99%(true positive rate),对没有携带HIV病毒的人检测呈阴性的概率也是是99%(true negative rate))。那么我们用贝叶斯定理可以计算出计算一下小李的患病概率。假设A表示携带HIV病毒事件,B表示检测结果呈阳性事件,那么我们要求解的就是在检测结果呈阳性的情况下的真实患病概率,即 P(A|B)。P(A)表示患病概率,在我们的例子里是0.08%。P(B|A)表示一个人已确诊患病,检测呈阳性的概率是多少,从例子里知道P(B|A)=99%。P(B)表示随机一个人被检测呈阳性的概率是多少,这包括两部分的数据,一部分是患病且被检测呈阳性的概率,它的数值是0.08%×99%,另一部分没患病但被检测呈阳性的概率,它的数值是(1-0.08%)×(1-99%)。根据贝叶斯定理:

=7.34%

从中我们可以看出,如果人群中HIV感染率很低,那么即使是用一种正确率为99%的方法来检测,此人感染了HIV的概率并不高。

而感染概率并不高的原因则是因为我们假设的人群中HIV感染艾滋病的概率仅仅为0.08%。如果我们假设此人属于某个感染率为10%的高危群体,那么此时此人感染的概率就会高达91%。读者不妨可以根据上面的公式自己计算。

同样原理,如果此人为了确诊自己是否真的患病,用同样方法再检测了一次,依然是阳性,那么根据上面的公式:

此时我们可以看出,不做任何其它调查,如果再一次检验同样也是阳性,那么该患者感染了HIV的可能性则会急剧上升到88.9%。因此在临床上我们也经常会看到,对于某些重大疾病的诊断和确诊,增加一次检测,就可以得到准确得多的结果。而通过问诊、查体等一般性的活动,采集一些不能确诊的病案信息,对于最后的确诊也是大有好处。

连续贝叶斯

连续朴素贝叶斯分类的定义如下:

  1. 设X={a1,a2,...,am}为一个待分类项目,而每个a为X的一个特征属性值。我们可以把X理解为一个新的病人,我们已经采集到了他的身高,职业,年龄等各种不相关的临床参数。
  2. 有分类集合C={y1,y2,...,yn},这个分类集合可以看成病人需要诊断的临床结局,比如可以假定y1=感冒,y2=脑震荡
  3. 计算先验概率:P(y1|x),P(y2|x),...,P(yn|x).也就是各种参数在该病人身上的发生概率。也就是条件概率
  4. 如果P(yk|x)=max{P(y1|x),P(y2|x),...,P(yn|x)},则x∈yk.

    要计算第三步的条件概率,可以通过建立一些已经知道分类情况的样本来形成训练样本集。然后根据公式

    来计算条件概率。在这个公式里面Px是发病率,对于所有类别都是常数,所以我们只需要将分子设法最大化皆可。又因为各特征属性是条件独立的。所以有:

    也就是说,只需要把特定临床结局下各症状的概率用连乘乘起来,再乘以该特定临床结局的先验分布,就可以获得在特定一系列症状下该临床结局的概率。

    贝叶斯分类是所有分类算法中最直观最基础的算法,这种算法本质上是通过已经发生的事件来对未发生的事件进行预测。而当我们把已发生的事件当成人工智能的训练集的时候,根据训练集中的数据分布就有可能对未知样本进行判别。贝叶斯算法不但可以对未知样本的类别进行归类,还可以通过简单的计算给出特定样本属于未知类别的概率,甚至给出样本的每一个特征对于判别的贡献,因此,这种算法有助于人类对于样本的各种数据分布的理解。

回归

Regression是一种通过欧归纳样本特征和分类向量的关系得到模型表达式的过程。常见的回归有线性回归(Linear Regression),非线性回归(Non-Linear Regression)以及逻辑回归(Logistic Regression)

线性回归的表达式:    在求解过程中需要不断的优化w和b,通过Loss Function

机器学习中的训练来说 loss Function的设计:

(1)具有明确的统计学或物理解释,能够直观的说明这个值的大小以及误差之间的炼骨哈关系,并且恒为非负数

(2)loss function是否可以通过相对容易的方式进行优化。

常见的损失函数有

(1)绝对值损失函数(absolution Loss Function)

(2)平方损失函数(Squadratic Loss Function)

(3)0-1损失函数(0-1 LossFunction)

(4)对数损失函数(logarithmic Loss Function)

(5)Hinge损失函数(Hinge Loss Function)

注意:在假设样本是高斯分布的条件下,平方损失函数是一个处处可导的凸函数。 这种用平方损失函数的方式求解线性回归拟合汇总的待定系数的方法叫做“最小二乘法”

《数据科学家养成手册》--第十一章算法学2---(非监督,监督贝叶斯概率以及损失函数)相关推荐

  1. 《数据科学家养成手册》第九章信息论

    事先声明: 兴趣使然,阅读书籍的过程中看了一些资料,但并不能看太懂 信息论是围绕数据存储于传输量化等一系列问题所展开的一门专门研究信息的学科. 一句话总结作者:"在某一种设定情况下,最简洁可 ...

  2. 《数据科学家养成手册》第十一章------算法学1(穷举,分治,回溯,贪心,迭代)

    1.对于计算机学科的人员,无论是怎么样子的工作都是需要了解算法的-----从而获得解决日常问题的基本的思路 2.计算机底层的数理计算逻辑仍然是"与""或"&qu ...

  3. 《数据科学家养成手册》第十一章----算法学(非线性回归)

    对于非线性回归,通常的思路: (1)把它转化为线性回归模型进行拟合,其余不能转换的则通过经验,观察,多次尝试等法进行拟合,博能够从中找去拟合误差最小的情况. 常用的线性回归模型: (1)双曲线   双 ...

  4. 《数据科学家养成手册》--第四章---数据科学的使命

    4.1.2  从信息到数据 1948年香农(好像吐槽输入法)发表的论文<通信的数学理论>(A Mathematical Theory of Communication)其中的话: if t ...

  5. 《数据科学家养成手册》第五章---矛盾的世界笔记

    (1)世界中存在继续多相互矛盾的事物.矛盾通常是指事物相互影响和对立的关系.比如太阳的东升的同时没有办法西落. (2)数学中的虚数是与现实世界的实数相对的.虚数和实数的结合形成复数,通过复数构建的矢量 ...

  6. 《数据科学家养成手册》第十章--混沌论

    <For the want of nail> For the want of a nail, the shoe was lost;for want of a shoe, the horse ...

  7. 《数据科学家养成手册》第八章---统计学

    数理统计的鼻祖------阿道夫.凯特勒 1.凯特勒的"平均人"思想 凯特勒运用概率论的方法进一步的研究了社会道德领域的大量统计资料,发现"在我们对大多数人进行观察的时候 ...

  8. 《数据科学家养成手册》--“什么性质的人才能称得上科学家?” “科学的意思”

    什么性质的人才称为科学家? 有的时候我们会就的科学家就像是明星一样,距离我们很遥远(自己觉的比明星遥远的多)但是,他们都是凡人啊.都和我们是一样的啊.为什么有想法不勇敢的去追求这个目标? 科学 &qu ...

  9. 《数据科学家养成手册》傅里叶变换与反傅里叶变换笔记

    最早的电话使用的模拟信号原理图 (1)声音通过金属振动膜感应声波来影响磁场和电流,并将这种带有金属振动膜振动的"信息"的电流传递给另一端 (2)另一端则进行反向工作,把不断变化的电 ...

最新文章

  1. Color Pilot 5中文版
  2. 新版ADT出现appcompat_v7的问题
  3. [TJOI2011] 卡片(网络流 + 质因子优化建图)
  4. 硒测试中所需的功能和示例
  5. 每日一题(25)—— 自加++
  6. postgresql编译安装
  7. 100-days: Six
  8. ibm刀片机服务器安装系统,IBM刀片服务器安装.doc
  9. 小学生计算机应用教学ppt,小学计算机课件ppt
  10. 路由器 AP、路由、中继、桥接模式的区别
  11. matlab dff求导,matlab的多元函数微积分学.ppt
  12. 计算机密码设置要求包括哪些内容,电脑开机密码设置方法有哪些
  13. 《读九章算术学Python》如何用Python编程实现盈不足术?附图解分析、代码实现和习题解答
  14. 卸载MySQL残余及修改密码
  15. 灰色预测模型及其代码
  16. 以虎贲T710为核心的高性能AI开发板-BU99开发板
  17. 河北大学生命科学学院期末Biopython编程实践。利用Biopython包读取新冠病毒(id:NC_045512.2)序列(GenBank格式NC_045512.2.gb),将其中FEATURE的类
  18. 关于WPS分节符的删除
  19. fcpx如何用光流法_熟悉这些fcpx剪辑技巧 快速提高你的剪辑效率
  20. java获取cpu数量

热门文章

  1. Python图片处理PIL/pillow/生成验证码/出现KeyError: 和The _imagingft C module is not installed...
  2. zabbix菜单出现问号乱码问题
  3. Linux下屏蔽Ctrl+Alt+Delete
  4. 随手拈来尽是折劲额事体
  5. 蒙特卡洛粒子滤波定位算法_粒子滤波——来自哈佛的详细的粒子滤波器教程【1】...
  6. python中pop函数_Python中的Pop函数
  7. 代码注释//_您应该停止编写//的五个代码注释,并且//应该开始的一个注释
  8. 微信公众号开发本地环境开发_如何在5分钟内使HTTPS在本地开发环境上工作
  9. 轻有力读后感ppt_如果您希望招聘人员认真对待您,请建立强有力的个人叙述。...
  10. 初创企业股权架构_初创企业如何以每月不到200美元的价格利用生产级基础架构...