机器学习
文章平均质量分 89
张小彬的代码人生
coder
展开
-
统计学习方法概论
1.监督学习统计学习方法包括了监督学习(Supervised Learning)非监督学习(Unsupervised Learning)半监督学习(Semi-supervised Learning)强化学习(Reinforcement Learning)《统计学习方法》这本书主要讲的是一些常见的监督学习的方法。2.基本概念输入空间,输出空间与特征向量假设我们有一个训练数据集合T,集合大小为原创 2016-02-20 21:19:43 · 716 阅读 · 0 评论 -
MLaPP Chapter 9 GLM and the exponential family 指数家族
9.1 Introduction前面讲过的很多概率分布其实都是属于指数家族簇,比如高斯,伯努利,泊松,狄利克雷分布等。当然,要除掉均匀分布和学生 t 分布。我们可以用指数家族分布来表示 class-conditional density,由此建立广义线性模型(GLM, Generalized Linear Model)这个生成分类器。9.2 The exponential family 指数家族指数原创 2017-02-08 16:16:20 · 3053 阅读 · 0 评论 -
MLaPP Chapter 10 Bayes nets 贝叶斯网络
10.1 Introduction书里开头就引用了迈克尔·乔丹对图模型的理解,他说处理复杂系统有两个原则,模块性(modularity)个抽象性(abstraction),而概率论(probability theory)则通过因式分解(factorization)和求平均(averaging)深刻地实现了这两个原则。概率图模型有三大任务:表征(representatino),推断(Inference原创 2017-02-08 16:21:43 · 2611 阅读 · 9 评论 -
MLaPP Chapter 11 Mixture models and the EM algorithm
11.1 Latent variable models 隐变量模型图模型尝试在不同的观察变量之间建立条件独立关系,另一种思路则是用隐变量模型,即 LVMs, Latent variable models,这种模型假设观察变量都是从一个共同的“隐变量”中得到的。隐变量的意思就是无法观测到,没有数据,可以人为定义个数和表示的含义。因此聚类算法中的簇就可以看做是隐变量,而有监督学习中如果给了簇的标定数据,原创 2017-02-08 16:23:34 · 1792 阅读 · 0 评论 -
cs231n neural network 笔记
神经网络里的非线性是很重要且必不可少的。在全连接层之间引入非线性单元,可以让神经网络具有更强的表达能力。一个三层的神经网络可以大概写成这样子的形式,$$s = W_3\max(0, W_2\max(0,W_1x))$$ 中间的隐藏层神经元数量的大小可以自己设置。原创 2017-02-15 21:04:46 · 4043 阅读 · 0 评论 -
cs231n Convolutional Neural Network 笔记
CNNs: Architectures, Convolution / Pooling LayersCovNet LayersConvNet 显示地假设输入是图片,卷积池化等操作大大减少了参数,比一般的全连接网络计算更高效。CNN 里具体有下面的几种结构,卷积层, Convolutional LayerDilated convolutions 就是做点乘的时候,也有个stride,而不是连续的九宫格原创 2017-04-07 16:06:27 · 2083 阅读 · 0 评论 -
cs231n 课程作业 Assignment 2
上一次作业基本已经讲了构建一个多层神经网络的基本知识,包括其结构,公式推导,训练方法。这一次主要关注卷积神经网络(CNN, Convolution Neural Network),要先读完课程笔记 CS231n Convolutional Neural Networks for Visual Recognition,基本就懂了。特别是那个解释卷积的动态图,非常形象。CNN 主要多了卷积层(convo原创 2017-04-07 16:09:15 · 26992 阅读 · 5 评论 -
pytorch loss function 总结
最近看了下 PyTorch 的损失函数文档,整理了下自己的理解,重新格式化了公式如下,以便以后查阅。值得注意的是,很多的 loss 函数都有 size_average 和 reduce 两个布尔类型的参数,需要解释一下。因为一般损失函数都是直接计算 batch 的数据,因此返回的 loss 结果都是维度为 (batch_size, ) 的向量。如果 reduce = False,那么 s...原创 2017-05-18 13:02:09 · 157531 阅读 · 15 评论 -
cs231n 课程作业 Assignment 1
课程资料趁着在学校的时间,跟着 cs231n 的课程做了一下作业,感觉收获特别大,现在汇总在博客里。下面是一些官方的课程资料: 网页 备注 课程主页 主页课程介绍 课程官方笔记 貌似要 fq 软件支持 Syllabus 课件、视频、课程安排表还有一些其他有用的非官方资料: 网页 备注 课程中文翻译 智能单元公众号提供的翻译 课程视频 网易云课堂提原创 2017-02-15 21:14:32 · 70855 阅读 · 42 评论 -
Variational Autoencoder: Basic Concept
The neural network perspective传统的 Autoencoder 结构如下图: 但是这种结构没法生成新数据,只能做数据压缩。怎么改进呢?可以考虑加一个正则项,让隐变量趋近一个单位高斯分布。generation_loss = mean(square(generated_image - real_image)) latent_loss = KL-Divergence(la原创 2017-09-25 20:22:04 · 1867 阅读 · 0 评论 -
MLaPP Chapter 8 Logistic Regression 逻辑斯特回归
8.1 IntroductionLR 是一个非常重要的模型,几乎所有的机器学习职位面试都会问到。因此这章是重点,一定要看懂。8.2 Model specification把线性回归的高斯分布,换成伯努利分布,就成了逻辑斯特回归,不过这个模型其实是个分类模型,p(y|x,w)=Ber(y|sigm(wTx))p(y|\mathbf{x}, \mathbf{w}) = \text{Ber}(y|\tex原创 2017-02-08 15:57:22 · 2510 阅读 · 2 评论 -
MLaPP Chapter 7 Linear Regression 线性回归
7.1 Introduction线性回归(Linear Regression)是统计学和机器学习中的主力军(work horse),当用核函数等做基函数扩充(basis function expansion)时,又可以模拟非线性关系。除了回归问题,如果用伯努利或者多努利分布代替高斯分布,那么就可以用来做分类问题(classification),下一章会讲。7.2 Model specificatio原创 2017-02-08 15:52:55 · 2090 阅读 · 0 评论 -
线性模型
Linear Regression 线性回归1. hypothesis function又叫决策函数(decision function),这里是线性模型,θ\theta 是参数。 hθ(x)=∑i=0nθixi=θTxh_\theta(x)=\sum_{i=0}^n\theta_ix_i=\theta^Tx2. cost function这里是最小二乘法,least squares functi原创 2016-02-21 20:06:52 · 1103 阅读 · 1 评论 -
统计学习方法--感知机模型 (perception)
感知机模型 (perception)概念感知机是一个二类分类的线性分类器,是支持向量机和神经网络的基础。它假设数据是线性可分的,目标是通过梯度下降法,极小化损失函数,最后找到一个分割超平面,可以将数据划分成两个类别。预测的模型可用下面的函数表示: f(x)=sign(w⋅x+b)f(x) = sign(w·x+b) 其中 ww 是权值(weight)参数,bb 是偏置项(bias)原创 2015-09-21 01:46:06 · 4011 阅读 · 0 评论 -
MLaPP 读书笔记-概述
MLaPP 全称是 Machine Learning:A Probabilistic Prospective,是 2012 年出的一本讲机器学习的一本书。我们实验室在2016年秋季决定读这本书,但是只读前半部分基础的部分,具体安排见 CIS2016 。原书的封面见下图,我在读书的过程中,发现这本书的内容很难啃,但是干货很多,所以又不得不硬着头皮啃下去,只好边读书边写下笔记。感觉做笔记有很多的好处,原创 2017-02-08 13:36:25 · 14802 阅读 · 0 评论 -
MLaPP Chapter 1 Introduction
1.1 Machine Learning: what and why?由于现在处于信息爆炸的时代,机器学习的意义在于,发现数据中的模式,并用于新数据的预测之中。而本书则会偏向于概率论的角度来看待机器学习。1.1.1 Types of Machine Learning机器学习大概分成下面三种,有监督学习predictive or supervised method给定训练集,求从输入到输出的映射。原创 2017-02-08 13:54:50 · 2680 阅读 · 0 评论 -
MLaPP Chapter 2 Probability 概率论
2.1 Introduction 简介对概率一般有两种理解(interpretations):frequentist interpretation, 这个层面上是说,概率可以看作是多次事件实验的发生的频率的逼近举个例子,假如进行很多次抛硬币实验,会发现最终硬币会出现正面的概率为0.5Bayesian interpretation, 贝叶斯派常把概率当做是量化事件不确定型的工具 原文 (p原创 2017-02-08 14:09:44 · 3246 阅读 · 0 评论 -
MLaPP Chapter 3: Generative models for distrete data
3.1 Introduction生成模型(generative model)一般会按照下面的贝叶斯公式构造分类器:p(y=c|x,θ)∝p(x|y=c,θ)p(y=c|θ))p(y=c|\mathrm{x, \theta}) \propto p(\mathrm{x}|y=c, \theta)p(y=c|\theta))中间的 ∝\propto 符号表示“正比于”,即忽略了常系数。而概率 p(x|y=原创 2017-02-08 14:22:56 · 2144 阅读 · 0 评论 -
MLaPP Chapter 4 Gaussian models 高斯模型
4.1 Introduction 介绍4.1.1 Notation 符号一般矩阵用大写加粗的字母,向量用小写加粗字体。4.1.2 Basics 基础回顾一下多元高斯概率密度函数:N(x|μ,Σ)≜1(2π)D/2|Σ|1/2exp[−12(x−μ)TΣ−1(x−μ)]\mathcal{N}(\mathbf{x}|\boldsymbol{\mu}, \mathbf{\Sigma}) \triangle原创 2017-02-08 15:37:11 · 3200 阅读 · 0 评论 -
MLaPP Chapter 5 Bayesian statistics 贝叶斯统计
5.1 Introduction 介绍在第三章我们讨论了如果用最大化后验(MAP)做参数估计,即 θ^=argmaxp(θ|D)\hat\theta = \arg\max_p(\theta | \mathcal{D}),和计算全后验 p(θ|D)p(\theta|\mathcal{D}) 和计算后验预测密度(posterior predictive density) p(x|D)p(\mathbf{原创 2017-02-08 15:42:03 · 4257 阅读 · 0 评论 -
MLaPP Chapter 6 Frequentist statistics 频率学派统计学
6.1 Introduction频率学派统计学(frequentist statistics),经典统计学(classical statistics),或者叫正统的统计学(orthodox statistics),设计了一些不把参数当做随机变量的统计推断方法,从而避免了使用贝叶斯法则和先验。频率学派依赖于抽样分布(sampling distribution),而贝叶斯学派则依赖后验分布(poster原创 2017-02-08 15:50:34 · 2538 阅读 · 0 评论 -
利用Tesseract来识别验证码
概述我们在写爬虫脚本时,经常会遇到验证码阻碍我们的道路。特别是这个网站的资料又非常重要,所以不得不研究一下怎么让机器自动识别。对于一些不太复杂的验证码,我们可以直接用现成的开源引擎Tesseract识别。如下面的图片,数字还是很清晰,也没有什么偏转,字母粘连也不是很严重。在实际测试中,基本50%以上的验证码可以一次通过。Tesseract就是开源引擎里的执牛耳项目。起源于惠普实验室并在1984-19原创 2015-11-02 20:59:33 · 15993 阅读 · 0 评论