第一部分:线性回归(单变量)
题目介绍:预测食品利润,第一列数据是城市的人口,第二列数据是该城市的食品利润。
1.绘制数据
通过可视化可以更好地理解数据。在ex1.m中已经加载了数据并且设置了X,y变量分别为人口和利润:
data = load('ex1data1.txt');
X = data(:, 1); y = data(:, 2);
m = length(y); % number of training examples
绘制数据的二维表示图:
plot(x, y, 'rx', 'MarkerSize', 10);
ylabel('profit in $10,000s');
xlabel('population of City in 10,000s');

2.梯度下降
线性回归的目标是最小化损失函数:

其中的假设函数为:

梯度下降更新公式(需要同时更新其中的每个theta_j):

ex1.m中设置了截距项theta_0为1,初始化了拟合参数、迭代次数和学习率:
X = [ones(m, 1), data(:,1)]; % Add a column of ones to x
theta = zeros(2, 1); % initialize fitting parameters
% Some gradient descent settings
iterations

这篇博客详细介绍了吴恩达机器学习课程中的线性回归练习,包括单变量和多变量的情况。在单变量线性回归中,博主探讨了数据可视化、梯度下降和损失函数的最小化。而在多变量线性回归部分,讨论了特征缩放的重要性、梯度下降更新规则以及正规方程的应用。通过实例和可视化,帮助读者更好地理解和应用这些概念。
最低0.47元/天 解锁文章
2275

被折叠的 条评论
为什么被折叠?



