0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

那些 Linux Shell的小技巧,大大提升机器学习生产效率

电子工程师 来源:YXQ 2019-03-27 16:46 次阅读

机器学习的实践过程中,用好Shell能帮你很多节省时间。

最近,有位来自ETHZ的学生分享了一些Shell小技巧。对程序员来说,这些技巧更重要的是让你的思维从琐碎小事中解脱出来,大大提高了工作效率。

下面就是他分享的4个tips。由于本文中涉及到的shell脚本过多,你可以去文末地址中查看所有脚本的源代码。

抓取远程文件

当你在远程服务器上监视程序运行时,如果想把一个远程文件抓取到本地查看,通常你会怎么做?

记下文件路径,打开终端,用rsync之类的工具同步到本地,再到文件浏览器中查看。

实际上不必这么麻烦。只需要事先写好几个shell脚本,就可以避免重复的机械劳动。

在这里强烈推荐iTerm 2,它比Mac自带的终端要强大得多,可以指定某个触发关键词执行某个相应的命令。

iTerm 2下载地址:https://www.iterm2.com/

先在远程服务器上设置一个脚本t。当我们输入r awesome_video.mp4时,它会搜索awesome_video.mp4文件所在路径,并连同主机名以字符串rtransfer 的形式打印出来。

rtransfer作为iTerm2的触发关键词,解析出主机和路径,然后调用另一个本地脚本t2。脚本t2将这个视频文件传输到临时目录,然后在该目录中打开Finder。

使用iTerm 2触发关键词功能调用脚本,可以大大提升效率,而你要做的只是在前期花费时间定制脚本。

远程访问TensorBoard

除了抓取远程文件,另一个让人痛苦的是访问远程服务器上的TensorBoard实例。你可以设置SSH端口转发,但是哪个端口对应哪个服务器?它们都在Docker容器中。

ngrok可以让你把访问本地端口变成访问URL,比如输入ngrok http 6006后,它会为你生成一个URL网址http://683acac3.ngrok.io,你可以在这个地址中查看TensorBoard实例。

结合脚本n,以更快的速度启动ngrok,然后用脚本tb打开Web浏览器,启动TensorBoard,在十秒内就能从运行目录转到显示图形。

ngrok有个缺点是它一次只能允许一个会话,因此在使用前需要杀死上一个ngork进程。如果你忘记在另外一台服务器上杀死ngrok,可能会比较麻烦。

ngrok下载地址:https://ngrok.com/

用tbplot代替TensorBoard绘图

对于运行大量metrics的情形,我们需要等待较长时间让TensorBoard加载所有图形。如果使用tbplot脚本,速度会快很多,并且能直接生成图像文件。

tbplot实际上调用的是Matplotlib,缺点是目前只能生成标量图。

tbplot下载地址:https://github.com/mrahtz/tbplot

自动化崩溃监测

运行代码时,最耗费精力的事情就是是担心遇到了错误并崩溃,因此需要不断检查他们的运行情况。

当程序出现问题时,通过警报自动监控可以缓解这种担忧。一般可以把警报发送到邮箱中,为了避免这么麻烦,可以使用sqs-alerts,它依靠AWS AWS Simple Queue服务存储和接收消息。

在每台远程机器上,使用cron运行一个脚本,监控日志并在检测到运行中断时向队列发送消息。然后在本地机器上运行一个服务来监控队列,并在收到消息时弹出警报。

sqs-alerts下载地址:https://github.com/mrahtz/sqs-alerts

最后,本文使用的所有shell脚本都可以在以下地址中找到:https://github.com/mrahtz/dotfiles/tree/master/.local/bin

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10988

    浏览量

    206724
  • 机器学习
    +关注

    关注

    66

    文章

    8116

    浏览量

    130546

原文标题:4个Linux Shell小技巧,帮你提高机器学习生产效率

文章出处:【微信号:TheBigData1024,微信公众号:人工智能与大数据技术】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    提升机轴头磨损如何修复

    电子发烧友网站提供《提升机轴头磨损如何修复.docx》资料免费下载
    发表于 02-18 10:11 0次下载

    提升机轴头磨损的原因

    电子发烧友网站提供《提升机轴头磨损的原因.docx》资料免费下载
    发表于 01-24 13:56 0次下载

    如何从零开始构建深度学习项目?(如何启动一个深度学习项目)

    性能重大提升的背后往往是模型设计的改变。不过有些时候对模型进行微调也可以提升机器学习的性能。最终的判断可能会取决于你对相应任务的基准测试结果。
    发表于 01-11 10:49 165次阅读
    如何从零开始构建深度<b class='flag-5'>学习</b>项目?(如何启动一个深度<b class='flag-5'>学习</b>项目)

    100个Linux Shell脚本总结

    不知道大家有没有发现,会编写shell脚本的运维,工资不会低,并且他的工作会很轻松!今天浩道跟大家分享每一个Linux运维应知必会的100个shell脚本,虽然你工作中可能用不上,但是却不能不懂!懂了,你就可以很吃香了,大家可以
    的头像 发表于 12-05 09:28 493次阅读

    linux命令行与shell编程实战

    Linux命令行与Shell编程实战主要涉及以下内容: Linux命令行基础:学习Linux命令行的基本操作,如文件管理、进程管理、网络配置
    的头像 发表于 11-08 10:57 361次阅读

    linux命令和shell编程有什么联系

    Linux命令和Shell编程之间存在密切的联系。 首先,ShellLinux命令行下的解释器,它提供了一个用户界面,使用户能够与Linux
    的头像 发表于 11-08 10:53 411次阅读

    shell命令和linux命令一样吗

    Shell命令和Linux命令并不完全一样。 首先,Shell是一种命令行解释器,它是用来解释和执行用户输入的命令的。Shell既是一种命令语言,也是一种程序设计语言。它可以由一系列的
    的头像 发表于 11-08 10:51 1365次阅读

    提升机设备状态监控和故障预警系统优势在哪

    的安全运行,降低事故发生风险,提高生产效率。 智慧矿山是对各种矿山机械形成数字化、智能化管理的物联网系统。对此,数之能提供提升机设备状态监控和故障预警系统,实现提升机的在线监控与管理,
    的头像 发表于 09-18 09:49 256次阅读

    逆变器在矿井提升机中使用,提供更好的服务

    和抗干扰能力的目的,进而运行操作过程中的速度控制和位置控制功能得到了改善,画面的动态监控功能和保护功能更加稳定可靠。逆变器在矿井提升机中的应用这一措施将大大提高矿石强化
    的头像 发表于 08-22 15:37 563次阅读
    逆变器在矿井<b class='flag-5'>提升机</b>中使用,提供更好的服务

    变频器在矿井提升机上有何应用

    本文主要介绍了新科瑞C500变频器在宜章县长策银矿矿井提升机进行上的应用,长策银矿矿井提升机原系统采用绕线式异步电机转子回路串电阻的调速方式,采用C500变频器对其进行升级改造,大大降低了系统的故障率、降低了电能、
    发表于 08-10 17:39 750次阅读
    变频器在矿井<b class='flag-5'>提升机</b>上有何应用

    Linux shell脚本分享

    今天浩道跟大家分享几个Linux运维中常用到的shell脚本!
    发表于 07-18 09:53 456次阅读
    <b class='flag-5'>Linux</b> <b class='flag-5'>shell</b>脚本分享

    嵌入式Linux入门(五、Shell脚本编程上:认识Shell脚本)

    大家好,是矜辰所致,嵌入式 Linux入 门第五课,本课开始简单学习一下 Shell 脚本编程。
    的头像 发表于 07-13 16:10 1009次阅读
    嵌入式<b class='flag-5'>Linux</b>入门(五、<b class='flag-5'>Shell</b>脚本编程上:认识<b class='flag-5'>Shell</b>脚本)

    变频器在煤矿提升机中应用

    煤矿提升机是煤矿、铁矿、有色金属矿生产过程中的重要设备。提升机的安全、可靠运行,直接关系到企业的生产状况和经济效益。煤矿井下采煤,采好的煤通过斜井用
    发表于 06-27 09:26 358次阅读
    变频器在煤矿<b class='flag-5'>提升机</b>中应用

    Linux Shell脚本经典案例分享

    ​ 作为一名 Linux 运维工程师,会写好的脚本不仅能提高工作效率,还能有更多的时间做自己的事。最近在网上冲浪的时候,发现大家对Shell脚本都有“心结”,要么觉得自己写出来不好看,要么根本无从下手。 下面分享249个真实
    发表于 06-16 14:03 517次阅读
    <b class='flag-5'>Linux</b> <b class='flag-5'>Shell</b>脚本经典案例分享

    剖析Linux shell 函数实现

    作为一个嵌入式 Linux 工程师,肯定需要编写 shell 脚本进行一些自动化工作。刚好,我最近就有类似需求——一键交叉编译 DDS。本着“编写漂亮代码的原则”,我用到了 **shell 函数** 。
    的头像 发表于 05-12 10:27 335次阅读
    剖析<b class='flag-5'>Linux</b> <b class='flag-5'>shell</b> 函数实现