电子说
电子发烧友网报道(文/李弯弯)在深度学习中,经常听到一个词“模型训练”,但是模型是什么?又是怎么训练的?在人工智能中,面对大量的数据,要在杂乱无章的内容中,准确、容易地识别,输出需要的图像/语音,并不容易。因此算法显得尤为重要。算法也就是模型。
算法的内容,除了核心识别引擎,也包括各种配置参数,如:语音智能识别的比特率、采样率、音色、音调、音高、音频、抑扬顿挫、方言、噪音等。成熟的识别引擎,核心内容一般不会经常变化。为实现“识别成功”这一目标,就只能对配置参数做调整。
对不同输入,我们会配置不同参数值,最后在结果统计取一个各方比较均衡、识别率较高的一组参数值,这组参数值,就是训练后得到的结果,这就是训练的过程,也叫模型训练。
如何训练一个AI模型?
训练模型需要用到AI框架,比如MindSpore。具体如何训练一个AI模型呢?昇思MindSpore此前发布一个详细的案例,训练的模型是用来对手写数字图片进行分类的LeNet5模型。MindSpore是华为推出全场景AI计算框架,2020年3月28日宣布MindSpore正式开源。 首先是安装MindSpore,MindSpore提供给用户使用的是Python接口。安装的时候,选择合适的版本、硬件平台、操作系统、编程语言、安装方式。其次是定义模型,安装好之后,就可以导入MindSpore提供的算子(卷积、全连接、池化等函数)来构建模型了。构建一个AI模型就像建一个房子,MindSpore提供的算子就像是砖块、窗户、地板等基本组件。 接下来是导入训练数据集,什么是训练数据集呢,刚刚定义好的模型是不能对图片进行正确分类的,要通过训练过程来调整模型的参数矩阵的值。训练过程就需要用到训练样本,也就是打上了正确标签的图片。这就好比教小孩儿认识动物,需要拿几张图片给他们看,告诉他们这是什么,教了几遍之后,小孩儿就能认识了。 那么这里训练LeNet5模型就需要用到MNIST数据集。这个数据集由两部分组成:训练集(6万张图片)和测试集(1万张图片),都是0~9的黑白手写数字图片。训练集是用来训练AI模型的,测试集是用来测试训练后的模型分类准确率的。 再接下来就是训练模型,训练数据集和模型定义完成后,就可以开始训练模型了。在训练之前,还需要从MindSpore导入两个函数:损失函数,就是衡量预测结果和真实标签之间的差距的函数;优化器,用来求解损失函数关于模型参数的更新梯度的。准备好之后,开始训练,把前面定义好的模型、损失函数、优化器封装成一个Model,使用model.train接口就可以训练LeNet5模型了。最后就是测试训练后的模型准确率。声明:本文由电子发烧友原创,转载请注明以上来源。如需入群交流,请添加微信elecfans999,投稿爆料采访需求,请发邮箱huangjingjing@elecfans.com。 更多热点文章阅读
原文标题:AI模型是如何训练的?训练一个模型花费多大?
文章出处:【微信公众号:电子发烧友网】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !