“AI 架构师”是以深度学习为代表的第三次AI热潮所催生的新型复合型人才,它的产生最本质的驱动因素是AI产业化落地应用的蓬勃发展对人才的需求,深度学习突出的工程属性也特别需要复合型人才来驾驭。
从字面来看,AI架构师的“AI”对应算法技术,而“架构师”则涉及工程架构和业务把握。AI架构师应该具备把AI技术高效落地业务应用的能力,具体而言,对应三个基本能力:
第一,AI架构师要对AI技术和开发应用流程有整体掌握能力
第二,AI架构师要对上层 业务有充分的理解,有很好的技术抽象能力和技术判 断力
第三,AI架构师要能设计并实现高效合理的AI落地方案

此外,AI架构师还要具备综合素质,即对技术团队有很强的AI技术影响力,能整体上构建以AI为核心的技术体系,来充分发挥AI技术对业务的助力作用。

简言之,AI架构师以工程架构为桥梁实现AI技术和业务应用的对接。整个过程由业务驱动,通过工程架构进行任务分解后由AI算法落地和实现。这三个方面既是AI架构师的定义,也是AI架构师的要求或特征。
成为AI架构师的三大核心能力AI架构师不同于传统的AI算法科研人员,算法科研人员针对的任务往往都是抽象后的、环境变量相对固定的问题,基于这些问题做模型算法层面的研究;AI架构师也不同于一般的架构师,一般的架构人员通常直接按业务需求设计工程实现,没有AI算法这一层从而对技术要求和思考角度有较大不同。AI架构师对AI算法、业务理解和工程实现都有比较高的综合性要求。
掌握AI技术及相关应用、开发流程
AI架构师要对AI技术以及AI开发应用有递进式的理解。如果只是看了具体任务的几篇技术文章、拿来开源代码然后照示例来运行,好像看起来是很高效的上手了。这样做小的项目可能没什么问题,但对于更复杂的项目或者新的任务场景,很可能还是手足无措。所以,对于AI架构师而言,他必须对AI的基础技术和开发应用流程有更本质的理解和系统化的掌握,可以递进式的拆解为如下几个层面:
以上是对AI技术本身而言,尚未涉及业务。就像超级英雄电影里的情节一样,我们先要拥有某种超能力或者黑科技,这是拯救世界的先决条件。这一层面强调的是目的不是要成为AI技术专家,而是要做到对AI技术有比较宏观和本质的理解把握。需要注意的是,这层能力的掌握需要一个渐进的过程,不能期望一蹴而就,或者说设想先学成AI技术专家再去做业务,最好是结合项目实践不断迭代深入,先宏观再细节,先整体再局部,先黑盒再白盒。
对业务的理解和抽象能力
这里的关键点是要“理解”业务。作为AI架构师,尤其需要重视理解业务的诉求和逻辑,只有抓住业务问题的关键点,才能够做出正确的抽象设计和技术选型,切忌不要只从AI技术出发只是想当然。
比如说要做推荐或者是信息流的产品,核心逻辑是推荐符合用户兴趣的内容,怎么匹配用户的兴趣是解决这个问题的关键;做搜索产品的核心逻辑肯定是排序,排序的关键是语义匹配。这个过程可以称之为横面的抽象⸺首先就抓住了业务的重点、痛点。通常横面抽象可以用传统的方法来解决,但如果开局这一步没有做好,就相当于一个问题要解决的方向不准,后面无论采取什么AI策略都难以发挥效果,对产品或业务而言就成了缘木求鱼。
机器学习的基本任务类型包括分类、回归和排序等,我们要看业务关键问题可以抽象为一个什么机器学习问题。有些任务场景虽然复杂但已经有了现成的答案,比如语音识别、人脸识别的问题,可以套用成熟的方案。当然这些方案当初也都经历了对应的机器学习技术抽象的过程。现在看来非常简单的中文分词问题,也是因为首先把它变成一个分类问题后才在机器学习技术下取得了突破。但一些新场景的问题就需要AI架构师去做这一层的抽象,比如前面提到的用户兴趣匹配和语义匹配问题,需要我们进一步的技术抽象,映射成对应的机器学习技术问题。
同样是分类的问题这个场景适合选择什么模型或者网络结构?是直接套用某个成熟模型,还是要针对任务特点组装一个新模型?基础网络结构是选择MLP、CNN、LSTM还是选transformer?我们要根据实际任务特性构建模型的结构,比如输入是离散高级特征还是原始信号特征,是序列还是非序列等等,以及应用场景对计算代价的要求等因素也需要考虑。再往后就涉及模型的具体细节、训练的策略、参数的设置等层面了。
以上环节里,需要指出的是,对解决问题效果的影响,越往前面(对业务的理解)越重要,越往后(技术实现方式)影响力越小。如果业务关键问题的把握和大的技术选型不对,具体模型算法的调优只能事倍功半。
同时需要注意到,业务的理解和抽象的一个重点是创造性。对AI的业务落地来说,很多情况下不是说需求已经很明确、直接按照需求做软件就可以了;而是需要根据业务场景构造对AI技术的需求,然后再映射到架构上去⸺创新才是AI能发挥最大效力的关键。另外,有些复杂的问题可能不是一个AI技术能解决的,需要多个AI技术模块协同或者与一些非AI的技术协作才能完成。这时需要我们具备整体的架构能力,而不是简单的生搬硬套。至此,我们确定了要解决的具体问题是什么,基本上做到了兵法里的“知己(AI技术)知彼(业务痛点)”,接下来该如何摆兵布阵了。

高效可落地的工程能力
在工程实践过程中的着眼点要求不但可落地,还要高效。如前所述,解决一个复杂业务问题可能需要不止一个AI技术,我们需要根据业务的实际场景合理选择工具和资源,去进行组合、组装、串联以达到工程实践的要求。此外,由于业务时间要求、成本限制、质量要求等等,我们不可能在最理想态下、不计成本地解决问题。这时我们就要做折中的选择,并尽可能提高技术方案的可扩展性,使之能随着业务的变化而不断演进。对于真正的AI产业应用,这一环节尤为重要。而深度学习对应的“大模型、大数据、大算力”的要求,对工程落地提出了更多的挑战。近年来不止产业界,学术界也开始更多关注AI系统构建的相关技术设计和工程实现问题。
在方案落地的时候,一定会较多地涉及系统构建和部署的问题,AI架构师要对系统的整体设计、部署和硬件环境相关的问题进行深思熟虑,到底硬件资源该怎么选、部署怎么实现、系统怎么运行,等等。最后,要有迭代的意识。常有人用“开着高速换轮胎”来形容快速迭代,一个系统在上线过程中肯定会遇到各种意想不到的问题,例如实际效果低于预期、运行效率不高等等,这时如果没有快速迭代能力,项目便很难继续推进下去。
前言作为一名程序员,自己的本质工作就是做程序开发,那么程序开发的时候最直接的体现就是代码,检验一个程序员技术水平的一个核心环节就是开发时候的代码能力。众所周知,程序开发的水平提升是一个循序渐进的过程,每一位程序员都是从“菜鸟”变成“大神”的,所以程序员在程序开发过程中的代码能力也是根据平时开发中的业务实践来积累和提升的。提高代码能力核心要素程序员要想提高自身代码能力,尤其是新晋程序员的代码能力有很大的提升空间的时候,需要针对性的去提高自己的代码能力。提高代码能力其实有几个比较关键的点,只要把握住这些方面,就能很好的、快速的提高自己的一部分代码能力。1、多去阅读开源项目,如有机会可以亲自参与开源
我是一名决定学习Ruby和RubyonRails的ASP.NETMVC开发人员。我已经有所了解并在RoR上创建了一个网站。在ASP.NETMVC上开发,我一直使用三层架构:数据层、业务层和UI(或表示)层。尝试在RubyonRails应用程序中使用这种方法,我发现没有关于它的信息(或者也许我只是找不到它?)。也许有人可以建议我如何在RubyonRails上创建或使用三层架构?附言我使用ruby1.9.3和RubyonRails3.2.3。 最佳答案 我建议在制作RoR应用程序时遵循RubyonRails(RoR)风格。Rails
我尝试用Ruby设计一个基于Web的应用程序。我开发了一个简单的核心应用程序,在没有框架和数据库的情况下在六边形架构中实现DCI范例。核心六边形中有小六边形和网络,数据库,日志等适配器。每个六边形都在没有数据库和框架的情况下自行运行。在这种方法中,我如何提供与数据库模型和实体类的关系作为独立于数据库的关系。我想在将来将框架从Rails更改为Sinatra或数据库。事实上,我如何在这个核心Hexagon中实现完全隔离的rails和mongodb的数据库适配器或框架适配器。有什么想法吗? 最佳答案 ROM呢?(Ruby对象映射器)。还有
伴随农业机械化和智能化的发展,越来越多的人开始使用农机自动驾驶系统助力耕作,千耘农机导航的“星地一体”能力可有效解决信号受限的问题,实现作业提效。究竟什么是“星地一体”,又是如何解决智能化农机作业的痛点的?下面为大家揭秘。农机效率通常受限于通信网络目前虽然我国通讯网络的人口覆盖率达到99%,但地面移动通讯网络覆盖率仍小于国土面积的40%,而很多农田所在区域恰是山区、戈壁滩等偏远地区。两省交界地也会出现通信信号不稳定的状况;而国内大部分农机自动驾驶系统非常依赖通信网络,当通信网络弱的时候会出现系统掉线的现象,必须得携带小基站才能正常使用,极为繁琐。Q:什么是千耘农机导航“星地一体”能力?A:是星
三大公有云厂商,香港地区主机测评一、ping时延比对(厦门电信本地测试):Ping时延测试腾讯云阿里云华为云延迟率最低时延44ms,最高72ms,平均46ms47.242段:最低时延59ms,最高204ms,平均107ms最低时延45ms,最高93ms,平均47ms丢包率丢包率小有的ip段丢包率较大每个段都会有概率丢包阿里云:47.242段:最低时延59ms,最高204ms,平均107ms,有的ip段丢包率较大8.210段:最低时延64ms,最高232ms,平均119ms,丢包率较好腾讯云:最低时延44ms,最高72ms,平均46ms,丢包率小华为云:最低时延45ms,最高93ms,平均47m
文章目录🔥Linux系统目录结构🔥Linux用户和用户组🔥Linux用户管理🔥Linux系统目录结构文件系统组织结构⭐ /lib系统开机所需要最基本的动态链接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。⭐ /lost+found一般情况下是空的,当系统非法关机后,这里就存放了一些文件。⭐ /etc所有系统管理所需要的配置文件和子目录my.conf⭐ /usr用户的很多应用程序和文件都放在这个目录下。⭐ /bin是Binary的缩写,这个目录存放着经常使用的命令⭐ /sbin(usr/sbin、/usr/local/sbin)sbin就是peruse
“架设一个亿级高并发系统,是多数程序员、架构师的工作目标。许多的技术从业人员甚至有时会降薪去寻找这样的机会。但并不是所有人都有机会主导,甚至参与这样一个系统。今天我们用12306火车票购票这样一个业务场景来做DDD领域建模。”开篇要实现软件设计、软件开发在一个统一的思想、统一的节奏下进行,就应该有一个轻量级的框架对开发过程与代码编写做一定的约束。虽然DDD是一个软件开发的方法,而不是具体的技术或框架,但拥有一个轻量级的框架仍然是必要的,为了开发一个支持DDD的框架,首先需要理解DDD的基本概念和核心的组件。一.什么是领域驱动设计(DDD)首先要知道DDD是一种开发理念,核心是维护一个反应领域概
文章目录前言1.AI的发展历程2.我是如何接触到人工智能的概念和产品的3.对于ChatGPT的一点看法4.AI对大学毕业生的职业发展的利与弊5.对于AI的思考和问题前言随着ChatGPT的爆火,生成式AI,大模型的人工智能被越来越多的人注意到,同时他也带来了许多问题。本文将对几方面进行探讨。1.AI的发展历程远古时期在公元前第一个千禧年,中国,印度和希腊哲学家都提出了一些推理的研究理论,比如亚里士多德(Aristotle)进行了演绎推理三段论的完整分析,欧几里得(Euclid)所著Elements是一种形式推理的模型,MuḥammadibnMūsāal-Khwārizmī,发明了代数学,即我们
目录1古彝文与古典保护2古文识别的挑战2.1西文与汉文OCR2.2古彝文识别难点3合合信息:古彝文保护新思路3.1图像矫正3.2图像增强3.3语义理解3.4工程技巧4总结1古彝文与古典保护彝文指的是云南、贵州、四川等地的彝族人使用的文字,区别于现代意义上的彝文,古彝文指的是在民间流通使用的原生态彝文,多达87046字。古彝文的起源距今至少数千年,是世界上最古老的文字之一。对古彝文字集研究有助于理解尚未被翻译成汉文、用字尚未规范化的古籍,更深层、透彻地作用于传统文化保护。古彝文字义对照图(网络资料+邵文苑供图)古籍是不可再生的宝贵资源,应当得到妥善保护。中国的古籍在历史上迭经水火兵燹等自然灾害、
我在当前项目中使用由Oracle数据库和memcached支持的RubyonRails。有一个非常常用的功能,它依赖于单个数据库View作为数据源,并且该数据源内部有其他数据库View和表。这是一个虚拟数据库View,能够从一个地方访问所有内容,而不是物化数据库View。大多数情况下,如果用户正在使用他们希望更新的功能,那么让数据保持最新很重要。从这个View获取数据时,我将安全表内部连接到View(安全表不是View本身的一部分),其中包含一些我们用来在更细粒度级别上控制数据访问的字段。例如,安全表有user_id,prop_1,prop_2列,其中prop_1,prop_2是数据库