沧歌


起风了,唯有努力生存


充分利用服务器加速机器学习研究

作为一个机器学习/深度学习 用户,PC已经不能满足你的计算需求,使用远程服务器又感觉诸多不便。 直接给服务器安装一个图形界面也是一个可行的办法。但这种交互方式对网速要求很高,占用资源也较多,很多服务器上都没有安装。 此文旨在提供一个解决方案地图,讨论的都是没有图形界面的情况。

技能树如图:

skill-tree

针对上图提出的各个技能,这里整理了一下我学习时看的网络资源。

环境管理

Anaconda

提供了机器学习一整套环境,还可以管理多个Python版本环境,省了很多事。

virtualenv

Anaconda配置的虚拟环境适合给整个系统使用。 而virtualenv适合单个项目使用,尤其当你下载了github上一个python开源项目,要单独给他准备一个环境来开发时。

Docker

终端

shellscript

Vim

看我的上一篇博客《Vim 使用笔记》

Tmux

程序跑太久终端不敢关?网络一断程序就崩溃?传统nohub解决方案功能太弱? 请学习tmux工具。

上面这个博客少说了一点,tmux输出是可以翻页的,也就是说,历史记录不只有屏幕上那一点。 按下CTRL-b后再用PageUpPageDown即可翻页。

科学上网

换源

非科学上网的解决方案。 换源之后apt,Python,Annaconda的安装速度会快非常多。 换源办法直接参考对应源的帮助页面。

Shadowsocks

经典梯子。

Proxychains

虽然可以通过设置环境变量让程序走代理,但实际中我用这种办法很少奏效。 Proxychains成了不二之选,搭配上面梯子使用,让终端程序走代理。

访问文件

Samba

这种方法适合从Windows访问Linux系统上的文件,非常方便。

sshfs

这种方法适合在Linux系统上相互访问,只要能用ssh登录的服务器都可以使用。 将一个服务器的目录挂载到另一个服务器上,不用来回复制文件啦。Anaconda环境也可以挂载哦。

sftp

只要能用ssh登录的服务器都可以使用,临时使用很方便。

远程编辑/执行/Debug

PyCharm

PyCharm专业版支持使用远程环境开发,学生可以申请免费版。 不过我的体验是这种办法没有下面的方便。

Vscode Remote-SSH

2019年,微软发布了 VS Code Remote,远程开发体验甚至超过本地。 你可以不用配置本地的开发环境,代码分析,Debug全部在远程进行。 真的没有什么理由再去捣鼓什么vim插件了。

Jupyter Notebook

远程执行的时候需要可视化怎么办?你需要Jupyter! 支持Python、R等多种语言,配上TableOfContent、Variable Inspector等插件,效率翻倍!

Pdb

一直用print的方法来调试终端里的程序是不是很累?你需要学习一下如何使用Python自带的Debug工具。 在Jupyter NoteBook中,使用%pdbMagic命令即可开启。

一致性维护

git版本控制

Jupyter NoteBook如何做版本控制?可以参考下面这个博文

最近的文章

语音情感识别- 特征提取工具和相关特征集

写在前面本文部分内容来源于 PilgrimHui的CSDN博客,笔者补充了一部分内容。感谢PilgrimHui博主,在我做实验时,他的博客给了我很多启发。笔者开源了调用 OpenSMILE 提取这些特征的脚本,读者可以从我的Github上获取。脚本地址:https://github.com/hellolzc/SpeechEmotionRecognition-emodb/tree/master...…

speech继续阅读
更早的文章

Vim 不放弃指南

vim入门刚学习Linux的时候,就听说了编辑器之神Vim和神之编辑器Emacs,被看起来叼炸天的字符界面吸引,认为自己学会了使用就真是大牛了。于是乎先尝试了那些全能配置(spf13-vim),然而一个个插件在众所周知的原因下安装极慢,好不容易装完了,在我的渣渣电脑上启动又慢的不行。花了很多时间,工作却没做多少,遂产生了把Vim彻底抛弃的想法。可惜在服务器上除了Vim真没有太好的解决方案,通...…

vim linux继续阅读