学习AI可能不需要那么多数学知识:20小时进阶计划

这里还有一个关于AI不为人知的小秘密:

事实上你不需要储备那么多的数学知识才能开始使用AI。

如果你是一名开发人员或系统管理员,你可能早已使用了很多你所了解的库和框架。为了使用curl(一个广泛使用的用来上传和下载的命令行工具),其实你不必了解网站检索内部如何工作。AI也是如此。有很多框架和项目可以帮助你快速地使用AI算法,而不需要你成为一名数据科学博士。 

不要误会我的意思。数学有助于你对算法背后发生的事情有所了解。借助它,你可以阅读研究类论文,当看到像Ian Goodfellow著作的深度学习一类高级书籍时,不会毫无头绪。但是,如果你想开始使用AI,你可以今天就开始。

让我们从一些实际的项目来开始做起。

我的学习方法与“第一个二十小时”中概述的优秀方法非常相似。我们都知道一万小时定律。要真正掌握一门技能,你需要投入大量时间。但我们只是刚刚开始。现在我们试图通过初次尝试来发现它的乐趣!

方法很简单:

  • 选择一个项目;
  • 克服自己一定会失败的想法;
  • 进行各种尝试并从失败中快速学习
  • 实践。

很容易吧?所以让我们开始!

选择一个项目

首先你需要一个项目来激励你离开舒适区。

一个有一百万美元奖金并且可能对肺癌研究产生影响的项目听起来如何?

Kaggle是你可以找到机器学习项目的地方。现在他们正在举办一场价值100万美元的竞赛来改善肺癌病变的分类。任何人都可以加入,包括你。

现在我知道你在想:我绝对没有机会赢。这是一个聚集了最优秀机器学习从业者的比赛。很高兴你想到这里,因为把我们带到了第二步:

克服自己一定会失败的想法

学习任何新事物最重要的一步是尽可能地关掉头脑中自我怀疑的声音。“第一个二十小时”主张通过尝试消除干扰,根据时间制定训练计划和一些其他方法,例如冥想,自我肯定或适度饮酒等,做只要能让声音消失,让你可以专注的事。如果你需要一本自我帮助的书来翻越这一障碍,请尝试“You are a Badass”,一部有趣、滑稽和充满讽刺意味的杰作。

就是这种情形:你现在感觉糟糕透了。但是没关系,你不会这样感觉很久。  

第一阶段的学习总是会感到困惑和沮丧。所以,不要和自己过意不去,这表明你在正确的轨道上。你正在学东西,你很棒!你可能不会赢得比赛,但那又怎样?专注于在截止日期之前提交一份证明你实力的报告。不是每个人都可以赢得一场马拉松比赛,但是完成一场比赛本身就是一种成就,对吗?

你知道吗?你可能会赢。我是认真的。

作为业余爱好者,你不会像专业人士一样被多年的理论想法所束缚。只要记住这个关于学生的故事,他在黑板上看到了两个看似无法解决的数学问题,误以为是作业,然后解了出来。事实上数据科学较于科学更似艺术。这是一个吸引了各种各样学科背景的博学者聚集的领域。所以放手去试试你能做些啥把。

谁知道会发生什么? 

也许你会发现连专家都错过的东西;真真切切地影响到癌症检测,并将这笔可观的收益带回家。

进行各种尝试并从失败中快速学习

如果你是一个开发人员,你就会知道这个口头禅。同样适用于学习。我的做法是找出有代表性的书,快速浏览他们,看看哪些对我来说是最有意义的。每个人都有不同的口味,所以有些书适合于一个人而其他人却不喜欢。选最适合你的那个。

现在已经有一些关于机器学习的书,像“Real World Machine Learning”。不幸的是,由于这是个新兴领域,大部分的书籍今年才刚刚出现。你可以去预订“Deep Learning: A Practitioners Approach ”或“Hands-on Machine Learning with Scikit-Learn and Tensorflow”。

但你不必等待。这里我推荐Safari Books Online。你可以使用现成工具来快速学习如何应用深度学习,这样你才能在比赛项目里用上。  

你要一起使用Kera与 TensorFlow或者Theano,都可以。

你甚至不需要自己设置。试试github上这个非常棒的一体式深度学习Docker映射。(https://docs.docker.com/get-started/#prerequisites)

坦白的说,无论你使用TensorFlow还是Theano都没关系。它们本质上都是运行机器学习的引擎。在你现阶段的水平上,两者几乎是一样的,所以选择一个即可。

Keras是由一流的Google AI研究人员创建的机器学习框架库。本周末,我有幸地遇见了Keras的创始人Francois Chollet。他把Keras形容为“AI民主化”的关键,他提到“深度学习是成熟的,但还没有被广泛传播……你不必是AI研究员才去使用Keras”。而是可以马上开始使用各种各样最先进的技术算法。

如果你已经有了一个Mac或者是Linux的设备以及英伟达显卡那么你将可以继续了。如果没有,请考虑挑选一款戴尔的外星人。我推荐中档Aurora系列。你并不需要一个强大的处理器,而是一个SSD、备用磁盘来转存数据、16-64GB的内存和最好的英伟达显卡。你该将你所有的现金集中花费在显卡上,因为他们真的可以加速深度学习的速度。你进一步需要使用Linux重新格式化并获取最新的二进制驱动程序。不幸的是,开源软件并不会在你最新的芯片组工作得很好,但及有可能会引起黑屏。你可以参考这个链接解决。(https://askubuntu.com/questions/760934/graphics-issues-after-while-installing-ubuntu-16-04-16-10-with-nvidia-graphics)

如果你想自己动手,还有一些教程(https://medium.com/@acrosson/building-a-deep-learning-box-d17d97e2905c)可以帮助于建好需要的设备。另外,我刚刚在第三部分添加了自己的教程!最后,你可以使用AWS,Google或者Azure cloud,但GPU在云计算里快起来会很贵。在你知道你在做什么之前,购买设备才比租赁更合适。

实践

现在你准备好开始了。以下是使用Keras入门的超简单示例。你将需要一个进行比赛的方法。再一次我会为你节省一些时间。目前最有效的标记和研究图像的方法是广为人知的卷积神经网络(CNN)。Google, Facebook, Pinterest和Amazon都使用它们进行图像处理和标记。你也可以从实践中最好的算法开始吧?

实际上,如果你直奔竞赛本身,获取数据集,并查看该教程(https://www.kaggle.com/c/data-science-bowl-2017/details/tutorial),你将会看到它会引导你切割图像并使用搭有Keras和TensorFlow后端的CNN。瞧!你几周可能做的仅仅是实施教程还不得不把参数调来调去,但可以看看你收获了什么。

随后一切会变得疯狂。在数据上使用不同的参数和算法。做实验和寻找乐趣。也许你会偶然发现专家错失的东西!

如果你准备尝试更高级的内容,那么在the Kaggle Data Science Bowl 2017 board(Kaggle数据科学超级碗2017, https://www.kaggle.com/c/data-science-bowl-2017/kernels)上有一些很棒的帖子。事实证明,数据科学家们并没有超越他们分享的秘笈。查看这一个(https://www.kaggle.com/anokas/data-science-bowl-2017/exploratory-data-analysis),它是一系列匿名检查者的CT扫描图片,有助于你开始探索数据。这是一个目前论坛上更先进的,最受欢迎的帖子。它可以帮助你做“预处理”,它基本上是清洗和转换数据,使神经网络更流畅、更容易处理。它实际上将两维的图像转化为3维图像!超酷!

坦白说,如果你自己输入这些代码并让它运行,你已经做得很好了。这种编程方法是“艰难的”,直到真正了解前就开始实践。甚至还有一系列关于Python和其他语言的书籍(http://amzn.to/2jQfHvR),采用这种学习方式,它可能适用于你。

一个警告:有些人在比赛中发布了一个完美的比分。然而却是以通过研究比赛排行榜和增加训练集大小的小聪明来获得(https://www.kaggle.com/olegtrott/data-science-bowl-2017/the-perfect-score-script)。这完全合法,但它不会真正有助于你实现目标。你的目标是学习针对训练集如何运行神经网络。现在我将会跳过这个方法,并专注于针对CT扫描图像运行Keras。

就到这儿!祝你好运,你将帮助重新定义癌症的研究,并把一些现金带回家。不是糟糕的一天的工作。

但是,即使你没有赢,你将会很好地学习如何在现实世界中使用AI。

无论发生什么,记得要玩得开心!

原文发布时间为:2017-5-08

时间: 2024-11-10 07:44:10

学习AI可能不需要那么多数学知识:20小时进阶计划的相关文章

数据挖掘 数学知识-如果从事数据挖掘的工作需要学习什么数学知识

问题描述 如果从事数据挖掘的工作需要学习什么数学知识 能说出数学的名称就是了,例如应用统计学.数学建模什么的.当然了回答者如果能给出除了学习数学还需要学什么专业知识的回答就更加感谢了 解决方案 还是要跟你主攻方向有关,如GIS,需要的知识除了GIS专业知识以外,还有运筹学.线性规划.概率.图论.计算机编程等.学以致用. 解决方案二: 最常用的就概率论与数理统计. 线性代数. 如果需要了解算法的数学推导,那需要多元微积分,运筹学等的知识. 解决方案三: 现在也正在学,遇到最大的问题就是数学不好.个

理清神经网络中的数学知识

导读:首先我想在这里声明的是,本篇文章针对的是一些已经具备一定神经网络知识的人.意在帮助大家梳理神经网络中涉及的数学知识,以及理解其物理含义.希望大家读过之后,可以使大家对于神经网络有更多角度的理解,帮助大家推导以及理解其中的数学公式.(本篇文章在叙述方式上多以白话为主,意在让大多数人有形象的概念,所以在严谨性与通俗性上难免会出现失衡问题,希望大家理解.分享的目的即分享,非教授!) 1. 线性代数 矩阵乘以向量的物理含义 矩阵乘法我更喜欢称作线性转换.一个矩阵乘以向量中,矩阵相当于一个转换函数,

如何用数学知识提升情商?数学学霸们的6大思维习惯

引言:成为一名"数学学霸"显然不是一件轻松的工作,不仅需要"高智商"的支持,还一不小心就被套上了"情商低""Nerd"的"帽子". 别怕!事实上,除了具体的公式.求证,数学学习中涉及的思维方式在日常生活中也能够派上大用场! 本篇文章用大量实际案例告诉你,数学学习中get到的这6大技能不仅仅可以帮助你思考发杂而多元的问题,也能够帮你培养成功所必须的情商. ◆ ◆ ◆ 为什么要学习数学? 学生在学数学时最常见的

《Python游戏编程快速上手》——第2章 交互式shell 2.1 一些简单的数学知识

第2章 交互式shell 本章主要内容: 整数和浮点数: 表达式: 值: 操作符: 计算表达式: 在变量中存储值. 在开始创建游戏之前,我们需要先介绍一些基本的编程概念.本章不会创建游戏,但是学习这些概念是编写电子游戏程序的第一步.我们先来学习如何使用Python的交互式shell. 2.1 一些简单的数学知识 按照第1章中介绍的步骤打开IDLE,然后使用Python来求解一些简单的数学问题.交互式shell可以像计算器一样工作.在交互式shell的>>>提示符之后,输入2+2,然后按下

长城电脑团委举办学习党的十八大精神和党章知识竞赛

为深入学习党的十八大精神和修改后的党章,引领团员青年学习党的基本知识,接收党的教育.在"五四"青年节来临之际,在公司党委的指导下,公司团委于2013年4月27日举办了一场"学习党的十八大精神和党章知识竞赛".公司党委副书记马跃.公司团委副书记余建华及部分党.团干部.团员青年代表等参加了这次活动.参加这次竞赛活动的五个代表队分别来自电源团总支.整机制造团总支.电脑团支部.信息应用团支部及综合团支部. 晚上7时许,竞赛在主持人饱含激情.高亢有力的开场词中正式开始.本次竞

《DirectX 9.0 3D游戏开发编程基础》必备的数学知识 读书笔记

最近在看游戏导航源码,但是看了几天感觉看不懂.里面全是一些几何运算,以及一些关于3d方面的知识.发现自己缺少3d这方面的知识,正好也想研究一下3d游戏开发的基本原理,于是决定买本书看看了,后来在opengl和directx要选择一个,感觉directX是微软的,就选了directx. 必备的数学知识 3D空间中的向量 几何学中一个有向线段表示,向量两个重要属性:长度.方向 向量不含有位置信息,如果向量的长度和方向相等即相等  . 左手直角坐标系和右手直角坐标系:左手直角坐标系z轴正方向穿进纸面,

还在费心学编程?微软用深度学习 AI 帮你写代码

在过去的几十年中,无论在硬件组织还是软件架构上,计算机行业已经发生了翻天覆地的变化,各种软硬件产品的性能和用户体验均得到了显著提升. 但对程序员而言,软件编码的本质似乎并没有什么本质的改变:无论哪种编程语言,仍然需要程序员根据算法逻辑和实现步骤一步一步地手动敲入代码.虽然近几年随着编码工具的改进和编程语言的版本更新,对于程序员而言,这一过程已经相当方便了,但学习如何编程仍然是诸多计算机用户不得不面对的一道难题. 雷锋网消息,近日,微软在论文中公布了一项最新的代码合成系统:RobustFill.它

学习动态网页技术ASP:认识数学函数

动态|函数|网页 在这篇asp之数学函数里,我们将会以表格的形式,让大家了解到关于ASP中能用到的数学函数,里面包括一个数的绝对值.一个数的平方根,角度的正弦.余弦值等. 函数 语法 功能 Abs Abs(num) 返回一个数的绝对值 Sqr Squ(num) 返回一个数的平方根 Sin Sin(num) 返回角度的正弦值 Cos Cos(num) 返回角度的余弦值 Tan Tan(num) 返回角度的正切值 Atn Atn(num) 返回角度的反正切值 Log Log(num) 返回一个数的对

ECAI 2016论文精选 | 自适应学习网络化多代理系统中的社会规范高效出现——人工智能居然也会互相学习 | AI科技评论

应用场景导读:多代理系统是一个崭新的研究领域.它在短时间内显示出的理论和实际应用价值引起多方面的高度重视.其理论价值包括重新认识智能等基本问题,其实际应用价值包括开创基于代理的系统.人的助手.使用国际互联网获取和推销信息等.其广泛的应用领域包括太空服务.区域监测.机器人合作.工业控制.商业和经济等. 标题:自适应学习网络化多代理系统中的社会规范高效出现 摘要:本文探讨了如何利用网络化多代理系统代理的自适应学习行为来加强规范.一般学习框架,其中代理可以通过他们各自学习经验进行社会学习,动态地调整自