AI 的算法和数据结构中的算法一样吗, AI 的模型和数学建模一样吗?

2021-06-30 09:33:09 +08:00
 James369
现在 AI 这么火,但是有些概念没搞懂(如题),还有搭建神经网络 是不是就是在那做数学建模?。

另外什么是算法工程师,我感觉他们也没搞出什么算法,都在标注数据、训练、调参,完了继续重复上述过程(中间可能看看复杂的各种学术论文=天书)
4071 次点击
所在节点    程序员
42 条回复
jdhao
2021-06-30 09:40:51 +08:00
差不多,算法就是解决问题流程代码话而已。

也不一样,leetcode 上的算法,譬如二分,搜索等等,比较简单,而且程序运行结果大多数是确定的,输入 A,必须输出 B 。AI 用的算法就不是这样,因为用到了模型,必须要训练这个模型,经过训练模型的输出,也不一定会是你想要的输出,所以 AI 算法才有准确率的问题。
NilChan
2021-06-30 09:42:09 +08:00
我觉得不一样。AI 算法更像人类给定一个模型,让计算机自己训练出算法。
James369
2021-06-30 09:44:22 +08:00
@jdhao 是不是可以理解为,AI 算法就是一个神经网络结构?
p2pCoder
2021-06-30 09:44:42 +08:00
片面点来讲,AI 最基础来说,就是统计,最基础的就是数据,有了数据就是去拟合一个 f(x)j=y 这个函数,就比如大学做实验的时候,我们会在坐标纸上根据点的分布,去拟合一个线性函数,这也是机器学习的一种基础应用。只是真实世界的数据特别特别多,很高维,对应的函数也特别复杂
这是很简单片面的理解,到了真正的落地就很复杂了
root99527
2021-06-30 09:49:32 +08:00
算法工程师的价值在于,通常落地场景的资源都是有限的,尤其是端侧,如何让有限的资源在当前场景中表现最优,是工程师需要考虑的问题。
jdhao
2021-06-30 09:50:09 +08:00
@James369 不是,神经网络只是众多 AI 算法中的一种。
James369
2021-06-30 09:53:29 +08:00
@root99527 是吗,我觉得算法工程师的价值不在于 工程落地,而是在于研究出新颖的算法,发表顶级论文(本身论文就是评估算法工程师的一项指标)。
工程落地是属于软件工程师和系统架构师的职责。
MinQ
2021-06-30 09:58:46 +08:00
@James369 工程师这个称呼本身就代表着他要面对的是工程场景,他们要做的事情就是将算法在一个合适的场景中实现,达到在各种资源的约束下的最优解。研究新颖算法的人我们管他们叫做研究员
MinQ
2021-06-30 10:01:27 +08:00
@James369 算法工程师的价值在于解答在当前场景的资源约束下,用哪个算法,以什么样的参数设置最合适,为什么
JerryCha
2021-06-30 10:02:46 +08:00
朴 素 贝 叶 斯
p2pCoder
2021-06-30 10:14:58 +08:00
@James369 算法工程师核心在于落地,而且所有问题的基础在于数据,无论对于实验室的研究员还是大厂的算法工程师,做数据的时间都远多于做模型的时间,因为再复杂的模型都是一个确定的结构,都算是简单的,但是数据却有太多东西需要去探索。
p2pCoder
2021-06-30 10:27:58 +08:00
@James369 所有技术的核心都在于商业价值,无论对于 cv nlp 还是推荐 搜索 广告,整个系统的计算和存储成本都是极高的,而算法模型的结构复杂度,参数数量,都是对计算 和存储的成本的极大考量。还有就是大公司的算法的核心 kpi 在于业务指标,不在于发论文,大厂的算法研究员现在也大都有落地的 kpi 了。
James369
2021-06-30 10:42:41 +08:00
@p2pCoder 让他们按一定指标去优化算法还有可能,不过很多算法工程师只会用 Python (甚至连计算机系统原理都不懂),所以让他们去落地我想还得借助于软件工程师。但是他们的工资开的老高了,真是匪夷所思。
TimePPT
2021-06-30 11:24:34 +08:00
@James369 术业有专攻而已,解决的是整个系统里不同的问题,你让普通的系统工程师天天面对深度学习各种问题调参也会懵逼。
至于工资价格,是市场供需决定的,未来趋势是 AI 技术平民化,工资溢价自然会降低。
czfy
2021-06-30 11:28:19 +08:00
要是你觉得算法工程师工作很简单,机器学习算法和数据结构算法没啥区别,算法工程师只会 python,你去面试一下这些岗位就行了,然后你也能拿你觉得高得不合理的工资了
GrayXu
2021-06-30 11:33:07 +08:00
@James369 你这话的问题在于你不了解算法实际部署的问题。在很多场景下,并不是我给出一个算法,这个算法直接对接新数据,直接输出你想要的结果。除了楼上所说的资源限制以外,对于实际场景针对性的优化、finetune 、特征的处理都是算法最后效果好坏中很重要的一环。而不仅仅是算法是否 fancy,是否有发表论文。
和 @p2pCoder 说的一样,实际业务上线的算法有方方面面的角度需要考虑,而不是哪一个是 state of the art 就拿来用。不要低估特征处理等的重要性。

至于你说的"很多算法工程师只会用 Python (甚至连计算机系统原理都不懂)",就只是你所处环境的 bias 了。
p2pCoder
2021-06-30 11:42:02 +08:00
@James369 工程能力强的算法很多,这个群体是卷到变态的,我这几年就是做算法的工程落地的,作为一个后端,遇到过很多工程能力碾压后端开发的算法工程师。
fredli
2021-06-30 13:06:28 +08:00
传统算法是命令式,AI 更像声明式
pcslide
2021-06-30 13:17:18 +08:00
你说的应该时神经网络吧?
数学建模涵盖的内容远超神经网络。。。
pcslide
2021-06-30 13:22:47 +08:00
@James369 喷算法工程师不懂计算机原理有点过了吧?计算机组成,操作系统,编译原理,c 语言这些是系里的必修课。研究生阶段大概太多时间放在算法这块,之前的知识变得模糊了,但不可能不懂。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/786596

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX