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

Learning model coefficients

In order to estimate the coefficients of our model, we need to fit the data with a regression line that gives a similar answer to the actual sales. To get a regression line that best fits the data, we will use a criterion called least squares. So, we need to find a line that minimizes the difference between the predicted value and the observed (actual) one. In other words, we need to find a regression line that minimizes the sum of squared residuals (SSresiduals). Figure 2 illustrates this:

Figure 2: Fitting the data points (sample of TV ads) with a regression line that minimizes the sum of the squared residuals (difference between the predicted and observed value)

The following are the elements that exist in Figure 2:

  • Black dots represent the actual or observed values of x (TV ad) and y (sales)
  • The blue line represents the least squares line (regression line)
  • The red line represents the residuals, which are the differences between the predicted and the observed (actual) values

So, this is how our coefficients relate to the least squares line (regression line):

  • beta0 is the intercept, which is the value of y when x =0
  • beta1 is the slope, which represents the change in y divided by the change in x

Figure 3 presents a graphical explanation of this:

Figure 3: The relation between the least squares line and the model coefficients

Now, let's go ahead and start to learn these coefficients using Statsmodels:

# To use the formula notation below, we need to import the module like the following
import statsmodels.formula.api as smf
# create a fitted model in one line of code(which will represent the least squares line)
lm = smf.ols(formula='sales ~ TV', data=advertising_data).fit()
# show the trained model coefficients
lm.params

Output:

Intercept    7.032594
TV 0.047537
dtype: float64

As we mentioned, one of the advantages of linear regression models is that they are easy to interpret, so let's go ahead and interpret the model.

主站蜘蛛池模板: 汨罗市| 乃东县| 南安市| 安福县| 临邑县| 丰都县| 淅川县| 确山县| 蒙阴县| 阳谷县| 手游| 永靖县| 元阳县| 宁阳县| 泌阳县| 盐池县| 黄龙县| 井研县| 盖州市| 遵义市| 井冈山市| 广灵县| 临洮县| 江达县| 宜兴市| 望谟县| 沁水县| 高要市| 扎赉特旗| 兴业县| 乌鲁木齐县| 佛冈县| 内乡县| 新竹市| 大悟县| 新竹市| 车险| 定襄县| 江油市| 禄丰县| 白朗县|