victory的博客

长安一片月,万户捣衣声

0%

深度学习 | 关于python or numpy在实现神经网络中的一些建议

关于python or numpy在实现神经网络中的一些建议

在编写神经网络时:
1.不要使用秩为1的一维数组
2.总是使用n x 1维矩阵(列向量-column vector)或者1 X n维矩阵(行向量-row vector)
3.敢于使用reshape()来确保你的矩阵或向量所需要的维数
4.在不完全确定一个向量的维维度时使用assert()语句
(Python assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。
断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况。)

demo:

a = np.random.randn(5) # Don't use
# a.shape = (5,) # rank 1 array

a = np.random.randn(5,1) # a.shape=(5,1) column vector

a = np.random.randn(1,5) # a.shape=(1,5) row vector

assert(a.shape == (5,1))

a = a.reshape((5,1))