功能未出现在绘图上

Function does not appear on the plot

提问人:Septerra 提问时间:10/24/2023 最后编辑:Septerra 更新时间:10/25/2023 访问量:21

问:

我的图形判别函数没有出现在图上。代码如下

import numpy as np
import matplotlib.pyplot as plt
from sklearn.neighbors import KernelDensity

n_samples = 1000
mean_c1 = np.array([0, 0])
cov_c1 = np.array([[1, 0], [0, 1]])
mean_c2 = np.array([4, 4])
cov_c2 = np.array([[1, 0], [0, 1]])
events_c1 = np.random.multivariate_normal(mean_c1, cov_c1, n_samples)
events_c2 = np.random.multivariate_normal(mean_c2, cov_c2, n_samples)
test_events_c1 = np.random.multivariate_normal(mean_c1, cov_c1, 
n_samples)
test_events_c2 = np.random.multivariate_normal(mean_c2, cov_c2, 
n_samples)

X_train = np.vstack((events_c1, events_c2))
y_train = np.hstack((np.ones(1000), 2*np.ones(1000)))

X_test = np.vstack((test_events_c1, test_events_c2))
y_test = np.hstack((np.ones(1000), 2*np.ones(1000)))

kde_c1 = KernelDensity(kernel='gaussian', bandwidth=0.5).fit(events_c1)
kde_c2 = KernelDensity(kernel='gaussian', bandwidth=0.5).fit(events_c2)

log_density_c1 = kde_c1.score_samples(X_test)
log_density_c2 = kde_c2.score_samples(X_test)

discriminant_scores = log_density_c1 - log_density_c2
predicted_labels = discriminant_scores > 0
error_count = np.sum(predicted_labels != y_test)
error_probability = error_count / len(y_test)

plt.scatter(X_test[predicted_labels == 1, 0], X_test[predicted_labels == 1, 1], label='Classe C1', alpha=0.5)
plt.scatter(X_test[predicted_labels == 0, 0], X_test[predicted_labels == 0, 1], label='Classe C2', alpha=0.5)

我已经计算了所有的判别值,如果你能帮忙的话

python-3.x 函数

评论

1赞 ravenspoint 10/24/2023
您忘记使用语言进行标记。看起来像python。您忘记发布可重现的示例 - 特别是演示问题的输入数据。你读过如何问一个好问题吗?

答: 暂无答案