机器学习笔记11:例子:用神经网络还原简单逻辑运算;多分类问题 木灵的炼金工作室

国庆十一天快乐摸鱼结束。

我不想返工啊!

moyu

用神经网络模拟逻辑运算

或运算模拟

我们使用单层的神经网络来模拟或运算,使用之前提出的前向传播矩阵来描述即将说明的神经网络:

\[\Theta^{(1)}=(-10, +20, +20)^T\]

需要注意的是,首个-10系数对应的是偏置单元$x_0=+1$

与运算模拟

我们仍然使用单层的神经网络来模拟与运算:

\[\Theta^{(1)}=(-30, +20, +20)^T\]

非运算模拟

\[\Theta^{(1)}=(+10, -20)^T\]

异或运算模拟

我们可以将异或运算拆分为如下的简单逻辑运算形式:

\[x_1\ XNOR\ x_2 = (x_1\ AND\ x_2)\ OR\ (\bar{x_1}\ AND\ \bar{x_2})\]

因此异或运算可以用上述简单逻辑运算神经网络串联而成:

\[\Theta^{(1)} = \begin{pmatrix} -30 & 10 \\ 20 & -20 \\ 20 & -20 \\ \end{pmatrix}\] \[\Theta^{(2)} = \begin{pmatrix} -10\\ 20\\ 20\\ \end{pmatrix}\]

即可得到模拟异或运算的神经网络.

但需要注意的是,上述模拟运算是用神经网络模拟一个确定的模型,不需要执行反馈的参数调整,因此不能称之为”神经网络机器学习”。

多分类问题

用神经网络解决多分类问题的策略与用回归模型解决多分类问题的策略相似,均是相对独立地计算每一种标记值的权重,后综合分析而成。一般神经网络多分类问题会返回一个一维向量,其每一个分量代表着该用例在每一种标记下的权重,后再由Logistic函数得出最终的分类结果。


Copyright AmachiInori 2017-2021. All Right Reserved.
Powered By Jekyll.
amachi.com.cn