y_predicted = model.predict(X)
resolution = 100
X2d_xmin, X2d_xmax = np.min(X_Train_embedded[:, (0)]), np.max(X_Train_embedded
    [:, (0)])
X2d_ymin, X2d_ymax = np.min(X_Train_embedded[:, (1)]), np.max(X_Train_embedded
    [:, (1)])
xx, yy = np.meshgrid(np.linspace(X2d_xmin, X2d_xmax, resolution), np.
    linspace(X2d_ymin, X2d_ymax, resolution))
background_model = KNeighborsClassifier(n_neighbors=1).fit(X_Train_embedded,
    y_predicted)
voronoiBackground = background_model.predict(np.c_[xx.ravel(), yy.ravel()])
voronoiBackground = voronoiBackground.reshape((resolution, resolution))
plt.contourf(xx, yy, voronoiBackground)
plt.scatter(X_Train_embedded[:, (0)], X_Train_embedded[:, (1)], c=y)
plt.show()
Plotting decision boundary for High Dimension Data