2019-01-14 16:23:14分类:硬件开发7556
比算法更难得是算法的思想,比编程工具更难的是编程的思维,比做产品更难的是产品的梦想。本文主要详细阐述AI产品开发运营必知的软硬件技术。
在AI产品里没有纯粹单独的软件和硬件,应该系统来看,把软件和硬件看成是AI赋能的智能软硬件。
算法和数据是鱼和水的关系。AI时代里算法跟传统算法的区别在于AI的算法是对人脑的模拟,是一种智能。AI是在大量的样本数据基础上,通过神经网络算法训练数据,建立了输入数据和输出数据之间的映射关系,其最直接的应用是在分类识别方面。
AI算法使得解决问题的步骤智能,数据使得算法得到训练从而实现算法所构建的商业模式!
服务端和应用端是相对的。
开发应程序调操作系统的API, 操作系统的API有(创建线程、 读写文件【读、写、偏移到指定地址】、 网络通信、 图形渲染),那么操作系统就是应用程序的服务端。
而写一个常规的小程序或者APP,前端用户界面上需要的数据就是分别通过WEB程序调用浏览器功能接口然后OS向后台服务端发请求传数据。
另外web程序员,和底层嵌入式程序员理解的服务端和应用端还有差别,这里产品经理明了这种关系即可。服务端即底层就是功能的实现者, 应用端上层就是功能的使用者,这一关系利于产品开发过程中需求时间安排规划。
智能软硬件是指通过将硬件和软件相结合,对设备进行智能化创造或者改造。而智能软硬件移动应用端则是软件,通过应用连接智能硬件,操作简单、开发简便,各式应用层出不穷,也是企业获取用户的重要入口。例如:新零售的店铺,智能贩卖机等!
创造和改造对象可能是电子设备,例如:手表、电视和其他电器;也可能是以前没有电子化的设备,例如:门锁、茶杯、汽车甚至房子。
智能软硬件已经从可穿戴设备延伸到智能电视、智能家居、智能汽车、医疗健康、智能玩具、机器人等领域。比较典型的智能软硬件包括Google Glass、三星Gear、FitBit、麦开水杯、咕咚手环、Tesla、无屏电视等。
信息的获取和交互智能软硬结合
传感器是一种检测装置,能感受到被测量的信息,并能将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。
控制器是指按照预定顺序改变主电路或控制电路的接线和改变电路中电阻值,来控制电动机的启动、调速、制动和反向的主令装置。
由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。例如:一般功能的叫MCU单片机,复合功能的叫操作系统OS!
首先,控制器在智能硬件中一般叫做芯片,AI与CPU比较在架构和功能特点上有着非常大的区别。
传统的CPU运行的所有的软件是由程序员编写,完成的固化的功能操作,其计算过程主要体现在执行指令这个环节。但与传统的计算模式不同,人工智能要模仿的是人脑的神经网络,从最基本的单元上模拟了人类大脑的运行机制。它不需要人为的提取所需解决问题的特征,或者总结规律来进行编程。
AI一般包含机器学习和深度学习,但不管是机器学习还是深度学习都需要构建算法和模式,以实现对数据样本的反复运算和训练,降低对人工理解功能原理的要求。
因此,AI芯片需要具备高性能的并行计算能力,同时要能支持当前的各种人工神经网络算法。传统CPU由于计算能力弱,支撑深度学习的海量数据并行运算,且串行的内部结构设计架构为的是以软件编程的方式实现设定的功能,并不适合应用于人工神经网络算法的自主迭代运算。
传统CPU架构往往需要数百甚至上千条指令才能完成一个神经元的处理,在AI芯片上可能只需要一条指令就能完成。
其次,解读主流的人工智能芯片。
AI的高级阶段是深度学习,而对于深度学习过程则可分为:训练和推断两个环节。
训练环节通常需要通过大量的数据输入或采取增强学习等非监督学习方法,训练出一个复杂的深度神经网络模型。训练过程由于涉及海量的训练数据和复杂的深度神经网络结构,需要的计算规模非常庞大,通常需要GPU集群训练几天甚至数周的时间,在训练环节GPU目前暂时扮演着难以轻易替代的角色。
推断环节指利用训练好的模型,使用新的数据去“推断”出各种结论,如视频监控设备通过后台的深度神经网络模型,判断一张抓拍到的人脸是否属于黑名单。虽然推断环节的计算量相比训练环节少,但仍然涉及大量的矩阵运算。
在推断环节,除了使用CPU或GPU进行运算外,FPGA以及ASIC均能发挥重大作用。目前,主流的人工智能芯片基本都是以GPU、FPGA、ASIC以及类脑芯片为主。
FPGA:即专用集成电路,一种集成大量基本门电路及存储器的芯片,可通过烧入FPGA配置文件来来定义这些门电路及存储器间的连线,从而实现特定的功能。而且烧入的内容是可配置的,通过配置特定的文件可将FPGA转变为不同的处理器,就如一块可重复刷写的白板一样。
FPGA有低延迟的特点,非常适合在推断环节支撑海量的用户实时计算请求,如语音识别如LineLian2017年打造的裸眼3D试衣镜所采用的芯片。
ASIC:即专用集成电路,不可配置的高度定制专用芯片。特点是需要大量的研发投入,如果不能保证出货量其单颗成本难以下降,而且芯片的功能一旦流片后则无更改余地,若市场深度学习方向一旦改变,ASIC前期投入将无法回收,意味着ASIC具有较大的市场风险。但ASIC作为专用芯片性能高于FPGA,如能实现高出货量,其单颗成本可做到远低于FPGA。
GPU:即图形处理器。最初是用在个人电脑、工作站、游戏机和一些移动设备上运行绘图运算工作的微处理器,可以快速地处理图像上的每一个像素点。后来科学家发现,其海量数据并行运算的能力与深度学习需求不谋而合,因此,被最先引入深度学习。
GPU之所以会被选为超算的硬件,是因为目前要求最高的计算问题正好非常适合并行执行。一个主要的例子就是深度学习,这是人工智能(AI)最先进的领域。
智能软硬件的开发流程介绍
凡是开发产品类的,都需要进行完成的市场调研,智能硬件也是一样,通过面向群体来收集有用的价值,从而对产品开发的导向及功能要求有明确的方向。
对于该产品的硬件、原件、结构进行开发,完成后进行联调测试,如果中途出现问题,需要重新设计,若通过进行组装及测试。
小批量的进行产品试产,进行产品认证。
一般情况下,需要等到一些认证做完,接到正式订单才会开始大规模生产。
在开发嵌入式物联网设备时,硬件设计被视为物联网产品能否取得成功的关键。为确保嵌入式物联网产品满足所需功能,功耗低,安全可靠,嵌入式物联网设备制造商在这些设备的硬件设计阶段面临着诸多挑战。
2018-12-29
智能硬件是继智能手机之后的一个科技概念,通过软硬件结合的方式,对传统设备进行改造,进而让其拥有智能化的功能。而智能硬件移动应用则是软件,通过应用连接智能硬件,操作简单,开发简便,各式应用层出不穷。
2018-11-07