私以为没必要解释了,直接上图:
发布于 07-16
作者:凯叔抒楷书
链接:https://www.zhihu.com/question/406961845/answer/1340971992
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
作者:白小鱼
链接:https://www.zhihu.com/question/406961845/answer/1339617258
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
--------------------------------------------------------
作者:IT人刘俊明
链接:https://www.zhihu.com/question/406961845/answer/1353706240
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
作为一名计算机专业的教育工作者,我来回答一下这个问题。
首先,人工智能是一个非常典型的交叉学科,除了数学之外,还涉及到哲学、计算机、控制学、经济学、神经学和语言学等,所以说人工智能就是数学还是有一些片面的。当然,数学对于人工智能确实非常重要,也可以说比较关键,这一点还是应该肯定的。
从当前人工智能技术发展的三个大的核心来看,分别是数据、算力和算法,其中算法说到底就是一个数学问题,所以要想在人工智能研发领域走得更远,数学基础还是非常重要的。除了算法之外,数据可以通过大数据技术来提供,包括数据的收集、整理和分析等,而算力则可以通过云计算的方式来解决,算力和数据往往是制约人工智能技术发展的核心因素。
从当前人工智能领域的六大研究方向来看,不论是计算机视觉、自然语言处理、机器学习,还是自动推理和知识表示等,都离不开数学知识,其中机器学习就是一个非常典型的代表,从算法设计到算法实现,再到算法训练和算法验证,无一例外都离不开数学知识,从这个角度来看,数学基础就是人工智能研发的重要基础。
虽然数学知识对于学习人工智能比较重要,但是并不意味着数学基础好,就一定能够学好人工智能,这里面还有很多障碍需要跨越,比如不少数学好的人并不一定就能够写出比较好的程序,这里面还有一个从数学思维向逻辑思维转换的过程,这个过程往往需要辅助大量的实验。
最后,数学不仅对于人工智能很重要,对于科研领域的很多方向都比较重要,所以一定要重视数学知识的学习。
发布于 07-22
作者:xiaolee
链接:https://www.zhihu.com/question/406961845/answer/1350022820
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
其实是对的…… 做了五年程序员了…… 研究ml和dl是近两年的事情。
深度学习其实更接近于统计学学科,其中内容大量的都是数学内容,且里面展露出来的计算机思想非常少。
包括计算机比较常见的互斥量,调度,切换,链路追踪,数据协同等问题其实都不存在于深度学习里。
对于深度学习而言,计算机更类似一个工具,进行相关的链式运算。只不过这个工具的代价非常难用。对于非计算机专业而言,学习到利用电脑(CPU/GPU)进行大量的运算,并且让你的数学模型转换成等价的计算机算法且跑起来高效的话,其浪费的时间成本和学习精力是非常大的。所以现在的深度学习常用语言其实工具非常低门槛人性化。例如python,作为脚本语言尽可能降低了使用门槛。依赖于这种低门槛的语言,确定模型可行效果较好,再考虑优化算法以及换成性能更优秀的语言以节约生产的设备成本。
但事实上哪怕是这种低门槛的工具,对于非计算机专业的来说,还是门槛过于高了。让数学系的从0开始学习计算机,学到一个能较正常编程的地步,并且这个学习其实对于纯粹数学分析是没什么太大帮助的情况下;和让一个计算机系学习过高数线代概率论的学生去学习稍微深一点的统计数学,然后再结合到计算机里。从时间成本和学习代价上看,怎么也是后者比较划算一些……
所以最终还是回到开头,其实深度学习本身就是利用计算机让数学模型进行实践的一种方式。
发布于 07-20
作者:anarion
链接:https://www.zhihu.com/question/406961845/answer/1346289721
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
人工智能确实就是数学,这话没毛病,因为万物皆数学。
说的具体一点,人工智能对数学要求极高。
首先需要统计学,需要经典统计学和贝叶斯统计学的结合,两个方向都有非常多要学的。
然后是要进行数值计算,解最优化问题和微分方程。要更好地解决这些问题,又要学习凸优化一类的分析学知识。
把项目实现和部署到生产环境,需要编程语言和计算机科学等等基础知识,这些知识的本质也是数学。
如果你只想当个调包侠,那就当我没说。
发布于 07-18
人工智能是一系列信号(数据)的处理、压缩、和一系列优化,还有矩阵计算的组成,每项后面都有对应的数学工具和理论,比如函数的拟合,梯度下降,反向传递链式法则。
当然把这些工具整合在一起能够很好解释其内在原理的理论框架应该还是在研究中。
现在应用发展比较快,图像识别,声音识别,GAN,VAE之类的generative model都有很惊艳的应用,但是人工智能研究的过程中也还有很多炼丹成分,就是暴力枚举潜在的结构、初始化参数的组合,炼丹师的由来也是因为这个。这部分还不是很“数学”。
数学本身博大精深,各个山头让人高山仰止,人工智能算是个子集或者数学应用吧,说自己是数学会被上游大佬鄙视的。
发布于 07-19
作者:李凯在纳舍科技
链接:https://www.zhihu.com/question/406961845/answer/1347971779
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
作者:零天
链接:https://www.zhihu.com/question/406961845/answer/1347975085
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
看了目前的答案,几乎统一的认识是“人工智能其实就是数学”。然而我要唱唱反调。
人工智能是数学与工程的结合。
数学是“人工智能”的基础吗?是的,当然是的。
高等数学、线性代数、概率统计,理工科本科数学基础三板斧,人工智能领域都要用到,很多建模问题归结到最后,就是一个数学模型。高等数学之于导数计算、线性代数之于矩阵乘法、概率统计之于分布估计,这些都是人工智能的基础。
但说人工智能“其实就是”数学,这未免也太狭隘,虽然说人工智能与机器学习并不等价,但我们不妨还是暂且混用这两个词。
既然是“机器学习”,那就一定免不了与“机器”打交道,那么这一定就是个工程问题。就像是“算法工程师”首先得是一个“工程师”。见过有些实习生,只会在jupyter里面写python,没有任何工程经验,git不会、IDE不会、代码上线不会、bug不会查,到头来还是很难适应工业界的工作。
数学太理想、太柏拉图了,在整个人工智能(机器学习)的实践中,充满了数学与工程队trade off。内存是有限的,算力是有限的,时间是有限的,信息的获取是有限的。不能落地的数学公式只是公式,成不了“人工智能”。
随便说一些人工智能需要面对的工程问题:
计算机基础:
矩阵乘法怎么实现?朴素矩阵乘法算法中为什么换一下循环顺序就能带来性能提升?(计算机的存储模型,缓存会不会?)梯度消失和梯度爆炸与计算机精度有什么关系?为什么要使用logsoftmax而不是直接使用softmax?
分布式、体系结构:
CUDA会写吗?为什么要用GPU计算?为什么要用分布式训练?甚至,为甚要开发专用的硬件(TPU、FPGA),无非都是CPU的算力已经无法跟上模型的脚步。一旦用了GPU计算又引入新的问题,显存与内存之间的数据传输,甚至用了分布式之后怎么设置Parameter Server的参数更新策略,全部更新还是部分更新?
算力和内存:
为什么要使用Depthwise Separable Convolution?模型要放到手机上、自动驾驶汽车上、甚至是智能硬件上怎么做?有的场景对功耗有要求、有的场景内存大小有限、有的场景对延时有限制,怎么做模型量化?怎么在模型效果和大小、速度上做trade off?
其他非工程问题:
怎么理解业务模式?视频推荐你要点赞率还是要观看时长?前后的推荐有序列关系吗?是让用户短时间爽(不加限制的推高点赞内容很容让整个业务场景的画风走偏)还是关注长期留存?用户信息你能拿得到吗?(作为算法工程师,我真的是想竭尽全力的窥探用户的隐私,性别年龄机型地域通讯照片甚至是你在别的平台的记录最好通通都给我;但作为用户,我真的都不想给你。)
总结:人工智能当然是数学问题、数学是一切科学的基础。但就像不能说生物本质上是化学、化学本质上是物理、物理本质上是数学一样。人工智能是数学与工程的结合。
发布于 07-19
作者:Gimosolv
链接:https://www.zhihu.com/question/406961845/answer/1345120480
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
我部分同意这个观点。
但首先,应该把“人工智能”这个词纠正为,“目前的机器学习和深度学习技术”。我个人觉得,以现在的ML/DL水平来看,我们还没摸到真正智能的边。以私人观点来讲,我也不太看好用现在的ML/DL技术来发展真正的智能。
纠正了这个名词之后,这句话依然是部分正确。ML/DL涉及的东西并不少,除了模型的设计,还有模型的实现,运行。对科研人员来说通常是使用一个深度学习框架,tf或pytorch,把他们的模型变成代码,再灌入数据,观察准确率从而判断模型是否有效。对于工业界,则还需要考虑上线,模型如何部署,如何压缩等等工程问题。另外,还有机器学习系统的研究,框架的设计,数据中心的构建,大数据、分布式等等等等。在当前理论并不充足的情况下,我们通常认为机器学习是一门实践学科,所以这些反而是你在机器学习领域会更常看到的东西。
那为什么我又觉得它是部分正确的呢?这是因为,我个人在浅薄地了解了机器学习这个研究社区后认为,这个领域想要更进一步,现在最需要的是数学。每一年,有无数paper设计了无数个自称SOTA的模型,实际上并不能留下什么痕迹。作者们绞尽脑汁为他们胡乱设计的模型讲一个好的故事,从而让他们的论文得到reviewer的肯定,但也仅此而已了。因为深度学习理论的缺失,研究者们往往是启发式地想出一个新方法,做好实验,拿到好看的数字,然后再来“编造”它为什么有效。而更多的情况是,这些方法根本就没有效。有的也许有时候在某些数据集上表现不错,但实际使用并没有什么用;还有的可能是直接造假。
我个人觉得只有通过数学,加强对深度学习理论的研究,才能摆脱当前的乱象。这几年大厂们纷纷开始通过堆砌资源来实现数字上的飞跃,这样的做法在一定程度上对阻止那些习惯坑蒙拐骗水文的研究者有好处,但大部分情况下,它们更多是代表工程上的进步而非科研上。到目前为止,深度学习的理论尚不能指导实践,我认为它们还称不上是理论,因此这一块的研究实际上还是一块处女地。但大部分机器学习社区的人员并不具备这个能力来挖掘这块土地,只能等待少部分掌握数学武器的领路人来改变一切。UC Berkeley的马毅老师便是这条路上的一个先驱人物,尽管我对他微博上的很多观点非常反对。
我自己因为数学功底不足,又厌烦了编造模型的工作,决定以后不再参与机器学习算法的相关研究。
编辑于 07-18
这一看就是纯学术派 技术派的观点。从学术的角度说 任何科学的本质都是数学 人工智能也不例外。AI的数学被吹上了天,其实不过是用的数学知识很多很杂而已,深度或者说难度方面未必有其他学科多,比如流体力学里各种偏微分方程也能虐死学生。
从应用或者说工业界角度说,人工智能用什么数学知识不重要,说到底仍然是一堆算法,编码时都是直接拿现成的库来用,至多自己查查算法实现一下,能看懂数学描述就行,至于为什么这样没时间研究。重要的是怎么提高安全性和运算速度,合理利用多核cpu,GPU, 怎么处理大数据这些问题。
从商业角度看,人工智能是什么根本不重要,重要的是它能满足一些用户需求,或者说解决用户痛点,比如极大提升人工劳动效率甚至完全替代人工劳动,提供极低成本劳动力,还有辅助人工决策过程等。
一个学科最终大规模普及应用到社会生产中,其根本在于其商业价值,其他方面都是次要的。
发布于 07-20
作者:郭斯特
链接:https://www.zhihu.com/question/406961845/answer/1349299815
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
作者:耿阿
链接:https://www.zhihu.com/question/406961845/answer/1362332512
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
人工智能将涉及到计算机科学、心理学、哲学和语言学等学科。可以说几乎是自然科学和社会科学的所有学科,其范围已远远超出了计算机科学的范畴,人工智能与思维科学的关系是实践和理论的关系,人工智能是处于思维科学的技术应用层次,是它的一个应用分支。
从思维观点看,人工智能不仅限于逻辑思维,要考虑形象思维、灵感思维才能促进人工智能的突破性的发展,数学常被认为是多种学科的基础科学,数学也进入语言、思维领域,人工智能学科也必须借用数学工具,数学不仅在标准逻辑、模糊数学等范围发挥作用,数学进入人工智能学科,它们将互相促进而更快地发展。
发布于 23 小时前