CS229作业之过拟合】的更多相关文章

一.使用循环: 1.1原始版逻辑回归: function g = sigmoid(z) g = zeros(size(z)); g = ./ ( + exp(-z)); end function [J, grad] = costFunction(theta, X, y) % Initialize some useful values m = length(y); % number of training examples J = ; grad = zeros(size(theta)); n =…
Regularized Linear Regression and Bias/Variance 大多数时候,我们使用机器学习方法得到的结果都不是特别理想,常见 欠拟合 和 过拟合 问题.通过一些变量画出相关的图像,能够帮助理解程序中存在的问题(复杂的算法用在大规模的数据集上,结果往往难以预测). 同样,可以使用这些图像来确定一些参数,来得到更准确的结果.比如,通过 validation curve的到了更合适的 lamda值. 其实前半部分,相当于复习了之前几次作业的线性拟合和多项式非线性拟合.…
1 过拟合 过拟合就是训练模型的过程中,模型过度拟合训练数据,而不能很好的泛化到测试数据集上.出现over-fitting的原因是多方面的: 1) 训练数据过少,数据量与数据噪声是成反比的,少量数据导致噪声很大 2 )特征数目过多导致模型过于复杂,如下面的图所示: 看上图中的多项式回归(Polynomial regression),左边为模型复杂度很低,右边的模型复杂度就过高,而中间的模型为比较合适的模型,对于Logistic有同样的情况 2)如何避免过拟合 1) 控制特征的数目,可以通过特征组…
上图是课上的编程作业运行10000次迭代后,输出每一百次迭代 训练准确度和测试准确度的走势图,可以看到在600代左右测试准确度为最大的,74%左右, 然后掉到70%左右,再掉到68%左右,然后升到70%,然后是68%, 然后稳定在70% , 这个设置的 学习率为 0.005  . 这个是学习率设置为0.01的情况,在900代左右达到72%准确度的测试准确度, 7500代以后测试准确度也达到最大值 72% 根据这个小测试,一个小想法就是 在训练最早到达最高值以后就可以停止训练了,但是什么时候到达的…
继续考虑Liner Regression的问题,把它写成如下的矩阵形式,然后即可得到θ的Normal Equation. Normal Equation: θ=(XTX)-1XTy 当X可逆时,(XTX)-1XTy = X-1,(XTX)-1XTy其实就是X的伪逆(Pseudo inverse).这也对应着Xθ = y ,θ = X-1y 考虑特殊情况 XTX 不可逆 解决办法: 1)考虑是否有冗余的特征,例如特征中有平方米,还有平方厘米,这两个特征就是冗余的,解决办法是去掉冗余 2)再有就是n…
题目下载[传送门] 题目简述:识别图片中的数字,训练该模型,求参数θ. 出现了一个问题:虽然训练的模型能够有很好的预测准确率,但是使用minimize函数时候始终无法成功,无论设计的迭代次数有多大,如下图: import numpy as np import scipy.io as scio import matplotlib.pyplot as plt import scipy.optimize as op # X:5000*400 # Y:5000*10 # a1:5000*401(后500…
题目下载[传送门] 题目简述:识别图片中的数字,训练该模型,求参数θ. 第1步:读取数据文件: %% Setup the parameters you will use for this exercise input_layer_size = 400; % 20x20 Input Images of Digits hidden_layer_size = 25; % 25 hidden units num_labels = 10; % 10 labels, from 1 to 10 % (note…
Exercise 1:Linear Regression---实现一个线性回归 关于如何实现一个线性回归,请参考:http://www.cnblogs.com/hapjin/p/6079012.html Exercise 2:Logistic Regression---实现一个逻辑回归 问题描述:用逻辑回归根据学生的考试成绩来判断该学生是否可以入学. 这里的训练数据(training instance)是学生的两次考试成绩,以及TA是否能够入学的决定(y=0表示成绩不合格,不予录取:y=1表示录…
本文根据水库中蓄水标线(water level) 使用正则化的线性回归模型预 水流量(water flowing out of dam),然后 debug 学习算法 以及 讨论偏差和方差对 该线性回归模型的影响. ①可视化数据集 本作业的数据集分成三部分: ⓐ训练集(training set),样本矩阵(训练集):X,结果标签(label of result)向量 y ⓑ交叉验证集(cross validation set),确定正则化参数 Xval 和 yval ⓒ测试集(test set)…
#课程设计--博客作业教学数据分析系统(201521123084 李嘉廉) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 數據分析 Kmeans聚類算法實現 多元綫性回歸算法實現 部分前端實現 3.自己的代码提交记录截图 4.自己负责模块或任务详细说明 (1)KMeans聚类 这是我负责的算法实现的一个模块,总结一下,数据聚类是将没有类别参考的数据进行分析,并划分为不同的组,即直接从这些数据中导出类标号.聚类分析本身则是根据数据来发掘数据对象及其关系信息,并将这…
一.作业说明 给定训练集spam_train.csv,要求根据每个ID各种属性值来判断该ID对应角色是Winner还是Losser(0.1分类). 训练集介绍: (1)CSV文件,大小为4000行X59列; (2)4000行数据对应着4000个角色,ID编号从1到4001; (3)59列数据中, 第一列为角色ID,最后一列为分类结果,即label(0.1两种),中间的57列为角色对应的57种属性值. 二.思路分析及实现 2.1 思路分析 这是一个典型的二分类问题,结合课上所学内容,决定采用Log…
一.作业说明 给定训练集train.csv,要求根据前9个小时的空气监测情况预测第10个小时的PM2.5含量. 训练集介绍: (1)CSV文件,包含台湾丰原地区240天的气象观测资料(取每个月前20天的数据做训练集,12月X20天=240天,每月后10天数据用于测试,对学生不可见); (2)每天的监测时间点为0时,1时......到23时,共24个时间节点; (3)每天的检测指标包括CO.NO.PM2.5.PM10等气体浓度,是否降雨.刮风等气象信息,共计18项. 用excel打开,繁体字会出现…
assignment 2 assignment2讲解参见: https://blog.csdn.net/BigDataDigest/article/details/79286510 http://www.cnblogs.com/daihengchen/p/5765142.html 最后一个作业Q5基于Tensorflow和Pytorch,将会需要在GPU上运行. 1. softmax_loss: log_probs[range(N), y]:从log_probs中取出纵值为yi,即正确标签,横值…
参考:https://blog.csdn.net/u013733326/article/details/79847918 希望大家直接到上面的网址去查看代码,下面是本人的笔记 初始化.正则化.梯度校验 1. 初始化参数:    1.1:使用0来初始化参数.    1.2:使用随机数来初始化参数.    1.3:使用抑梯度异常初始化参数(参见视频中的梯度消失和梯度爆炸).2. 正则化模型:    2.1:使用二范数对二分类模型正则化——L2正则化方法,尝试避免过拟合.    2.2:使用随机删除节…
参考:https://blog.csdn.net/u013733326/article/details/79847918 希望大家直接到上面的网址去查看代码,下面是本人的笔记 4.正则化 1)加载数据 仍是问题: 'c' argument has 1 elements, which is not acceptable for use with 'x' with s 解决——直接导入函数: import scipy.io as sio def load_2D_dataset(is_plot=Tru…
问题描述:根据水库中蓄水标线(water level) 使用正则化的线性回归模型预 水流量(water flowing out of dam),然后 debug 学习算法 以及 讨论偏差和方差对 该线性回归模型的影响 ①可视化数据集 本作业的数据集分成三部分: ⓐ训练集(training set),样本矩阵(训练集):X,结果标签(label of result)向量 y ⓑ交叉验证集(cross validation set),确定正则化参数 Xval 和 yval ⓒ测试集(test set…
监督学习(supervised learning) 假设我们有一个数据集(dataset),给出居住面积和房价的关系如下: 我们以居住面积为横坐标,房价为纵坐标,组成数据点,如(2104, 400),并把这些数据点描到坐标系中,如下: 由这些数据,我们怎么才能预测(predict)其他房价呢?其中房价作为居住面积的函数. 为了方便描述,我们用x(i)表示输入变量(即居住面积),也叫做输入特征(features):同时,用y(i)表示输出(即房价),也叫做目标(target)变量.有序对   (x…
课程笔记 Coursera—Andrew Ng机器学习—课程笔记 Lecture 9_Neural Networks learning 作业说明 Exercise 4,Week 5,实现反向传播 backpropagation神经网络算法, 对图片中手写数字 0-9 进行识别. 数据集 :ex4data1.mat.手写数字图片数据,5000个样例.每张图片20px * 20px,也就是一共400个特征.数据集X维度为5000 * 400 ex4weights.mat.神经网络每一层的权重. 文件…
ufldl学习笔记与编程作业:Multi-Layer Neural Network(多层神经网络+识别手写体编程) ufldl出了新教程,感觉比之前的好,从基础讲起,系统清晰,又有编程实践. 在deep learning高质量群里面听一些前辈说,不必深究其它机器学习的算法,能够直接来学dl. 于是近期就開始搞这个了.教程加上matlab编程.就是完美啊. 新教程的地址是:http://ufldl.stanford.edu/tutorial/ 本节学习地址:http://ufldl.stanfor…
作业: machine-learning-ex6 1. 支持向量机(Support Vector Machines) 在这节,我们将使用支持向量机来处理二维数据.通过实验将会帮助我们获得一个直观感受SVM是怎样工作的.以及如何使用高斯核(Gaussian kernel ).下一节我们将使用SVM建立一个垃圾邮件分类器. 1.1 样本数据1 以二维线性可分数据开始.下面代码部分将会可视化此数据集如图1所示.在这个数据集中,正样本使签为1使用+表示,负样本标签为0使用o表示,由一条间隙隔开.注意有一…
作业文件: machine-learning-ex5 1. 正则化线性回归 在本次练习的前半部分,我们将会正则化的线性回归模型来利用水库中水位的变化预测流出大坝的水量,后半部分我们对调试的学习算法进行了诊断,并检查了偏差和方差的影响. 1.1 可视化数据集 x表示水位变化,y表示水流量.整个数据集分成三个部分 模型的训练集,用来从X,y中学习参数. 交叉验证集,从Xval, yval中决定正则化参数 测试集,用来预测的样本,从数据集为 Xtest, ytest. 绘制的图像如图1 1.2 正则化…
作业文件: machine-learning-ex4 1. 神经网络 在之前的练习中,我们已经实现了神经网络的前反馈传播算法,并且使用这个算法通过作业给的参数值预测了手写体数字.这个练习中,我们将实现反响传播算法来学习神经网络的参数. 1.1 可视化数据 这一节的代码将会加载数据,并且以二维的格式展现出来.运行代码会将训练集加载到变量X与y中. load('ex4data1.mat'); m = size(X, 1); % Randomly select 100 data points to d…
编程作业文件: machine-learning-ex2 1. Logistic Regression (逻辑回归) 有之前学生的数据,建立逻辑回归模型预测,根据两次考试结果预测一个学生是否有资格被大学录取. 载入学生数据,第1,2列分别为两次考试结果,第3列为录取情况. % Load Data % The first two columns contain the exam scores and the third column contains the label. data = load(…
ufldl学习笔记与编程作业:Logistic Regression(逻辑回归) ufldl出了新教程,感觉比之前的好,从基础讲起.系统清晰,又有编程实践. 在deep learning高质量群里面听一些前辈说.不必深究其它机器学习的算法,能够直接来学dl. 于是近期就開始搞这个了,教程加上matlab编程,就是完美啊. 新教程的地址是:http://ufldl.stanford.edu/tutorial/ 本节学习链接:http://ufldl.stanford.edu/tutorial/su…
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 过程. 5.写一篇不少于1000字的学习笔记,谈一下学习的体会和收获. 通过学习python网络爬虫与信息提取,对于python的了解更多了,这个网课上的很详细,老师讲的也很细致.通过这个课程我也知道了很多以前没有接触到的知识,我知道了什么是网络爬虫以及爬虫有什么作用,我都有去做了下功课.网络爬虫是一个自动提取网页的程序,它为搜索引擎从万…
一.项目说明 给定数据集train.csv,要求使用卷积神经网络CNN,根据每个样本的面部图片判断出其表情.在本项目中,表情共分7类,分别为:(0)生气,(1)厌恶,(2)恐惧,(3)高兴,(4)难过,(5)惊讶和(6)中立(即面无表情,无法归为前六类).所以,本项目实质上是一个7分类问题. 数据集介绍: (1).CSV文件,大小为28710行X2305列: (2).在28710行中,其中第一行为描述信息,即“label”和“feature”两个单词,其余每行内含有一个样本信息,即共有28709…
目录 重现基线模型 基线模型原理 模型的优缺点 模型重现结果 提出改进 改进动机 新模型框架 评价合作伙伴 重现基线模型 基线模型原理 我们选用的的模型为DeepCS,接下来我将解释一下它的原理. 我们要进行代码搜索,其实就是希望寻找一个代码片段(code snoppets)和它的自然语言描述(description)的一个对应关系,然而,由于编程语言和自然语言间存在的差异,如果仅仅依靠文本内容的相似性,很容易出现误匹配.我们就需要在另一个空间去寻找一种表征,或者说寻找一种或多种映射,让对应的代…
ASE--第一次结对作业 问题定义 很早就听说了MSRA的黄金点游戏,让大家写Bot来参加比赛看谁的AI比较聪明可以操盘割韭菜.深感ASE课程老师设计的任务太用心了,各种接口都准备好了,大家只用专注于算法部分.方便上手然后也挺好玩(最后玩自闭了) 问题定义 黄金点游戏里所有玩家出两个数,平均值乘0.618就是这局的Golden Number,出的数字离Golden Number最近的玩家得分,最远的玩家扣分.不过每次得分等于玩家数,扣分固定是只有两分.游戏规则相当于鼓励大家骚操作,扣点分没关系重…
知识点 scikit-learn 对于线性回归提供了比较多的类库,这些类库都可以用来做线性回归分析. 我们也可以使用scikit-learn的线性回归函数,而不是从头开始实现这些算法. 我们将scikit-learn的线性回归算法应用于编程作业1.1的数据,并看看它的表现. 一般来说,只要觉得数据有线性关系,LinearRegression类是我们的首选.如果发现拟合或者预测的不好,再考虑用其他的线性回归库.如果是学习线性回归,推荐先从这个类开始第一步的研究. LinearRegression…
课程视频地址:http://open.163.com/special/opencourse/machinelearning.html 课程主页:http://cs229.stanford.edu/ 更具体的资料链接:https://www.jianshu.com/p/0a6ef31ff77a 笔记参考自中文翻译版:https://github.com/Kivy-CN/Stanford-CS-229-CN 这一讲介绍了高斯判别分析以及朴素贝叶斯算法. Part IV 生成学习算法 到目前为止,我们…