人工智能算法综述(一)鬼柒

“那一些被认作常识的东西,是不是只是时代的附属品?从整个历史的长河去看待,也许是一些莫名其妙或者残忍至极的怪事而已”

2017-2018这两年因为一些爆炸式的AI应用,导致又把公众的视野转向这个方向发展,自图灵提出“图灵测试”之后,AI已经爆发了两次热潮,相应的也跌入了两次低谷,目前看应该是进入了第三次的热潮,但是之后是迎来“奇点”,还是第三次低谷,尚不可知。

--------------(这看上去像一根线)--------------------

闲话少说,为各位呈上各类流弊的算法简介(通俗易懂的说明,具体细节不表),可能会有些地方讲的不对,希望能得到一点友情提醒,我会立马修正。

CNN:卷积神经网络

我在上一篇关于tensorflow(谷歌开源AI框架)的踩坑日志有说过一点关于卷积神经网络的基本原理。

就是卷积层+N层神经网络BP层(也叫全链接层)关于BP的原理我之前有写过一篇了,翻回去看看就有了。

那卷积层具体是什么呢?很像是一个滤镜层,我们知道实际上图像是由每个像素点组成的矩阵,然后每个像素点又可以由RGB3原色的数值表示范围是(0-255)如果做一次灰度处理,那么每个像素点就是由0-255的灰度数值表示。那图像就等同于一个2维的数字矩阵。当然如果颜色想保留的话,不做灰度处理的话,RGB就等同于3个不同的矩阵,长宽是一样的。里面的数值不同而已。

那我们回到卷积层,就是拿一个卷积核在这个矩阵上滚一遍(矩阵相乘)得出一个新的矩阵。卷积核也是一个小的2维矩阵,不同数值的卷积核,可以对这张图片提取的信息不同,这就是图像的特征,比如说把一个专门提取竖线的卷积核在原始图片上滚一遍,就能获得一个全部都是竖线的特征图。如果我们要做一个竹子的识别器,肯定要用这个特征了。但是如果要做一个篮球的识别器,就用不上了,用或者不用,这是由BP层决定的。但是提取的工作还是要做的,但是怎么决定卷积核应该是由什么数值构成呢?随机!因为这个算法比较通用,可以做成识别各种东西,所以卷积核应该是任意特征都能提取的,那只要生成1000,1W,或者1亿个卷积核,每个都在这个图像上滚一遍,就能提取1亿种特征了。如果最后BP层只用到其中一个特征就能识别竹子或者篮球。那岂不是非常浪费,所以卷积核的数量要根据识别复杂度而定。否则计算量很可怕。

当然CNN里面还有很多细节,比如池化层,归一化,dropout。

池化层也有几种不同的方法,如果是求均值就是meanpooling,求最大值就是maxpooling

池化就是降维比较好理解一点吧,为了减少计算量。

归一化(Normalization,也叫规范化)是为了让数据在网络中传输的时候不要太大,或者太小,或者太稀疏。

听说效果不错。

dropout是指随机的把一些特征失效掉来训练这个网络,这样泛化能力比较强。我自己实践过一次,但是感觉训练过程变得更久了,波动更大了。慎用。

这里列了一些tensorflow内置的一些梯度下降优化器GradientDescentOptimizer,AdagradOptimizer,MomentumOptimizer,AdamOptimizer

CNN的算法里面有很多参数要调,比如说网络的层数,初始学习率,dropout的概率等等,这类统称为超参数

虽然我们刚才说的都是图像上的,但是文字跟音频也可以转化成这种输入,类似说1*N的矩阵。

----------------------(这看上去跟第一根线没什么区别)----------------------

RL:强化学习(reinforcementlearning)

关于RL的详细内容可以看Deepmind的公开课

强化学习核心的原理是:

造一个agent(智能代理者)跟环境(state)交互(action)然后根据获得的反馈(reward)反复训练后,这个agent可以在遇到任意的state时都能选择最优的决策(action),这个最优的决策会在未来带来最大化的reward。

RL解决的问题是连续决策问题,就是有一系列的决策之后才会获得奖励的现实问题。比方说某baby3岁,暂且先叫A酱,A酱还不会拿杯子喝东西。我们知道最优策略就是

:靠近杯子,拿起来,倒进嘴巴里。

但是她一开始的时候并不知道看到一个杯子在远处,究竟是应该靠近,还是远离。而且就算反复做了这2件事,也没有一些立即奖励给她(喝到东西)。所以说奖励是滞后的,但是我们希望可以对动作的打分,根据分数的高低让智能体选出最佳的决策,比方说靠近杯子10分,远离杯子-10分。如果每一步都有这样的标量作为衡量标准的话,那么她就可以知道要获得奖励的最优策略是什么了,当然有些动作在不同的场景下会导致不同的效果,所以这里的打分要针对state-actionpair(不同状态对应不同的动作)评分。

所以RL的作用就是经过反复的训练,为每对state-action提供一个分数。这就Valuebased(基于分数的算法,其中的一种的RL算法实现方式)。

如果先假设最终的奖励分数是100分。那么究竟前一步应该分配多少分呢?然后前前一步又是多少?这里就用到了贝尔曼方程

s:state

a:action

Q就是我上面讲的分数。然后Qπ指的就是最优策略下的分数函数。

P是指状态s下决定某动作a之后=》下一个状态s的转移概率。(比方说A酱虽然见到了杯子,然后她使用了动作a1(拿起来)但是不一定能够成功,这里有个转移概率P)。

R是指立即奖励。

这里我们可以看到,当前的Q值是由两部分组成,当前R值+下一个状态的Q值。

假设折扣率这里是0.5,最终的奖励分数是100分。

反过来推导的话,A酱在喝到杯中物的时候Q值等于R值,因为没有下一个状态了。在往前一个动作(拿起杯子)因为只有1个动作,而且立即奖励R=0,所以Q值等于0+0.5*100=50。

然后再往前面一步,状态1(见到杯子)的时候选择(靠近),所以Q值是0+0.5*(0+0.5*100)=25

这是我们通过已知最优策略然后用贝尔曼方程反推Q值,这样便于理解Q值的含义。

虽然不知道最优策略,但是如果我们有一个所有状态所有动作的记录Q值的表,只要反复通过上面的过程推导就能知道这个大表的所有值,最终就能通过这个大表知道最优策略。

这就是Q-learning算法的逻辑。

当然Q-learning是不实用的,因为如果state跟action有非常多,这个表数据量要爆炸的。

RL很早很早就有了。

因为alphaGo就是基于RL的,主要用了蒙特卡罗树搜索算法(MCTS)然后RL这两年又被大神们推进了好多优化。

我摘一段放这里说明一下实现RL算法的几种类别:

RL现阶段比较实用的算法是:

DQN,DDPG,A3C,DPPO等

摘一张图大家看看

横轴是训练次数,纵轴是超过人类水平百分比,100%就是等同于平均的人类玩游戏的水平,在57款雅达利游戏中的平均表现。

2017-2018年一些很有趣的开源应用示例,以及使用的算法

CNN:图像识别人脸识别风格迁移

RL:alphaGO游戏代打机器人控制阿里商品推荐系统

GANs:风格迁移草图生成实体图猫脸转狗脸去掉图像遮挡年龄转移超分辨率

RNNLSTM:翻译模型,生成古诗,生成对联,PSD生成HTML代码

THE END
1.人工智能算法综述人工智能算法综述昵称17040482 2015-10-09 1 目 录 摘要2 人工智能算法综述 通信工程专业 摘要:随着人工智能再当今科学技术中的飞速发展和应用,人工智能算法的开发学习及应用也随之越来越广泛,它介绍了当前存在的一些人工智能算法,阐述了其工作原理和特点并对其加以比较、评价,还对产生背景、应用领域加以说明,同时又对http://www.360doc.com/content/15/1009/10/17040482_504355165.shtml
2.人工智能算法综述(一).pdf资源智能算法综述(?) 智能算法综述(?) "那?些被认作常识的东西,是不是只是时代的附属品?从整个历史的长河去看待,也许是?些莫名其妙或者残忍?极的怪事?已" 2017-2018 这两年因为?些爆炸式的AI应?,导致?把公众的视野转向这个?向发展,?图灵提出"图灵测试"之后,AI已 经爆https://download.csdn.net/download/qq_43934844/87505081
3.智能汽车中人工智能算法应用及其安全综述在机器人[1]、语音识别[2-3]、图像识别[4-7]、自然语言处理[8-9]等多个任务上,人工智能技术的识别能力和决策水平已经追平甚至超越人类,如以AlphaGo为代表的人工智能机器人击败人类职业围棋冠军,以Google、百度等工业界为代表的无人驾驶汽车已经开始实际道路上路测试等。https://www.yoojia.com/ask/17-11900815188486720700.html
4.人工智能基于深度学习的目标检测算法发展综述(2022.6.16第二版第一阶段:基于滑动窗口和人工特征提取的方法(2000年前后) 缺点:普遍存在计算复杂度高和在复杂场景下鲁棒性差的缺陷。 改进思路:研究者不得不寻找更加精巧的计算方法,对模型进行加速同时设计更加多元化的检测算法以弥补手工特征表达能力上的缺陷。 代表性成果:Viola-Jones 检测器、HOG 行人检测器等。 http://51969.com/post/17800209.html
5.心电图人工智能软件技术审评指导原则(二)综述资料 1. 产品描述 1.1器械及操作原理描述 1.1.1工作原理 需详述产品的工作原理,例如:基于人工智能技术对心电图特征进行分析处理、对心律失常、心肌梗塞和ST-T异常自动识别等。对于软件安全性级别为中等、严重级别的产品,全新类型在软件研究资料中以算法为单位,提交每个人工智能算法或算法组合的算法研究http://www.cfda-test.com/en/industry-news/535182
6.行为分析算法综述.docx行为分析算法综述一概述行为分析算法是近年来计算机科学人工智能及心理学等多个领域的研究热点,其应用广泛,涉及智能监控人机交互自动驾驶医疗诊断等多个方面。随着大数据和机器学习技术的快速发展,行为分析算法已经成为理解和预测人类行为的关键工具。行为https://m.renrendoc.com/paper/330405669.html
7.人工智能发展综述人工智能发展综述 摘要 近十多年来,随着算法与控制技术的不断提高,人工智能正在以爆发式的速度蓬勃发展。并且,随着人机交互的优化、大数据的支持、模式识别技术的提升,人工智能正逐渐的走入我们的生活。本文主要阐述了人工智能的发展历史、发展近况、发展前景以及应用领域。https://www.jianshu.com/p/968d6167b566
8.大数据下的机器学习算法综述1何清;李宁;罗文娟;史忠植;大数据下的机器学习算法综述[J];模式识别与人工智能;2014年04期 2刘志强;大数据下的机器学习算法探讨[J];中国新通信;2018年21期 3纪思捷;胡豪杰;基于机器学习算法的大数据处理[J];电子技术与软件工程;2015年23期 4魏超;机器学习算法在大学生综合素质测评预警中的对比研究[J];电脑编程技https://www.cnki.com.cn/Article/CJFDTotal-MSSB201404007.htm
9.图像内容鉴黄算法综述图像内容鉴黄算法综述 在众多类型的违规信息中,涉黄信息是往往是最常见的,本文只关注于涉黄图片的检测和识别这一小领域。 概述 在互联网时代,我们能够通过互联网传输,获取海量的信息。这些信息以文字,音频,图像,视频等形式呈现给广大的用户。但是,对于广大用户而言,这些信息并不一定都是有效信息。其中,包含了大量的https://www.secrss.com/articles/9236
10.知识图谱推理算法综述(下):基于语义的匹配模型本文将梳理知识图谱常用的推理算法,并讨论各个算法之间的差异、联系、应用范围和优缺点,为建设知识图谱的图谱计算和推理能力理清思路,为希望了解或者工作中需要用到知识图谱推理算法的同学提供概述和引导。 在知识图谱推理算法综述(上):基于距离和图传播的模型,我们了解到 “基于距离的翻译模型”,“基于图传播的模型”https://blog.itpub.net/70036190/viewspace-3010754/
11.基于深度学习的人体姿态检测算法综述摘要:近年来随着深度学习和人工智能的蓬勃发展,人体姿态检测逐渐成为计算机视觉领域研究的热点问题,许许多多的人体姿态检测方法和研究理论也在被不断地提出。人体姿态检测可以理解为人体关键点识别以及连接问题,本文通过对姿态检测的算法的描述,主要介绍单人与多人这两种主要人体姿态检测的主流算法,同时重点对于多人场景下的https://www.fx361.com/page/2021/1108/9075116.shtml
12.强化学习算法与应用综述摘要:强化学习是机器学习领域的研究热点, 是考察智能体与环境的相互作用, 做出序列决策、优化策略并最大化累积回报的过程. 强化学习具有巨大的研究价值和应用潜力, 是实现通用人工智能的关键步骤. 本文综述了强化学习算法与应用的研究进展和发展动态, 首先介绍强化学习的基本原理, 包括马尔可夫决策过程、价值函数、探索-https://c-s-a.org.cn/html/2020/12/7701.html
13.OCR文字识别方法综述OCR文字识别方法综述 简介:摘要:文字识别可以把海量非结构化数据转换为结构化数据,从而支撑各种创新的人工智能应用,是计算机视觉研究领域的分支之一,其任务是识别出图像中的文字内容,一般输入来自于文本检测得到的文本框截取出的图像文字区域。近几年来,基于深度学习的文字识别算法模型已取得不错成果,其过程无需进行特征https://developer.aliyun.com/article/1054626