大家好,今天小编关注到一个比较有意思的话题,就是关于用linux跑机器学习的问题,于是小编就整理了5个相关介绍用Linux跑机器学习的解答,让我们一起看看吧。
- Linux就该这么学与鸟哥的linux私房菜哪个更适合初学者?
- 学Linux系统课前应该准备什么?学的时候应该注意什么?
- 自学linux应该学哪些内容呢?
- windows转linux,用于python爬虫和机器学习,安装哪个版本比较好?
- 自学机器学习如何入手?
Linux就该这么学与鸟哥的linux私房菜哪个更适合初学者?
《Linux就该这么学》
追答:
这个我感觉挺有发言权的,
追答:
因为我完整的读过《Linux就该这么学》和《鸟哥的linux私房菜》,
追答:
追答:
不像鸟哥的那种看半天都不知道在讲什么的,这两本书都能在线学,至少我建议linux就该这么学。
皮特森没看过
学Linux系统课前应该准备什么?学的时候应该注意什么?
微机原理
因为不管是linux系统也好,还是windows操作系统,其根本的作用就是为应用程序和硬件搭起一座稳固的桥梁, 让应用程序和硬件可以高效和谐的交流,就比如说一个游戏软件是怎么让一个小怪兽在屏幕上飞舞的呢,应用程序不可以直接控制电脑屏幕的,操作屏幕是应用程序委托系统代为完成的。 那操作系统是怎么控制硬件的呢?如果想到这里的话,那肯定要对硬件有所了解了, 比如cup,内存等知识。 微机原理其实就是让你了解这些硬件怎么工作的。
在你学习cpu和内存怎么工作的时候,肯定会学习到cpu跟内存相关的指令,这些指令就是汇编语言。 因此,要明白cpu每一步怎么运行的,就得熟悉下汇编语言了,不过汇编语言应该跟上面的微机原理是一起学的。 c语言为什么要学呢,因为linux是用c编写的,如果您在学习linux的时候非常熟悉c语言的话,学起来肯定是事半功倍的。 但是如果连c语言都不懂,对linux里面的一些机制看起来就很费劲了,那学起来自然是事倍功半的。
建议您在学习的时候,还是要准备一台linux的机器的,因为没有练习和使用,很难把计算机系统的知识点掌握好。 对于学生来说,一般有两种方式使用linux:
1. 装双系统 : 一般来讲,学生的电脑都是Windows的,因为要处理作业什么的都是需要windows的,因此不太可能把自己的电脑换成linux系统的。但是我们可以选择装一个双系统,教程在网络上都有。
说说自己的一点经验之谈吧。
一.要是只是单纯的学习linux系统,其实我感觉真的不需要去刻意的准备什么,但是还是需要去注意一下我认为的以下几个点吧:
1.环境的搭建,需要提前去做一些功课,不管是搭建虚拟机也好,还是搭建双系统都可以,这些工作其实都非常的简单,资料网上大把的是。在学习的时候,个人推荐使用双系统,windows+ubuntu。
2.要抛弃掉windows的使用习惯,再不要指望处处都有用户界面了,要慢慢的接受bash下的指令操作,这个习惯的养成是非常重要的。
3.要在学习的过程中记住一些常规的linux指令,这个是必须的。
4.学习一点shell编程,这其实linux就有一点入门了。
二.学linux你其实也知道你是用来干啥的,有了linux的简单入门,在加上你要主攻的方向你就离成功就更近了一步了。***如你想做嵌入式开发的,那这里面你要接触的知识点就太多了,可以说不胜枚举。简单的举两个例子吧。
1.***如是linux c的,那肯定你需要有扎实的c语言功底,这是基础。你还要选择一个平台,大多数都是arm了,那么你对这些板子必选要了解,一般的产品肯定不会在pc上跑的,肯定是在pc机上开发,交叉编译到arm上的。这扩展出来的有,应用层的开发,驱动层的开发,内核层的开发等等。这些随便精通一个,基本上就不愁没有工作了,并且待遇一般还不错的。
2.***如是嵌入式客户端的开发。那常规的就是qt了,一个[_a***_]的好东西。这个你需要了解的就是qt和c++了,然后在学习你涉及的项目中要特定用到的知识了,***如要做视频播放器,那音***方便的知识你是必须了解的,声卡,显卡的驱动这些知识你也了解。太多了。
方向太多了,哎,学海无涯啊。祝你好运了。
既然涉及到linux系统,那么需要准备
(1)先搭建linux的操作环境:在windows中安装vmware虚拟机,然后在虚拟机中装linux发行版操作系统(比如常见的ubuntu、fedora、centos等);
(2)然后学习在linux环境下使用的命令,因为linux的GUI没有windows中的好,所以要熟悉操作这些命令(可以参考我写的文章:嵌入式软件开发之《Linux命令专题》);
(3)还需要具备C语言知识(可以参考我写的文章:嵌入式Linux开发《C语言专题》),因为后续需要linux应用编程(涉及到Io文件操作、多进程、多线程操作以及网络编程);掌握了这些知识之后,就可以在windows下编辑代码,linux中编译代码,最后在电路板上运行代码;
(4)还可以再看看Linux驱动内容(比如什么是驱动?驱动的分类?重点掌握字符设备驱动等),可以写一些简单的驱动。如果还具备汇编语言更好,可以***你理解ARM汇编。如果这些你都熟练了,那么你就相当牛了。
不过,刚学linux时比较慢,也比较枯燥,所以一定要坚持,一定要熟悉常用的linux命令,否则寸步难行,熟练掌握C语言。有时间可以再看看linux应用编程、驱动等。毕竟驱动是有难度的。掌握这些内容可以从事嵌入式linux软件开发等工作。
感谢评论,交流,转发。
更多精彩内容可关注本头条号:嵌入式软硬件开发。感谢大家。相互交流,共同进步。
谢邀,首先你要有一部装有linux系统的电脑或者是虚拟机里装有linux,要么是centOS要么是ubuntu等。学习必须要动手才有印象,每天必须花两个小时linux命令。看书建议看<<鸟哥linux私房菜>>。动手!!!动手!!!才是最重要!!
自学linux应该学哪些内容呢?
linux很杂的,所以初期阶段你不用看学习什么内容,基础的都学就行了,这里可以看中国人写的基础书籍,上手快,外国翻译过来的反正我是看的很吃力,不太适合初级的人去看
基本知道linux之后,一些安装、权限等等操作后,就进阶,比如搭建LAMP、LNMP、DNS等等软件和服务,这些也要懂,这部分需要教程,看书超级缓慢,教程为主、练习为辅、这时候可以看国外大神写的书了,到这部分你就可以开始工作了,基本上企业也不会划分的很细,当然想走的更远,下面就是深度学习了,对了,python了解基本即可,但shell脚本一定要会,不说精通,至少要熟悉,一天2到5个shell脚本练习就够了,也不用太多精力花在这
当你学的差不多,才是决定往哪个方向了,比如云服务器、自动化运维、linux安全之类的方向,但都离不开开发,所以这时候你就要精通Python语言了
自动化运维应该是趋势,云服务器也是热门,一门精通,其它也要熟悉,你才能走的远
还有个很重要的,原理一定要懂,每一个服务的运行原理比会安装更重要,所以死记硬背也要背下来。网络这块不是服务器运维的强项,但基本的ip/tcp协议你需要懂,会抓包、会基本分析就可以了,往后有精力了再深度学习
最基本的一些指令,脚本运行指令./*.sh 关机指令reboot 更新源指令。你可以在网上找到一些教程。或者linux新手建议使用国产的深度系统。对新手友好。。Linux的书籍建议看一看鸟叔的Linux.私房菜。先学会怎么更新源,怎么运行这软件脚本
我说说我是怎么学的,现在学到什么程度,遇到哪些问题,困扰在哪里这些问题。
我是怎么学的:我是18年初买的第一个树莓派3B,刷了centos系统(我主要学习centos),刷系统比较简单,后来又买了3B+,4,和miniPC都是装的centos系统,Windows虚拟机也做一个系统。用树莓派0W做了两个项目。第一本书一定是鸟叔的Linux私房菜,版本2和3,这本书比较全面。一年写笔记20万字左右。
现在学到什么程度:现在可以自己做FTP服务器;***硬盘;文件服务器;常用命令;systemctl用法;用户操作;Vim操作比较熟练;可以写一shell脚本;比较了解系统结构;了解个文件夹作用;会用top看系统情况等。
遇到那些问题:Linux的变量比较复杂,操作也复杂,难!正则表达式难!sed,grep,等命令用的不熟练。群组操作没怎么练习,不熟练。
困扰:不知道现在该学什么,基本操作基本会了。现在处于不断学习阶段,下一步学什么不知道。(这期间学习了Python,基本入门)。
这就是我的学习历程,算经验,深入运维学的不好,没有环境,希望有机会提高。
没有方向性,就是学习最大的阻碍了。
个人觉得最好先明确一个目标,比如通过Linux部署一个网络服务,或者部署一个网站。
自己的学习过程是这样的,前期通过***只学习了自己感兴趣的部分。后期遇到需要使用到的时候又反复学习了一下。
自己啃书还是算了,我是先看的***了解的差不多了,又买书看了一遍方便加深记忆。
新手学习linux方向大概如下:
1.先学习linux的基本命令,比如:cd,ls,cp,mv,mkdir,rm,cat,touch增删改查等等命令。
2.熟悉基本的操作后学习linux相关文件权限命令,比如:useradd,groupadd,passwd,chmod等等命令。
3.然后在学习更进阶一点的命令,比如:进程管理,磁盘管理,网络管理,文件管理等等相关的命令。
4.最后再学习下linux的软件安装卸载和shell脚本等等吧!然后多实际操作下搭建各种软件环境,基本就可以出师了。
windows转linux,用于python爬虫和机器学习,安装哪个版本比较好?
1、使用*nix系列操作系统和windows操作系统相比,个人觉得最大的区别是*nix的命令行操作模式;所以如果适应了命令行的操作模式,不管使用哪个发行版的linux其实都是一样的;我现在的主要编辑器是vim。所以工作的80%的时间都是在命令行状态下;
2、桌面环境来讲,我觉得有两个参考因素,美观和工作流;美观上个人偏向于待gnome桌面的ubuntu18;deepin 个人感觉容易审美疲劳;centos主要定位在服务器市场,所以默认的界面个人感觉中规中矩;这里的工作流指的是操作模式,或者说是交互模式,关键点是如何快速的进入和切换到目标程序,包含快捷方式,快捷键,窗口管理器,我主张使用可以灵活配置的gnome桌面,建议gnome,deepin的适合初学者,定制性稍微弱点;交互模式可以影响人的思维模式,我觉得使用linux和使用windows相比就是要在思维方式上有所收获,这点我也推荐操作模式和windows相差较大的ubuntu
3、软件库,deepin是基于ubuntu的发行版,使用apt软件库,两者是一样的;centos使用的是yum,centos软件库主要面对服务器,稳定为主,版本比较低。作为开发者推荐使用一些比较新的软件工具,这点上ubuntu和deepin比较有优势
4、个人觉得基于ubuntu的另外一个发行版值得推荐,就是elementary os,本人已经持续使用了4年时间,每天都在用;版本稳定而且简约,有设计感,至今没有审美疲劳。
自学机器学习如何入手?
现在网上很多很多机器学习的所谓一周入门课程,给一些刚刚入门编程的人很多误解,其实机器学习很重要的不是用什么语言,而在于你的知识,尤其是线代和概率知识,基本上所有的机器学习算法都离不开这两门课程,如果你要使用机器学习识别图像,那还需要知道基本的图像处理算法,既然问到如何入手我的看法是,先有一部分的数学知识,再从实际编码开始,建议使用python结合tensoflower这样入门比c++结合caffe要简单的多,机器学习操作系统建议使用linux
首先要学好数学,太重要了,要是想深入学理论,数学贯穿始终,高数,线代概率论自不必说,矩阵论,随机过程,拓扑学,凸优化,数理统计,图论等都要有基础。
然后当然是基础理论,算法,信息论,数据结构,最优化,贝叶斯是重中之重,可以说这些学的深度决定了你理论学习的高度。
必须要至少精通一门开发语言啊,现在都在学Python,但是R也不错啊,做大数据当然要学hadoop,这是你理论与应用的桥梁。
接下来就是真正的机器学习,knn,决策树,cnn,dnn等随便一个就能拿来做博士的开题报告,挑个自己感兴趣的就学吧,一年以后你会回来再问的。
到此,以上就是小编对于用linux跑机器学习的问题就介绍到这了,希望介绍关于用linux跑机器学习的5点解答对大家有用。