今天是正月十六,也已然度过元宵节的欢悦中。人工智能的学习还要继续喔。这次笔记内容是关于计算机视觉、自然语言处理和知识图谱的入门学习。新的一年,愿大家共同进步,早日观赏到彼岸的漫漫花开!
目录
五、计算机视觉
5.1 计算机视觉概述
5.2 图像分类
5.3 目标检测
5.4 图像分割
六、自然语言处理
6.1 自然语言处理简介
6.2 自然语言处理的组成
6.3 自然语言理解
6.4 信息检索
6.5 机器翻译
6.6 情感分析
6.7 语音识别
6.8 自然语言处理面临的问题和展望
七、知识图谱
7.1 知识图谱简介
7.2 知识表示和知识建模
7.3 知识抽取
7.4 知识存储
7.5 知识融合
7.6 知识推理
7.7 知识图谱的应用
5.1.1 计算机视觉简介
计算机视觉(Computer Vision,CV)是机器认知世界的基础,最终的目的是使得计算机能够像人类一样“看懂世界”。
计算机视觉是从图像或视频中提出符号或数值信息,分析计算该信息以进行目标的识别、检测和跟踪等。更形象地说,计算机视觉就是让计算机像人类一样能看到并理解图像。
1. 计算机视觉的概念
计算机视觉技术的基本原理是利用图像传感器获得目标对象的图像信号,并传输给专用的图像处理系统,将像素分布、颜色、亮度等图像信息转换成数字信号,并对这些信号进行多种运算与处理,提取出目标的特征信息进行分析和理解,最终实现对目标的识别、检测和控制等。
2. 计算机视觉的特点
5.1.2 计算机视觉的发展历史
5.1.3 计算机视觉研究的意义
在采集图像、分析图像、处理图像的过程中,计算机视觉的灵敏度、精确度、快速性都是人类视觉所无法比拟的,它克服了人类视觉的局限性。
5.1.4 计算机视觉的应用及面临的挑战
5.1.5 其他领域的应用
5.1.6 计算机视觉面临的挑战
5.2.1 图像分类简介
图像分类是根据不同类别的目标在图像信息中所反映的不同特征,将它们区分开来的图像处理方法。它利用计算机对图像进行定量分析,把图像或其中的每个像素或区域划分为若干个类别中的某一种,以代替人的视觉判断。
图像分类的任务就是输入一张图像,正确输出该图像所属的类别。 图像分类就是寻找一个函数关系,这个函数关系能够将这些像素的数值映射为一个具体的类别(类别可以用某个数值表示)。
图像分类的核心任务是分析一张输入的图像并得到一个给图像分类的标签,标签来自预定义的可能类别集。
5.2.2 图像分类算法
1. 传统图像分类算法
完整建立图像识别模型一般包括底层特征提取、特征编码、空间约束、分类器分类等几个阶段。
2. 基于深度学习的图像分类算法
基于深度学习的图像分类算法的原理是输入一个元素为像素值的数组,并给它分配一个分类标签。
输入是包含 N 张图像的集合,每张图像的标签是 K 种分类标签中的一种。这个集合称为训练集。
学习即让分类器使用训练集来学习每个类的特征,也叫作训练分类器。
评价即让分类器来预测它未曾见过的图像的分类标签,对分类器预测的标签和图像真正的分类标签进行对比,并以此来评价分类器的质量。分类器预测的分类标签和图像真正的分类标签一致的情况越多,分类器的质量越好。
3. 常用的 3 类深度学习模型
5.3.1 目标检测简介
目标检测需要定位出图像目标的位置和相应的类别。由于各类物体有不同的外观、形状、姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具有挑战性的 问题。
目标检测的任务是在图像中找出所有感兴趣的目标(物体),并确定它们的位置和大小,是计算机视觉领域的核心问题之一。
目标检测需要解决目标可能出现在图像的任何位置、目标有不同的大小以及目标可能有不同的形状这 3 个核心问题。
5.3.2 目标检测框架模型
深度学习是具有更多隐藏层数的神经网络,它可以学习到机器学习等算法不能学习到的更加深层次的数据特征,能够更加抽象并且准确地表达数据。因此,基于深度学习的各类算法被广泛地应用于目标检测中。
5.4.1 图像分割简介
图像分割是图像分析的第一步,是计算机视觉的基础,是图像理解的重要组成部分,也是图像处理中最困难的问题之一。
图像分割指利用图像的灰度、颜色、纹理、形状等特征,把图像分成若干个互不重叠的区域,并使这些特征在同一区域内呈现相似性,在不同的区域之间存在明显的差异性。此后,可以将分割的图像中具有独特性质的区域提取出来用于不同的研究。简单地说,图像分割就是在一幅图像中,把目标从背景中分离出来。对于灰度图像来说,区域内部的像素一般具有灰度相似性,而在区域的边界上一般具有灰度不连续性。
5.4.2 图像分割算法
1. 基于阈值的图像分割算法
这种算法具有易于操作、功能稳定、计算简单高效等优点。其基本原理是根据图像的整体或部分信息选择阈值,依据灰度级别划分图像。
2. 基于边缘检测的图像分割算法
这种算法的基本原理是通过检测边界来把图像分割成不同的部分。在一张图像中,不同区域的边缘通常是灰度值剧烈变化的地方,这种算法就是根据灰度突变来进行图像分割的。
其按照执行顺序的差异可分为两种,即串行边缘分割法和并行边缘分割法。其重点是如何权衡检测时的抗噪性能和精度。若提高检测精度,则噪声引起的伪边缘会导致过分割;然而,若提高抗噪性能,则会使得轮廓处的结果精度不高。
3. 基于区域的图像分割算法
这种算法的基本原理是连通含有相似特点的像素点,最终组合成分割结果。其主要利用图像局部空间信息,能够很好地避免其他算法图像分割空间小的缺陷。
4. 基于神经网络的图像分割算法
这种算法的基本原理是以样本图像数据来训练多层感知机,得到决策函数,进而用获得的决策函数对图像像素进行分类,得到分割的结果。
6.1.1 自然语言处理的定义
语言是人类智慧的结晶,自然语言处理(Natural Language Processing,NLP)是指利用计算机对自然语言的形、音、义等信息进行处理,它是计算机科学领域和人工智能领域的一个重要的研究方向。
自然语言处理的具体表现形式包括机器翻译、文本摘要、文本分类、文本校对、信息抽取、 语音合成、语音识别等。
6.1.2 自然语言处理的发展历程
6.1.3 自然语言处理的研究方向
6.1.4 自然语言处理的一般工作原理
1. 语料预处理
2. 特征工程
3. 模型训练
4. 指标评价
6.3.1 自然语言理解的层次
自然语言理解中至少有 3 个主要问题:
自然语言的理解和分析是一个层次化的过程:
6.3.2 词法分析
词法分析是理解单词的基础,其主要目的是从句子中切分出单词,找出词汇的各个词素,从中获得单词的语言学信息并确定单词的词义。
6.3.3 句法分析
句法是语言在长期发展过程中形成的、全体成员必须共同遵守的规则。
句法分析(语法解析)是对句子和短语的结构进行分析,找出词、短语等的相互关系及各自在句子中的作用等,并以一种层次结构加以表达。层次结构可以反映从属关系、直接成分关系,也可以反映语法功能关系。
6.3.4 语义分析
句法分析完成后(≠ 计算机已经理解了该语句),还需要对语义进行解释。语义分析的任务是把分析得到的句法成分与应用领域中的目标表示相关联,从而确定语言所表达的真正含义或概念。
1. 语音识别的定义
2. 语音识别的发展历程
3. 语音识别的基本原理
4. 语音识别的应用
6.8.1 自然语言处理面临的问题
6.8.2 自然语言处理的展望
7.1.1 知识图谱的定义
知识图谱(Knowledge Graph)是一种揭示实体之间关系的语义网络。2012 年 5 月 17 日, 谷歌正式提出了知识图谱的概念,其初衷是优化搜索引擎返回的结果,增强用户搜索质量及体验。
知识图谱以结构化的形式描述客观世界中的概念、实体及其关系,将互联网的信息表达成更接近人类认知世界的形式,提供了一种更好地组织、管理和理解互联网海量信息的能力。
知识图谱的架构包括知识图谱自身的逻辑结构,以及构建知识图谱所采用的技术(体系)架构。
7.1.2 知识图谱的发展历史
7.1.3. 知识图谱的类型
1. 事实知识
在描述实体的特定属性或者关系。
2. 概念知识
概念知识分为两类:
3. 词汇知识
词汇知识主要包括实体与词汇之间的关系(实体的命名、称谓、英文名等)以及词汇之间的关系(同义关系、反义关系、缩略词关系、上下位词关系等)。
4. 常识知识
常识是人类通过身体与世界交互而积累的经验与知识,是人们在交流时无须言明就能理解的知识。
常识知识的获取是构建知识图谱时的一大难点。常识的表征与定义、常识的获取与理解等问题一直都是人工智能发展的瓶颈问题。
7.1.4 知识图谱的重要性
1. 知识图谱是人工智能的重要基石
2. 知识图谱推动智能应用
3. 知识图谱是强人工智能发展的核心驱动力之一
尽管人工智能依靠机器学习和深度学习取得了快速进展,但是由于严重依赖人类的监督以及大量的标注数据,仍属于弱人工智能范畴,离强人工智能具有较大差距。
强人工智能的实现需要机器掌握大量的常识性知识,将信息中的知识或者数据加以关联, 同时以人类的思维模式和知识结构来进行语言理解、视觉场景解析和决策分析。
知识图谱技术是由弱人工智能发展到强人工智能的必要条件,对于实现强人工智能有着重要的意义。
1. 知识表示
知识表示学习主要是面向知识图谱中的实体和关系进行表示学习,使用建模方法将实体和向量表示在低维稠密向量空间中,并进行计算和推理。
知识表示方法主要分为基于符号的知识表示方法与基于表示学习的知识表示方法。
2. 知识建模
目前,知识建模的实际操作过程可分为手工建模方式和半自动建模方式。
知识抽取指从不同来源、不同结构的数据中进行知识提取,形成知识的过程。以下是知识抽取示意图。
7.3.1 实体抽取
实体抽取(命名实体识别(Named Entity Recognition,NER)),指从原始数据中自动识别出命名实体。由于实体是知识图谱中最基础的知识要素,关系和属性都与实体息息相关, 因此实体的抽取质量直接影响了图谱中知识的质量。
实体抽取的方法主要有基于规则与词典的方法、基于机器学习的方法以及面向开放域的方法。
7.3.2 关系抽取
关系抽取的目标是抽取语料中命名实体的语义关系。实体抽取技术会在原始的语料上标记一些命名实体。为了形成知识结构,还需要从中抽取命名实体间的关联信息,从而利用这些信息将离散的命名实体连接起来,这就是关系抽取技术。
7.3.3 属性抽取
实体的属性可以使实体对象更加丰满。属性抽取的目的是从多种来源的数据中抽取目标实体的属性内容。实体的属性可以看作连接实体与属性值的关系,因此,在实际应用中,一些学者将属性抽取问题转换为关系抽取问题。
7.4.1 知识存储概述
知识存储是针对知识图谱的知识表示形式设计底层存储方式,完成各类知识的存储,以支持对大规模数据的有效管理和计算。
知识存储的对象包括基本属性知识、关联知识、事件知识、时序知识和资源类知识等。知识存储方式的质量直接影响了知识图谱中知识查询、知识计算及知识更新的效率。
7.4.2 知识存储方式
7.4.3 知识存储工具
7.5.1 知识融合概述
知识融合即合并两个知识图谱(本体),基本的问题是研究将来自多个来源的关于同一个实体或概念的描述信息融合起来的方法。
7.5.2 知识融合过程
7.6.1 知识图谱的表示
7.6.2 并行知识推理
基于符号的知识图谱推理一般是应用推理规则到知识图谱上,通过触发规则的前件来推导出新的实体关系,这里的推理规则可能是知识表示语言所有的,也可能是人工设定或者通过机器学习技术获取的。基于符号的推理虽然有能够提高推理效率的各种优化方法,但是还是跟不上数据增长的速度,特别是在数据规模大到目前基于内存的服务器无法处理的情况下。为了应对这一挑战,研究人员开始对描述逻辑和 RDFS 的推理进行并行推进以提升推理的效率和可扩展性,并且取得了很多成果。
并行推理工作所借助的并行技术分为单机环境下的多核、多处理器技术(多线程、GPU 技术等)和多机环境下基于网络通信的分布式技术(MapReduce 计算框架、Peer-To-Peer 网络框架等)两大类技术。
7.6.3 实体关系知识推理
实体关系知识推理的目的是通过统计方法或者神经网络方法,学习知识图谱中实体之间的关系。
7.6.4 模式归纳知识推理
模式归纳知识推理是从知识图谱中学习本体的模式层信息或丰富已有本体,包括对概念层次、属性层次、不相交公理、属性的值域与定义域和属性或概念的约束等公理的学习。
7.7.1 语义搜索
语义搜索是指搜索引擎的工作不再拘泥于用户所输入请求语句的字面本身,而是透过现象看本质,准确地捕捉到用户的真实意图,并依此来进行搜索,从而更准确地向用户返回最符合其需求的搜索结果。
7.7.2 问答系统
问答系统需要理解查询的语义信息,将输入的自然语言转换为知识库中的实体和关系的映射。