美文网首页深度学习研究所
神经网络与深度学习代码调试network3-蛋疼的theano版

神经网络与深度学习代码调试network3-蛋疼的theano版

作者: 西方失败9527 | 来源:发表于2017-07-23 11:08 被阅读0次

    1)我们现在利用pip install Theano安装的theano版本为0.9,而书中用的是0.6,即使用的网上的python3.5版本的代码,有一处导包的地方也会非常蛋疼,这点要感谢spyder的代码提示功能,不然网上太难查了,不是能力问题,天朝停止了vpn,google上不了了,就从这点可以看出在国外做研究要比国内有优势得多。

    导包问题:原文中的network3.py中

          #from theano.tensor.signal.pool import downsample

           需换成

           from theano.tensor.signal.pool import pool_2d

           相应的代码部分:

           # pooled_out = downsample.max_pool_2d(

            换成

            pooled_out = pool_2d(

    原因是theano 0.9中的dowmsample没有了,并且max_pool_2d没有了。

    2)gcc/g++版本问题,我安装的是ubuntu 16.4,内置的gcc和g++都是5.4版本,太新了,此时会报错:

    ImportError: /root/.theano/compiledir_Linux-4.8--generic-x86_64-with-debian-stretch-sid-x86_64-3.5.2-64/tmpn_1ihp82/m4b532c190111acd0c7b4d992f1ab7bc1.so: undefined symbol: _ZNSt8ios_base4InitD1Ev

    此时需要重新安装版本的gcc和g++:重点参考这点《http://blog.csdn.net/lyy14011305/article/details/63685779》

    执行更新

    sudo  apt-get update

    安装旧版本的GCC

    sudo apt-get  install gcc-4.8

    sudo apt-get  install g++-4.8

    删除原来的GCC、G++连接

     sudo rm gcc

    sudo rm g++

    使连接指向新版本的gcc、g++

    sudo ln -s gcc-4.8 gcc

    sudo ln -s g++-4.8  g++

    验证:使用gcc -v、g++ -v查看当前的gcc、g++版本

    如果替换回来可以使用同样的方式操作使其指向想要的版本。

    which gcc 显示当前gcc版本所在的目录

    gcc 和g++一般在/usr/bin下。所以使用cd /usr/bin/ 进入该文件目录;使用ls -al | grep gcc查看当前系统中所有的gcc

    相关文章

      网友评论

        本文标题:神经网络与深度学习代码调试network3-蛋疼的theano版

        本文链接:https://www.haomeiwen.com/subject/veopkxtx.html