MachineLearning Exercise 5 :Regularized Linear Regression and Bias vs Variance

2625 ワード

以前はMLの授业ごとにノートを取るつもりでしたが、今courseraの内容が详しくて、それからスクリーンショットをしてノートを取るのはとても面白いので、授业の后でプログラミングの练习をしてノートを作りましょう.の
linearRegCostFunction
pre = X*theta-y;
J = (1/(2*m))*(pre'*pre+lambda*(theta(2:end)'*theta(2:end)));

grad = (1/m)*(pre'*X)';
temp = theta;
temp(1) = 0;
grad = grad + (lambda/m)*(temp);

learningCurve
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
for i = 1:length(lambda_vec)
    lambda = lambda_vec(i);
    theta = trainLinearReg(X, y, lambda);
    error_train(i) = linearRegCostFunction(X, y, theta, 0);
    error_val(i) = linearRegCostFunction(Xval, yval, theta, 0);
end

polyFeatures
for i =1:p
    X_poly(:,i) = X.^i;
end

他の練習は時間を割いて補充します.説明については、次の分解を聞いてください.