machine-learning - 这个神经网络可以进行分离吗?

标签 machine-learning neural-network classification perceptron

我有三类积分:

C1:{(4,1)、(2,3)、(3,5)、(5,4)、(1,6)}

C2: {(0,2), (-2,2), (-3,2), (-2,4)}

C3: {(1,-2), (3,-2)}

我还有一个具有 2 个输入、一个偏置项和三个输出的单层感知器。

a) 网络能学会分离样本吗? (假设如果 x ∈ Ci 则我们希望 yi = 1,并且如果 j != i 则 yj = −1)

b) 将样本 (-1,6) 添加到 C1 中。现在,网络可以学会分离样本吗?

我不知道如何解决这个问题。我不需要指定实际权重,但如何确定网络是否能够分离样本?这可以纯粹通过图形来完成,还是有书面证明?

最佳答案

从下面代码生成的图表中可以看到

import matplotlib.pyplot as plt

C1 = [(4,1), (2,3), (3,5), (5,4), (1,6), (-1,6)]
C2 = [(0,2), (-2,2), (-3,2), (-2,4)]
C3 = [(1,-2), (3,-2)]

plt.scatter([i[0] for i in C1],[i[1] for i in C1], c='b')
plt.scatter([i[0] for i in C2],[i[1] for i in C2], c='r')
plt.scatter([i[0] for i in C3],[i[1] for i in C3], c='g')
plt.show()

enter image description here

数据可以很容易地通过线性线分离,感知器又名神经网络,只有一层就可以学习分离线性数据

具有几层的完整神经网络,可以产生非线性分离,因此可以轻松做到

关于machine-learning - 这个神经网络可以进行分离吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49835408/

相关文章:

python - 在 sklearn.neural_network 中初始化权重

python - torch.flatten() 和 nn.Flatten() 之间的区别

python - Scikit-学习 GridSearchCV : Avoid function to copy data for each process in parallel

python - 如何在 Python scikit-learn 中输出随机森林中每棵树的回归预测?

python - OpenAI gym 和 Python 线程

python - 如何从 model.predict() 结果中获取单个值

python - Keras 模型的相同输出

python-3.x - CNN-将图像分为训练/验证/测试

java - 构建 SVM 训练集的困惑

python - 图像聚类 - 在 GPU 上分配内存