统计学

SVM入门

倾然丶 夕夏残阳落幕 提交于 2019-11-27 10:00:23
(一)SVM的八股简介 支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中[10]。 支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力[14](或称泛化能力)。 以上是经常被有关SVM 的学术文献引用的介绍,有点八股,我来逐一分解并解释一下。 Vapnik是统计机器学习的大牛,这想必都不用说,他出版的《Statistical Learning Theory》是一本完整阐述统计机器学习思想的名著。在该书中详细的论证了统计机器学习之所以区别于传统机器学习的本质,就在于统计机器学习能够精确的给出学习效果,能够解答需要的样本数等等一系列问题。与统计机器学习的精密思维相比,传统的机器学习基本上属于摸着石头过河,用传统的机器学习方法构造分类系统完全成了一种技巧,一个人做的结果可能很好,另一个人差不多的方法做出来却很差,缺乏指导和原则。 所谓VC维是对函数类的一种度量,可以简单的理解为问题的复杂程度,VC维越高,一个问题就越复杂

SVM入门(一 ~ 三)简介 (转)

杀马特。学长 韩版系。学妹 提交于 2019-11-27 06:38:34
(一)SVM的八股简介 支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中[10]。 支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力[14](或称泛化能力)。 以上是经常被有关SVM 的学术文献引用的介绍,有点八股,我来逐一分解并解释一下。 Vapnik是统计机器学习的大牛,这想必都不用说,他出版的《Statistical Learning Theory》是一本完整阐述统计机器学习思想的名著。在该书中详细的论证了统计机器学习之所以区别于传统机器学习的本质,就在于统计机器学习能够精确的给出学习效果,能够解答需要的样本数等等一系列问题。与统计机器学习的精密思维相比,传统的机器学习基本上属于摸着石头过河,用传统的机器学习方法构造分类系统完全成了一种技巧,一个人做的结果可能很好,另一个人差不多的方法做出来却很差,缺乏指导和原则。 所谓VC维是对函数类的一种度量,可以简单的理解为问题的复杂程度,VC维越高,一个问题就越复杂

[转]概率漫谈

懵懂的女人 提交于 2019-11-27 06:23:11
以下资料来自 Dahua 的博客,非常可惜后来该博客关闭了。 前一段时间,随着研究课题的深入,逐步研习现代概率理论,这是一个令人耳目一新的世界。这个世界实在太博大,我自己也在不断学习之中。这篇就算起一个头吧,后面有空的时候还会陆续写一些文章和大家分享我在学习过程中的思考。 概率论要解决的问题 概率论是很古老的数学分支了——探讨的是不确定的问题,就是说,一件事情可能发生,也可能不发生。然后,我们要预计一下,它有多大机会会发生,这是概率论要解决的问题。这里面要特别强调概率和统计的区别,事实上这个区别在很多文章里面被混淆了。举一个简单的例子,比如抛硬币。那么我们可以做两件事情: 我们预先知道抛硬币的过程是“平衡的”,也就是说出现正面的机会和出现背面的机会都是50%,那么,这就是我们的概率模型——这个简单的模型有个名字——伯努利试验(Bernoulli trial)。然后,我们可以预测,如果我们抛10000次硬币,那么正面和背面出现的次数大概各在5000次左右。这种执因“测”果的问题是概率论要解决的,它在事情发生之前进行。 我们预先不知道抛硬币的过程遵循什么法则。于是,我们先去做个实验,抛10000次硬币,数一下正面和反面各出现了多少次。如果各出现了5000次,那么我们可以有很高的信心去认为,这是一个“平衡的”硬币。如果正面出现9000次,反面出现1000次

机器学习实战——3.决策树

情到浓时终转凉″ 提交于 2019-11-27 00:35:01
决策树常用来处理分类问题,也是最经常使用的数据挖掘算法。它之所以如此流行,一个很重要的原因就是使用者基本上不用了解机器学习算法,也不用深究它是如何工作的。下图所示的流程图就是一个决策树,正方形代表判断模块(decision block),椭圆形代表终止模块(terminating block),表示已经得出结论,可以终止运行。从判断模块引出的左右箭头称作分支(branch),它可以到达另一个判断模块或者终止模块。下图构造了一个假想的邮件分类系统,它首先检测发送邮件域名地址,如果地址为myEmployer,则将其放在分类“无聊时需要阅读的邮件”中。如果邮件不是来自这个域名,则检查邮件内容是否包含单词曲棒球,如果包含则将邮件归类到“需要及时处理的朋友邮件”,如果不包含则将邮件归类为“无需阅读的垃圾邮件”。 k-近邻算法可以完成很多分类任务,但是它最大的缺点就是无法给出数据的内在含义,决策树的主要优势就在于数据形式容易理解。 决策树算法能够读取数据集合,它的很多任务都是为了数据中所蕴含的知识信息,因此决策树可以使用不熟悉的数据集合,并从中提取出一系列规则,机器学习算法最终将使用这些机器从数据集中创造的规则。专家系统中经常使用决策树,而且决策树给出结果往往可以匹敌在当前领域具有几十年工作经验的人类专家。 3.1决策树的构建 决策树: 优点:计算复杂度不高,输出结果易于理解

通俗易懂的AI算法原理

我是研究僧i 提交于 2019-11-26 21:46:39
https://www.toutiao.com/a6706348363916247559/ 写给产品经理的机器学习算法入门,在文章中会忽略一些细节以及算法本身具体的实现方式。我想尽量用直白的语言、较少的数学知识给各位产品经理讲清楚各个算法的原理是什么。 机器学习的过程 机器学习的过程从本质上来说就是通过一堆的训练数据找到一个与理想函数(f)相接近的函数。在理想情况下,对于任何适合使用机器学习的问题在理论上是存在一个最优的函数让每个参数都有一个最合适的权重值,但在现实应用中不一定能这么准确得找到这个函数,所以我们要去找与这个理想函数相接近的函数,能够满足我们的使用那么我们就认为是一个好的函数。 这个训练数据的过程通常也被解释为在一堆的假设函数(Hypothesis set)中,它是包含了各种各样的假设,其中包括好的和坏的假设,我们需要做的就是从这一堆假设函数中挑选出它认为最好的假设函数(g),这个假设函数是与理想函数(f)最接近的。 机器学习过程 机器学习这个过程就好比在数学上,我们知道了有一个方程和一些点的坐标,用这些点来求这个方程的未知项从而得到完整的方程是什么。但在机器学习上我们往往很难解出来这个完整的方程是什么,所以我们只能通过各种手段求最接近理想情况下的未知项取值,使得这个结果最接近原本的方程。 什么问题适合用机器学习解决 机器学习不是万能的,并不能解决所有的问题

《从机器学习到深度学习基于scikit-learn与TensorFlow的高效开发实战》PDF代码分析

*爱你&永不变心* 提交于 2019-11-26 21:16:41
用通俗的语言讲解涵盖算法模型的机器学习,主要内容包括机器学习通用概念、三个基本科学计算工具、有监督学习、聚类模型、降维模型、隐马尔可夫模型、贝叶斯网络、自然语言处理、深度学习、强化学习、模型迁移等。在深入浅出地解析模型与算法之后,介绍使用Python相关工具进行开发的方法、解析经典案例,能理解、能设计、能编码、能调试,没有基础的在学习后也能够上手设计与开发机器学习产品。 推荐学习《从机器学习到深度学习:基于scikit-learn与TensorFlow的高效开发实战》,场景式机器学习实践,理论方面从人工智能与机器学习的基本要素讲起,逐步展开有监督学习、无监督学习、强化学习这三大类模型的应用场景与算法原理;实践方面通过金融预测、医疗诊断概率模型、月球登陆器、图像识别、写诗机器人、中国象棋博弈等案例,将机器学习应用在各行各业里,其中后三个案例使用了深度学习技术。 《从机器学习到深度学习:基于scikit-learn与TensorFlow的高效开发实战》PDF,369页,有目录,文字可复制;配有源代码。 下载: https://pan.baidu.com/s/1eTyELSW6n9dNffcXHw_oiQ 提取码: 65da 感觉深度学习中应用RNN实现一个写诗机器人,挺有意思,基于LSTM讲解开发步骤:网络架构、数据加载、搭建TensorFlow Graph 、解析LSTM RNN

线性回归 - 机器学习多元线性回归 - 一步一步详解 - Python代码实现

风流意气都作罢 提交于 2019-11-26 15:33:31
目录 数据导入 单变量线性回归 绘制散点图 相关系数R 拆分训练集和测试集 多变量线性回归 数据检验(判断是否可以做线性回归) 训练线性回归模型 先甩几个典型的线性回归的模型,帮助大家捡起那些年被忘记的数学。 ● 单变量线性回归: h(x)=theta0 + theta1* x 1 ● 多变量线性回归: h(x)=theta0 + theta1* x 1 + theta2* x 2 + theta3* x 3 ● 多项式回归: h(x)=theta0 + theta1* x 1 + theta2* (x2^2) + theta3* (x3^3) 多项式回归始终还是线性回归,你可以令x2=x2^2,x3=x3^3,简单的数据处理一下就好了,这样上述多项式回归的模型就变成多变量线性回归的模型了。 数据导入 下面我们要开始用数据说话了,先来看看数据源是什么样子吧。 import pandas as pd import numpy as np import matplotlib.pyplot as plt from pandas import DataFrame,Series from sklearn.cross_validation import train_test_split from sklearn.linear_model import LinearRegression

数据挖掘和机器学习

时光总嘲笑我的痴心妄想 提交于 2019-11-26 11:37:37
机器学习: 是人工智能的核心研究领域,目前把他定义为: 利用经验来改善计算机系统性能 。 对于“经验”,实际上在计算机中,“经验”是以数据的形式存在的,所以机器学习 需要对数据进行分析运用。 提高泛化能力(generalization ability)是机器学习中最重要的问题之一。泛化能力表征了机器学习系统对新事件的适应能力,简单来说泛化能力越强,系统对事件做出的预测就越准确。 机器学习本质上就是一种对问题真实模型的逼近(我们选择一个我们认为比较好的近似模型,这个近似模型就叫做一个假设),但毫无疑问,真实模型一定是不知道的(如果知道了,我们干吗还要机器学习?直接用真实模型解决问题不就可以了?对吧,哈哈)既然真实模型不知道,那么我们选择的假设与问题真实解之间究竟有多大差距,我们就没法得知。比如说我们认为宇宙诞生于150亿年前的一场大爆炸,这个假设能够描述很多我们观察到的现象,但它与真实的宇宙模型之间还相差多少?谁也说不清,因为我们压根就不知道真实的宇宙模型到底是什么。 这个与问题真实解之间的误差,就叫做风险(更严格的说,误差的累积叫做风险)。我们选择了一个假设之后(更直观点说,我们得到了一个分类器以后),真实误差无从得知,但我们可以用某些可以掌握的量来逼近它。最直观的想法就是使用分类器在样本数据上的分类的结果与真实结果(因为样本是已经标注过的数据,是准确的数据)之间的差值来表示