官术网_书友最值得收藏!

Prediction using linear regression

Aaron, a friend of mine, is a little sloppy with money and is never able to estimate how much his monthly credit card bill will be. Can we do something to help him? Well, yes, linear regression can help us to predict a monthly credit card bill if we have sufficient data. Thanks to the digital economy, all of his monetary transactions for the last five years are available online. We extracted his monthly expenditure on groceries, stationery, and travel and his monthly income. Linear regression helped not only in predicting his monthly credit card bill, it also gave an insight into which factor was most responsible for his spending.

This was just one example; linear regression can be used in many similar tasks. In this section, we'll learn how we can perform linear regression on our data.

Linear regression is a supervised learning task. It's one of the most basic, simple, and extensively used ML techniques for prediction. The goal of regression is to find a function F(x, W), for a given input-output pair (xy), so that y = F(x, W). In the (xy) pair, x is the independent variable and y the dependent variable, and both of them are continuous variables. It helps us to find the relationship between the dependent variable y and the independent variable(s) x

The input x can be a single input variable or many input variables. When F(x, W) maps a single input variable x, it's called simple linear regression; for multiple input variables, it's called multiple linear regression

The function F(x, W) is approximated using the following expression:

In this expression, d is the dimensions of x (number of independent variables), and W is the weight associated with each component of x. To find the function F(x, W), we need to determine the weights. The natural choice is to find the weights that reduce the squared error, hence our objective function is as follows:

In the preceding function, N is the total number of the input-output pair presented. To find the weights, we differentiate the objective function with respect to weight and equate it to 0. In matrix notation, we can write the solution for the column vector W = (W0, W1, W2, ..., Wd)T as follows:

On differentiating and simplifying, we get the following:

X is the input vector of size [N, d] and Y the output vector of size [N, 1]. The weights can be found if (XTX)-1 exists, that's if all of the rows and columns of X are linearly independent. To ensure this, the number of input-output samples (N) should be much greater than the number of input features (d). 

An important thing to remember is that Y, the dependent variable, isn't linear with respect to the dependent variable X; instead, it's linear with respect to the model parameter W, the weights. And so we can model relationships such as exponential or even sinusoidal ( between  Y and X) using linear regression. In this case, we generalize the problem to finding weights W, so that y = F( g( x), W), where g( x) is a non-linear function of X.
主站蜘蛛池模板: 齐齐哈尔市| 城步| 唐山市| 吉木萨尔县| 谢通门县| 洪湖市| 凤冈县| 喜德县| 鹤壁市| 宣恩县| 孝昌县| 岱山县| 绥中县| 安西县| 盐城市| 永清县| 噶尔县| 呈贡县| 凤阳县| 大洼县| 米易县| 吉林市| 冷水江市| 时尚| 滨州市| 麦盖提县| 昌宁县| 鄂托克前旗| 宁远县| 长白| 清原| 当涂县| 定襄县| 开江县| 桃园县| 固镇县| 饶平县| 巨鹿县| 收藏| 阳原县| 固安县|