在训练集上有个好的效果不见得在测试集中效果就好,因为可能存在过拟合(over-fitting)的问题. 如果训练集的数据质量很好,那我们只需对这些有效数据训练处一堆模型,或者对一个模型给定系列的参数值,然后再根据测试集进行验证,选择效果最好的即可: 大多数情况下,数据集大小是有限的或质量不高,那么需要有个第三测试集,用于测试选中的模型的评估. 为了构建好的模型,我们常常选用其中质量较高的数据拿来训练,这就存在一个问题就是测试集的数据质量变低,导致预测的效果由于noisy而导致性能较差. 这种解决…
1.1. Example: Polynomial Curve Fitting 1. Movitate a number of concepts: (1) linear models: Functions which are linear in the unknow parameters. Polynomail is a linear model. For the Polynomail curve fitting problem, the models is : which is a linear…
Linear Basis Function Models 线性模型的一个关键属性是它是参数的一个线性函数,形式如下: w是参数,x可以是原始的数据,也可以是关于原始数据的一个函数值,这个函数就叫basis function,记作φ(x),于是线性模型可以表示成: w0看着难受,定义一个函数φ0(x) = 1, 模型的形式再一次简化成: 以上就是线性模型的一般形式.basis function有很多选择,例如Gaussian.sigmoid.tanh (tanh(x) = 2 * sigmoid(…
什么是模式识别(Pattern Recognition)? 按照Bishop的定义,模式识别就是用机器学习的算法从数据中挖掘出有用的pattern. 人们很早就开始学习如何从大量的数据中发现隐藏在背后的pattern.例如,16世纪的Kepler从他的老师Tycho搜集的大量有关于行星运动的数据中发现了天体运行的规律,并直接导致了牛顿经典力学的诞生.然而,这种依赖于人类经验的.启发式的模式识别过程很难复制到其他的领域中.例如手写数字的识别.这就需要机器学习的技术了.(顺便提一下,开普勒定律在物理…
2.1. Binary Variables 1. Bernoulli distribution, p(x = 1|µ) = µ 2.Binomial distribution + 3.beta distribution(Conjugate Prior of Bernoulli distribution) The parameters a and b are often called hyperparameters because they control the distribution of…
初体验: 概率论为我们提供了一个衡量和控制不确定性的统一的框架,也就是说计算出了一大堆的概率.那么,如何根据这些计算出的概率得到较好的结果,就是决策论要做的事情. 一个例子: 文中举了一个例子: 给定一个X射线图x,目标是如何判断这个病人是否得癌症(C1或C2).我们把它看作是一个二分类问题,根据bayes的概率理论模型,我们可以得到: 因此,就是的先验概率:(假设Ck表示患病,那么就表示普通人患病的概率) 则作为是后验概率. 假设,我们的目标是:在给定一个x的情况下,我们希望最小化误分类的概率…
由于去实习过后,发现真正的后台也要懂前端啊,感觉javascript不懂,但是之前用过jQuery感觉不错,很方便,省去了一些内部函数的实现. 看了这一本<深入PHP与jQuery开发>,感觉深入浅出,值得推荐. Chapter1.jQuery简介 1.jQuery工作方式本质 先创建一个jQuery对象实例,然后对传递给该实例的参数表达式求值,最后根据这个值作出相应的响应或者修改自身. 2.利用CSS语法选择dom元素(基本选择器) 我们知道,jQuery说白了就是对网页上的内容进行选择器的…
  > 目  录 <   learning & intelligence 的基本思想 RL的定义.特点.四要素 与其他learning methods.evolutionary methods的比较 例子(井字棋 tic-tac-toe)及早期发展史    > 笔  记 <  learning & intelligence 的基本思想:learning from interaction RL的定义: RL is learning what to do--how to…
An elegant and powerful method for finding maximum likelihood solutions for models with latent variables is called the expectation-maximization algorithm, or EM algorithm. If we assume that the data points are drawn independently from the distributio…
x, a vector, and all vectors are assumed to be column vectors. M, denote matrices. xT, a row vcetor, T means transpose of a vector or matrix. (w1 , . . . , wm ), a row vector with m elements, and the corresponding column vector is written as w = (w1 …
熵 给定一个离散变量,我们观察它的每一个取值所包含的信息量的大小,因此,我们用来表示信息量的大小,概率分布为.当p(x)=1时,说明这个事件一定会发生,因此,它带给我的信息为0.(因为一定会发生,毫无悬念) 如果x和y独立无关,那么: 他们之间的关系为: (p(x)=1时,h(x)=0,负号为了确保h(x)为正,这里取2为底是随机的,可以取其他的正数(除了1)) 因此,对于所有x的取值,它的熵有: 注:,当遇到时, 这里插一段信息熵的解释: ———————————————————————————…
维数灾难 给定如下分类问题: 其中x6和x7表示横轴和竖轴(即两个measurements),怎么分? 方法一(simple): 把整个图分成:16个格,当给定一个新的点的时候,就数他所在的格子中,哪种颜色的点最多,最多的点就是最有可能的. 如图: 显然,这种方法是有缺陷的: 例子给出的是2维的,那么3维的话,就是一个立体的空间,如下图所示: 因为我们生活在3维的世界里,所以我们很容易接受3维.比如,我们考虑一个在D维环境下,半径为1和半径为1-的球体的容积之差: 他们的差即为: volume…
一个例子: 两个盒子: 一个红色:2个苹果,6个橘子; 一个蓝色:3个苹果,1个橘子; 如下图: 现在假设随机选取1个盒子,从中.取一个水果,观察它是属于哪一种水果之后,我们把它从原来的盒子中替换掉.重复多次. 假设我们40%的概率选到红盒子,60%的概率选到蓝盒子.并且当我们把取出的水果拿掉时,选择盒子中任何一个水果还是等可能的. 问题: 1.整个过程中,取得苹果的概率有多大? 2.假设已经去的了一个橘子的情况下,这个橘子来自蓝盒子的可能性有多大? (这里,推荐一篇好文:数学之美番外篇:平凡而…
书中给出了一个典型的曲线拟合的例子,给定一定量的x以及对应的t值,要你判断新的x对应的t值多少. 任务就是要我们去发现潜在的曲线方程:sin(2πx) 这时就需要概率论的帮忙,对于这种不确定给t赋何值的情况,它可以通过一种精确和量化的方式来提供一种框架, 而对于决策理论,为了根据适当的度量方式来获取最优的预测,它允许我们挖掘一种概率模型. 下面对于上面的例子展开讨论: 假设曲线的多项式方程为: 系数怎么求? 通过把多项式去拟合训练数据,我们需要设定一个error function,通过最小化这个…
模式识别领域主要关注的就是如何通过算法让计算机自动去发现数据中的规则,并利用这些规则来做一些有意义的事情,比如说,分类. 以数字识别为例,我们可以根据笔画规则启发式教学去解决,但这样效果并不理想. 我们一般的做法是: 1,统一尺寸; 2,简化色彩; 3,计算灰度平均值; 4,计算哈希值(生成指纹); 当有新的测试图片时,只需利用"汉明距离"来判断两张图片之间不同的数据位数量就可以了.这是最简单快速的方法.缺陷是如果图片上加几个字,就认不出来了.因此,它的最佳用途就是用来通过缩略图找原图…
一.最小化误差函数拟合 正则化( regularization )技术涉及到给误差函数增加一个惩罚项,使得系数不会达到很大的值.这种惩罚项最简单的形式采用所有系数的平方和的形式.这推导出了误差函数的修改后的形式: 在效果上, λ 控制了模型的复杂性,因此决定了过拟合的程度. 二.贝叶斯曲线拟合 1.正态分布( normal distribution )或者高斯分布( Gaussian distribution ) 对于一元实值变量 x ,高斯分布被定义为: 它由两个参数控制:\(μ\) ,被叫做…
一.基本名词 泛化(generalization) 训练集所训练的模型对新数据的适用程度. 监督学习(supervised learning) 训练数据的样本包含输入向量以及对应的目标向量. 分类( classification ):给每个输入向量分配到有限数量离散标签中的一个. 回归( regression ):输出由一个或者多个连续变量组成. 无监督学习(unsupervised learning) 训练数据由一组输入向量 x 组成,没有任何对应的目标值. 聚类(clustering):发现…
本章开始学习第一个有监督学习模型--线性回归模型."线性"在这里的含义仅限定了模型必须是参数的线性函数.而正如我们接下来要看到的,线性回归模型可以是输入变量\(x\)的非线性函数. 书中首先对回归问题给出了一个简短的不那么正式的定义: Given a training data set comprising \(N\) observations \(\{x_n\}\), where \(n = 1, ... , N\), together with corresponding targ…
To summarize, principal component analysis involves evaluating the mean x and the covariance matrix S of the data set and then finding the M eigenvectors of S corresponding to the M largest eigenvalues. If we plan to project our data onto the first M…
最近一直在学习MVC构建富应用的WEB程序,自己一直对MVC的设计模式理解的不是十分透彻,终于在研读了github上Spine的源码之后,对构建Model层有了一点自己的理解. 本文仅为个人理解,如有问题,欢迎指正. 对象关系映射(Ojbect-relational mapper,简称 ORM)是在除 JavaScript 以外的编程语言中常见的一种数据结构.然而在 JavaScript 应用中,对象关系映射也是一种非常有用的技术,它可以用来做数据管理及用作模型.比如使用 ORM 你可以将模型和…
深度学习读书笔记之RBM 声明: 1)看到其他博客如@zouxy09都有个声明,老衲也抄袭一下这个东西 2)该博文是整理自网上很大牛和机器学习专家所无私奉献的资料的.具体引用的资料请看参考文献.具体的版本声明也参考原文献. 3)本文仅供学术交流,非商用.所以每一部分具体的参考资料并没有详细对应,更有些部分本来就是直接从其他博客复制过来的.如果某部分不小心侵犯了大家的利益,还望海涵,并联系老衲删除或修改,直到相关人士满意为止. 4)本人才疏学浅,整理总结的时候难免出错,还望各位前辈不吝指正,谢谢.…
本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.在.NET之前的编程世界 C#语言是在微软公司的.NET框架上开发程序而设计的,首先作者给大家纠正了一下C#的正确发音:See Sharp(而不是很多人说的什么C井之类的,每次听到C井我都只能呵呵一笑). 1.1 20世纪90年代末的Windows编程 这时大多数程序员使用VB.C或C++,一些C/C++程序员使用纯Win32API,但纯Win32API不是面向对象的,而且使用它的工作量很大,比MFC还大.大多数程…
本章主要讨论与linux的设备驱动和设备管理的相关的4个内核成分,设备类型,模块,内核对象,sysfs. 主要内容: 设备类型 内核模块 内核对象 sysfs 总结 1. 设备类型 linux中主要由3种类型的设备,分别是: 设备类型 代表设备 特点 访问方式 块设备 硬盘,光盘 随机访问设备中的内容 一般都是把设备挂载为文件系统后再访问 字符设备 键盘,打印机 只能顺序访问(一个一个字符或者一个一个字节) 一般不挂载,直接和设备交互 网络设备 网卡 打破了Unix "所有东西都是文件"…
读书笔记-Coding faster(英文版) Getting More Productive with Microsoft visual Studio Author: Zain Naboulsi Sara Ford Chapter1: 开始. 在一台机器上可以安装多个版本的Visual Studio.推荐先从低版本开始安装,最后安装高版本. 可以修改Visual Studio的默认帮助信息为Online Help(需要连接网络). 导入和导出Visual Studio环境信息(备份,还原).…
读书笔记-实用单元测试(英文版) Pragmatic Unit Testing in C# with NUnit Author: Andrew Hunt ,David Thomas with Matt Hargett Chapter1: 介绍. 单元测试不是用户和管理人员使用的工具.而是程序员自己为自己写的,用于验证代码的工具. 单元测试提高了我们对自己输写的程序的信心. 单元测试可以证明程序是按照程序的意愿进行工作的. 单元测试可以让我们把更多的时间放在coding上,而不是debugging…
三天看完一本书,说出来我都不信,不过我还真是史无前例的做到了, 现在分享一下我的收获,希望大家拍砖,共同讨论一下. <<会说话的代码>>一书是我们BJDP小组里的王洪亮老师的一本著作,第一次听王老师分享时,就被王老师的技术折服了,如果大家在北京,有兴趣的话可以参与我们这个"北京设计模式学习小组(BJDP)"(免费参与哦), 相信每一个人都会有所收获 . 还是说回书,这本书主要阐述了怎么样让我们写的代码具有自我的表达能力,让每一个程序员都能看懂,而且易扩展和维护.…
<Programming Hive>读书笔记(一)Hadoop和Hive环境搭建             先把主要的技术和工具学好,才干更高效地思考和工作.   Chapter 1.Introduction 简单介绍 Chapter 2.Getting Started 环境配置 Hadoop版本号会更新,以官方安装教程为准 http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.…
# 强化学习读书笔记 - 02 - 多臂老O虎O机问题 学习笔记: [Reinforcement Learning: An Introduction, Richard S. Sutton and Andrew G. Barto c 2014, 2015, 2016](https://webdocs.cs.ualberta.ca/~sutton/book/) ## 数学符号的含义 * 通用 $a$ - 行动(action). $A_t$ - 第t次的行动(select action).通常指求解的…
强化学习读书笔记 - 05 - 蒙特卡洛方法(Monte Carlo Methods) 学习笔记: Reinforcement Learning: An Introduction, Richard S. Sutton and Andrew G. Barto c 2014, 2015, 2016 数学符号看不懂的,先看看这里: 强化学习读书笔记 - 00 - 数学符号说明 蒙特卡洛方法简话 蒙特卡洛是一个赌城的名字.冯·诺依曼给这方法起了这个名字,增加其神秘性. 蒙特卡洛方法是一个计算方法,被广泛…
强化学习读书笔记 - 06~07 - 时序差分学习(Temporal-Difference Learning) 学习笔记: Reinforcement Learning: An Introduction, Richard S. Sutton and Andrew G. Barto c 2014, 2015, 2016 数学符号看不懂的,先看看这里: 强化学习读书笔记 - 00 - 术语和数学符号 时序差分学习简话 时序差分学习结合了动态规划和蒙特卡洛方法,是强化学习的核心思想. 时序差分这个词不…