在看交叉熵误差公式前,先来熟悉一下自然对数,自然对数是以常数e为底数的对数,数学中常见以logx表示自然对数。e是一个无限不循环小数,其值约等于2.718281828459…,是一个超越数。看代码,分析图:
代码不写注释,因为很明显了。之所以加了负号画出红线图形,是因为这个解释起来更容易一些,而且交叉熵误差函数也确实是取了负号的。
前文深度学习入门初探——多层感知机的神经网络式实现已经介绍过了,神经网络的输出softmax,值在0到1之间,1就是100%的,当输出1的时候就是百分百确认,误差为0。当输出趋于0的时候误差就越大,越不能确认。
图中红色曲线在输入是0到1时,误差是负无穷到0。
# coding: utf-8
import math
import numpy as np
import matplotlib.pylab as plt
X = np.arange(0.0000001, 5.0, 0.01)
Y = np.arange(0.0000001, 5.0, 0.01)
for i in range(0,X.shape[0]):