【吴恩达推荐】40岁开始学习,4周编写第一个AI算法的经验谈

简介: 本文是一个40多岁、完全没有编程经验的人学习机器学习的经验谈。作者把编程视为学习一门新的外语,而学会深度学习这门语言就可以和未来对话:你不需要先成为一个编程专家或数学奇才再来学习编程,你只需要愿意学习,并且能够很好地使用 Python 和 Numpy。

我不是程序员,也不是数学家。大学时上过一门必修的计算机科学课程,而我只是勉强通过——那已经是20多年前的事情。然而,现在,在我40多岁的时候,我坐在门廊上与我的新朋友 Python 和 Numpy 作战,自愿地尝试建立我的第一个神经网络。事情是怎么变成这样的?

有一天我突发奇想:我意识到AI可能是最搅乱我的孩子们的生活的一种发展。在运营一家数据分析公司7年之后,我很想深入了解AI。因此,我决定参加一门深度学习和神经网络课程,该门课的老师是前百度首席科学家、斯坦福大学教授 Andrew Ng。

在为期四周的课程中,我花了30个小时来设计、构建和调整一个非常简单的神经网络。我很快了解到,Python 和 Numpy 并不是一本关于蛇和他的兔子小伙伴的书,而是一种广泛使用的编程语言和一个提高效率的计算插件。事实证明,为了构建一个基本的神经网络,这两个角色是我唯一需要知道的。

这门课是完美的:我需要努力,但不至于毫无头绪,我每次只学习一行代码。早期的工作很艰难,经常遇到一些令人抓耳挠腮的代码失败。但到了第二周,我写了一段简短的代码,告诉算法在200张猫的图片(训练数据集)上训练自己,以找出其他30张图片(测试数据集)中是否有猫。只有200张图片,我的第一个简单的算法大概能在80%的时间得到正确的答案。

当我意识到我刚刚编写了一个机器来识别一个生物实体时,那感觉是梦幻一般的。当完整的代码没有任何错误的时候,我握拳大喊:“OH YEAH!”,令孩子们吃了一惊。坦率地说,我对自己的反应感到惊讶。我可能只是正确地识别出了一只四条腿的猫,但现在,它给我的感觉远远不止于此:

1.这感觉就像我第一次开枪时。大约15年前,我第一次拿手枪射击。立即地,我意识到我正手握着一个非常强大的工具,它可以用于善,也可以用于恶。是的,我可能会伤害自己,但我也可以学会控制这种武器。编写我的第一个算法也是一样。我突然意识到,一个在蒙古拥有互联网连接、拥有一些数据以及花几百美元租用亚马逊服务器的处理能力的家伙,可能会在俄罗斯建一个改变人们生活的神经网络,或一个不那么善良的家伙,可能会让身份窃取的垃圾邮件更有效。我已经能利用一行代码的力量,但这些潜力可以用来做什么完全取决于我自己。

2.感觉就像调谐收音机。老式的收音机上,你需要转动一个旋钮来找到想要的电台频率。想象一下,如果你有1000个旋钮,你必须同时调谐才能找到本地新闻台。这需要花多长时间?与其花几天时间摆弄所有可能的排列组合,编写一个算法就像创造出一千人的手来转动这些拨盘,直到找到合适的组合。

3.感觉就像学习一门外语。最近我一直在学习斯瓦希里语和汉语。我很想加入至少会说三种语言的占世界人口13%的那些人中。AI就像另一种语言,它拥有自己的词汇、语法和句法。如果我遇到不懂的问题,就像你在遇到不认识的外语词汇那样:我会用谷歌搜索它。有好几次,我都用了搜索翻译的力量解决了。随着时间的推移,我希望能变得更流利。我现在的目标是“四语”,AI是其中一种语言。

4.感觉就像在指导孩子们打球。AI算法的关键在于提供一个计算机构建模块,教它如何一起玩,然后将这些简单的结果组合成更复杂的迭代。这类似于指导我11岁的孩子打篮球:一旦你教会他们传球、拦截、运球和投篮的基本知识,球场上真正的创造力就将由他们开启。

学会深度学习这一门语言,你就可以和未来对话。学会说这门语言并不像你想象的那么难。我就是一个典型的例子:你不需要先成为一个编程专家或数学奇才再来学习编程。你只需要愿意学习,并且能够很好地使用 Python 和 Numpy。

原文发布时间为:2017-10-23
本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”微信公众号
原文链接

相关文章
|
1月前
|
机器学习/深度学习 人工智能 监控
AI算法分析,智慧城管AI智能识别系统源码
AI视频分析技术应用于智慧城管系统,通过监控摄像头实时识别违法行为,如违规摆摊、垃圾、违章停车等,实现非现场执法和预警。算法平台检测街面秩序(出店、游商、机动车、占道)和市容环境(垃圾、晾晒、垃圾桶、路面不洁、漂浮物、乱堆物料),助力及时处理问题,提升城市管理效率。
AI算法分析,智慧城管AI智能识别系统源码
|
29天前
|
机器学习/深度学习 人工智能 算法
AI学习
学习AI涉及编程语言(如Python)、数学基础、AI理论(包括机器学习、深度学习)、实践应用(如使用TensorFlow)、案例研究、伦理法律及持续跟进最新技术。从基础知识到项目实战,全面掌握AI需要扎实的理论与实践经验,关注领域发展,并具备跨学科协作能力。对于个人职业发展和适应未来社会,AI技能至关重要。
18 3
|
3天前
|
存储 人工智能 数据库
【AI Agent系列】【MetaGPT多智能体学习】8. MetaGPT多智能体进阶练习 - 使用MetaGPT重构BabyAGI
【AI Agent系列】【MetaGPT多智能体学习】8. MetaGPT多智能体进阶练习 - 使用MetaGPT重构BabyAGI
9 0
|
3天前
|
人工智能 决策智能
【AI Agent系列】【MetaGPT多智能体学习】3. 开发一个简单的多智能体系统,兼看MetaGPT多智能体运行机制
【AI Agent系列】【MetaGPT多智能体学习】3. 开发一个简单的多智能体系统,兼看MetaGPT多智能体运行机制
29 0
|
3天前
|
JSON 人工智能 数据库
【AI大模型应用开发】【LangChain系列】1. 全面学习LangChain输入输出I/O模块:理论介绍+实战示例+细节注释
【AI大模型应用开发】【LangChain系列】1. 全面学习LangChain输入输出I/O模块:理论介绍+实战示例+细节注释
32 0
【AI大模型应用开发】【LangChain系列】1. 全面学习LangChain输入输出I/O模块:理论介绍+实战示例+细节注释
|
9天前
|
机器学习/深度学习 算法 前端开发
Scikit-learn进阶:探索集成学习算法
【4月更文挑战第17天】本文介绍了Scikit-learn中的集成学习算法,包括Bagging(如RandomForest)、Boosting(AdaBoost、GradientBoosting)和Stacking。通过结合多个学习器,集成学习能提高模型性能,减少偏差和方差。文中展示了如何使用Scikit-learn实现这些算法,并提供示例代码,帮助读者理解和应用集成学习提升模型预测准确性。
|
9天前
|
机器学习/深度学习 算法 Python
使用Python实现集成学习算法:Bagging与Boosting
使用Python实现集成学习算法:Bagging与Boosting
18 0
|
14天前
|
机器学习/深度学习 人工智能 自然语言处理
|
16天前
|
算法
【算法学习--字符串】(不含KMP算法)
【算法学习--字符串】(不含KMP算法)
|
1月前
|
人工智能 算法 搜索推荐
构建未来:AI在持续学习系统中的创新应用
【2月更文挑战第30天】 本文聚焦于人工智能(AI)技术在持续学习系统(CLS)中的前沿应用,探讨了AI如何促进个体和组织的知识演进与技能提升。通过分析自适应学习算法、数据驱动的个性化推荐以及智能辅助决策支持等关键技术,揭示了AI在推动终身学习和知识管理领域的创新潜力。文章还考察了这些技术在实际部署中面临的挑战,包括数据隐私保护、算法透明度和系统集成问题,并提出了相应的解决策略。
27 3