斯坦福机器学习实验之1-单变量线性回归(Linear Regression with One Variable)
来源:互联网 发布:数控车床编程步骤例题 编辑:程序博客网 时间:2024/05/14 07:52
1.数据图形化(Plotting the Data)
在进行任务之前,将数据可视化对我们理解数据很有用。
1)载入数据
函数: load;length
data = load('ex1data1.txt'); % read comma separated dataX = data(:, 1); y = data(:, 2);m = length(y); % number of training examples
2)可视化数据:plotData.m
函数:figure;plot;title;xlabel;ylabel
figureplot(x,y,'Color','g','LineStyle','none','Marker','x','MarkerSize',10); % Plot the datatitle('plotData');xlabel('Population of City in 10,000s'); %Set the x-axis labelylabel('Profit in $10,000s'); % Set the y-axis label
2.梯度下降(Gradient Descent)
1)准备参数
函数:ones;zeros;
X = [ones(m, 1), data(:,1)]; % Add a column of ones to xtheta = zeros(2, 1); % initialize fitting parametersiterations = 1500;alpha = 0.01;
2)计算代价函数(Computing the cost):computeCost.m
函数:sum
运算符: . ^
function J = computeCost(X,y,theta)%myFun - Description% Long description% square every elements in matrix A : A .^2m = length(y); % number of training examplesh=X*theta;J=1/(2*m)*sum((h-y).^2);end
3.梯度下降
gradientDescent.m
% for i=1:10,% v(i)=2^i;% end;function [theta,J_history] = gradientDescent(X,y,theta,alpha,iterations) m=length(y); theta_s=theta; for i=1:iterations, theta(1)=theta(1)-alpha/m*sum(X*theta_s-y); theta(2)=theta(2)-alpha/m*sum((X*theta_s-y).*X(:,2)); theta_s=theta; % Save the cost in every iteration J_history(iterations)=computeCost(X,y,theta); end J_historyend
说明:用theta_s保留计算结果;分别计算theta(1)和theta(2),原因是theta为两行向量,而X和y都是m行矩阵,维度不匹配。
4.调试
1)matlab向量编号是从1开始的;
2)运算时注意维度的匹配。
阅读全文
0 0
- 斯坦福机器学习实验之1-单变量线性回归(Linear Regression with One Variable)
- 机器学习之单变量线性回归(Linear Regression with One Variable)
- 机器学习之单变量线性回归(Linear Regression with One Variable)
- 机器学习之单变量线性回归(Linear Regression with One Variable)
- 机器学习之单变量线性回归(Linear Regression with One Variable)
- Stanford公开课机器学习---week1-2.单变量线性回归(Linear Regression with One Variable)
- Standford 机器学习—第一讲 Linear Regression with one variable(单变量线性回归)
- 机器学习II. Linear Regression with One Variable (Week 1) 单特征线性回归
- Linear Regression with one variable 单变量线性回归
- Andrew NG机器学习课程笔记系列之——机器学习之单变量线性回归(Linear Regression with One Variable)
- Coursera公开课笔记: 斯坦福大学机器学习第二课“单变量线性回归(Linear regression with one variable)”
- Coursera公开课笔记: 斯坦福大学机器学习第二课“单变量线性回归(Linear regression with one variable)”
- 机器学习 Machine Learning(by Andrew Ng)----第二章 单变量线性回归(Linear Regression with One Variable)
- Machine Learning - II. Linear Regression with One Variable单变量线性回归 (Week 1)
- 第一章-------单参数线性回归 Linear Regression with one variable
- Linear Regression with one variable单参数线性回归
- Stanford ML - Linear regression with one variable 单变量线性回归
- Coursera《machine learning》--(2)单变量线性回归(Linear Regression with One Variable)
- 前端知识点整理系列(一)—— 响应式布局
- const只读变量的内存分配
- one day
- VIM+cscope+ctags使用与总结
- Patching Array
- 斯坦福机器学习实验之1-单变量线性回归(Linear Regression with One Variable)
- Collection接口 和 Map接口
- SpringMVC拦截器实现登陆时的验证拦截
- (25)模拟和运行
- 清除字符串中的空格
- Git协议 服务器的搭建
- maven build jar 包
- Attribute meta-data#android.support.VERSION@value value=(25.3.1) from [com.android.support:appcompat
- Spring与Junit结合使用的代码