
机器学习
loserChen.
这个作者很懒,什么都没留下…
展开
-
Coursera吴恩达机器学习week1笔记
What is Machine Learning?Arthur Samuel described it as: “the field of study that gives computers the ability to learn without being explicitly programmed.” This is an older, informal definition.Tom ...原创 2020-02-08 18:53:07 · 743 阅读 · 1 评论 -
Coursera吴恩达机器学习week2笔记
Neural Networkdendrites树突,属于输入axon轴突,属于输出模型中x0为bias unit,偏差单元,总等于1In neural networks, we use the same logistic function as in classification, 1/(1+e(−θTx)), yet we sometimes call it a sigmoid (log...原创 2020-02-08 19:06:18 · 365 阅读 · 0 评论 -
Coursera吴恩达机器学习week3笔记
Evaluating learning algorithmEvaluating a HypothesisOnce we have done some trouble shooting for errors in our predictions by:Getting more training examples:Fixes high varianceTrying smaller sets ...原创 2020-02-08 19:10:14 · 339 阅读 · 0 评论 -
Coursera吴恩达机器学习week4笔记
Large Margin ClassificationOptimization Objectivesvm:Large margin intuitionMathematics Behind Large Margin ClassificationKernelsKernels1定义决策边界对应的函数是Θ0+Θ1f1+Θ2f2+Θ3f3,其中f1、f2和f3就是相似度函数。下图给定...原创 2020-02-08 19:18:00 · 597 阅读 · 0 评论 -
Cousera吴恩达机器学习week5笔记
ClusteringK-Means AlgorithmK均值(K-means)算法是一个广泛使用的用于簇划分的算法。下面说明K均值算法的步骤:随机初始化K个样本(点),称之为簇中心(cluster centroids);簇分配: 对于所有的样本,将其分配给离它最近的簇中心;移动簇中心:对于每一个簇,计算属于该簇的所有样本的平均值,移动簇中心到平均值处;重复步骤2和3,直到找到我们想要...原创 2020-02-08 19:28:10 · 324 阅读 · 0 评论 -
Cousera吴恩达机器学习week6笔记
Density EstimationGaussian Distribution他的图像如下:以均值为中心,方差为宽度。有了均值与方差的计算方法,就有了参数估计这一名词。就是:给你了一些样本值,你可以求出他们的均值与方差,然后用这两个参数估计总体样本的分布。第二个比较重要的数学知识就是独立分布的概率,等于概率的乘积。AlgorithmBuilding an Anomaly Det...原创 2020-02-08 19:38:04 · 342 阅读 · 0 评论 -
Cousera吴恩达机器学习week7笔记
Stochastic Gradient Descent随机梯度下降每次只对一个数据进行计算,相对传统的批处理梯度下降运行速度更快一些。Mini-Batch Gradient DescentStochastic Gradient Descent Convergence虽然不断减小alpha的值有助于我们找到全局最小,但是这个会让工作量增加,而且找到最小的范围已经满足我们的需要了,...原创 2020-02-08 19:41:38 · 286 阅读 · 0 评论 -
Cousera吴恩达机器学习week8笔记
photo OCRSliding WindowsGetting Lots of Data and Artificial DataCeiling Analysis: What Part of the Pipeline to Work on Next原创 2020-02-08 19:44:11 · 237 阅读 · 0 评论 -
Coursera机器学习基石笔记week12
Nonlinear TransformationQuadratic Hypothesis已知对于线性模型来说,可以分类线性可分的情况,但是对于线性不可分的情况,我们可以使用非线性模型来进行分类。对于图中的h(x),我们可以知道w0=0.6,w1=−1,w2=−1w_0=0.6,w_1=-1,w_2=-1w0=0.6,w1=−1,w2=−1,但是对应的参数是1,x12,x221,x_1...原创 2018-11-23 15:45:21 · 218 阅读 · 0 评论 -
Coursera机器学习基石笔记week11
Linear Models for Classification严谨一点来说,PLA并不是一种“模型”,PLA (Perceptron Learning Algorithm) 是一种“算法”,用来寻找在“线性可分”的情况下,能够把两个类别完全区分开来的一条直线,所以我们简单的把PLA对应的那个模型就叫做Linear Classification。Linear Classification模...原创 2018-11-23 15:40:10 · 390 阅读 · 0 评论 -
Coursera机器学习基石笔记week10
Logistic RegressionLogistic Regression Problem之前提过的二元分类器如PLA,其目标函数为,f(x)=sign(wTx)∈−1,+1f(x)=sign(w^Tx)∈{−1,+1}f(x)=sign(wTx)∈−1,+1,输出要么是-1要么是+1,是一个“硬”的分类器。而Logistic Regression是一个“软”的分类器,它的输出是y=+1的概...原创 2018-11-23 15:35:20 · 368 阅读 · 0 评论 -
Coursera机器学习基石笔记week16
Three Learning PrinciplesOccam‘s Razor奥卡姆剃刀原则:如无必要勿增实体。对这个原则的理解相当于是说,在机器学习里最简单的能够解释数据的模型就是最合理的模型。但是有两个问题,怎么知道一个模型是比较简单的?以及,怎么确定更简单的模型就是更好的?一个简单的hypothesis看起来比较简单,一般是意味着有比较少的参数。而一个模型比较简单意味着它包含的hypo...原创 2018-11-29 17:04:23 · 177 阅读 · 0 评论 -
机器学习基石作业三python实现
问题6,7,8,10代码实现如下:import numpy as npdef E(u,v): return np.exp(u)+np.exp(2*v)+np.exp(u*v)+u*u-2*u*v+2*v*v-3*u-2*vdef gradU(func,u,v): return (func(u+0.0001,v)-func(u-0.0001,v))/0.0002de...原创 2018-11-23 15:50:44 · 510 阅读 · 0 评论 -
Coursera机器学习基石笔记week13
Hazard of OverfittingWhat is Overfittinghypothesis的阶数越高,表示VC Dimension越大。随着VC Dimension增大,EinE_{in}Ein是一直减小的,而EoutE_{out}Eout先减小后增大。在d∗d^*d∗位置,EoutE_{out}Eout取得最小值。在d∗vcd^*vcd∗vc右侧,随着VC Dimensio...原创 2018-11-29 16:45:22 · 300 阅读 · 0 评论 -
Coursera机器学习基石笔记week14
RegularizationRegularized Hypothesis Set我们发现10阶多项式hypothesis set里包含了2阶多项式hypothesis set的所有项,那么如果我们加一些限制条件就可以让其近似为H2H_2H2。这种函数近似称之为不适定问题(ill-posed problem)。根据上图可知,我们令w3=w4=.....=w10=0w_3=w_4=.......原创 2018-11-29 16:51:26 · 195 阅读 · 0 评论 -
Coursera机器学习基石笔记week15
ValidationModel Selection Problem针对模型建立的过程,如上图所示,不仅需要考虑算法的选择,还要考虑迭代次数,学习速率,特征转换,正则化,正则化系数的选择等等,不同的搭配,都有不同的机器学习效果。那么我们应该如何找一个最合适的搭配呢?首先我们考虑通过找一个最好EinE_{in}Ein来选择模型。但是相对来说,EinE_{in}Ein小的模型总是偏向于使...原创 2018-11-29 16:58:33 · 236 阅读 · 0 评论 -
机器学习基石作业四python实现
总体来说,13-20题总的框架都是一样,因此代码都集中在一起。import numpy as npdef getData(path): with open(path,'r') as fr: rawData=fr.readlines() lenx=len(rawData) leny=len(rawData[0].strip().split()) ...原创 2018-11-29 17:07:17 · 313 阅读 · 0 评论 -
机器学习基石下思维导图
原创 2018-11-29 17:09:17 · 345 阅读 · 1 评论 -
Coursera吴恩达机器学习week4的ex3编程作业代码
Machine-learning-ex3这是Coursera上 Week4 的ml-ex3的编程作业代码。经过测验,全部通过。具体文件可以进入我的github包括以下4个文件:% lrCostFunction.m (logistic regression cost function)% oneVsAll.m% predictOneVsAll.m% ...原创 2018-04-05 11:58:56 · 4811 阅读 · 3 评论 -
Coursera机器学习基石作业二python实现
##机器学习基石作业二下面的代码是17、18题的结合:import numpy as npimport randomclass decisonStump(object): def __init__(self,dimension,data_count,noise): self.dimension=dimension self.data_count=...原创 2018-11-12 11:00:09 · 544 阅读 · 0 评论 -
Coursera机器学习基石笔记week9
Linear Regression线性回归的预测函数取值在整个实数空间,这跟线性分类不同。h(x)=wTXh(x)=w^TXh(x)=wTX在一维或者多维空间里,线性回归的目标是找到一条直线(对应一维)、一个平面(对应二维)或者更高维的超平面,使样本集中的点更接近它,也就是残留误差Residuals最小化。如下图所示:一般最常用的错误测量方式是基于最小二乘法(这里是线性的),其目标是计算误...原创 2018-11-10 10:57:58 · 398 阅读 · 0 评论 -
Coursera机器学习基石笔记week8
Noise and ErrorNoise and Probabilistic Target这节课引入noise的概念,那么VC Dimension的推导还成立吗?首先,数据集的Noise一般有三种情况:由于人为因素,正类被误分为负类,或者负类被误分为正类;同样特征的样本被模型分为不同的类;样本的特征被错误记录和使用。之前的数据集是确定的,即没有Noise的,我们称之为Determ...原创 2018-11-10 10:52:56 · 305 阅读 · 0 评论 -
Coursera吴恩达机器学习week8的ex7编程作业代码
Machine-learning-ex7这是Coursera上 Week8的ml-ex7的编程作业代码。经过测验,全部通过。具体文件可以进入我的github包括以下6个文件:% pca.m% projectData.m% recoverData.m% computeCentroids.m% findClosestCentroids...原创 2018-04-06 10:38:04 · 6448 阅读 · 0 评论 -
Coursera吴恩达机器学习week7的ex6编程作业代码
Machine-learning-ex6这是Coursera上 Week7 的ml-ex6的编程作业代码。经过测验,全部通过。具体文件可以进入我的github包括以下4个文件:% gaussianKernel.m% dataset3Params.m% processEmail.m% emailFeatures.mgaussianKe...原创 2018-04-06 10:37:16 · 4947 阅读 · 2 评论 -
Coursera吴恩达机器学习week6的ex5编程作业代码
Machine-learning-ex5这是Coursera上 Week6 的ml-ex5的编程作业代码。经过测验,全部通过。具体文件可以进入我的github包括以下4个文件:% linearRegCostFunction.m% learningCurve.m% polyFeatures.m% validationCurve.mli...原创 2018-04-06 10:36:28 · 6971 阅读 · 9 评论 -
Coursera吴恩达机器学习week5的ex4编程作业代码
Machine-learning-ex4这是Coursera上 Week5 的ml-ex4的编程作业代码。经过测验,全部通过。具体文件可以进入我的github包括以下3个文件:% sigmoidGradient.m% randInitializeWeights.m% nnCostFunction.msigmoidGradient.mf...原创 2018-04-05 12:00:01 · 7894 阅读 · 1 评论 -
Coursera吴恩达机器学习week3的ex2编程作业代码
Machine-learning-ex2这是Coursera上 Week3 的ml-ex2的编程作业代码。经过测验,全部通过。 具体文件可以进入我的github 包括以下5个文件:% plotData.m% sigmoid.m% costFunction.m% predict.m% costFunctionReg.mplotDat...原创 2018-02-02 15:07:46 · 6339 阅读 · 17 评论 -
Coursera吴恩达机器学习week9的ex8编程作业代码
Machine-learning-ex8这是Coursera上 Week9的ml-ex8的编程作业代码。经过测验,全部通过。具体文件可以进入我的github包括以下3个文件:% estimateGaussian.m% selectThreshold.m% cofiCostFunc.mestimateGaussian.mfunction...原创 2018-04-06 10:39:02 · 4926 阅读 · 2 评论 -
Coursera机器学习基石笔记Week1
The Learning ProblemWhat is Machine learning?machine learning:improving some performance measure with experience computed from data。Key Essence of Machine Learning存在潜在因素可以学习so performance meas...原创 2018-10-27 14:26:43 · 322 阅读 · 0 评论 -
Coursera机器学习基石笔记week7
The VC DimensionDefinition of VC DimensionVC dimension就是满足成长函数2N2^N2N的最大的N。也就是dvcd_{vc}dvc=‘minimum k’-1.VC Dimension of Perceptrons已知在1D Perceptron,dvc=2d_{vc}=2dvc=2,在2D Perceptrons,dvc=3d_{v...原创 2018-11-10 10:49:12 · 389 阅读 · 0 评论 -
Coursera机器学习基石笔记week6
Theory of GeneralizationRestriction of Break Point很明显,当N=1时,mH(N)m_H(N)mH(N)=2,;当N=2时,由break point为2可知,任意两点都不能被shattered(shatter的意思是对N个点,能够分解为2N2^N2N种dichotomies);mH(N)m_H(N)mH(N)最大值只能是3;当N=3时,简单...原创 2018-11-10 10:44:39 · 502 阅读 · 0 评论 -
Coursera机器学习基石笔记week5
Training vs TestingRecap and Preview简单回顾一下前面几节课的内容:第一节课,介绍了机器学习的定义,目标是找到最好的g,使g≈\approx≈f,保证Eout(g)≈0E_{out}(g)\approx0Eout(g)≈0第二节课,介绍了如何让Ein≈0E_{in}\approx0Ein≈0,即使用PLA、pocket algorithm来实现第三...原创 2018-11-10 10:37:53 · 347 阅读 · 0 评论 -
Coursera机器学习基石作业一python实现
机器学习基石作业一import numpy as npdef train_matrix(): with open("hw1_15_train.dat.txt","r") as f: rawData=f.readlines() dataNum=len(rawData) dataDim=len(rawData[0].strip().split(' '))...原创 2018-11-10 10:19:58 · 1139 阅读 · 0 评论 -
机器学习基石上思维导图
原创 2018-11-10 10:06:02 · 386 阅读 · 1 评论 -
Coursera机器学习基石笔记week4
Feasibility of LearningLearning is Impossible?我们想要在D以外的数据中更接近目标函数似乎是做不到的,只能保证对D有很好的分类结果。机器学习的这种特性被称为没有免费午餐(No Free Lunch)定理。NFL定理表明没有一个学习算法可以在任何领域总是产生最准确的学习器。不管采用何种学习算法,至少存在一个目标函数,能够使得随机猜测算法是更好的算法。...原创 2018-11-10 10:02:48 · 404 阅读 · 0 评论 -
Coursera机器学习基石笔记week3
Types of LearningLearning with Different Output Space Y机器学习按照输出空间划分的话,包括二元分类、多元分类、回归、结构化学习等不同的类型。其中二元分类和回归是最基础、最核心的两个类型。Learning with Different Data Label如果我们拿到的训练样本D既有输入特征x,也有输出yn,那么我们把这种类型的学习称为监...原创 2018-11-10 09:58:36 · 325 阅读 · 1 评论 -
Coursera机器学习基石笔记Week2
Learning to Answer Yes/NoPerceptron Hypothesis Set(感知机)银行是否给用户发信用卡的例子,我们把用户的个人信息作为特征向量x,令总共有d个特征,每个特征赋予不同的权重w,表示该特征对输出(是否发信用卡)的影响有多大。那所有特征的加权和的值与一个设定的阈值threshold进行比较:大于这个阈值,输出为+1,即发信用卡;小于这个阈值,输出为-1,...原创 2018-10-27 14:33:51 · 346 阅读 · 0 评论 -
Coursera吴恩达机器学习week2的ex1编程作业代码
machine-learning-ex1这是Coursera上 Week2 的ml-ex1的编程作业代码。经过测验,全部通过。 具体文件可以进入我的github 包括以下八个文件:% warmUpExercise.m% plotData.m% gradientDescent.m% computeCost.m% gradientDescen...原创 2018-02-01 15:43:38 · 7108 阅读 · 4 评论