数学不好也能学会AI编程!微软研究院AI实践课程上新
精品文章,第一时间送达
来源:GitHub
转载自:新智元,未经允许不得二次转载
【导读】本文介绍由是微软亚洲研究院经过一年的研发推出的AI实践课程,无需数学基础,从简单的代码入手,逐步教会学生神经网络的原理,每一步都有代码展现原理。有实训平台,可以在上面用GPU训练AI模型,有众多有趣+实用的案例。
邹欣现任微软亚洲研究院首席研发总监,参与AI平台的研发和推广工作。他还是《移山之道》《编程之美》《构建之法 – 现代软件工程》等书的作者。
他参与的开源课程《神经网络基本原理简明教程》是微软亚洲研究院经过一年的研发推出的,最近刚刚更新了课程内容。本课程更注重进行项目实践,可以说非常对程序员的口味了。同时本教程对数学的要求并不是很高,学习门槛一下子就降了不少。
相比其他课程而言,本课程的独特之处在于:
-
从简单的代码入手,逐步教会学生神经网络的原理,每一步都有代码展现原理
-
有实训平台,可以在上面用GPU训练AI模型
-
有众多有趣+实用的案例
-
初步反响很好,程序员喜欢通过写代码来学习AI,而不是推导公式
如果使用浏览器在线观看的话,可以使用Chrome浏览器,需要加这个Math展示控件:
https://chrome.google.com/webstore/detail/mathjax-plugin-for-github/ioemnmodlmafdkllaclgeombjnmnbima)
也可以clone全部内容到本地,然后用VSCode浏览,但VSCode中需要安装能读取Markdown格式的扩展,比如Markdown Preview Enhanced。
总的说来,我们现在有了很多非常厉害的深度学习框架,比如Tensorflow,CNTK,PaddlePaddle,Caffe2等等。
然而,我们用这些框架在搭建我们自己的深度学习模型的时候,到底做了一些什么样的操作呢?我们试图去阅读框架的源码来理解框架到底帮助我们做了些什么,但是……很难!很难!很难!因为深度学习是需要加速啦,分布式计算啦,框架做了很多很多的优化,也让像我们这样的小白难以理解这些框架的源码。
这取决于你是想真正地掌握“深度学习”的思想,还是只想成为一个调参师?在我们看来,如TensorFlow,CNTK这些伟大的深度学习工具,是为了解决实际的应用问题而生的,而不是用来学习“深度学习”知识和思想的。所以我们根据自己亲身经历的学习轨迹,归纳出了以下教程,可以帮助小白做到真正的从入门到精通。
通过以下循序渐进地学习与动手实践,一方面可以帮助读者深刻理解“深度学习”的基础知识,更好地理解并使用现有框架,另一方面可以助力读者快速学习最新出现的各种神经网络的扩展或者变型,跟上快速发展的AI浪潮。
对于这份教程的内容,如果没有额外的说明,我们通常使用如下表格的命名约定:
没有各种基础想学习却无从下手哀声叹气的玩家,请按时跟踪最新博客,推导数学公式,跑通代码,并及时提出问题,以求最高疗效;
深度学习小白,有直观的人工智能的认识,强烈的学习欲望和需求,请在博客的基础上配合代码食用,效果更佳;
调参师,训练过模型,调过参数,想了解框架内各层运算过程,给玄学的调参之路添加一点心理保障;
超级高手,提出您宝贵的意见,给广大初学者指出一条明路!
环境:
-
Windows 10 version 1809
-
Visual Studio 2017 Community or above
-
Python 3.6.6
-
Jupyter Notebook (可选)
自己:
清醒的头脑(困了的同学请自觉泡茶),纸和笔(如果想跟着推公式的话),闹钟(防止久坐按时起来转转)。
参考链接:
https://github.com/microsoft/ai-edu/tree/master
原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2019/11/09/3a43a726f1/