You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

validationCurve.m 1.9 kB

8 years ago
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. function [lambda_vec, error_train, error_val] = ...
  2. validationCurve(X, y, Xval, yval)
  3. %VALIDATIONCURVE Generate the train and validation errors needed to
  4. %plot a validation curve that we can use to select lambda
  5. % [lambda_vec, error_train, error_val] = ...
  6. % VALIDATIONCURVE(X, y, Xval, yval) returns the train
  7. % and validation errors (in error_train, error_val)
  8. % for different values of lambda. You are given the training set (X,
  9. % y) and validation set (Xval, yval).
  10. %
  11. % Selected values of lambda (you should not change this)
  12. lambda_vec = [10000]';
  13. % You need to return these variables correctly.
  14. error_train = zeros(length(lambda_vec), 1);
  15. error_val = zeros(length(lambda_vec), 1);
  16. % ====================== YOUR CODE HERE ======================
  17. % Instructions: Fill in this function to return training errors in
  18. % error_train and the validation errors in error_val. The
  19. % vector lambda_vec contains the different lambda parameters
  20. % to use for each calculation of the errors, i.e,
  21. % error_train(i), and error_val(i) should give
  22. % you the errors obtained after training with
  23. % lambda = lambda_vec(i)
  24. %
  25. % Note: You can loop over lambda_vec with the following:
  26. %
  27. % for i = 1:length(lambda_vec)
  28. % lambda = lambda_vec(i);
  29. % % Compute train / val errors when training linear
  30. % % regression with regularization parameter lambda
  31. % % You should store the result in error_train(i)
  32. % % and error_val(i)
  33. % ....
  34. %
  35. % end
  36. %
  37. %
  38. for i = 1:length(lambda_vec)
  39. lambda = lambda_vec(i)
  40. [theta] = trainLinearReg(X, y, lambda);
  41. error_train(i) = linearRegCostFunction(X, y, theta, 0);
  42. error_val(i) = linearRegCostFunction(Xval, yval, theta, 0);
  43. end
  44. % =========================================================================
  45. end

机器学习

Contributors (1)