深度学习入门 基于python理论和实践读书笔记(四)

第三章 神经网络 第五节

输出层的设计

神经网络可以用在回归和分类问题上面,我有一篇博客专门讲了这两个问题的区别,这里就不赘述了。

恒等函数和softmax函数

恒等函数顾名思义就是输入信号会原封不动的输出。
softmax函数
深度学习入门 基于python理论和实践读书笔记(四)_第1张图片
exp(x)表示ex,该式子表示输出层一共有n个输出,yk表示第k个输出信号。如果用python直接写中国公式的话,因为e1000将会溢出,所以需要进行改进。通过书上的推论可以证明在给自变量加上或者减去同一个数,最终的结果是不会变的。
python代码

def softmax(a):
    c = np.max(a)
    exp_a = np.exp(a-c)
    sum_exp_a = np.sum(exp_a)
    y = exp_a/sum_exp_a
    return  y

    一般情况下,神经网络会把输出值最大的神经元所对应的类别做为识别的结果。即使用来softmax,输出值最大的神经元位置也不会改变。所以输出层的softmax函数可以省略。
    机器学习的步骤可以分为学习和推理两个阶段。学习是进行模型的学习。在推理阶段是用已经学习到了的模型对未知的数据进行分类。推理时一般不用softmax函数,在学习的时候会用到softmax。

输出神经元的数量

输出神经元的数量是根据具体的问题来决定的。

你可能感兴趣的:(深度学习)