原文地址: https://www.cnblogs.com/steven-yang/p/5857964.html ---------------------------------------------------------------------------------------------------------- 从2016年年初,开始用python写一个简单的爬虫,帮我收集一些数据.6月份,开始学习Machine Learning的相关知识.9月开始学习Spark和Scala.现在…
从2016年年初,开始用python写一个简单的爬虫,帮我收集一些数据. 6月份,开始学习Machine Learning的相关知识. 9月开始学习Spark和Scala. 现在想,整理一下思路. 先感谢下我的好友王峰给我的一些建议.他在Spark和Scala上有一些经验,让我前进的速度加快了一些. 学习算法 作为一个程序猿,以前多次尝试看过一些机器学习方面的书,其过程可以说是步履阑珊,碰到的阻力很大. 主要原因是,读这些机器学习的书,需要有一些数学方面的背景. 问题就在这些数学背景上,这些背景…
[Machine Learning]学习笔记-Logistic Regression 模型-二分类任务 Logistic regression,亦称logtic regression,翻译为"对数几率回归",是一种分类学习方法.和先前的线性回归模型不同的是,输出的y一般是离散量的集合,如输出\(y \in \{0,1\}\)的二分类任务. 考虑二分类任务,线性回归模型产生的\(Z=\theta ^TX\)是连续的实值,需要用一个函数\(g(\theta ^TX)\)将z转换为0/1值.…
点击标题可转到相关博客. 博客专栏:机器学习 PDF 文档下载地址:Machine Learning 学习笔记 机器学习 scikit-learn 图谱 人脸表情识别常用的几个数据库 机器学习 F1-Score, recall, precision Softmax Classifier (三个隐含层) Softmax Classifier (两个隐含层) Softmax classifier (一个隐含层) Softmax classifier (无隐含层) 机器视觉: LBP-TOP 机器视觉…
1. scikit-learn介绍 scikit-learn是Python的一个开源机器学习模块,它建立在NumPy,SciPy和matplotlib模块之上.值得一提的是,scikit-learn最先是由David Cournapeau在2007年发起的一个Google Summer of Code项目,从那时起这个项目就已经拥有很多的贡献者了,而且该项目目前为止也是由一个志愿者团队在维护着. scikit-learn最大的特点就是,为用户提供各种机器学习算法接口,可以让用户简单.高效地进行数…
What is machine learning? 并没有广泛认可的定义来准确定义机器学习.以下定义均为译文,若以后有时间,将补充原英文...... 定义1.来自Arthur Samuel(上世纪50年代.西洋棋程序) 在进行特定编程的情况下给予计算机学习能力的领域. 定义2.来自Tom Mitchell(卡内基梅隆大学) 一个好的学习问题定义如下:一个程序被认为能从经验E中学习,解决任务T,达到性能度量值P, 当且仅当,有了经验E后,经过P评判,程序在处理T时的性能有所提升. 机器学习分类 监…
这章的内容对于设计分析假设性能有很大的帮助,如果运用的好,将会节省实验者大量时间. Machine Learning System Design6.1 Evaluating a Learning Algorithm6.1.1 Deciding What to Try Next机器学习诊断法:一种测试法,通过执行这种测试,能够深入了解某种算法是否有用.诊断法也会告诉你,要想改进一种算法的效果需要什么样的尝试.能够判断一种学习算法能不能work,并且改善该算法性能的一个测试. 诊断法的执行和实现是需…
看到Max Welling教授主页上有不少学习notes,收藏一下吧,其最近出版了一本书呢还,还没看过. http://www.ics.uci.edu/~welling/classnotes/classnotes.html Statistical Estimation [ps]- bayesian estimation- maximum a posteriori (MAP) estimation- maximum likelihood (ML) estimation- Bias/Variance…
模型 假定有i组输入输出数据.输入变量可以用\(x^i\)表示,输出变量可以用\(y^i\)表示,一对\(\{x^i,y^i\}\)名为训练样本(training example),它们的集合则名为训练集(training set). 假定\(X\)有j个特征,则可以用集合\({x^i_1,x^i_2,\dots ,x^i_j}\)表示. 为了描述模型,要建立假设方程(hypothesis function) : $ h:X\to Y$. \(h_\theta (x) = \theta_0 +…
机器学习的定义 A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E. 某类任务T(task)具有性能度量P(performance),计算机程序可以从任务T…
本系列文章允许转载,转载请保留全文! [请先阅读][说明&总目录]http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 指数分布族简介 之前的文章分别介绍了因变量服从高斯分布.伯努利分布.泊松分布.多项分布时,与之对应的回归模型,本文章将阐释这些模型的共同点,并加以推广. 首先非正式地给出指数分布族的定义: 定义 如果变量y的分布可以被表示为p(y;η)=b(y)exp(ηTT(y)-a(η))的形式(η为分布的参数),则称y服从指数分布族 萌萌哒博主…
本系列文章允许转载,转载请保留全文! [请先阅读][说明&总目录]http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 泊松回归 (Poisson Regression) 在生活中,经常会遇到一类问题需要对一段时间内某一小概率事件的发生次数建模,例如癌症.火灾等. 假设向量x表示引起这一事件发生的因素,向量θ表示因素的权重,则使用hθ(x)=exp(θTx)表示事件发生次数的期望.θTx位于指数位置,意味着其每增加1个单位,将导至事件发生次数的期望值翻…
本系列文章允许转载,转载请保留全文! [请先阅读][说明&总目录]http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 用牛顿法解方程 牛顿法是一种求解方程的迭代算法,也可以用于方程组的求解.其思想是利用方程(尤其是非线性方程)的线性部分,对原方程进行近似.不失一般性,考虑方程f(x)=0.对f(x)在x=t处进行泰勒展开,可得f(x)=f(t)+f'(t)(x-t)+... 取线性部分代替f(x),带入方程f(x)=0,可得f(t)+f'(t)(x-…
本系列文章允许转载,转载请保留全文! [请先阅读][说明&总目录]http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 梯度下降法 (Gradient Descent) 梯度下降法是一种用来寻找函数最小值的算法.算法的思想非常简单:每次沿与当前梯度方向相反的方向走一小步,并不断重复这一过程.举例如下: [例]使用梯度下降法,求z=0.3x2+0.4y2+2的最小值. 第一步:求解迭代格式.根据“每次沿与当前梯度方向相反的方向走一小步”的思想,可知x(k…
引申:非原创,转载来自:https://blog.csdn.net/ptkin/article/details/50995140…
一.Model representation(模型表示) 1.1 训练集 由训练样例(training example)组成的集合就是训练集(training set), 如下图所示, 其中(x,y)是一个训练样例, (x(i),y(i))是第 i个训练样例. 1.2 假设函数 使用某种学习算法对训练集的数据进行训练, 我们可以得到假设函数(Hypothesis Function), 如下图所示. 在房价的例子中,假设函数就是一个房价关于房子面积的函数.有了这个假设函数之后, 给定一个房子的面积…
回归任务 多变量线性回归 公式 h为假设,theta为模型参数(代表了特征的权重),x为特征的值 参数更新 梯度下降算法 影响梯度下降算法的因素 (1)加速梯度下降:通过让每一个输入值大致在相同的范围可以加速梯度下降,因为theta在x的范围比较小的时候收敛更快, x的范围不平整时收敛慢且会发生震荡.即对变量进行标准化处理,方法为减均值,除标准差 (2)学习速率:alpha太小,能收敛但速度太慢:alpha太大不能保证每一步都会使代价函数下降,且可能会导致不收敛 改善特征和假设函数的方法--多项…
Typora 安装与使用. Typora插件. OSS图床配置. 机器学习导论. 机器学习的基本思路. 机器学习实操的7个步骤…
- Normal equation 到眼下为止,线性回归问题中都在使用梯度下降算法,但对于某些线性回归问题,正规方程方法是更好的解决方式. 正规方程就是通过求解例如以下方程来解析的找出使得代价函数最小的參数: 如果我们的训练集特征矩阵为X,我们的训练集结果为向量y,则利用正规方程解出向量: 下面表所看到的的数据为例: 运用正规方程方法求解參数为: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvam9qb3poYW5nanU=/font/5a6L5L2T…
引子 对于一个特征数比较大的非线性分类问题,如果采用先前的回归算法,需要很多相关量和高阶量作为输入,算法的时间复杂度就会很大,还有可能会产生过拟合问题,如下图: 这时就可以选择采用神经网络算法. 神经网络算法最早是人们希望模仿大脑的学习功能而想出来的. 一个神经元,有多个树突(Dendrite)作为信息的输入通道,也有多个轴突(Axon)作为信息的输出通道.一个神经元的输出可以作为另一个神经元的输入.神经元的概念和多分类问题的分类器概念很相近,都是可以接收多个输入,在不同的权值(weights)…
Uninstall any existing gnuplot on your OSX brew uninstall gnuplot Install gnuplot with either X or X11 brew-install gnuplot --with-x11 Finally, set the GNUTERM to X11 setenv("GNUTERM","X11") 或者 brew install gnuplot --with-qt setenv(&qu…
解决复杂非线性问题 BP神经网络 模型表示 theta->weights sigmoid->activation function input_layer->hidden_layer->output_layer 对每一个隐藏层的操作等同于Logistic Regression.因此,通过BP神经网络可以建立比Logistic Regression更复杂的非线性假设, 且建模形式更简洁. 损失函数 其中,K是输出层的单元数(类别数) 反向传播算法(推导) 随机初始化weights 网…
分类任务 原始方法:通过将线性回归的输出映射到0-1,设定阈值来实现分类任务 改进方法:原始方法的效果在实际应用中表现不好,因为分类任务通常不是线性函数,因此提出了逻辑回归 逻辑回归 假设表示--引入sigmoid函数g sigmoid函数将输出映射到区间(0,1),可以看作是概率 损失函数 多分类 训练多个逻辑回归二分类器,对新的样本取预测概率最高的一个类别 欠拟合与过拟合 欠拟合:高偏差,模型没有很好地捕捉到数据的结构,通常是因为模型太简单,使用特征太少 过拟合:高方差,可以很好地拟合可用数…
损失函数. 最小二乘法. 极大似然估计. 复习一下对数. 交叉熵. 信息量. 系统熵的定义. KL散度…
机器学习 - 维基百科,自由的百科全书 https://zh.wikipedia.org/wiki/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0 机器学习是人工智能的一个分支.人工智能的研究历史有着一条从以“推理”为重点,到以“知识”为重点,再到以“学习”为重点的自然.清晰的脉络.显然,机器学习是实现人工智能的一个途径,即以机器学习为手段解决人工智能中的问题.机器学习在近30多年已发展为一门多领域交叉学科,涉及概率论.统计学.逼近论.凸分析.计算复杂性理论等多门学科.…
一.原理和概念 1.回归 回归最简单的定义是,给出一个点集D,用一个函数去拟合这个点集.而且使得点集与拟合函数间的误差最小,假设这个函数曲线是一条直线,那就被称为线性回归:假设曲线是一条二次曲线,就被称为二次回归. 以下仅介绍线性回归的基本实现. 2.假设函数.误差.代价函数 参考  Machine Learning 学习笔记2 - linear regression with one variable(单变量线性回归) 最小化误差一般有两个方法:最小二乘法和梯度下降法 最小二乘法可以一步到位,…
##机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)---#####注:机器学习资料[篇目一](https://github.com/ty4z2008/Qix/blob/master/dl.md)共500条,[篇目二](https://github.com/ty4z2008/Qix/blob/master/dl2.md)开始更新------#####希望转载的朋友**一定要保留原文链接**,因为这个项目还在继续也在不定期更新.希望看到…
转载:http://dataunion.org/8463.html?utm_source=tuicool&utm_medium=referral <Brief History of Machine Learning> 介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机.神经网络.决策树.SVM.Adaboost到随机森林.Deep Learning. <Deep Learning in Neural Networks: An Overview> 介绍:这是瑞士人工智…
转载:http://www.jianshu.com/p/b73b6953e849 该资源的github地址:Qix <Statistical foundations of machine learning> 介绍:<机器学习的统计基础>在线版,该手册希望在理论与实践之间找到平衡点,各主要内容都伴有实际例子及数据,书中的例子程序都是用R语言编写的. <A Deep Learning Tutorial: From Perceptrons to Deep Networks>…
 下面一文章就总结几点关键: 1.要学会观察,尤其是输入数据的特征提取时,看各输入数据和输出的关系,用绘图看! 2.训练后,看测试数据和训练数据误差,确定是否过拟合还是欠拟合: 3.欠拟合的话,说明模型不准确或者特征提取不够,对于特征提取不够问题,可以根据模型的反馈来看其和数据的相关性,如果相关系数是0,则放弃特征,如果过低,说明特征需要再次提炼! 4.用集成学习,bagging等通常可以获得更高的准确度! 5.缺失数据可以使用决策树回归进行预测! 转自:http://blog.csdn.net…