版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于深度学习的睡姿检测模型与实现基于深度学习的睡姿检测模型与实现软件工程 卢佚仁 指导老师 刘琴 兰翠玲(微软亚研) 装 订 线摘 要近几年来深度学习技术引领了人工智能领域科学研究的。深度学习算法在语音识别 和计算机视觉等等领域都有着突破性的进展。 睡眠是与人的生命健康息息相关的,睡眠姿势更是睡眠健康的一个重要指标,选择睡姿要因人而异,尤其对于患有高血压、心脏病以及 胃肝等某些疾病的人更要注意选择正确睡姿,否则不但会影响睡眠质量,还会加重疾病。另 外针对婴儿、老年人等,不良的睡姿(如,头部朝下)甚至会造成生命危险。本课题尝试探索 深度学习算法和理论,运用深度卷积神经网络微调的方法解决基于视频/
2、图像睡眠姿势检测 的问题,使用实验验证了方法的可行性,并设计和构建包含运动检测算法的原型以验证本文 提出的模型在工程实践上的可行性。 本文的主要贡献如下(1)本文提出了一个新的睡姿采集指标体系,并且采集了数据集, 分别针对四种睡姿(平躺,左/右侧躺,俯卧)以 3 个视角采集数据,用于进行睡姿检测。(数据集版权由微软亚洲研究院所有,暂不公开) (2)本文提出了基于 AlexNet 深度卷积神经网络微调训练(Fine-tune)的睡姿分类方法,在不同被检测者分别用于训练和测试集的情况下达到 了81%的准确率,在被检测者同时出现在训练和测试集的情况下达到了 90%的准确率。(3) 本文提出了基于 V
3、iBe 的运动检测算法,辅助进行睡眠姿势检测。(4)本文完成了一套智能睡 姿监测原型, 该原型可以根据受测者的睡眠运动情况高效地进行视频睡姿检测。 关键词: 睡眠姿势,识别,运动检测,机器学习, 深度学习, 计算机视觉 I基于深度学习的睡姿检测模型与实现Sleep Postures Recognition Based on Deep Learning: Model and Implementation 装 订 线ABSTRACTThe upsurging of deep learning has been stimulating the artificial intelligence rese
4、arch communities. Deep learning algorithms are widely used in speech recognition and computer vision. Sleep postures are closely related to peoples health. Different sleep postures suit different people. Especially for sick people, right sleep posture is critical. In addition, for children and the o
5、lds, bad sleep postures (e.g. sleep facing down) may even have fatal danger. Given this problem, our work tried to address video/image-based sleep posture recognition problem using a surging new technology, deep learning.We have the following contributions: (1) we setup new criteria for sleep postur
6、es and collected a new sleep postures dataset. The dataset includes 4 sleep postures (sleep facing up, sleep facing down, sleep facing right/left) from 3 different views. (2) We proposed a novel method based on AlexNet convolutional neural network for sleep postures recognition. This method reached
7、81% accuracy with different people in training and testing dataset. For the same person wearing different clothes, our method achieved 90% accuracy. (3) We proposed a motion detection algorithm, which is robust to sudden light changes, based on ViBe background modeling. (4) We also built a prototype
8、, which can do sleep posture recognition triggered by motion detectionalgorithm.Key words: Sleep Postures, Recognition, Motion Detection, Machine Learning, Deep Learning,Computer VisionII基于深度学习的睡姿检测模型与实现目 录 装 订 线1引 言11.1课题背景11.1.1 深度学习的兴起11.1.2 睡眠姿势检测的需求11.1.3 睡姿检测相关研究的现状和局限21.2 课题目标.21.2.3
9、1.2.4探索深度学习理论和算法3提供新的睡姿检测数据集3提出基于深度卷积神经网络的睡眠姿势检测模型并验证其可行性3搭建睡姿检测系统原型31.3 论文结构31.4 本章小结4理论与技术基础522.1机器学习与人工神经网络概述52.1.1 机器学习52.1.2 人工神经网络5深度学习7卷积神经网络82.3.1 卷积神经网络介绍82.3.2 AlexNet 卷积神经网络 8 层模型9Caffe 深度学习框架.12.4.2Caffe Caffe Caffe简介10运行环境10的配置和使用2.8通用图形处理器技术(GPGPU)11数据增强(D
10、ata Augmentation)11ViBe 背景建模12本章小结133睡眠姿势数据集143.1问题定义143.1.1 睡眠姿势的界定和分类143.1.2 睡眠姿势检测问题14数据采集.3数据采集相关讨论14图像采集15数据预处理153.3本章小结164基于 AlexNet 卷积神经网络微调的睡姿检测方案174.1 方案概述.24.1.3方案架构17基于 AlexNet 卷积神经网络模型的睡眠姿势分类模块17基于 ViBe 背景建模的运动检测模块18III基于深度学习的睡姿检测模型与实现4.2基于 AlexNet 卷积神经网络模型的睡眠
11、姿势分类方法..44.2.5模型修改18参数重用18微调训练(Fine-tuning)18使用 Caffe 框架训练模型19GPU 加速19 装 订 线4.3数据增强204.3.1 随机扩增 100%-140%204.3.2 旋转-1010 度204.3.3 图像修复(inpainting)21基于 ViBe 背景建模的睡眠运动检测.3运动检测算法概述22运动强度建模22运动检测算法264.5睡眠姿势检测原型284.5.1 软件环境需求284.5.2 硬件环境需求284.5.3 流程设计294.5.4 数据流设计294.
12、5.5 系统监控展示30本章小结304.65实验验证基于深度卷积神经网络微调的睡眠姿势分类方案的可行性3实验目的31实验环境31实验内容3..45.3.5实验数据31实验设置分析31实验设置31性能判定标准32实验步骤335.3实验结果3..35.3.5实验组 133实验组 236实验组 338实验组 441实验组 5435.4实验总结与实验结果分析4..4不同人的睡姿图像分别作为训练和测试集44相同的人穿不同衣服的睡姿图像分别作为训练和测试集45相同的人穿相同衣服的
13、睡姿图像分别作为训练和测试集45混淆矩阵分析465.5本章小结486局限性以及后续工作46.46.5数据集的限制49多个拍摄角度的问题49结合身体部位识别49更多的睡眠姿势49实际情况中的其他因素49IV基于深度学习的睡姿检测模型与实现6.6 本章小结50总 结51参考文献52谢 辞55附录 A Source Code56 装 订 线A.1Caffe 配置56A.1.1A.1.2A.1.3网络配置56模型训练参数配置63模型训练执行命令63A.2原型系统搭建63A.2.1 使用已训练模型进行睡眠姿势检测脚本示例63数据增强64A.3A.3.1基于 OpenCV 和 C+的数
14、据增强程序示例64V基于深度学习的睡姿检测模型与实现1引 言 装 订 线近几年来深度学习技术引领了人工智能领域科学研究的。深度学习被 MIT 科技评论誉为2013 年十大科技突破之一。深度学习在语音识别,图像物体识别自然语言处理等领域有着巨大的突破,并不断出现新的技术进步。在计算机视觉领域,卷积神经网络(Convolutional Neural Network, CNN),递归神经网络(Recurrent Neural Network, RNN)等,在图像分析和视频分析领域具有新 的突破。 随着人民生活水平的逐步提高,人们把更多的关注点放在了身体健康之上,其中睡眠健康对 于人的生命健康尤为重要
15、,良好的睡眠有益于人的情绪健康和身体健康。而睡眠姿势与睡眠健康 息息相关。良好的睡姿可以提高睡眠质量,从而帮助人们维持身体健康和高效工作。对于特殊人 群,如老人、婴儿、患病者等,不良的睡姿,如头部朝下,甚至会带来生命危险。因此睡姿检测 和提醒是具有应用需求的。 本文旨在探索深度学习相关理论和算法,尝试深度卷积神经网络(CNN)算法,为解决基于 视频(图像)的睡姿检测问题提供新的思路和可能的解决方案。 1.1 课题背景1.1.1 深度学习的兴起深度学习的发展促进了计算机视觉领域科学研究的。深度学习具有仿生学的特点,改变 了传统机器学习的方法即,手工制作特征,提取特征,然后使用机器学习算法进行相关
16、分析,深 度学习提出了端到端(End-to-end)的结构模式把提取特征和后续分析(如,分类)结合在一起,分 析与提取特征的界限不再清晰。深度学习算法可以自动学习多层次的数据的表征(Representation) 而无需手工制作特征。不同层次的数据表征对应于从数据中抽取的不同层次的概念。目前深度学 习在图像识别,语音识别领域已经有了巨大的突破。MIT 科技回顾把深度学习评为了近些年十大科技突破之一1。 1.1.2 睡眠姿势检测的需求睡眠健康对于人的生命健康尤为重要,良好的睡眠有益于人的情绪健康和身体健康。而睡眠 姿势与睡眠健康息息相关。德国的一个研究机构在 1997 年曾邀请了 10 名男性进
17、行了 51 个小时的睡眠实验,实验表明睡眠健康对免疫系统和生物节律有影响1。睡眠姿势是睡眠健康的一个重 要指标,60%的人习惯仰睡,35%习惯侧睡,而 5%习惯俯睡2。 其中中医认为右侧睡更健康。一般 人每晚会转换睡姿大约二十次。睡姿是与人们的健康息息相关的,北京朝阳医院呼吸科医生提出,人的睡姿分为四种(仰睡、左/右侧睡、俯睡),选择睡姿要因人而异,尤其对于患有高血压、心脏病以及胃肝等某些疾病的人更要注意选择正确睡姿,否则不但会影响睡眠质量,还会加 重疾病。 另外针对婴儿、老年人等,不良的睡姿(头部朝下)甚至会造成生命危险。 美国国内婴儿睡眠姿势调查报告表明4: 在 1992 年 25%的美国
18、父母不会有意让他们的婴儿面部朝上睡觉,而对于非洲裔美国人,有 50%。数据表明,非洲裔美国人的婴儿猝死综合征(Sudden Infant Death Syndrome, SIDS),比是白人的两倍。自 1992 年以来美国儿科学会(American Academy of Pediatrics)建议年轻父母把控制婴儿睡眠姿势于面部朝上,至 2007 年,面部朝上睡眠的婴儿百分比从 1992 年的 10%上升到了 70%,同时 SIDS 的发生率降低到了原来的 50%(图 1.1)。由此可见睡姿对于婴儿的生命健康是十分重要的。 1MIT 科技评论“十大科技突破”: http:/www.techno
19、/featuredstory/513696/deep-learning/共 71 页第 1 页基于深度学习的睡姿检测模型与实现 装 订 线图 1.1 婴儿猝死症(SIDS)与婴儿睡眠姿势的关系1.1.3 睡姿检测相关研究的现状和局限针对于基于视频的无接触式睡眠姿势检测问题,相关的研究较少,由于涉及隐私,学术领域 目前没有相关的数据集可供使用;此外目前市面上还没有用于睡眠姿势检测的相关产品;并且利 用深度学习算法进行睡眠姿势检测的科学研究工作,目前还没有。本节调研了目前的一些相关科 学研究工作和市场产品,总结了目前针对睡眠姿势检测工作的现状。 (1)科学研究工作 针对
20、睡眠健康检测问题本文展开了调研,把目前的工作分为如下两类。 依赖硬件的睡眠健康检测 基于传感器的睡眠健康检测系统目前应用较为广泛,三个工作为例678,该三个研究工 作都是在安置了压力传感器床垫,使用传感器收集到的数据后,使用机器学习算法进行分类。 然而依赖专业硬件的睡眠健康监测有以下几个局限性:1、佩戴可穿戴式硬件或者在受测者睡眠 安置传感器会对睡眠者本身的睡眠质量有所影响,不适用于家庭和医疗等环境。2、配置仪 器对于无专业知识的普通用户来说较为困难。3、基于接触式的(如压力传感床垫)同样会收集 到的压力传感,会对检测结果造成影响。 其他物品 借助于图像或者视频的睡眠健康检测 目前基于视频或图
21、像的睡眠健康检测主要集中在检测睡眠疾病(如睡眠窒息)和检测睡眠运动。如91011,后文系统搭建中本文会提出关于睡眠运动检测的算法。基于视频或者图像的睡眠姿势检测目前较少,有121314。12主要检测呼吸是否健康,睡姿部分仅仅可以判定平躺和侧躺两种。13工作的局限性有以下几点:1、数据并没有开放,文中提到的测试数据仅有 29例,数量较少。2、测试方法并没有明确,无从复现方法。14对于睡眠姿势检测的准确度非常高,但仍然具有以下局限和问题:1、采用硬件仪器。2、采集人数较少,测试结果不足以具有 说服力。 (2)市场上的相关产品 共 71 页第 2 页基于深度学习的睡姿检测模型与实现目前市场上的监控商
22、业产品有 Dropcam1,Smartcam,Xiaoyi,360 等等,这些产品协助远程监控室内环境,可应用于监控婴儿和老人睡眠。但专门用于监控睡眠姿势的产品目前还没有。 (3)数据集 以上提到的文章皆没有开放使用的数据集,目前没有一个成熟的数据集来支撑睡姿检测这个 问题。 装 订 线1.2 课题目标通过了 1.1 小节的分析,(1)深度学习的发展对计算机视觉领域,尤其针对图像和视频分析方面,具有显著的推动作用。(2)基于视频(图像)的睡眠姿势检测相关研究目前还是一个非常缺乏 的领域,然而前文已经分析,睡眠姿势检测是一个对人们声明健康比较有意义的问题亟待解决。 因此本文提出以下几个目标,并且
23、尝试使用深度学习模型解决这个问题。 1.2.1 探索深度学习理论和算法探索深度学习理论和算法,具体针对深度卷积神经进行探索和研究。 1.2.2 提供新的睡姿检测数据集由于目前该问题没有一个公用的数据集,并且,针对睡眠姿势检测问题,没有一个明确的定义,本文提出了一个新的睡姿采集指标体系,并提供一套针对睡姿检测的数据集2,用于研究该问题。 1.2.3 提出基于深度卷积神经网络的睡眠姿势检测模型并验证其可行性本文探索深度学习算法,提出基于 AlexNet 深度卷积神经网络模型微调的方法进行睡眠姿势分类,并提出辅助睡眠分类的运动检测算法,最后设置多组与其他算法的对比实验以验证其可行 性以及可观的性能。
24、 1.2.4 搭建睡姿检测系统原型基于本文提出的模型和实验,搭建一套简单的实时睡眠姿势检测原型系统,以验证该方法可 以应用于工程实际。该原型系统具有运动检测和睡眠姿势检测等功能。 1.3 论文结构本章介绍了课题背景以及目标。 第 2 章,理论与基础基础。简要介绍深度学习相关领域知识,在介绍机器学习,人工神经网络的基础中穿插深度学习具体的相关内容,具体介绍深层卷积神经网络的网络结构和每层的作用。 第 3 章,睡眠姿势数据集。定义睡眠姿势检测问题,提出新的睡姿采集指标体系,并按照问题定义采集数据集共 3600+张,网络数据 800+张,用于睡眠姿势检测问题。 第 4 章,基于深度学习的睡姿检测模型
25、。介绍本文提出的基于深度卷积神经网络微调的解决方案以及原型系统的具体细节。第 4 章同时也介绍了本文提出的运动检测算法。 第 5 章,实验。基于第三章所提出的数据集和方法,实施了一系列实验,并附上两个不同方案的实验对比,以数据验证方法的可行性和较高的性能。 第 6 章,局限性以及后续工作。分析本方法的局限性,针对方法的局限性展望后续工作。第 7 章,总结。总结本文内容。 12Dropcam: /baby-monitor数据集版权由微软亚洲研究院(MSRA)所有,暂没有开放 共 71 页第 3 页基于深度学习的睡姿检测模型与实现1.4 本章小结本章简要
26、介绍了深度学习和睡眠姿势检测的现状,提出了本文的课题目标,并且简要介绍了 本文的结构。 装 订 线共 71 页第 4 页基于深度学习的睡姿检测模型与实现2 理论与技术基础 装 订 线2.1 机器学习与人工神经网络概述2.1.1 机器学习机器学习是计算机科学领域的一个分支,机器学习理论主要是设计和分析一些让计算机可以 自动学习的算法,机器学习算法是一种从数据中自动分析获得规律,并利用规律对位置数据进行 预测的算法。深度学习是机器学习中的子类,表征学习(Representation 可参考百科1Learning)的一种。机器学习定义2.1.2 人工神经网络人工神经网络(Artificial Neu
27、ral Network)是机器学习中广泛应用的一类算法,简称神经网络 (Neural Network)。神经网络是一种模仿生物神经网络的结构和功能的数学模型或计算模型。现代神经网络是一种非线性统计性数据建模工具。 神经元 图 2.1 是神经网络中单个神经元结构:图 2.1 神经元结构该神经元所模拟的运算过程如下: (2.1) = ! = (! ! ! + )!,!其中 f 是一个非线性函数,常用的非线性函数有:!(2.2) =!# (!)或!(2.3) = tanh =!1表征学习百科:/wiki/Feature_learning共71 页第 5 页
28、基于深度学习的睡姿检测模型与实现非线性函数保证了多层神经网络不会被表示为单一矩阵运算。 在深度学习中,为了加快模型的收敛速度,采用如下更简洁的非线性函数 ReLU29,相对于其他非线性函数来说,这个非线性函数更具有生物神经元激发的特性: 装 订 线(2.4) = max (0, )微软亚洲研究院(MSRA)的视觉计算(Visual Computing, VC) 组在 2015 年初发表的论文15 中提出了新的非线性函数 PReLU 如下图(图 2.2): 图 2.2 ReLu 非线性函数!, !, ! 0 0(2.5) ! =正是使用了这个非线性函数的深度学习卷积神经网络在 ImageNet
29、图像识别挑战赛数据集上把错误率降低为 4.95%,首次超越了人类在同样数据集上的识别错误率 5.1%16 。 神经网络12.3)。以下是一个具有一个输入层、一个输出层和一个隐含层的神经网络结构示意图(图 图 2.3 多层神经网络1参考斯坦福大学无监督学习教程:/tutorial/supervised/MultiLayerNeuralNetworks/共 71 页第 6 页基于深度学习的睡姿检测模型与实现神经网络有多个神经元组成,形成层次结构,现代神经网络普遍使用正常向传播计算(Feed forward)结果,使用反向传播算法(Back propa
30、gation algorithms)进行训练。 装 订 线o正向传播 对于层而言,!是该层的激励即输出结果,由一下公式计算 (!) = (!)(!) + (!)(2.6)(!) = ( ! )(2.7)其中是上述所说的非线性函数。 o反向传播算法 神经网络损失函数(, )如下: != !(2.8) , ; , !,! !(!)!(2.9) , =(, ; (!), (!) + !(2.9)中! !(!)!为规则化项, 该规则化项使网络免于过拟合(over-fitting) ! !反向传播的递推公式如下 (2.10)(!) = (!) (, )!(!) = (!) (2.11)(, )!使用以上
31、函数对神经网络的参数W!进行更新 2.2 深度学习深度学习是近几年兴起的一种机器学习算法,被 MIT 科技评论誉为 2013 年十大科技突破之一。深度学习是机器学习中表征学习方法的一类,代表算法有深度神经网络,卷积神经网络和深 度信念网络,目前深度学习被广泛应用于计算机视觉,语音识别,自然语言处理等领域,并且不 断突破以上领域中的最先进水平。 例如,微软亚洲研究院的视觉计算(Visual Computing Group)在 2015 年 2 月使用深度卷积神经网络使计算机图像识别能力超越了人类视觉识别能力。又如,百度专门成立了深度学习研究院(Institute of Deep Learning
32、, IDL)。2015 年 5 月,百度的超级计算机 Minwa 把 ImageNet 图像识别挑战赛数据集的前 5 项错误率降为 4.58%17,为目前最高。在 2014 年 12 月声明使用深度学习在语音识别领域产生巨大突破18: 深度学习算法早在上个世纪八十年代就已经被提出,然而深度学习得以在近年来才有大规模 突破的原因有以下两个 共 71 页第 7 页基于深度学习的睡姿检测模型与实现 数据 目前是数据量爆炸的时代,虽然卷积神经网络在 1989 年已经被提出,但在当时由于不具有如此大的数据量用于训练足够深层次的网络模型。大规模的数据量使得深度神经网络可以更加智能。 装 订 线 硬件运算性
33、能的提升 另一个重要的原因是硬件性能的大幅度提升,摩尔定律使得曾经不可想象的计算机性能成为可能。在 1993 年世界上最快的计算机是 Think Machine CM5/10241 ,具有 131 GFlops/s 的处理能力,而在 2013 年,Samsung Note 3 四核智能手机就具有了 129GFlops/s 的处理能力,同时,GPU 并行计算的高速发展促进了深度学习的发展。 2.3 卷积神经网络卷积神经网络在图像分类方面是目前的最先进水平(State-of-the-art)。本节首先具体介绍了卷积神经网络的理论基础,然后介绍了一种经典的卷积神经网络模型 AlexNet 结构。 2
34、.3.1 卷积神经网络介绍卷积神经网络(Convolutional Neural Network, CNN)是深度学习中的一个重要算法,目前在计算机视觉领域的图像识别任务中的领先方法。卷积神经网络最初由Yann LeCun 在1989 年提出19, 当时被应用于手写数字识别。 卷积神经网络由一个或多个卷基层和顶端的全连层组成,其由生物结构启发。在人类的视觉神经中,每一个视觉神经元仅仅处理视线范围内一个很小的区域,称为感兴趣区域(Region of Interest, ROI),CNN 的卷积层即为模拟这种感知过程,在卷基层中使用一个具有少量权重(Weight) 个数核函数(Kernel)对图像
35、进行卷积滤波(Convolutional Filtering),经过多次如此处理之后, 把结果变成一个向量连接全连层(Fully Connected Layer)最后使用 Softmax 分类器进行分类(图2.)。卷积神经网络的训练与正常的神经网络训练一样,使用反向传播(Back Propagation)算法, 针对损失(Loss)更新模型参数。 图 2.4 深度卷积神经网络结构1Think Machine M5/1024: /system/166997共 71 页第 8 页基于深度学习的睡姿检测模型与实现 卷基层(Convolutional Layer
36、) 卷积层使用一个固定大小的窗口(一般为 3x3 或 5x5),这个二维窗口上面有权重,在图像上以固定的步长(step)滑动滤波。滤波输出的数值传入下一层。 装 订 线 池化层(Pooling Layer) 随后链接池化层(Pooling Layer)对图像进行缩小。池化层也使用一个固定大小的窗口,在每个固定大小的窗口上面,取最大、最小或平均作为输出结果。目前最常用的池化(Pooling)方法为最大池化(Max Pooling)。 全连阶层(Fully Connected Layer) 与正常的多层神经网络相同,每个神经元连接前一层所有的神经元,并且连接后一层所有的神经元。 终止层(Dropo
37、ut Layer)20由于卷积神经网络的参数非常巨大,其很容易出现过拟合(Overfitting)的情况。因此终止层 用于去掉一部分训练数据来防止过拟合的出现。最简单的终止层模拟伯努利续向前传播,若不发生则停止向前传播。 ,若发生, 则继 微调(Fine-tuning) 基于原有模型的微调(Fine-tuning)是一种迁移学习(Transfer Learning)手段。在很多应用中, 仅仅具有少量的训练数据,然而通常来说,训练卷及神经网络需要大量的训练数据来防止过拟合 出现。在仅有少量数据的情况下,微调是防止过拟合的一种技巧。微调是在一个已经在其他不相 关数据集上训练完成的卷积神经网路模型上
38、使用问题相关的少量数据集进行训练。通常,微调的 训练层数被限制在最顶端的 1-2 层全连接层来防止过拟合的出现。微调是一种迁移学习手段。 本文采用了微调的方式训练模型。 2.3.2 AlexNet 卷积神经网络 8 层模型AlexNet 在 2012 年被提出22,该网络结构包含六千万个参数和 65 万个神经元节点,在 ILSVRC2012 中取得第一位,错误率为 15.3%,是深度学习卷积神经网络发展的一个里程碑。网络结构如图(图 2.5)。22中提出同时使用两块显卡训练两个网络结构,最后合并的思想。 分别为数据层,卷基层 1,最大池化层 1,卷基层 2,最大池化层 2,卷基层 3,池化层
39、3,卷基层 4,池化层 4,卷基层 5,池化层 5,全连层 6,全连层 7, 全连层 8。 图 2.5 AlexNet卷积神经网络结构网络层次通过池化层(Pooling Layer)不断降低图像的分辨率,使得捕捉到的特征由浅层网 共 71 页第 9 页基于深度学习的睡姿检测模型与实现络至深层网络不断宏观化。最终的全连层把提出的特征序列化为整个向量,相当于传统的人工神 经网络形成 softmax 分类器,最后输出层为分类个数。 本文选取这个模型作为实验模型,并在这个模型基础上进行修改和微调以适应本课题,在后 文中讲进行介绍。 装 订 线2.4 Caffe 深度学习框架自深度学习成为了热门领域之后
40、,业界的相关框架层出不穷,Caffe25是深度学习框架中非 常具有代表性的一个,本节对 Caffe 框架进行介绍。 2.4.1 Caffe 简介Caffe 框架1是Google 的研发科学家贾扬清开发的基于C+的深度学习框架,有如下几个特点: 模型表现力强 Caffe 框架高度模块化,提供常用的网络结构实现,可以快速搭建深度学习网络,并且可以独立开发层结构嵌入原有框架,使用和开发非常方便。并且同样的模型通过单个标签设置即可在GPU 或CPU 上运行。 广泛的已有代码 Caffe 在上线 1 年时间内,在 Github 上获得了 1000 多个开发者的分支开发,现有可用的不同版本非常多。 具有良
41、好的性能2 大量的模型资源 Caffe 框架提供目前一些现有常用的网络结构配置和模型的参数可供使用。并且研究者和开发者还在不断贡献模型参数如 GoogLeNet2.4.1 Caffe 运行环境以下是 Caffe 所需的软件运行环境:Ubuntu 14.04 LTS 64bit CUDA 6.5 DriverCUDA ToolKit 6.5Python 2.7 Libsvm Caffeg+ compiler version:4.8.2 BLAS: OpenBLASBoost 1.541Caffe(Convolution Architecture for Fast Feature Embeddin
42、g, Berkeley Vision and Learning Center UCBerkeley)官网:/2深度学习框架横向测评: /soumith/convnet-benchmarks共 71 页第 10 页基于深度学习的睡姿检测模型与实现OpenCV 2.4.8protobuf, glog, gflagsIO libraries hdf5, leveldb, snappy, lmdb2.4.2 Caffe 的配置和使用Caffe 框架的网络结构定义使用 Google Protocol 格式,具有
43、高度的可编辑可扩展性。基于 Caffe 的模型可以使用 CPU 或 GPU 进行训练,本文使用 GPU 进行训练。使用 Caffe 框架进行网络训练有大量的参数可调。 网络配置文件实例见附录 A.1.1。模型训练实例见附录 A.1.2。 装 订 线2.5 通用图形处理器技术(GPGPU)深度学习的流行得益于高速的硬件发展,其中通用图形处理器(General-purpose computing on graphics processing units, GPGPU)1技术对深度学习技术的发展有着尤为重要的贡献。 显卡上具有大量的处理芯片,如本文所使用的 NVidia TITAN BLACK 显卡
44、具有 2880 个CUDA核,科同时进行大量的数据运算如矩阵运算等。GPGPU技术可以将显卡的并行处理性能优势应用于除显示之外的其他 CPU 计算应用。深度学习网络在前向(Feed Forward)和反馈传播(Back Propagation)运算中绝大多数操作皆为矩阵运算,可以使用 GPU 加速运算。 GPU 加速可以把深度神经网络模型训练时间从单个 CPU 的一年或几个月缩短到一个月或者几个星期,这使得原本不可行的网络训练过程成为可能。 2.6 数据增强(Data Augmentation)深度学习算法具有大量的模型参数(weights),大量的模型参数使得其更容易在相对小的数据集上过拟合
45、。训练卷积神经网络需要大量的数据,如在 ILSVRC 大规模视觉识别竞赛(引用文献)中,主办方提供了 20 亿张已经标注好的图像数据,这些图像包含了上万种不同的物体,在这样大量的数据集的辅助下,深度学习算法如卷积神经网络才得以发挥其性能。而目前收集到的 数据集在单一拍摄视角仅有 1000+张,训练深度神经网络很容易出现过拟合的现象。数据增强是一种数据扩充的手段23,通过对图像进行一些简单的变换来达到成倍增加数据量的目的。百度 深度学习研究院 (Institute of Deep Learning, IDL) 所开发的图像深度学习系统 Minwa 已经把ImageNet 数据集的识别误差缩小到了
46、 4.58%17,是目前为止图像识别的最高水平。其使用了巨大的神经网络模型,为避免过拟合,IDL 采用了大量的数据增强技术,包括偏色,光损失,光学变形,旋转,框取等方法(图 4.3),把 20 亿张图像数据增强到了 900 亿张图像。数据增强是百度得以在图像识别上有显著突破的一个重要因素之一。 1Wikipedia GPGPU 简介: /wiki/General-purpose_computing_on_graphics_processing_units共 71 页第 11 页基于深度学习的睡姿检测模型与实现 装 订 线图 2.6 数据增强2.7 V
47、iBe 背景建模ViBe1是一个高效的视频背景建模以及运动检测算法,2009 年在 ICASSP 被提出,与其他运动检测算法相比,其性能十分稳定,且需要的计算开销相对其他高质量的运动检测算法来说较少。因此本 文采用 ViBe 作为基础背景建模算法来获取运动区域。以下对 ViBe 算法的进行一些宏观的介绍,具体 实现细节请见论文30。 下图(图 2.7)是 ViBe 算法与其他背景建模算法之间的对比: 1ViBe 背景建模算法官方介绍: http:/www2.ulg.ac.be/telecom/research/vibe/共 71 页第 12 页基于深度学习的睡姿检测模型与实现 装 订 线图 2
48、.7 ViBe背景建模算法对比 像素模型和分类过程 ViBe 背景建模算法与其他背景建模算法不同,其不估计概率密度函数(Probability Density Function, PDF),ViBe 使用一系列之前观察到的值作为像素模型。分类一个像素为前景或者背景,这个像素将被与最相近的像素值进行对比。 模型更新:样本声明周期策略 ViBe 保证在像素模型中的像素具有一个平滑以指数方式下降的生命周期。这使得 ViBe 具有使用同一个模型处理相伴的能力。在更新模型的时候,新来的像素会随机与像素模型中的像 素进行比较。一旦决定某一个样本被丢弃,则新的值替代原有的样本。值得注意的是,模型的更 新是无法
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年四川省万源市高二生物下册期末考试模拟卷及参考答案【突破训练】
- 2026年江西省瑞金市高二生物下册期末考试模拟卷带答案(考试直接用)
- 2026年广东省罗定市高二生物下册期末考试考试卷(名师系列)附答案
- 2026年四川省绵竹市高二生物下册期末考试模拟卷含答案AB卷
- 2026年江苏省海门市高二生物下册期末考试模拟卷【考点精练】附答案
- 2025年辽宁省新民市高二生物下册期末考试考试卷及参考答案【综合题】
- 七年级语文下期期末学业监测试题含答案(完整版)
- 2026年湖南省资兴市高二生物下册期末考试考试卷附参考答案(模拟题)
- 2026年山西省永济市高二生物下册期末考试模拟卷(全优)附答案
- 2026年贵州省仁怀市高二生物下册期末考试测试卷附参考答案【夺分金卷】
- 醉里乾坤大壶中日月长-初中语文九年级第六单元名著导读《水浒传》整本书阅读精读研讨课 公开课一等奖创新教学设计
- 深基坑开挖与支护施工监理实施细则
- 钢-混组合连续梁支座预顶升施工工艺
- 《汽车底盘电控系统实训工单(AR版)》课后部分参考答案 廖光宙
- 《疫苗管理法》法律法规解读课件
- 农商银行强化公司治理年工作总结-银行工作总结
- TANIA 012-2021 阿克苏奶馕生产技术规程
- GB 4569-2000摩托车噪声限值及测试方法
- 网络路由重发布
- 招标代理机构廉洁从业措施
- DB225065-2021装配式建筑评价标准
评论
0/150
提交评论