基于循环神经网络的人物性格分析方法、装置及存储介质与流程

文档序号:14444882阅读:293来源:国知局
基于循环神经网络的人物性格分析方法、装置及存储介质与流程

本发明涉及计算机视觉技术领域,尤其涉及一种基于循环神经网络的人物性格分析方法、装置及存储介质。



背景技术:

性格是人格的重要组成部分,了解人物的性格,可以提高人与人的沟通效率,也有助于人们选择理性的思维方式,形成良好的人格特质。

目前,人物性格分析一般是通过问卷调查或语音问答的方式实现的,需要耗费大量的时间和人力资源。如果答卷人或答题者受客观环境影响或不积极配合分析过程,分析结果往往不准确客观。



技术实现要素:

鉴于以上原因,本发明提供一种人物性格分析方法、装置及存储介质,可以通过对人物的面部视频进行识别、分析,客观、准确地判断人物的性格类型。

为实现上述目的,本发明提供一种基于循环神经网络的人物性格分析方法,该方法包括:

样本准备步骤:收集不同性格类型人物的预定时长的面部视频作为样本,为每个样本标注一个性格类型;

样本特征提取步骤:提取每个样本的图像序列的特征向量;

模型构建步骤:构建以softmax分类器为输出层的循环神经网络模型;

模型训练步骤:定义softmax损失函数,以各样本的性格标注及图像序列的特征向量为样本数据,对所述循环神经网络模型进行训练,输出各样本对应每种性格类型的概率值,每次训练更新该循环神经网络模型的训练参数,以使所述softmax损失函数最小化的训练参数作为最终参数,得到人物性格分析模型;及

模型应用步骤:采集待分析对象的预定时长的面部视频,利用所述人物性格分析模型分析该待分析对象的该面部视频,得到该待分析对象对应每种性格类型的概率值,取概率值最大的性格类型作为该待分析对象的性格类型。

优选地,所述样本特征提取步骤还包括:

将所述样本的视频转换为图像序列。

可选地,所述特征向量为hog特征向量、lbp特征向量、通过卷积神经网络提取的特征向量中的一种或几种。

优选地,所述模型构建步骤包括:

根据所述样本的图像序列长度及每帧图像的特征向量维数设置循环神经网络层数及每层的神经元个数;

根据所述性格类型的数量设置所述softmax分类器的神经元个数。

优选地,所述softmax损失函数公式如下:

其中,θ为所述循环神经网络模型的训练参数,xj表示第j个样本,yj表示第j个样本对应的性格类型的预测概率。

优选地,所述训练参数包括迭代次数。

本发明还提供一种计算装置,包括存储器和处理器,所述存储器中包括人物性格分析程序。该计算装置直接或间接地与摄像装置相连接,摄像装置将拍摄的人物面部视频传送至计算装置。该计算装置的处理器执行存储器中的人物性格分析程序时,实现以下步骤:

样本准备步骤:收集不同性格类型人物的预定时长的面部视频作为样本,为每个样本标注一个性格类型;

样本特征提取步骤:提取每个样本的图像序列的特征向量;

模型构建步骤:构建以softmax分类器为输出层的循环神经网络模型;

模型训练步骤:定义softmax损失函数,以各样本的性格标注及图像序列的特征向量为样本数据,对所述循环神经网络模型进行训练,输出各样本对应每种性格类型的概率值,每次训练更新该循环神经网络模型的训练参数,以使所述softmax损失函数最小化的训练参数作为最终参数,得到人物性格分析模型;及

模型应用步骤:采集待分析对象的预定时长的面部视频,利用所述人物性格分析模型分析该待分析对象的该面部视频,得到该待分析对象对应每种性格类型的概率值,取概率值最大的性格类型作为该待分析对象的性格类型。

优选地,所述样本特征提取步骤还包括:

将所述样本的视频转换为图像序列。

可选地,所述特征向量为hog特征向量、lbp特征向量、通过卷积神经网络提取的特征向量中的一种或几种。

优选地,所述模型构建步骤包括:

根据所述样本的图像序列长度及每帧图像的特征向量维数设置循环神经网络层数及每层的神经元个数;

根据所述性格类型的数量设置所述softmax分类器的神经元个数。

优选地,所述softmax损失函数公式如下:

其中,θ为所述循环神经网络模型的训练参数,xj表示第j个样本,yj表示第j个样本对应的性格类型的预测概率。

优选地,所述训练参数包括迭代次数。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中包括人物性格分析程序,所述人物性格分析程序被处理器执行时,实现如上所述的基于循环神经网络的人物性格分析方法中的任意步骤。

本发明提供的基于循环神经网络的人物性格分析方法、装置及存储介质,通过大量不同性格类型的人物面部视频训练循环神经网络模型,根据softmax损失函数更新模型的训练参数,以使所述softmax损失函数的训练参数作为最终参数,得到人物性格分析模型。之后,采集待分析对象的面部视频,提取特征向量,将提取的特征向量输入训练好人物性格分析模型,即可得到该待分析对象对应每种性格特征的概率值,取概率值最大的性格类型作为该待分析对象的性格类型。利用本发明,可以客观、有效地分析人物的性格类型,也降低了人力成本,节省了时间。

附图说明

图1为本发明基于循环神经网络的人物性格分析方法第一较佳实施例的应用环境图。

图2为本发明基于循环神经网络的人物性格分析方法第二较佳实施例的应用环境图。

图3为图1、图2中人物性格分析程序的程序模块图。

图4为本发明基于循环神经网络的人物性格分析方法较佳实施例的流程图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

下面将参考若干具体实施例来描述本发明的原理和精神。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1所示,为本发明基于循环神经网络的人物性格分析方法第一较佳实施例的应用环境图。在该实施例中,摄像装置3通过网络2连接计算装置1,摄像装置3拍摄人物的面部视频,通过网络2传送至计算装置1,计算装置1利用本发明提供的人物性格分析程序10分析所述视频,输出人物对应每种性格类型的概率值,供人们参考。

计算装置1可以是服务器、智能手机、平板电脑、便携计算机、桌上型计算机等具有存储和运算功能的终端设备。

该计算装置1包括存储器11、处理器12、网络接口13及通信总线14。

摄像装置3安装于特定场所,如心理咨询室、办公场所、监控区域等,用于拍摄不同性格类型人物的预定时长的面部视频,然后通过网络2将拍摄得到的视频传输至存储器11。网络接口13可以包括标准的有线接口、无线接口(如wi-fi接口)。通信总线14用于实现这些组件之间的连接通信。

存储器11包括至少一种类型的可读存储介质。所述至少一种类型的可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,所述可读存储介质可以是所述计算装置1的内部存储单元,例如该计算装置1的硬盘。在另一些实施例中,所述可读存储介质也可以是所述计算装置1的外部存储器11,例如所述计算装置1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。

在本实施例中,所述存储器11存储所述人物性格分析程序10的程序代码、摄像装置3拍摄的视频,以及处理器12执行人物性格分析程序10的程序代码应用到的数据以及最后输出的数据等。

处理器12在一些实施例中可以是一中央处理器(centralprocessingunit,cpu),微处理器或其他数据处理芯片。

图1仅示出了具有组件11-14的计算装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

可选地,该计算装置1还可以包括用户接口,用户接口可以包括输入单元比如键盘(keyboard)、语音输入装置比如麦克风(microphone)等具有语音识别功能的设备、语音输出装置比如音响、耳机等,可选地用户接口还可以包括标准的有线接口、无线接口。

可选地,该计算装置1还可以包括显示器。显示器在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。显示器用于显示计算装置1处理的信息以及可视化的用户界面。

可选地,该计算装置1还包括触摸传感器。所述触摸传感器所提供的供用户进行触摸操作的区域称为触控区域。此外,这里所述的触摸传感器可以为电阻式触摸传感器、电容式触摸传感器等。而且,所述触摸传感器不仅包括接触式的触摸传感器,也可包括接近式的触摸传感器等。此外,所述触摸传感器可以为单个传感器,也可以为例如阵列布置的多个传感器。用户,例如心理咨询师,可以通过触摸启动人物性格分析程序10。

该计算装置1还可以包括射频(radiofrequency,rf)电路、传感器和音频电路等等,在此不再赘述。

参照图2所示,为本发明基于循环神经网络的人物性格分析方法第二较佳实施例的应用环境图。待分析对象通过终端3实现性格分析过程,终端3的摄像装置30拍摄待分析对象的面部视频,并通过网络2传送至所述计算装置1,计算装置1的处理器12执行存储器11存储的人物性格分析程序10的程序代码,对视频进行分析,输出该待分析对象对应每种性格特征的概率值,供待分析对象或心理咨询师等人参考。

图2中计算装置1的组件,例如图中示出的存储器11、处理器12、网络接口13及通信总线14,以及图中未示出的组件,请参照关于图1的介绍。

所述终端3可以为智能手机、平板电脑、便携计算机、桌上型计算机等具有存储和运算功能的终端设备。

在一些场景中,待分析对象为了达到某种目的,例如获取信任,迷惑对方,不愿接受客观事实等等,会刻意隐藏真实意图,难以通过答卷等形式分析其性格,单靠人为观察分析判断也难免有失客观。此时,利用人物性格分析程序10对待分析对象的大量人脸图像组成的视频进行分析,可以捕捉到细微特征,得到客观结果,供人们参考。

图1、图2中的人物性格分析程序10,在被处理器12执行时,实现以下步骤:

样本准备步骤:收集不同性格类型人物的预定时长的面部视频作为样本,为每个样本标注一个性格类型;

样本特征提取步骤:提取每个样本的图像序列的特征向量;

模型构建步骤:构建以softmax分类器为输出层的循环神经网络模型;

模型训练步骤:定义softmax损失函数,以各样本的性格标注及图像序列的特征向量为样本数据,对所述循环神经网络模型进行训练,输出各样本对应每种性格类型的概率值,每次训练更新该循环神经网络模型的训练参数,以使所述softmax损失函数最小化的训练参数作为最终参数,得到人物性格分析模型;及

模型应用步骤:采集待分析对象的预定时长的面部视频,利用所述人物性格分析模型分析该待分析对象的该面部视频,得到该待分析对象对应每种性格类型的概率值,取概率值最大的性格类型作为该待分析对象的性格类型。

关于上述步骤的详细介绍,请参照下述图3关于人物性格分析程序10的程序模块图及图4基于循环神经网络的人物性格分析方法较佳实施例的流程图的说明。

参照图3所示,为图1、图2中人物性格分析程序10的程序模块图。在本实施例中,人物性格分析程序10被分割为多个模块,该多个模块被存储于存储器11中,并由处理器12执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。

所述人物性格分析程序10可以被分割为:获取模块110、提取模块120、训练模块130及分析模块140。

获取模块110,用于获取不同性格类型人物的预定时长的面部视频。所述面部视频可以是通过图1的摄像装置3或图2的摄像装置30获取的,也可以是从网络信息或视频资料库中选取的性格鲜明的人物的面部视频。将用于模型训练的样本视频标注性格类型,例如:“活泼”、“内向”、“随和”等,将所述性格类型标注映射为one-hot向量。

提取模块120,用于提取面部视频图像序列的特征向量。将获取模块110获取的面部视频转换为图像序列,对每帧图像进行归一化、去除噪声等预处理,提取预处理后图像序列的hog特征向量或lbp特征向量等底层特征,或直接利用卷积神经网络提取原始图像序列的特征向量。

训练模块130,用于通过迭代训练优化循环神经网络模型。所述面部视频图像序列由一系列单帧图像按时间顺序排列,因此本发明采用循环神经网络模型中的长短期记忆网络(longshort-termmemory,lstm)模型,由于本发明利用lstm模型输出待分析对象对应每种性格类型的概率值,故该lstm模型以softmax分类器作为输出层。

构建lstm模型时,先根据获取模块110获取的面部视频图像序列长度及每帧图像的特征向量维数定义网络形状,设置循环神经网络层数及每层的神经元个数,根据所述性格类型的数量设置所述softmax分类器的神经元个数。例如,假设所述面部视频的预定时长为3分钟,每分钟显示帧数为m,则每个视频的图像序列长度记为3*m。假设图像特征向量的维数为k,则该lstm的形状可用tflearn深度学习库的代码表示成如下形式:

net=tflearn.input_data(shape=[none,3*m,k])

然后构建两个隐含层,每层128个神经单元,用tflearn深度学习库的代码表示如下:

net=tflearn.lstm(net,128)

net=tflearn.lstm(net,128)

最后,接入softmax分类器。例如,假设将人物性格分为n类,则softmax分类器用tflearn深度学习库的代码表示如下:

net=tflearn.fully_connected(net,n,activation=‘softmax’)

定义softmax损失函数公式如下:

lstm模型及softmax损失函数构建完成后,设置训练参数。假设迭代次数为100、梯度优化算法为adam、验证集为0.1,则lstm模型训练用tflearn深度学习库的代码表示如下:

net=tflearn.regression(net,optimizer=‘adam’,loss=‘categorical_crossentropy’,name=‘output1’)

model=tflearn.dnn(net,tersorboard_verbose=2)

model.fit(x,y,n_epoch=100,validation_set=0.1,snapshot_step=100)

利用样本图像序列的特征向量及性格标注的one-hot向量对lstm模型进行训练,每次训练更新该lstm模型的训练参数,以使所述softmax损失函数最小化的训练参数作为最终参数,得到人物性格分析模型。

分析模块140,用于分析人物对应每种性格类型的概率值,得到待分析对象的性格类型。将获取模块110获取的待分析对象的预定时长的面部视频转换为图像序列,提取该图像序列的特征向量,将得到的特征向量输入训练好的人物性格分析模型,输出待分析对象对应每种性格类型的概率值,取概率值最大的性格类型作为该待分析对象的性格类型。

参照图4所示,为本发明基于循环神经网络的人物性格分析方法较佳实施例的流程图。利用图1或图2所示的架构,启动计算装置1,处理器12执行存储器11中存储的人物性格分析程序10,实现如下步骤:

步骤s10,利用获取模块110获取不同性格类型人物的预定时长的面部视频并标注性格类型。所述面部视频可以是通过图1的摄像装置3或图2的摄像装置30获取的,也可以是从网络信息或视频资料库中选取的性格鲜明的人物的面部视频。所述性格类型标注被表示为one-hot向量的形式,即每个类型所对应的标志位为1,其余位全为0。

步骤s20,利用提取模块120提取面部视频图像序列的特征向量。将所述面部视频转换为图像序列,对图像序列进行归一化、去除噪声等预处理,提取预处理后每帧图像的特征,利用特种筛选算法对所述特征进行筛选。假设样本有n个特征,那么,其有2n-1种可能的特征子集,如果穷举所有2n种可能的特征子集,对于n比较大的情况,计算的代价太大,无法真正实现。因此可以通过一些算法实现特征的选择。这里的特征筛选算法可以为正向搜索/反向搜索(forward/backwardsearch)、过滤特征选择(filterfeatureselection),或是其他可用的特征筛选算法。可选地,本实施例可提取图像序列的hog特征向量或lbp特征向量等底层特征,也可以直接利用卷积神经网络提取原始图像序列的特征向量。

步骤s30,根据图像序列长度、特征向量维数以及性格类型数量利用训练模块130构建循环神经网络模型。根据获取模块110获取的面部视频图像序列长度及每帧图像的特征向量维数设置循环神经网络层数及每层的神经元个数,根据性格类型的数量设置作为网络输出层的softmax分类器的神经元个数。

步骤s40,根据图像序列的特征向量以及面部视频的性格标注利用训练模块130优化循环神经网络模型,得到训练好的人物性格分析模型。以提取模块120提取特征向量及获取模块110获取的面部视频的性格标注映射成的one-hot向量为样本数据,对循环神经网络模型进行训练,得到训练好的人物性格分析模型。

步骤s50,利用获取模块110采集待分析对象的预定时长的面部视频。该面部视频通过图1的摄像装置3或图2的摄像装置30获取。

步骤s60,利用提取模块120提取待分析对象面部视频图像序列的特征向量。特征向量为hog特征向量、lbp特征向量、通过卷积神经网络提取的特征向量中的一种或几种。

步骤s70,根据提取的特征向量利用分析模块140得到待分析对象的性格类型。将提取的待分析对象面部视频图像序列的特征向量输入训练好的人物性格分析模型,输出待分析对象对应每种性格类型的概率值,取概率值最大的性格类型作为该待分析对象的性格类型。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质可以是硬盘、多媒体卡、sd卡、闪存卡、smc、只读存储器(rom)、可擦除可编程只读存储器(eprom)、便携式紧致盘只读存储器(cd-rom)、usb存储器等等中的任意一种或者几种的任意组合。所述计算机可读存储介质中包括样本视频、循环神经网络模型及人物性格分析程序10,所述人物性格分析程序10被处理器执行时实现如下操作:。

样本准备步骤:收集不同性格类型人物的预定时长的面部视频作为样本,为每个样本分配一个性格标注;

样本特征提取步骤:提取每个样本的图像序列的特征向量;

模型构建步骤:构建以softmax分类器为输出层的循环神经网络模型;

模型训练步骤:定义softmax损失函数,以各样本的性格标注及图像序列的特征向量为样本数据,对所述循环神经网络模型进行训练,输出各样本对应每种性格类型的概率值,每次训练更新该循环神经网络模型的训练参数,以使所述softmax损失函数最小化的训练参数作为最终参数,得到人物性格分析模型;及

模型应用步骤:采集待分析对象的预定时长的面部视频,利用所述人物性格分析模型分析该待分析对象的该面部视频,得到该待分析对象对应每种性格类型的概率值,取概率值最大的性格类型作为该待分析对象的性格类型。

本发明之计算机可读存储介质的具体实施方式与上述基于循环神经网络的人物性格分析方法以及计算装置1的具体实施方式大致相同,在此不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1