美文网首页
Shogun编译过程

Shogun编译过程

作者: VaultHunter | 来源:发表于2019-04-08 14:37 被阅读0次

    PIP安装慢的解决方法

    虚拟机安装

    需要VMware 和 ubuntu iso文件
    选择虚拟机的原因是方便在不同电脑上运行代码
    ubuntuiso文件国内下载
    虚拟机安装教程

    Ubuntu环境设置

    环境 ubuntu16.04 虚拟机
    把虚拟内存调到2G以上
    进入之后换源

    sudo cp /etc/apt/sources.list /etc/apt/sources_init.list
    sudo gedit /etc/apt/sources.list
    清华源
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
    
    sudo apt-get update
    sudo apt-get -f install
    sudo apt-get upgrade
    

    换源遇到如下问题及解决方案:

    E: Sub-process returned an error code

    或者可以不用手动更换源的方式

    更换pip源

    1.  根目录创建.pip文件:mkdir ~/.pip
    2.  创建文件pip.conf:gedit .pip/pip.conf
    3.  
    [global]
    index-url = https://pypi.tuna.tsinghua.edu.cn/simple
    [install]
    trusted-host=mirrors.aliyun.com
        清华的源
    

    Shogun的安装

    官网给的具体的编译流程和命令
    多次安装的教训总结出来,根据github上的issue的查看
    shogun因为svmlight类存在license问题,所以如果想使用多核的功能
    这个工具箱最好还是手动编译
    在经历了多次糟糕手动编译过程后
    最好先安装编译所需要的第三方包,比如doxygen这个包,我在cmake过程中一直提示找不到,然而我通过apt-get install 还是 pip install 的方式 都无法正常安装
    所以最后还是先安装所需要的第三方包
    可以通过cmake . -LH的方式查看cmake 的 选项

    doxygen包的安装出现的问题:

    使用ubuntu默认的源,换源后就安装不上了
    下面这种方式可以解决包之间依赖关系但是并不能解决当前所遇到的问题
    aptitude

    其他包的安装

    首先安装swig
    安装swig
    如果需要generate examples 需要安装ctags 和ply
    sudo apt-get install protobuf-compiler
    sudo apt-get install doxygen
    所需要的包
    sudo apt-get install ccache
    sudo apt-get install python-dev python-numpy
    除此之外,应该还需要
    Atlas
    sudo apt-get install libatlas-base-dev

    JSON
    sudo apt-get install libjsoncpp-dev

    OPENCL

    shogun安装步骤

    一:克隆整个项目

    git clone https://github.com/shogun-toolbox/shogun.git
    

    二:解决glpk的问题,详情去官网git的issue中搜索glpk的问题

    cd shogun 
    git submodule update --init
    

    或者
    下载Shogun's GPL code
    解压上述下载的两个文件,将shogun-gpl-6.1.3内的三个文件‘shogun’、‘LICENSE.MD'、'README.MD'复制到shogun-shogun_6.1.3/src/gpl文件内

    但是必须做下面这一步

    下载GLPK安装包,
    ./configure
      make
      sudo make install
      sudo ldconfig
    

    安装
    mkdir build
    cd build
    cmake命令如下

    cmake  -DPYTHON_INCLUDE_DIR=/usr/include/python3.5 /usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/libpython3.5.so -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 -DPYTHON_PACKAGES_PATH=/usr/local/lib/python3.5/dist-packages -BUILD_META_EXAMPLES=ON -DINTERFACE_PYTHON=ON -DLICENSE_GPL_SHOGUN=ON -DUSE_SVMLIGHT=ON ..
    
    

    make
    sudo make install

    添加环境变量:

    sudo gedit ~/.bashrc
    export PYTHONPATH="/home/zzz/shogun/build/src/interfaces/python/shogun.py:$PYTHONPATH"
    export LD_LIBRARY_PATH="/home/zzz/shogun/build/src/shogun:$LD_LIBRARY_PATH"
    source ~/.bashrc
    
    
    

    通过sudo权限将shogun.py、_shogun.so两个文件复制到Python的安装环境下

    sudo cp shogun/build/src/interfaces/python/shogun.py /usr/local/lib/python3.5/dist-packages/
    
    sudo cp shogun/build/src/interfaces/python/_shogun.so /usr/local/lib/python3.5/dist-packages/
    
    

    安装pycharm并导入路径

    官网下载pycharm社区版,直接解压
    设置系统路径,则可以终端启动

    sudo gedit ~/.bashrc
    export PATH=/home/zzz/pycharm/pycharm-community-2019.1.1/bin:$PATH
    source ~/.bashrc
    

    输出可以导入shogun的python路径,并在pycharm中的interpreter中选择这个版本的python

    import sys
    path = sys.executable
    print(path)
    

    在setting中找到project interpreter 并更改为可导入shogun 的python 版本
    在添加窗口中可能找不到shogun,不用在意,直接在脚本中写import shogun 应该就可以运行

    教程

    教程

    查看编译选项
    cmake . -LH

    shogun问题搜索

    shogun使用

    官方例程
    sudo apt-get Install python3-scipy
    这就是安装的python3的包的命令
    官方pythonAPI说明

    编译中遇到的无法解释的现象,记录一下步骤

    第一次编译时没有问题,但是没有安装glpk,cmake make make install 都没有问题
    直接安装了 pycharm 直接使用了, mkl.train()的时候报错需要重新编译 并且安装 glpk
    但是重新编译时在出现了no match for operator 这样的错误

    所以重新配了一遍,安装glpk后,所有需要的包安装后,编译没有问题,在安装了pycharm
    这次就没有问题了

    相关文章

      网友评论

          本文标题:Shogun编译过程

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