主页 > L云生活 >从 0 开始学 AI,线上课程、精选实例先储存连结吧! >


从 0 开始学 AI,线上课程、精选实例先储存连结吧!

发表于2020-06-17

从 0 开始学 AI,线上课程、精选实例先储存连结吧!

现在这个时代,每个人都很忙。人们的个人生活和职业生涯都在发生着巨大的变化。最重要的是,随着像人工智慧这样的技术开始变得越来越流行,你会发现在接下来的两年里,你所掌握的技能会变得过时。

当我关闭我的创业公司 Zeading 时,我猛然醒悟过来。感觉自己错过了一些非常独特的东西。

在不断变化的情况下,作为一名传统意义上的全端工程师是不够的。在接下来的两年里,如果没有掌握人工智慧技术,全端工程师将不再是全端工程师了。

是时候採取行动了。我做出了我认为现在唯一能做的行动 —— 更新了我作为一名开发者的技能,并以产品经理一样的心态和企业家一样的理念来面对数据,并以数据为导向。

正如着名的风险投资家、人工智慧和金融科技行业的思想领袖 Spiros Margaris对我说的那样:

构建我的第一个神经网路

一个非常常见的建议是 在 Coursera 上听 Andrew Ng(吴恩达)的课程 。这是一个非常好的入门方式,但我发现,我很难长时间保持清醒。我并不是说这门课很糟糕,但我真的很难在课堂上保持专注。我的学习模式一直都是实践,从实践中获取新的知识。所以我想,我为什幺不自己来打造一个神经网路呢?

但我没有直接去着手构建一个神经网路,因为它是一个更加高级的学习方法。我刚开始先去试着熟悉这个领域里的所有的术语,这样我就能对这个领域有所了解。

我是纯 Javascript 和 Node js 出身,当时并不想换成其他的程式语言。因此,我搜索了一个名为「nn」的简单神经网路模组,然后通过模拟输入用它来实现一个「AND」操作。受一个教程的启发(传送门),我选择了这幺一个问题:对于任意的输入 X,Y,Z,输出结果都是 X AND Y。相应的代码如下:

从 0 开始学 AI,线上课程、精选实例先储存连结吧!

当得到的结果是 0.9971 时,我意识到,这个神经网路已经学会了如何做一个 AND 操作,并且忽略了附加的输入。这样的结果大大地增强了我的自信心。

这就是机器学习的要点。你给电脑程式一组数据,它能够自动调整内部参数,使其能够在新数据上回答问题,而原始数据中的误差也在减少。

这种方法,正如我后来了解到的,也被称为梯度下降(gradient descent)。

从 0 开始学 AI,线上课程、精选实例先储存连结吧!

补充人工智慧相关的知识

在我完成了第一个人工智慧程式后,我充满了信心,我想知道作为一名开发人员,我还能做些什幺。

    我解决了一些监督学习的问题,如回归和分类。我通过一个有限的数据集,尝试用多元线性回归预测哪支队伍将取得比赛胜利(虽然当时的预测很不準确,但确实很酷)。我在 Google 机器学习云的上做了一些演示,看看现在人工智慧能做什幺(作为一款 SaaS 工具,Google 已经做得非常好了)。我偶然发现了 AI Playbook,这是一个很棒的资源,由着名的风险投资基金 Andreessen-Horowitz 收集组织。对于开发者和创业者来说,这的确是最方便的资源之一。我开始在 Youtube 上观看以深度学习和机器学习为核心的 Siraj Rawal 的精彩频道 。我 读了一篇发表在 Hacker Noon 上的精彩文章 ,内容是关于硅谷的展示者如何打造 Not Hotdog 的应用程式。这是我们能做的、且最容易理解的深度学习的例子之一。我开始阅读特斯拉的 人工智慧主管 Andrej Karpathy 的部落格 。虽然说我很难理解其中的内容,让我很头疼。但我发现,在尝试了更多的时间之后,我开始理解其中的一些概念了。带着一些勇气,我开始逐字地(複製和贴上)来执行一些深度学习教程,并试图训练模型,并在我的本地机器上运行代码。大多数情况下,结果都不容乐观,因为大多数模型需要的训练时间很长,而且我也没有 GPU。

    逐渐地,我从 JavaScript 切换到了 Python,并在我的 Windows 机器上安装了 Tensorflow。

    整个过程,我都是在被动地消化内容,并在脑海里建立了一些相关的认知,当以后遇到真正的问题时,就可以使用这些知识了。

    做一个聊天机器人

    作为电影《Her》的忠实粉丝,我也想要打造一个聊天机器人。我接受了这个挑战,然后用 Tensorflow 在不到两小时内完成了这项举动。并在几天前的一篇文章中概述了我是怎幺完成的以及它的商业需求。

    幸运的是,这篇文章广受好评,在网上疯传(传送门,36 氪编译文章)。这对我个人而言,这是一个非常好的现象,毕竟我才刚开始写技术博客。我认为这篇文章是我人工智能学习之旅的一个里程碑。

    它让我在 Twitter 和 LinkedIn 上结交了很多朋友,我可以和他们深入地讨论人工智能开发,发现自己的不足,甚至在我遇到问题时,他们也能够伸出援手。我也收到了一些谘询项目的 offer。最重要的是,年轻的开发者和人工智慧初学者开始问我,我是如何开始学习人工智慧的。

    这就是我写这篇文章的原因。帮助更多的人从我的学习过程中获得灵感,开始他们自己的学习过程。

    万事开头难,入门是任何过程中最具挑战性的部分。

    结语

    这绝对不是一个容易的事情。当我开始被 Javascript 卡住的时候,我几乎在一夜之间就开始用上了 Python,并学会了如何用其编写代码。当我的模型无法在我的 i7 机器上进行训练时,我开始变得烦躁,甚至在经过数小时的训练后,它们依然返回一个很显然是错误的结果,即球队赢得板球比赛的概率是 50/50。学习人工智慧不像学习一个 Web 框架。

    同样, 人工智慧也不仅仅是一个学科。它是一个「从简单的回归问题到总有一天会杀了我们的致命机器人」的统称。 就像你所从事的其他学科一样,你可能会想要在人工智慧领域挑选出你想要擅长的东西,比如电脑视觉或自然语言处理等等。

    在与人工智慧、金融科技和加密技术领域的领导者 Gaurav Sharma的对话中,他向我表示:

    想要开始这段学习过程,你必须让自己沉迷于电脑如何突然学会用它们的方式来做事情。 耐心和好奇心是你应该坚持的两个关键原则。

    这是一次重大的旅行。非常累人,也非常烦人,而且特别耗费时间。但值得庆幸的是,它和世界上其他的旅行一样,也需要从一个简单的步伐开始。

    本文由 36 氪郝鹏程编译,原文连结

    想要更多学习 AI 的资讯?没问题,TO 罩你

    程式语言入门必去 Udemy 、职场转职必去 Udacity
    中国 AI 教父吴恩达、脸书研究院的 AI 影片宝典都在这
    入门 AI 从「深度学习」开始,五本必读的深度学习圣经书籍

    上一篇:
    下一篇: