Python-如何可视化LogisticRegression的决策边界?

时间:2019-01-09 21:24:00

标签: python python-3.x numpy matplotlib jupyter-notebook

我正在尝试可视化LogisticRegression()分类器的决策边界。

但是在呼叫ValueError: X has 2 features per sample; expecting 24时得到plot_boundary(LogisticRegression(), X, y, "Log Reg")

我已经检查了X.shape,它是(14635, 24) 我的功能可能有什么问题?

def plot_boundary(clf, X, y, plot_title): 
    xx, yy = np.meshgrid(np.linspace(-3, 3, 50), np.linspace(-3, 3, 50)) 
    clf.fit(X, y) 
    # plot the decision function for each datapoint on the grid 
    Z = clf.predict_proba(np.vstack((xx.ravel(), yy.ravel())).T)[:, 1] 
    Z = Z.reshape(xx.shape) 

    image = plt.imshow(Z, interpolation='nearest', extent=(xx.min(), xx.max(),
                       yy.min(), yy.max()), aspect='auto', origin='lower', 
                       cmap=plt.cm.PuOr_r) 
    contours = plt.contour(xx, yy, Z, levels=[0], linewidths=2, linetypes='--') 
    plt.scatter(X[:, 0], X[:, 1], s=30, c=y, cmap=plt.cm.Paired) 
    plt.xticks(()) 
    plt.yticks(()) 
    plt.xlabel(r'$x_1$') 
    plt.ylabel(r'$x_2$') 
    plt.axis([-3, 3, -3, 3]) 
    plt.colorbar(image) 
    plt.title(plot_title, fontsize=12)

0 个答案:

没有答案