对于大多数从事自动控制的人来说,没有必要去学习算法。最后,在学习算法的过程中,一定要注意三个方面的知识积累。第一,经典算法的知识积累,这不是太难的,可以通过看一些经典算法书籍来完成。第二,学会如何基于具体的行业场景完成算法设计,了解不同算法在行业场景中的差异,这一点非常重要。第三,重要的是学会如何完成算法的训练、验证和应用。

你为什么要学算法?

算法,其实就是解决问题的方法。学习算法,就是学习前人解决问题的方法。为什么要学算法?想在程序道路上走的更远的程序员,可能都需要学算法。记得软件工程里讲,程序就是数据结构 算法,可见算法对程序的重要性。很多做业务系统的初级程序员,可能平时不会用到很多数学算式,但也不代表没用到算法。算法表征了数学对于计算机的重要性,对于图形图像人工智能等方面,数学功底不好,不懂算法可谓寸步难行。

为什么高校里研究算法材料这么容易发论文,而研究协议硬件设计不容易发论文?

目前我国的研究算法的论文较多,与我国的教学工作的纲要有很大的关系,本科生的课程要求写论文,要经过专家的评审才能过关。研究生博士生需要在国内国外主要刊物上发表数篇论文,才可以进行答辩。否则,就不可能拿到毕业证书。硬件设计,目前在我国的硬件设计中,多以继承性的设计为主,发明和创新性的硬件设计极少,在继承性的设计中,对原创性的理论基础了解的较少,故发表的论文深入不下去,也就难以成文。

为什么那么多牛人成天在研究讨论算法,系统自动推荐的东西还是不能令人满意呢?

首先我们要明白,系统推荐不仅仅依靠算法,还要依靠大数据,其实数据比算法的作用还要大。想弄明白这个问题,首先我们要了解一下推荐原理当我们第一次使用系统,系统是不知道我们究竟喜欢哪种类型作品的。这个时候系统就会随机推送几个热门的作品,每个作品都是不同领域,这个过程也叫做盲推。之后系统再根据你对每个领域作品的反馈情况来给你的账号打上标签,具体通过你对每个领域的点击率点赞率评论率阅读时常以及转发率等等多个纬度共同打分,然后系统再取一个平均分作为你对这个领域的喜爱程度。

之后每次都会优先推荐你喜爱的领域,喜爱的作品类型。然后每次推荐之后,再对你的反馈情况给每个领域每种类型的作品打分,这个过程是一直优化的,最后逐渐趋于平稳。弄懂了系统的推荐算法之后,我们来聊聊为什么有时候推荐并不能令人满意?1.作品在推荐给用户之前,会先推荐一小部分人来测试,然后通过这一小部分的人的反馈情况,再给这个作品贴上一定的标签,这个过程可能就存在一定的误差。

一旦作品被贴错标签,那么之后作品再推荐给其他用户就会不精准,进而不被喜欢。2.系统一旦发现你喜欢某个领域,就会频繁的给你推送相关的内容,即使已经厌烦,点了无数次不喜欢,也可能继续推送相关内容。3.系统每次推送之后,对用户也会打标签,这个时候也可能存在误差。如果错打标签,那之后就会推荐给你不喜欢的领域。

为什么有些算法岗位,需要用C 而不是python?

C/C 是比较底层的语言,可以对CPU/内存等计算机资源特别是硬件进行非常精细的控制,算法运算做到最精细自然要使用它们。但是它们的优点自然也是他们的缺点,精细的操作自然需要精细的编程,精细的编程自然需要繁复的语言设定,比如什么是指针什么是指针函数什么是函数指针等你搞清这些佶屈聱牙的概念,你大概也没有写代码的冲动了。

更何况,要想写出高性能的代码,必须精通这些概念的python还有一个很重要的特点,就是所谓的胶水语言。Glue是指可以把不同语言编写的代码模块组合起来,然后通过python统一调用。其实大部分算法库都是用C/C写的,然后提供python接口给用户使用。毕竟大多数人只需要知道如何调用封装的算法。


文章TAG:为什么要研究算法  算法  岗位  研究  
下一篇