Ridge regression is a technique to block the cases where X'X becomes singular. I is an identity matrix where all the elements in the diagonal are 1 and all the other elements are zero. is a user-defined scalar value and it is used to minimize the prediction error.
The following code snippet uses the house price example to find the theta using ridge regression model:
The price is a vector holding the price of all the houses.
- is known as the Shrinkage Parameter
- controls the size of the coefficients of theta
- controls the amount of regularization
To obtain the value of , you have to break the training data into several sets and run the algorithm several times with several values of , and then find the one that is most sensible and reduces error the most. There are some techniques to find the value of using SVD but it's not proven to work all the time.