总结一下今天的学习过程
注:感觉最近状态很不好,精神头有点不足,没有一开始的激情了,就比如说今天的学习,感觉不是很积极
一是继续捣鼓了GPU的配置环境,还是不怎么OK,也许是测试或验证的方式不对
二是看了神经网络结果以及梯度下降算法的简单原理,结合一个GitHub的项目
neural-networks-and-deep-learning,学习了代码
下面是在Python3中遇到的一些问题以及解决总结,因为GitHub上是用的Python2环境
算法代码下载
1,改变成自己的Python环境
2. importerror no module named cpickle
cPickle module in Python2 has been replaced by an improved module pickle in Python3. So simply use pickle.
解决:
# import cPickle
import pickle
#training_data, validation_data, test_data = cPickle.load(f)
training_data, validation_data, test_data = pickle.load(f, encoding="bytes")
Try using list(zip(…) where you have zip(…) – Julien Jun 27 ‘16 at 4:02
根据代码进行修改,前缀list
tr_d, va_d, te_d = load_data()
training_inputs = [np.reshape(x, (
784
,
1
))
for
x
in
tr_d[
0
]]
training_results = [vectorized_result(y)
for
y
in
tr_d[
1
]]
#training_data =
zip
(training_inputs, training_results)
training_data = list(zip(training_inputs, training_results))
validation_inputs = [np.reshape(x, (
784
,
1
))
for
x
in
va_d[
0
]]
#validation_data =
zip
(validation_inputs, va_d[1])
validation_data = list(zip(validation_inputs, va_d[
1
]))
test_inputs = [np.reshape(x, (
784
,
1
))
for
x
in
te_d[
0
]]
#test_data =
zip
(test_inputs, te_d[1])
test_data = list(zip(test_inputs, te_d[
1
]))
return
(training_data, validation_data, test_data)
4,NameError: name 'xrange' is not defined
xrange( )函数时在python 2.x中的一个函数,在Python 3中,range()的实现方式与xrange()函数相同,所以就不存在专用的xrange( )
将network中的xrange换成range