我无法理解用于预测绘制图表的ys的公式。ys = (-theta[0] - theta[1] * xs) / theta[2]
怎么可能?
fig, axes = plt.subplots(1, 3, sharex=True, sharey=True, figsize=(12, 3))
axes = axes.ravel()
for k, theta in enumerate(tha[:3]):
ax = axes[k]
xs = np.arange(0, 1, 0.1)
ys = (-theta[0] - theta[1] * xs) / theta[2]
ax.plot(xs, ys, lw=0.5)
dfa.query('label == 1').plot.scatter(x='x1', y='x2', ax=ax, color='blue')
dfa.query('label == -1').plot.scatter(x='x1', y='x2', ax=ax, color='red')
最佳答案
在这里您不会预测ys
,在公式中xs
和ys
都是您的功能,因此最好将它们命名为x1
和x2
。
这两个公式都定义了相同的决策边界:
ys = (-theta[0] - theta[1] * xs) / theta[2]
theta[2] * ys = (-theta[0] - theta[1] * xs)
但是要绘制边界,您应该定义一个特征和另一个特征。
所以这里
ys
不是您的预测,您的预测是该表达式取决于两个特征
xs
和ys
: theta[0] + theta[1] * xs + theta[2] * ys
在图中,这是将您的点分为两组的线。我附上了您描述此链接的屏幕截图。
关于python - 以下代码中使用什么公式来计算ys?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57210664/