Ejemplo n.º 1
0
y_combined = np.hstack((y_train, y_test))

# plot_decision_regions(X_combined,
#                       y_combined,
#                       classifier=tree,
#                       test_idx=range(105, 150))
#
# plt.xlabel('petal length [cm]')
# plt.ylabel('petal width [cm]')
# plt.legend(loc='upper left')
# plt.show()

forest = RandomForestClassifier(criterion='gini',
                                n_estimators=25,
                                random_state=1,
                                n_jobs=2)

forest.fit(X_train, y_train)

plot_decision_regions(X_combined,
                      y_combined,
                      classifier=forest,
                      test_idx=range(105, 150))

plt.xlabel('petal length [cm]')
plt.ylabel('petal width [cm]')
plt.legend(loc='upper left')
plt.tight_layout()
# plt.savefig('images/03_22.png', dpi=300)
plt.show()
Ejemplo n.º 2
0
np.random.seed(1)
X_xor = np.random.randn(200, 2)
print("X_xor :", X_xor)

y_xor = np.logical_xor(X_xor[:, 0] > 0, X_xor[:, 1] > 0)
print("y_xor :", y_xor)

y_xor = np.where(y_xor, 1, -1)

print("y_xor :", y_xor)

# plt.scatter(X_xor[y_xor == 1, 0], X_xor[y_xor == 1, 1], c='b', marker='x', label='1')

# plt.scatter(X_xor[y_xor == -1, 0], X_xor[y_xor == -1, 1], c='r', marker='s', label='-1')

# plt.xlim([-3, 3])
# plt.ylim([-3, 3])
# plt.legend(loc='best')
# plt.tight_layout()
# plt.savefig('images/03_12.png', dpi=300)
# plt.show()

# 术语"核"可以理解为两个样本之间的相似函数

# 参数 \gamma 的变化会导致决策边界的紧缩和波动。 并在控制过拟合问题上起着重要的作用
svm = SVC(kernel='rbf', random_state=1, gamma=10.10, C=10.0)
svm.fit(X_xor, y_xor)
plot_decision_regions(X_xor, y_xor, classifier=svm)
plt.legend(loc='upper left')
plt.show()
Ejemplo n.º 3
0
print('Accuracy: %.2f' % accuracy_score(y_test, y_pred))  # 分类准确度

print('Accuracy: %.2f' % ppn.score(X_test_std, y_test))  # scikit-learn 分类器评分方法

# vstack 用来 竖直堆叠序列中的数组(行方向)  https://www.runoob.com/numpy/numpy-array-manipulation.html
X_combined_std = np.vstack((X_train_std, X_test_std))

print("X_combined_std", X_combined_std)

y_combined = np.hstack((y_train, y_test))  # hstack  用来 水平堆叠序列中的数组(列方向)

print("y_combined", y_combined)

plot_decision_regions(X=X_combined_std,
                      y=y_combined,
                      classifier=ppn,
                      test_idx=range(105, 150))

plt.xlabel('petal length [standardized]')

plt.ylabel('petal width [standardized]')

plt.legend(loc='upper left')

plt.tight_layout()

# plt.savefig('images/03_01.png', dpi=300)

plt.show()