绘制逻辑回归模型决策边界误差

时间:2018-08-23 01:25:01

标签: python matplotlib machine-learning

我有一个逻辑回归模型,该模型用于预测,并希望绘制决策边界以查看其外观。我使用此link来查看操作方法,但始终收到错误消息,提示“ ValueError:形状为c(1595941L,)的c作为大小为100的x,大小为100的y的颜色序列是不可接受的”。即时通讯使用的代码如下。在发现错误之前,我一直在查看对象的形状,但是我并不真正了解发生了什么,我们将不胜感激。

错误出现在第58行,即ax.scatter行。

csv = 'clean_tweet.csv'
my_df = pd.read_csv(csv)
my_df.dropna(inplace=True)
my_df.reset_index(drop=True,inplace=True)

x = my_df.text
y = my_df.target
SEED = 2000

Xplot, yplot = make_classification(200, 2, 2, 0, weights=[.5, .5], 
random_state=15)

clf = LogisticRegression().fit(Xplot[:100], yplot[:100])
xx, yy = np.mgrid[-5:5:.01, -5:5:.01]
grid = np.c_[xx.ravel(), yy.ravel()]

probs = clf.predict_proba(grid)[:, 1].reshape(xx.shape)

f, ax = plt.subplots(figsize=(8, 6))
ax.contour(xx, yy, probs, levels=[.5], cmap="Greys", vmin=0, vmax=.6)


ax.scatter(Xplot[100:,0], Xplot[100:, 1], c=y[100:], s=50,
            cmap="RdBu", vmin=-.2, vmax=1.2,
            edgecolor="white", linewidth=1)

ax.set(aspect="equal",
       xlim=(-5, 5), ylim=(-5, 5),
       xlabel="$X_1$", ylabel="$X_2$")

0 个答案:

没有答案