赞
踩
1.传统图像风格迁移和快速图像风格迁移
图像风格迁移是一种用不同风格渲染图像语义内容的图像处理方法。
近年来,随着深度神经网络在其它视觉感知领域(例如物体与人脸识别)的广泛应用,其在风格迁移领域也具有良好的表现。神经网络具有良好的特征提取能力,能够提取到丰富的语义信息,而这些信息正是风格迁移的基础。
深度学习的图像风格迁移方法主要包括基于图像迭代和基于模型迭代两种。图像迭代是直接在白噪声图像上进行优化迭代实现风格迁移,其优化目标是图像;
模型迭代的优化目标则是神经网络模型,以网络前馈的方式实现风格迁移。
原理:结合深度学习(VGG19)与图像类比(PatchMatch)进行风格迁移。首先预训练一个VGG19网络,通过VGG网络提取图像的感知特征,根据感知特征计算感知损失=内容损失+风格损失。把感知损失作为优化目标,不断迭代合成图像,逐步修正合成图像像素,使损失最小,得到风格迁移后的图像。
原理:用了两个网络:一个是VGG(也称损失网络),另一个是图像生成网络。
VGG网络:先提取感知特征,然后再计算感知损失。然后用感知损失作为优化的目标;
图像生成网络:用感知损重新训练了一个图像生成网络,主要计算迁移图片和风格图片的风格损失,迁移图片和原始图片的内容损失。有多个风格图片,每个风格训练一个模型即可。
(对于一个给定的风格S,你来任何一张内容图像,我都能给你训练出带有S风格的合成图像。)
优缺点summary:
(1)基于图像迭代。该方法合成图像的质量高、可控性好,易于调参,无需训练数据,也无生成模型。但每次生成图片都需重新训练,十分耗时。
(2)基于模型迭代。计算速度快,可用于视频快速风格化,目前工业应用软件的主流技术。图像生成质量有待进一步提高,需要大量的训练数据。
(3)传统方法是从一张白噪声图开始迭代,快速方法是从内容图像开始迭代
如何计算风格损失函数:
快速风格迁移通常使用神经网络来计算风格损失。具体来说,它使用一个预训练的卷积神经网络,例如VGG网络,来提取输入图像和参考图像的特征表示。然后,使用这些特征表示来计算输入图像和参考图像之间的风格损失。风格损失可以通过计算输入图像与参考图像特征的Gram矩阵之间的均方误差来计算。
Gram矩阵是一种特征表示的方式,它将特征映射的内积作为其元素。具体地,对于一个特征映射F,其对应的Gram矩阵G可以通过将F的转置与F相乘来计算。风格损失可以通过计算输入图像和参考图像的Gram矩阵之间的均方误差来计算。这样,我们就可以使用神经网络来计算输入图像和参考图像之间的风格损失,从而实现快速风格迁移。
Gram矩阵的严格定义如下所示
Gram矩阵中的每一个元素衡量了此向量之间的相关关系,内积数值越大,相关关系越大,两个向量越相似。
在计算机视觉中,Gram矩阵用于把握整个图像的大体风格。有了表示风格的Gram矩阵,就可以度量两个图像风格的差异, 它也可以度量自己各个维度的特性以及各个维度之间的关系,其对角线元素提供了不同特征图各自的信息,其余元素提供了不同特征图之间的相关信息,既能体现出有哪些特征,又能体现出不同特征间的紧密程度
均方误差:参数估计值与参数真值之差平方的期望值
快速风格迁移如何计算内容损失?
快速风格迁移通常使用神经网络来计算内容损失。具体来说,它使用一个预训练的卷积神经网络,例如VGG网络,来提取输入图像和参考图像的特征表示。然后,使用这些特征表示来计算输入图像和参考图像之间的内容损失。内容损失可以通过计算输入图像和参考图像特征之间的均方误差来计算。
通常,我们使用神经网络的某些层来计算内容损失。这些层通常是网络的浅层,因为浅层特征更容易捕捉到图像中的低级别特征,例如边缘和纹理。可以通过计算输入图像和参考图像在这些层中的特征之间的均方误差来计算内容损失。
使用神经网络来计算内容损失,可以使得快速风格迁移更加准确地重建输入图像,同时保留参考图像的内容特征。
2.知识图谱医疗问答系统
项目的数据来自垂直类医疗网站寻医问药,使用爬虫脚本data_spider.py,以结构化数据为主,构建了以疾病为中心的医疗知识图谱,实体规模4.4万,实体关系规模30万。schema的设计根据所采集的结构化数据生成,对网页的结构化数据进行xpath解析。
项目的数据存储采用Neo4j图数据库,问答系统采用了规则匹配方式完成,数据操作采用neo4j声明的cypher。本项目的问答系统完全基于规则匹配实现,通过关键词匹配,对问句进行分类,医疗问题本身属于封闭域类场景,对领域问题进行穷举并分类,然后使用cypher的match去匹配查找neo4j,根据返回数据组装问句回答,最后返回结果。
基于知识图谱的问答系统的主要特征是知识图谱,系统依赖一个或多个领域的实体,并基于图谱进行推理或演绎,深度回答用户的问题,基于知识图谱的问答系统更擅长回答知识性问题
医疗知识图谱的schema构建包括以下几个方面:
实体类型定义:定义医疗领域相关的实体类型,例如疾病、症状、药品等。
属性定义:定义实体类型的属性,例如疾病的症状、治疗方案、预防措施等。属性的定义需要考虑实体类型的特点和属性的数据类型。
关系定义:定义实体类型之间的关系,例如疾病和症状之间的关系可以是“引起”、“伴随”等;药品和疾病之间的关系可以是“治疗”、“预防”等。
层级结构定义:定义实体类型之间的层级结构,例如疾病可以分为传染病、非传染病等分类。
元属性定义:定义用于描述schema本身的元属性,例如版本号、创建时间、更新时间等。
约束定义:定义属性值的约束条件,例如属性值的数据类型、取值范围、唯一性等。
实例化:将schema应用于具体的医疗知识图谱数据,构建实例化的知识图谱。
(1)== 数据收集阶段==,从非结构化数据中提取出结构化的信息,比如从网页文本中找出实体(NER),并提取出实体间的关系
(2)== 图谱设计阶段==,实体定义,属性定义,关系定义,需要一定领域背景知识才能更好的进行图谱设计
实体——关系——实体,三元组
关系抽取存在的问题:关系重叠问题,复杂关系问题
基于规则的知识抽取主要还是通过人工定义一些抽取规则,从文章中抽取出三元组信息(实体-关系-实体)。重点即是定义规则。
第一步:定义需要抽取的关系集合,比如【疾病介绍、病因、预防、症状、饮食保健…】
第二步:遍历文章的每一句话,将每句话中非实体和非关系集合里面的词去掉
第三步:从每句话的第二个词开始遍历,遇到关系集合中的词,就选出该词左右最近的实体
基于规则的知识抽取是一种从非结构化或半结构化数据中提取结构化数据的技术。其基本思路是通过指定抽取规则来识别文本中的实体、关系和属性等元素,然后将它们转化为结构化的数据形式。
这种方法通常需要先对文本进行自然语言处理,包括分词、词性标注、句法分析等,以便更好地理解文本中的语义和结构。
需要注意的是,虽然基于规则的知识抽取可以比较准确地抽取结构化数据,但其依赖于事先指定的规则,因此对于新的数据或领域可能需要重新设计规则。同时,由于自然语言的复杂性和多义性,规则的设计和调试也需要一定的专业知识和经验。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。