您的任务只是跟踪缩放和非缩放数据。
虽然没有详细分析代码,但基本思想是:查看使用缩放/未缩放值的位置,并根据需要进行调整!
-
A: 训练后,我们不再需要缩放X,所以让我们将所有内容转换回原来的状态
-
-
C: 小心:基于网格的方法是创建密集网格,如果边界在保持步长的同时发生变化,您的电脑将因内存消耗而崩溃
-
这一个实际上可以调整(不确定原始值来自哪里),因为情节会发生微妙的变化
A:
y_pred = classifier.predict(X_test) # YOUR CODE
X_train = sc_X.inverse_transform(X_train) # transform back
X_test = sc_X.inverse_transform(X_test) # """
C:
X1, X2 = np.meshgrid(np.arange(start=X_set_train[:, 0].min(),
stop=X_set_train[:, 0].max(), step=10.), #!!! 0.01 ),
np.arange(start=X_set_train[:, 1].min(),
stop=X_set_train[:, 1].max(), step=0.1)) #!!! 0.01))
B:
Z_train = np.array([X1.ravel(), X2.ravel()]).T
plt.contourf(X1, X2, classifier.predict(sc_X.transform(Z_train)).reshape(X1.shape), # TRANFORM Z
alpha=0.75,
cmap=ListedColormap(
('red', 'green')))
虽然原始绘图显示了一条锯齿直线(精细的楼梯图案),但现在我们看到了一些不同的东西。我将把它留给感兴趣的读者(它与缩放有关!)。