scikit-learn 是非常优秀的一个有关机器学习的 Python Lib,包含了除深度学习之外的传统机器学习的绝大多数算法,对于了解传统机器学习是一个很不错的平台.每个算法都有相应的例子,既可以对算法有个大概的了解,而且还能熟悉这个工具包的应用,同时也能熟悉 Python 的一些技巧. Ordinary Least Squares 我们先来看看最常见的线性模型,线性回归是机器学习里很常见的一类问题. y(w,x)=w0+w1x1+w2x2+...+wpxp" role="pres…
Bayesian regression 前面介绍的线性模型都是从最小二乘,均方误差的角度去建立的,从最简单的最小二乘到带正则项的 lasso,ridge 等.而 Bayesian regression 是从 Bayesian 概率模型的角度出发的,虽然最后也会转换成一个能量函数的形式. 从前面的线性模型中,我们都假设如下的关系: y=wx" role="presentation">y=wxy=wx 上面这个关系式其实是直接从值的角度来考虑,其实我们也可以假设如下的关系:…
Lasso regression 今天介绍另外一种带正则项的线性回归, ridge regression 的正则项是二范数,还有另外一种是一范数的,也就是lasso 回归,lasso 回归的正则项是系数的绝对值之和,这种正则项会让系数最后变得稀疏: minw12N‖Xw−y‖22+α‖w‖1" role="presentation">minw12N∥Xw−y∥22+α∥w∥1minw12N|Xw−y|22+α|w|1 其中,N" role="pres…
网易公开课,第4课 notes,http://cs229.stanford.edu/notes/cs229-notes1.pdf 前面介绍一个线性回归问题,符合高斯分布 一个分类问题,logstic回归,符合伯努利分布 也发现他们有些相似的地方,其实这些方法都是一个更广泛的模型族的特例,这个模型族称为,广义线性模型(Generalized Linear Models,GLMs) The exponential family 为了介绍GLMs,先需要介绍指数族分布(exponential fami…
scikit-learn官网:http://scikit-learn.org/stable/ 通常情况下,一个学习问题会包含一组学习样本数据,计算机通过对样本数据的学习,尝试对未知数据进行预测. 学习问题一般可以分为: 监督学习(supervised learning) 分类(classification) 回归(regression) 非监督学习(unsupervised learning) 聚类(clustering) 监督学习和非监督学习的区别就是,监督学习中,样本数据会包含要预测的标签(…
Introduction 一.Scikit-learning 广义线性模型 From: http://sklearn.lzjqsdd.com/modules/linear_model.html#ordinary-least-squares # 需要明白以下全部内容,花些时间. 只涉及上述常见的.个人相关的算法. Ref: https://www.youtube.com/watch?v=ipb2MhSRGdw 二.方法进化简史 1.1 松弛求解 到 最小二乘 基本上都是解不存在的超定方程组.因此,…
梯度下降 一.亲手实现“梯度下降” 以下内容其实就是<手动实现简单的梯度下降>. 神经网络的实践笔记,主要包括: Logistic分类函数 反向传播相关内容 Link: http://peterroelants.github.io/posts/neural_network_implementation_part01/ 中文版: http://www.jianshu.com/p/0da9eb3fd06b 1. 生成训练数据 由“目标函数+随机噪声”生成. import numpy as np i…
NB: 因为softmax,NN看上去是分类,其实是拟合(回归),拟合最大似然. 多分类参见:[Scikit-learn] 1.1 Generalized Linear Models - Logistic regression & Softmax 感知机采用的是形式最简单的梯度 Perceptron and SGDClassifier share the same underlying implementation.In fact, Perceptron() is equivalent to S…
二分类:Logistic regression 多分类:Softmax分类函数 对于损失函数,我们求其最小值, 对于似然函数,我们求其最大值. Logistic是loss function,即: 在逻辑回归中,选择了 “对数似然损失函数”,L(Y,P(Y|X)) = -logP(Y|X). 对似然函数求最大值,其实就是对对数似然损失函数求最小值. Logistic regression, despite its name, is a linear model for classification…
前面的文章已经介绍了一个回归和一个分类的例子.在逻辑回归模型中我们假设: 在分类问题中我们假设: 他们都是广义线性模型中的一个例子,在理解广义线性模型之前需要先理解指数分布族. 指数分布族(The Exponential Family) 如果一个分布可以用如下公式表达,那么这个分布就属于指数分布族: 公式中y是随机变量:h(x)称为基础度量值(base measure): η称为分布的自然参数(natural parameter),也称为标准参数(canonical parameter): T(…
add by zhj: 工作中提高自己水平的最重要的一点是——快速的学习能力.这篇文章就是探讨这个问题的,掌握了快速学习能力的规律,你自然就有了快速学习能力了. 原文:Learning How to Learn学习笔记 强力推荐的Coursera课程 “learning how to learn”. 这门课的一个主要观点是 diffuse mode thinking (如常规的身体锻炼) 对提高思考和学习能力有很大帮助.我实践了一两个月,感觉效果很好.工作中遇到的问题都更容易梳理解决.我们目标只…
============================================================== Popular generalized linear models 将不同类型的数据做数值转换,转换为线性模型. 连续型变量且正态分布选择 离散型变量且二项分布选择logistics 计数变量且负二项分布选择自然对数 負二項分布是統計學上一種描述在一系列独立同分布的伯努利试验中,失败次数到达指定次数(记为r)时成功次数的離散概率分布. 比如,如果我们定义掷骰子随机变量x值…
作者:桂. 时间:2017-05-22  15:28:43 链接:http://www.cnblogs.com/xingshansi/p/6890048.html 前言 本文主要是线性回归模型,包括: 1)普通最小二乘拟合 2)Ridge回归 3)Lasso回归 4)其他常用Linear Models. 一.普通最小二乘 通常是给定数据X,y,利用参数进行线性拟合,准则为最小误差: 该问题的求解可以借助:梯度下降法/最小二乘法,以最小二乘为例: 基本用法: from sklearn import…
作者:桂. 时间:2017-05-22  15:28:43 链接:http://www.cnblogs.com/xingshansi/p/6890048.html 前言 主要记录python工具包:sci-kit learn的基本用法. 本文主要是线性回归模型,包括: 1)普通最小二乘拟合 2)Ridge回归 3)Lasso回归 4)其他常用Linear Models. 一.普通最小二乘 通常是给定数据X,y,利用参数进行线性拟合,准则为最小误差: 该问题的求解可以借助:梯度下降法/最小二乘法,…
Linear Basis Function Models 线性模型的一个关键属性是它是参数的一个线性函数,形式如下: w是参数,x可以是原始的数据,也可以是关于原始数据的一个函数值,这个函数就叫basis function,记作φ(x),于是线性模型可以表示成: w0看着难受,定义一个函数φ0(x) = 1, 模型的形式再一次简化成: 以上就是线性模型的一般形式.basis function有很多选择,例如Gaussian.sigmoid.tanh (tanh(x) = 2 * sigmoid(…
一.Model representation(模型表示) 1.1 训练集 由训练样例(training example)组成的集合就是训练集(training set), 如下图所示, 其中(x,y)是一个训练样例, (x(i),y(i))是第 i个训练样例. 1.2 假设函数 使用某种学习算法对训练集的数据进行训练, 我们可以得到假设函数(Hypothesis Function), 如下图所示. 在房价的例子中,假设函数就是一个房价关于房子面积的函数.有了这个假设函数之后, 给定一个房子的面积…
Ref: http://blog.csdn.net/daunxx/article/details/51596877 Ref: https://www.youtube.com/watch?v=ipb2MhSRGdw Ref: nullege.com/codes Lasso Regression |-- Coordinate descent |-- Least Angle Regression |-- ElasticNet |-- Compressive sensing Lasso回归模型 是一个用…
数据集分割 一.Online learning for 手写识别 From: Comparing various online solvers An example showing how different online solvers perform on the hand-written digits dataset. Ref: 在线机器学习算法及其伪代码 PA, CW, AROW, NHerd都是 Jubatus分布式 在线机器学习 框架能提供的算法. 感知器:linear_model.…
这一节讲线性模型,先将几种线性模型进行了对比,通过转换误差函数来将linear regression 和logistic regression 用于分类. 比较重要的是这种图,它解释了为何可以用Linear Regression或Logistic Regression来替代Linear Classification 然后介绍了随机梯度下降法,主要是对梯度下降法的一个改进,大大提高了效率. 最后讲了多类别分类,主要有两种策略:OVA和OVO OVA思想很简单,但如果类别很多并且每个类别的数目都差不…
本章涉及到的若干知识点(红字):本章节是作为通往Tensorflow的前奏! 链接:https://www.zhihu.com/question/27823925/answer/38460833 首先,神经网络的最后一层,也就是输出层,是一个 Logistic Regression (或者 Softmax Regression ),也就是一个线性分类器. 那么,输入层和中间那些隐层又在干吗呢?你可以把它们看成一种特征提取的过程,就是把 Logistic Regression 的输出当作特征,然后…
在线性回归问题中,我们假设,而在分类问题中,我们假设,它们都是广义线性模型的例子,而广义线性模型就是把自变量的线性预测函数当作因变量的估计值.很多模型都是基于广义线性模型的,例如,传统的线性回归模型,最大熵模型,Logistic回归,softmax回归. 指数分布族 在了解广义线性模型之前,先了解一下指数分布族(the exponential family) 指数分布族原型如下 如果一个分布可以用上面形式在表示,那么这个分布就属于指数分布族,首先来定义一下上面形式的符号: η:分布的自然参数(n…
1.1.10. Bayesian Ridge Regression 首先了解一些背景知识:from: https://www.r-bloggers.com/the-bayesian-approach-to-ridge-regression/ In this post, we are going to be taking a computational approach to demonstrating the equivalence of the bayesian approach and ri…
指数分布族 The exponential family 因为广义线性模型是围绕指数分布族的.大多数常用分布都属于指数分布族,服从指数分布族的条件是概率分布可以写成如下形式:η 被称作自然参数(natural parameter),或正则参数canonical parameter),它是指数分布族唯一的参数T(y) 被称作充分统计量(sufficient statistic),很多情况下T(y)=y loga(η) 是log partition functione-a(η)是一个规范化常数,使得…
一.Scikit Learn中使用estimator三部曲 1. 构造estimator 2. 训练模型:fit 3. 利用模型进行预测:predict 二.模型评价 模型训练好后,度量模型拟合效果的常见准则有: 1.      均方误差(mean squared error,MSE): 2.      平均绝对误差(mean absolute error,MAE) 3.      R2 score:scikit learn线性回归模型的缺省评价准则,既考虑了预测值与真值之间的差异,也考虑了问题…
The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状态.构造函数只会在组件初始化的时候调用一次 类构造函数 class App extends Component{ constructor(props){ super(props); } } 使用ES6编写的组件有一个构造函数时,需要强制地使用 super() 方法, 因为这个 App组件 是 Com…
The Road to learn React书籍学习笔记(第三章) 代码详情 声明周期方法 通过之前的学习,可以了解到ES6 类组件中的生命周期方法 constructor() 和 render() constructor() 构造函数只有在组件实例化并插入到 DOM 中的时候才会被调用.组件实例化的过程称为组件的挂载 mount render()方法也会在组件挂载过程中被调用,同时组件更新的时候也会被调用.每当组件的状态 state 和属性 props 改变的时候,组件的 render()…
ufldl学习笔记与编程作业:Linear Regression(线性回归) ufldl出了新教程,感觉比之前的好.从基础讲起.系统清晰,又有编程实践. 在deep learning高质量群里面听一些前辈说.不必深究其它机器学习的算法.能够直接来学dl. 于是近期就開始搞这个了,教程加上matlab编程,就是完美啊. 新教程的地址是:http://ufldl.stanford.edu/tutorial/ 本节学习链接:http://ufldl.stanford.edu/tutorial/supe…
目录 5.3 使用LogisticRegressionCV进行正则化的 Logistic Regression 参数调优 一.Scikit Learn中有关logistics回归函数的介绍 1. 交叉验证 交叉验证用于评估模型性能和进行参数调优(模型选择).分类任务中交叉验证缺省是采用StratifiedKFold. sklearn.cross_validation.cross_val_score(estimator, X, y=None, scoring=None, cv=None, n_jo…
一些问题: 1. 什么时候我的问题可以用GLM,什么时候我的问题不能用GLM? 2. GLM到底能给我们带来什么好处? 3. 如何评价GLM模型的好坏? 广义线性回归啊,虐了我快几个月了,还是没有彻底搞懂,看paper看代码的时候总是一脸懵逼. 大部分分布都能看作是指数族分布,广义差不多是这个意思,我们常见的线性回归和logistic回归都是广义线性回归的特例,可以由它推到出来. 参考:线性回归.logistic回归.广义线性模型——斯坦福CS229机器学习个人总结(一) 对着上面的教程,手写了…
学习笔记之scikit-learn - 浩然119 - 博客园 https://www.cnblogs.com/pegasus923/p/9997485.html 3. Model selection and evaluation — scikit-learn 0.20.3 documentation https://scikit-learn.org/stable/model_selection.html#model-selection Accuracy paradox - Wikipedia…