Sololearn 自学机器学习(7)逻辑回归模型
生存的概率
为了确定最佳的分割数据的直线,我们需要有一种评分直线的方法。首先,让我们看一个单独的数据点。
理想情况下,如果数据点是一个幸存的乘客,它应该在直线的右侧,并且离直线很远。如果它是一个未幸存的乘客的数据点,它应该在直线的左侧远离直线。它离直线越远,我们越有信心它在正确的一侧。
对于每个数据点,我们将有一个介于 0 和 1 之间的分数。我们可以将其视为乘客幸存的概率。如果值接近 0,该点将远离直线的左侧,这意味着我们有信心该乘客未幸存。如果值接近 1,该点将远离直线的右侧,这意味着我们有信心该乘客幸存。值为 0.5 意味着该点正好落在直线上,我们不确定乘客是否幸存。
下面是计算这个分数的方程,尽管对它的直观理解远比实际方程重要。
回顾直线的方程,$ 0 = ax + by + c $ 其中 $x$ 是票价,$y$ 是年龄,$a$、$b$ 和 $c$ 是我们控制的系数。数 $e$ 是常熟,约为 2.71828
这个函数被称为 sigmoid
逻辑回归不仅提供了一个预测(幸存或否),还提供了一个概率(这个人幸存的概率为 80%)。
似然性 Likelihood
这段有点生涩难懂,放上英文原文方便学习
To calculate how good our line is, we need to score whether our predictions are correct. Ideally if we predict with a high probability that a passenger survives (meaning the datapoint is far to the right of the line), then that passenger actually survives.
So we’ll get rewarded when we predict something correctly and penalized if we predict something incorrectly.
Here’s the likelihood equation. Though again, the intuition is more important than the equation.
Here p is the predicted probability of surviving from the previous part.
The likelihood will be a value between 0 and 1. The higher the value, the better our line is.
Let’s look at a couple possibilities:
- If the predicted probability p is 0.25 and the passenger didn’t survive, we get a score of 0.75 (good).
- If the predicted probability p is 0.25 and the passenger survived, we get a score of 0.25 (bad).
We multiply all the individual scores for each datapoint together to get a score for our line. Thus we can compare different lines to determine the best one.
Let’s say for ease of computation that we have 4 datapoints.
Survived or not? | Predicted probability | Score |
---|---|---|
Survived | 0.25 | 0.25 |
Didn’t Survive | 0.25 | 0.75 |
Survived | 0.6 | 0.6 |
Didn’t Survive | 0.2 | 0.8 |
We get the total score by multiplying the four scores together:
The value is always going to be really small since it is the likelihood that our model predicts everything perfectly. A perfect model would have a predicted probability of 1 for all positive cases and 0 for all negative cases.
The likelihood is how we score and compare possible choices of a best fit line.
为了计算我们定义的直线有多好(实用)。我们需要评估我们的预测是否正确。理想情况下,如果我们以很高的概率预测某位乘客幸存(即数据点远离直线的右侧),那么该乘客实际上会幸存。
因此,当我们正确预测时,我们将获得奖励;如果我们错误预测,我们将受到惩罚。这是似然性(Likelihood)方程。尽管再次强调,直觉比方程更重要。
这里的 $p$ 是从之前部分预测的幸存概率。
似然性将是一个介于 0 和 1 之间的值。该值越高,表示我们的直线定义的越完美。
让我们看以下几种可能性:
- 如果预测的概率 $p$ 是 0.25,而乘客没有幸存,我们得到的分数是 0.75(好的)。
- 如果预测的概率 $p$ 是 0.25,而乘客幸存了,我们得到的分数是 0.25(不好的)。
我们将每个数据点的各个分数相乘,得到我们直线的分数。因此,我们可以比较不同的直线,确定最佳直线。
假设为了计算方便,我们有 4 个数据点:
Survived or not? | Predicted probability | Score |
---|---|---|
Survived | 0.25 | 0.25 |
Didn’t Survive | 0.25 | 0.75 |
Survived | 0.6 | 0.6 |
Didn’t Survive | 0.2 | 0.8 |
该值总是会非常小,因为它是我们的模型完美预测所有情况的可能性。一个完美的模型对于所有正类别的情况都会有预测概率为 1,对于所有负类别的情况都会有预测概率为 0。
似然性是我们对最佳拟合直线的可能选择进行评分和比较的方式。
似然性总结
总结一下,如果一个乘客幸存,将相同的 $p$ 包含在所有乘客得分的乘法中;如果没有幸存,将 $(1-p)$ 包含在所有乘客得分的乘法中。概率 $p$ 表示幸存的预测分数。
- 如果乘客幸存:($p$ - 应该更高),如果我们预测的 $p$ 更高,那就是正确的,所以将这个更高的 $p$ 直接包含在其中;或者如果我们预测的 $p$ 更低,那就是不正确的,所以将这个更低的 $p$ 直接包含在其中。
- 如果乘客没有幸存:($p$ - 应该更低),如果我们预测的 $p$ 更高,那就是不正确的,所以通过简单地取 $(1-p)$ 来对这个更高的 $p$ 进行惩罚,以将其切换为更低的值;或者如果我们预测的 $p$ 更低,那就是正确的,但由于 $p$ 更低,我们希望奖励这一点,所以通过进行 $(1-p)$ 将这个更低的 $p$ 切换为更高的值。
似然性练习
如果预测的概率为 0.75 但是乘客没幸存,则似然性的分数为?
- A. 0
- B. 0.5
- C. 0.25
- D. 0.75
- E. 1
我们已经使用了逻辑回归(Logistic Regression)来找到一条分隔泰坦尼克号数据集的线。在以下哪个预测概率值中,乘客被预测为幸存,数据点离分隔线最远?
- 0.6
- 0.5
- 0.9
- 0.75
- 0.25
如果我们预测乘客有 0.8 的生存几率,而乘客确实生存了,那么可能性(Likelihood)是 0.8。如果我们预测乘客有 0.6 的生存几率,而乘客未能生存,那么可能性(Likelihood)是多少?
- 0.6
- 0.8
- 0.2
- 0.4
逻辑回归(Logistics Regression)模型将找到具有最高 __ 的线
- 系数(Coefficients)
- 准确度(Accuracy)
- 可能性(Likelihood)