自学成才的机器学习工程师十诫

2024-06-21 08:32

本文主要是介绍自学成才的机器学习工程师十诫,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击上方“AI公园”,关注公众号,选择加“星标“或“置顶”


作者:Daniel Bourke

编译:ronghuaiyang

导读

使用数学,代码和数据来揭示大自然的秘密。

写代码可能会让人变得有点沮丧,需要让自己的周围充满色彩

自律和自学这两个词不能掉以轻心。一个人必须对自己的教育和启蒙负责。如果你忽略它,别人就会为你做选择。

1. 数学,代码和数据是你最重要的三大项

任何有效的机器学习管道都是数学、代码和数据的交叉。每一项只有和另一项在一起时才会有效果。

如果你的数据质量很差,那么无论你的数学计算多么优雅或代码多么高效都没用。

如果你的数据质量最高,但你的数学计算错误,那么你的结果可能会不是很好,甚至会更糟,造成伤害。

如果你的数据和数学都是世界级的,但是你的代码效率很低,那么你将无法获得扩展带来的好处。

数据为你提供了一个包含自然瑰宝的采矿地点。数学就是你的鹤嘴锄。代码可以让你建立一支挥舞着鹤嘴锄的机器人队伍。

这三大项是你系统的输入(你拥有的)和输出(你想要的)之间的桥梁。

注:三大项中的数学分支也包含统计和概率。

2. 三大项之外的唯一例外

除了不能平衡这三大项之外,还有一个更大的罪过:忘记这三大项是为谁服务的。即使是执行得最好、由最优雅的数学驱动的代码,如果不能为客户提供服务,从最丰富的数据中获得洞察也毫无意义。

工程师经常会发现自己迷失在一个过程中,忘记了最初想要的结果。尽管他们怀着良好的意图进行,但他们忘记了,意图并不像行动那么重要。

三大项至少要为客户提供点好处,总比什么都不提供要好。

需要澄清的是,如果你的先进模型需要47倍的时间才能提高1%的准确率,那么它是否提供了最好的体验?

3. 不要被三大项给骗了

无论你多么崇拜这三大项,你都不应该被你的爱蒙蔽。自学成才的机器学习工程师是他们自己的最大的怀疑者。

他们知道,数据不能进行证明,只能进行反驳(只要在十亿数据中有一个数据点就能证明之前的概念是错误的),一点点糟糕的数学运算就会产生极端的后果(自然不是线性的),代码的效率只有在它最薄弱的地方才有。

无论三大项多么神圣,直觉也不应被忽视。如果一个结果好得令人难以置信,除非你很幸运,否则它很可能就是错的。

4. 和你需要提供服务的客户保持好关系

让机器做它们擅长的事情(反复重复过程)。让你去做你擅长的事情时(关心、设身处地、提问、倾听、领导、教学)。

你的客户不像你那样关心三大项。他们关心他们的需求是否得到满足。

5. 向那些为你奠定基础的人致敬

当你想到计算机、机器学习、人工智能、数学等领域时,你会想到谁的名字?

Ada Lovelace,Geoffrey Hinton,Yann LeCun,Yoshua Bengio,Alan Turing,Fei Fei Li,Grace Hopper,Andrew Ng,Jon Von Neumann,Alan Kay,Stuart Russel,Peter Norvig?

当然,在你听到或记住的所有名字中,有1000个名字功不可没,但却从历史书中消失了。

后起之秀应该认可前辈们做出的巨大努力,但也应该认可他们中的每一个人都会告诉这位新晋的机器学习工程师同样的事情:这个领域的未来取决于你的工作。

6. 不要低估了完全重写的力量

你的目标应该是在第一时间构建可靠的东西。但随着技能的提高,你可能会想重构之前的作品,拆掉它们,用新的视角重新创造它们。

自学成才的机器学习工程师都明白,就像大自然一样,软件和机器学习项目永远不会完成,它们一直在运动。数据变化,代码在新的硬件上执行,一个天才发现了一个计算高效,低内存依赖的优化器适合,并称之为Adam。

你不仅应该对这些变化持开放态度,还应该欢迎它们。一旦它们出现,请使用你最好的判断力来判断它们是否值得实现到你的系统中 —— 仅仅因为有些东西是新的,并不意味着它是必需的。

7. 避免在工具上滥情

在编程界,一个常见的轶事是粉刷自行车棚。它说的是一个程序员,或者一组程序员,担心的是车棚应该是什么颜色,而不是问一些重要的问题,比如车棚是否真的可以存放自行车。

当然,这个自行车棚也可以用电脑程序来代替。

在机器学习的世界里,你会听到关于R还是Python、TensorFlow还是PyTorch、书籍还是课程、数学还是code first(两者都有,记得这三位一体吧)、Spark还是Hadoop、Amazon Web Services还是谷歌云平台、VSCode还是Jupyter、Nvidia还是……的无休止的争论。

所有的比较都是有效的,但没有一个值得与对方争论。

你应该回答的真正问题是:用什么可以让我以最快、最可靠的方式建立我的想法?

一旦你问自己这个问题,你会发现其他人都在问自己同样的问题。

工程师的诅咒是从工具开始,然后寻找问题,而不是从问题开始,然后寻找工具,只有到了那个时候,如果没有合适的工具,才应该去构建它。

学习资源也是如此。数学、代码和数据的三大项,在你学习它的时候就是不变的,唯一重要的是你如何使用它。

不要忘记:许多问题可以在没有机器学习的情况下解决。

8. 你的想法是商品

不要把一个执行好想法的人与窃取你想法的人混为一谈。你的想法在别人手中比在你的头脑中更有价值。

作为一名工程师,你的角色不仅是建立自己的想法,而且还要与他人沟通,向他们展示如何从这些想法中获益。如果你缺乏这样的沟通能力,你应该与有这种能力的人合作,或者寻求培养这种能力。

在一个没人知道该相信什么的世界里,你可以通过做真实的自己来区分自己。诚实面对你做的东西所能提供的和你所不知道的。能够承认自己的无知是一种优势,而不是弱点。

好的技术总是胜利的,撒谎永远不会胜利。构建技术。不要撒谎。

9. 你的邻居、同事、同学和伙伴也在思考这个问题

你看到别人的进步而嫉妒吗?或者你把它看作是你能做到的事情的动力?

你对别人的成功的感觉就是你自己成功时候的感觉。

10. 不能贪

你应该寻求建立你运用三大项的技能,回答那些你想要提供服务的人的问题,但你不应该带着欲望这样做。欲望会诅咒你,让你永远过于严肃地看待未来,而不是享受你现在所拥有的。

对提高技能的渴望的治疗方法是培养对学习的热爱。

自学成才的机器学习工程师能够很快地学习利用数学、代码和数据力量所需的概念,但不能匆忙行事。他们明白学习任何有价值的技术都需要时间,如果是这样的话,还不如享受这个过程。

从一开始,你就是对自己的启蒙和教育负责的人。知道了这一点,你就应该选择那些无论你有什么样的运气都能成功的项目。这个项目是否满足了你的好奇心?它是否对你的技能构成挑战?它可以让你遵守这些戒律吗?如果是这样,就足够了。

最后,在沿着自己的道路行进的同时,自学成才的机器学习工程师在他们的脑海中一直保持着这样的印象:

  • 没有知识就没有资质

  • 没有行动就没有思想

  • 没有享受就没有学习

  • 没有风格就没有创造

  • 没有实践就没有技巧

  • 没有工具就没有目的

  • 没有展示没有贸易

  • 没有怀疑就没有假设

  • 没有贡献就没有消费

  • 没有对现在的爱,就没有对未来的渴望

  • 最重要的是,没有三大项就没有机器学习

—END—

英文原文:https://towardsdatascience.com/the-10-commandments-of-self-taught-machine-learning-engineers-9e810971ed34

请长按或扫描二维码关注本公众号

喜欢的话,请给我个在看吧

这篇关于自学成才的机器学习工程师十诫的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1080712

相关文章

嵌入式软件工程师应聘知识点

嵌入式软件工程师应聘 修改浏览权限 | 删除 数据结构(C语言)部分常考的知识点: 1、局部变量能、全局变量和静态变量 2、堆和栈 3、Const、volatile、define、typedef的用途 4、链表(比如链表的插入、删除和排序) 5、排序(考查冒泡法的较多) 6、可重入函数 、malloc函数 7、指针(常考函数指针,函数指针,数组指针,指针数组和

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

[word] word设置上标快捷键 #学习方法#其他#媒体

word设置上标快捷键 办公中,少不了使用word,这个是大家必备的软件,今天给大家分享word设置上标快捷键,希望在办公中能帮到您! 1、添加上标 在录入一些公式,或者是化学产品时,需要添加上标内容,按下快捷键Ctrl+shift++就能将需要的内容设置为上标符号。 word设置上标快捷键的方法就是以上内容了,需要的小伙伴都可以试一试呢!

AssetBundle学习笔记

AssetBundle是unity自定义的资源格式,通过调用引擎的资源打包接口对资源进行打包成.assetbundle格式的资源包。本文介绍了AssetBundle的生成,使用,加载,卸载以及Unity资源更新的一个基本步骤。 目录 1.定义: 2.AssetBundle的生成: 1)设置AssetBundle包的属性——通过编辑器界面 补充:分组策略 2)调用引擎接口API

Javascript高级程序设计(第四版)--学习记录之变量、内存

原始值与引用值 原始值:简单的数据即基础数据类型,按值访问。 引用值:由多个值构成的对象即复杂数据类型,按引用访问。 动态属性 对于引用值而言,可以随时添加、修改和删除其属性和方法。 let person = new Object();person.name = 'Jason';person.age = 42;console.log(person.name,person.age);//'J

大学湖北中医药大学法医学试题及答案,分享几个实用搜题和学习工具 #微信#学习方法#职场发展

今天分享拥有拍照搜题、文字搜题、语音搜题、多重搜题等搜题模式,可以快速查找问题解析,加深对题目答案的理解。 1.快练题 这是一个网站 找题的网站海量题库,在线搜题,快速刷题~为您提供百万优质题库,直接搜索题库名称,支持多种刷题模式:顺序练习、语音听题、本地搜题、顺序阅读、模拟考试、组卷考试、赶快下载吧! 2.彩虹搜题 这是个老公众号了 支持手写输入,截图搜题,详细步骤,解题必备

《offer来了》第二章学习笔记

1.集合 Java四种集合:List、Queue、Set和Map 1.1.List:可重复 有序的Collection ArrayList: 基于数组实现,增删慢,查询快,线程不安全 Vector: 基于数组实现,增删慢,查询快,线程安全 LinkedList: 基于双向链实现,增删快,查询慢,线程不安全 1.2.Queue:队列 ArrayBlockingQueue:

硬件基础知识——自学习梳理

计算机存储分为闪存和永久性存储。 硬盘(永久存储)主要分为机械磁盘和固态硬盘。 机械磁盘主要靠磁颗粒的正负极方向来存储0或1,且机械磁盘没有使用寿命。 固态硬盘就有使用寿命了,大概支持30w次的读写操作。 闪存使用的是电容进行存储,断电数据就没了。 器件之间传输bit数据在总线上是一个一个传输的,因为通过电压传输(电流不稳定),但是电压属于电势能,所以可以叠加互相干扰,这也就是硬盘,U盘

人工智能机器学习算法总结神经网络算法(前向及反向传播)

1.定义,意义和优缺点 定义: 神经网络算法是一种模仿人类大脑神经元之间连接方式的机器学习算法。通过多层神经元的组合和激活函数的非线性转换,神经网络能够学习数据的特征和模式,实现对复杂数据的建模和预测。(我们可以借助人类的神经元模型来更好的帮助我们理解该算法的本质,不过这里需要说明的是,虽然名字是神经网络,并且结构等等也是借鉴了神经网络,但其原型以及算法本质上还和生物层面的神经网络运行原理存在