【教程】亲自动手编写你人生中第一个AI

技术文章 来源:SDK.cn 发布:2017-01-11 浏览:362

摘要:长话短说,在过去的14个月中,我花费了数千小时的时间,终于让自己成为了一名机器学习方面的专家。我想把我的知识分享给所有人。今天,我就要做一个简短的指导说明,告诉你如何编写人生中第一个AI。当然,这个AI不会太高级。

 大家都挺忙的,咱们废话少说,直奔主题。

机器学习是个什么鬼?

大概14个月前,我在HackerNews上看到一个消息:谷歌的Brain Team把他们的机器学习库TensorFlow进行了开源。网上对于这个新闻出现了大量的报道,因此我觉得谷歌这次给全世界带来的,一定是一个非常重要的东西。那个时候,对于什么是机器学习,我一无所知。为了让自己明白这是个什么鬼,我进行了深入的学习。

一台计算机怎么可能自己进行学习呢?人类终于开发出足够智能的AI了吗?AI的智力能否会超过它的制作者?无数的问题涌向我的心头,这些问题促使我开始了长时间的学习。

后来我发现,我学的越多,就越想要继续学习下去。

我发现,机器学习这个概念,对于我作为一名开发者的职业生涯,有着深远的影响。

长话短说,在过去的14个月中,我花费了数千小时的时间,终于让自己成为了一名机器学习方面的专家。

我想把我的知识分享给所有人。今天,我就要做一个简短的指导说明,告诉你如何编写人生中第一个AI。当然,这个AI不会太高级。

 

开始工作

我将会使用Python 3来开发AI。别担心,所有最终的代码我都放在了我的GitHub Repo中,你可以轻松的去复制。

现在,所有公司都给自己的AI起了一个好记的名字,例如苹果的Siri,亚马逊的Alexa等。而我给我的AI,起名为Sirlexa

下一步,打开你的代码编辑器,我使用的是Sublime Text 3新建一个新的python文件,起名为“sirlexa.py”。如果你使用的是macOS,你可以在终端中输入下面的命令:

 cd Desktop

touch sirlexa.py

用代码编辑器打开sirlexa.py文件,然后写入下面的内容:

 

在第一行中,我们输入的是一个标准的random模块以供之后使用。下面的answers是一个列表,里边是三种回答,AI在没听懂你的话的时候,会调用里面的回答。

 

重要的部分来了。这是一个infinite while loop。我们将用户在控制台输入的内容储存在user_input中,然后检查user_input是否等于“hi”,如果两者不相同,那么Sirlexa将会随机显示answers列表中的某一个句子。除了user_input.lower()之外,我们还可以使用.upper(),但是之后Sirlexa将会感到很生气,因为它觉得你在冲着它嚷嚷(lowerupper分别为小写和大写之意,英文中单词全大写有叫喊之意)。

就是这样,你做出了人生中第一个AI

没错,Sirlexa没有Siri或是Alexa那样强大,但是这毕竟是你人生中的第一个AI

github地址:https://github.com/Murgio/Sirlexa

qrcode_for_gh_9de197bcc61b_258.jpg

原    文:How To Write Your Very First Powerful Artificial Intelligence /s
译    文:SDK.cn
作    者:鲁行云(编译)

免责声明:

  1. SDK.cn遵循行业规范,所有转载文章均征得作者同意授权并明确标注来源和链接。
  2. 我们十分尊重原创作者的付出,本站禁止二次转载如需转载请与原作者取得联系。
  3. 转载SDK.cn的原创文章需注明文章作者、链接和"来源:SDK.cn"并保留文章及标题完整性未经作者同意不得擅自修改。
  4. 作者投稿可能会经SDK.cn适当编辑修改或补充。

评论 (100)

推荐工具 意见反馈