Stanford 机器学习 Week6 作业:Regularized Linear Regression and Bias v.s. Variance

本文介绍了一个线性回归的成本函数实现方法及其梯度计算过程,并通过调整正则化参数λ来观察训练误差和验证误差的变化,以此评估模型的表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linearRegCostfunction

m = length(y); 
J = 0;
grad = zeros(size(theta));

J = 1.0 / 2 / m * ( sum( (X * theta - y) .^ 2) + lambda * sum(theta(2:end) .^2) );

grad = 1 / m * ((X * theta - y)' * X)';
grad(2:end) = grad(2:end) + theta(2:end) * lambda / m ;
m = size(X, 1);
for i  = 1:m
    theta = trainLinearReg(X(1:i,:),y(1:i),lambda);
    error_train(i) = linearRegCostFunction(X(1:i,:),y(1:i),theta,0);
    error_val(i) = linearRegCostFunction(Xval,yval,theta,0);
end

validationCurve

lambda_vec = [0 0.001 0.003 0.01 0.03 0.1 0.3 1 3 10]';

error_train = zeros(length(lambda_vec), 1);
error_val = zeros(length(lambda_vec), 1);

m = length(lambda_vec);
for i = 1:m
    theta = trainLinearReg(X, y, lambda_vec(i));
    error_train(i) = linearRegCostFunction(X, y, theta, 0);
    error_val(i) = linearRegCostFunction(Xval, yval, theta, 0);
end

注意算error的时候都是不带regularization的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值