尝试在MATLAB中使用前馈网络创建XOR门 [duplicate]

我正在尝试在MATLAB中创建一个简单的XOR门,仅用于展示前馈网络,但我在使输出与目标匹配时遇到了麻烦。我对MATLAB中的ANN还比较新,所以任何帮助都将不胜感激。以下是我的简单代码:

% XOR门
x = [0 0 1 1; 0 1 0 1] ;
t = [0,1,1,0];
net = feedforwardnet(2);
net = train(net,x,t);
y = net(x)
disp("权重:")
disp(net.IW{1})
disp("偏置:")
disp(net.b{1})

最后的部分只是用来让我查看使用的权重和偏置。为了提供一些背景,这是来自一个问题单,我之前创建了OR和AND门作为例子,但这些是线性可分的,所以我可以用单个感知器来完成!这个XOR门让我相当困惑!

提前感谢任何帮助 😀

编辑:对于那些没有从其他提供的帖子中得到帮助的人,这里更新一下,我使用径向基函数(MATLAB中的newrb)成功解决了XOR门,并且从给定的目标中得到了完美的结果。:)


回答:

尝试这个工作代码:x代表训练示例,y是目标。我在网络中添加了一个额外的隐藏层,包含两个神经元。你必须在训练之前先配置网络。网络使用S形函数作为激活函数。

x = [0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1; 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1];
y =[0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0];
net = feedforwardnet([2 2]);
net = configure(net,x,y);
net.layers{3}.transferFcn = 'logsig';
[net,tr] = train(net,x,y);
net(x)

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注