重点:人工智能定义、人工智能研究内容(了解、理解即可)
重点:知识的概念、知识的表示
知识是人们在长期的生活及社会实践中、在科学研究及实验中积累起来的对客观世界的认识与经验。
知识的形式:事实、因果关联
知识的特性:相对正确性(明确前提)、不确定性(真假之外)、可表示性(形式描述)、可利用性(学以致用)
· 状态:表示问题解法中每一步问题状况的数据结构
· 操作:状态变换的手段
· 状态空间:表示问题全部可能状态及其关系的图
· 状态空间的解:从初始状态到目标状态的操作算子序列
只按预定的控制策略进行搜索,在搜索过程中获得的中间信息不会用来改进控制策略。
每个节点的分支数为b,最浅解位于第s层,搜索空间共m层。
时间复杂度:O( b s b^s bs)
空间复杂度:O( b s b^s bs)
具有完备性、最优性
时间复杂度:O( b m b^m bm)
空间复杂度:O( b m bm bm)
可能不具有完备性(图有环时需进行约束)、不具有最优性(最左的解)
时间复杂度:O( b C ∗ / ε b^{C^*/ε} bC∗/ε)
空间复杂度:O( b C ∗ / ε b^{C^*/ε} bC∗/ε)
具有完备性、最优性
在搜索中加入了与问题有关的启发性信息,用于指导搜索朝着最有希望的方向进行,加速问题的求解过程并找到最优解。
搜索策略: 拓展看起来离目标最近的节点
评估函数: f ( n ) = h ( n ) f(n)=h(n) f(n)=h(n)【 h ( n ) h(n) h(n)表示从 n n n节点到目标节点最佳路径的估计代价】
最坏情况下退化为DFS,时间复杂度为O( b m b^m bm)
空间复杂度:O( b m b^m bm)【存储所有节点的信息】
不具有完备性和最优性
搜索策略: 避免拓展耗费已经很大的路径
评估函数: f ( n ) = g ( n ) + h ( n ) f(n)=g(n)+h(n) f(n)=g(n)+h(n)【g(n)表示初始节点到n节点的实际代价、h(n)表示估计代价】
定理:若 h ( n ) h(n) h(n)可纳,则A*搜索算法具有最优性。
定理:若 h ( n ) h(n) h(n)一致,则A*搜索算法具有最优性。
优势性
对于任意节点 n n n,可纳启发式函数 h 1 ( n ) < h 2 ( n ) h_1(n)
A*算法性能分析
b b b表示每个节点的后继节点数, d d d表示解的深度, ε ε ε表示相对误差 h ∗ − h h ∗ \frac{h^*-h}{h^*} h∗h∗−h , h ∗ h^* h∗为真实代价, h h h为估计代价
最坏时间复杂度:O( b ε d b^{εd} bεd)
空间复杂度:O( b m b^m bm) -存储所有节点的信息
启发式函数设计
A与B相邻,棋子可从A移到B(距离)
如果B空,棋子可从A移动B
棋子可从A移动到B(不在位)
子问题分解
原问题分解为多个子问题,考虑子问题的解代价。
模式数据库
存储子问题模式解代价,从目标反向搜索计算模式代价,针对子问题,查找模式数据库。
从经验中学习
以N皇后问题为例,从初始状态开始,按行逐一摆放皇后,遇到矛盾时返回上一状态,重新摆放皇后。
由此,搜索空间是一棵搜索树,直至搜索至第N层即可找到可行解。
回溯搜素 = DFS + 变量分配【每次一个变量】 + 约束检查【考虑与前面分配不冲突的变量值】
具有完备性
具有最优性
时间复杂度:O(N!)
空间复杂度:O(N)
(对节点排序,每次选择值域最少可取值的变量)
(对节点排序,每次选择度最大的变量)
(对颜色排序,选择给近邻变量留下更多选择的值)
极端情况:大问题由独立子问题构成,独立子问题可认为是约束图的连接组件(连通子图)
变量(拓扑排序):
选择一个根变量,对变量进行排序,先父母后孩子。
两变量最多有一条路径,所以n个结点的树有n-1条边。
边相容:
应用Remove Inconsistent(Parent( X i X_i Xi), X i X_i Xi)
变量分配:
对于 i = 1 : n i = 1:n i=1:n,相容地分配 X i X_i Xi
优点
CSP局部搜索
基本思想
变量选择:随机选择任何有冲突的变量
值选择:最小冲突启发式
从任意初始状态开始,每次移动到最好的近邻状态,若无近邻状态比当前更好,则退出循环,得到爬山法的解。
无最优性的概念,不具有完备性。
特点:速度快,但易于陷入局部最优。
在爬山法的基础之上,允许“下山”动作跳出局部最优解,从而能有更大概率找到全局最优解。
从k个随机生成的状态开始,每一步全部k个状态的所有后继被生成。如果其中有一个是目标状态,则算法停止;否则从整个所有后继列表中选择k个最佳后继,重复直至达到目标状态。
(随机)束搜索:
在所有后继列表中随机选择k个后继,其中选中概率是状态值的递增函数,类似于自然选择。
遗传是随机束搜索的一个变形。把两个父状态结合(选择、交叉、变异)来生长后继,而不是通过修改单一状态进行。
回溯算法优化方法有哪些,其主要思想是什么,可以带来哪些好处?
编程实现N皇后回溯搜索算法,至少采用一种优化策略加速搜索过程。
实现N皇后至少一种局部搜索方法,并分析其算法的性能(四个搜索算法评价指标)。
搜索:自顶向下
计算:自底向上
搜索方法:类似DFS
时间复杂度:O( b m b^m bm)
空间复杂度:O( b m bm bm)
面临问题:搜索空间巨大
一种找到最佳minimax步骤的方法,同时可以避免搜索不可能被选择的步骤的子树。
Alpha:可能步骤的最大下界
Beta:可能步骤的最小上界
任何新节点被认为是可能路径节点 当且仅当 α ≤ V a l u e ( N ) ≤ β α≤Value(N)≤β α≤Value(N)≤β
剪枝性质:
后验 \qquad 调整因子 \qquad 先验
条件独立
∀ x , y , z : P ( x , y ∣ z ) = P ( x ∣ z ) P ( y ∣ z ) \forall x,y,z:P(x,y|z)=P(x|z)P(y|z) ∀x,y,z:P(x,y∣z)=P(x∣z)P(y∣z)
【给定z,x条件独立于y】
贝叶斯网络=图拓扑结构+局部条件概率
【重点】启发性、知识库、属性约简、决策规则
【重点】机器学习概述、研究内容、基本概念
机器学习(Machine Learning):致力于研究如何通过计算的手段,利用经验来改善系统自身的性能–(周志华-机器学习)
形式定义:假设用P来评估计算机程序在某任务类T上的性能,若一个程序通过利用经验E在T中任务上获得了性能改善,则程序对E进行了学习
经验:数据驱动,概率、统计和优化方法
学习算法:从数据中产生“模型”的算法
任务:给定一组带类别标记信息的数据,如何训练有效的模型对未知类别的数据进行预测(有师学习)
常见有监督算法:
线性回归
线性判别分析
朴素贝叶斯
决策树
支持向量机
神经网络
K近邻
任务:给定一组无类别信息的数据,如何训练模型推断出数据的一些内在结构信息(无师学习)
常见无监督算法:
k-means
Fuzzy k-means
DBSCAN
谱聚类
层次聚类
PCA
NMF
PageRank
任务:给定少量有类别信息和大量无类别信息的数据,如何训练模型进行预测或推断出数据的一些内在结构
常见半监督算法:
主动学习
协同学习
分岐模型
图模型
半监督SVM
半监督聚类
演绎与归纳:科学推理的两在基本手段
归纳学习:“从样例中学习”–特殊到一般的“泛化”(generalization)过程,机械学习
假设空间:多个与训练集一致的“假设”(hypothesis)集合
奥卡姆剃刀(Occam‘s razor):若有多个假设与观察一致,则选最简单的那个-假设也即模型
错误率(error rate): 分类错的样本数目占样本总数的比率;相应地,可定义精度(accuracy),即精度=1-错误率
误差(error): 模型的预测输出与样本的真实输出之间的差异
训练误差(training error):模型在训练集上的误差
泛化误差(generalization error):模型在新样本上的误差
泛化误差小,但预测样本未知,实际只能使训练误差小
3)验证集(validation set)—— 调参
[1] 影响模型泛化性能的因素在哪些?
[2] 例举一个机器学习的应用,并尝试分析其背后的技术。
【重点】维度约简概述、特征选择、过滤式方法、互信息特征选择
高维特征数据可能存在不相关的特征,特征之间也可能存在相互依赖,引起维数灾难问题:
维度约简:机器学习领域中一个重要的研究方向,是一种在保持数据某种特性情况下去除无关和冗余特征的过程
特征变换:高维特征空间映射至低维空间
• 将原始高维特征空间进行空间变换
• 选择变换后重要的且冗余性小的特征构建低维空间
特征选择:去除无关和冗余特征/保留有用特征
• 选择的特征应与分类/预测任务强相关
• 选择的特征彼此之间冗余性小
特征选择:其目标是保留用于学习的相关特征并去除冗余和不相关的特征从而达到减少特征个数,提高模型精确度,减少运
行时间的目的
一般过程:特征子集选择,评价函数,停止准则,验证过程
常见的特征选择方法大概可以分为三种:
过滤式方法:先对数据集进行特征选择,然后再训练学习器,特征选择过程与后续学习过程相互独立
思路:对每一维的特征打分,即给每一维的特征赋予权重,这样的权重就代表该维特征的重要性,然后依据权重排序
主要方法:
• 相关系数
• 卡方检验
• 信息增益,互信息
过滤式方法根据其对特征评价的方式可分为:特征排序(Feature Ranking)和特征子集(Feature subset)
特征排序:对每个特征分别度量其重要性,赋予一个“相关统计量”,并按大到小的排序-相关系数
设计一个阈值,然后选择比阈值大的相关统计量分量所对应的特征;或者指定欲选取的特征个数,然后选择相关统计量指数最大的指定个数特征(Top k)
特征排序:相关系数
相关系数最早是由统计学家卡尔·皮尔逊设计的统计指标,是研究变量之间线性相关程度的量
特征子集:根据特征重要性的度量,选择保持数据某种特性不变的特征子集-互信息特征选择设计特征和特征子集重要性度量准则,启发式加入带来最大效益的特征,直至找到与原所有特征集合在度量值上相等的特征子集(无参)
包裹式方法:选择在将要使用的学习器上最好性能的特征子集
思路:将子集的选择看作是一个搜索寻优的问题,生成不同的
特征组合,对组合进行评价,再与其他的组合进行比较,由此将特征子集的选择作为一个优化问题求解包裹式特征选择的目的就是为给定学习器选择最有利于其性能、“量身定做”的特征子集
主要方法:
• 完全搜索
• 启发式搜索
• 随机搜索
包裹式方法:特征子集产生过程是搜索特征子集空间的过程,
搜索策略可分为三类:
完全搜索(Complete)
• 广度优先搜索(Breadth First Search)
• 分支限界搜索(Branch and Bound)
• 定向搜索 (Beam Search)
• 最优优先搜索 (Best First Search)
启发式搜索(Heuristic)
• 序列前向选择(SFS , Sequential Forward Selection)
• 序列后向选择(SBS , Sequential Backward Selection)
• 双向搜索(BDS , Bidirectional Search)
随机搜索(Random)
• 模拟退火算法(SA, Simulated Annealing)
• 遗传算法(GA, Genetic Algorithms)
嵌入式方法:将特征选择过程与学习器训练过程融为一体,两者在同一个优化过程中完成,在学习器训练过程中自动地进行特征选择
思路:在给定学习任务(目标)的情况下,获得对于提升预测准确性最重要的属性,即在确定模型的过程中,挑选出对于学习任务相对重要的属性。
信息熵:两个椭圆表示的部分
联合熵:是信息熵的并集,两个椭圆的并
条件熵:是差集。左边的椭圆去掉重合部分就是 H ( X ∣ Y ) H(X|Y) H(X∣Y)
互信息:是信息熵的交集
【重点】卷积神经网络
神经网络:是由具有适应性的简单单元组成的广泛并行互连的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应
神经网络是一种模拟人脑的神经网络以期能够实现类人工智能的机器学习技术,它是目前最为火热的研究方向–深度学习的基础
单层感知机
感知器包含有两个层次,分别是输入层和输出层。输入层里的“输入单元”只负责传输数据,不做计算。输出层里的“输出单元”则需要对前面一层的输入进行计算。
图像表示-灰阶、矩阵、RGB颜色、HSV颜色、彩色转灰度、直方图
【重点】 AdaBoosting Bagging
集成学习通过构建并结合多个学习模型(学习器)来完成学习任务,也称多分类器系统.
个体学习器(Individual Learner):学习算法从训练数据产生的学习模型;学习算法如决策树,贝叶斯分类器,神经网络等;
同质集成(Homogeneous Ensemble):个体学习器的学习算法相同,此时个体学习器也称基学习器(Base Learner)
异质集成(Heterogenous Ensemble):个体学习器的学习算法不相同,此时个体学习器也称组件学习器(Component Learner)
理论基础:PAC(Probably Approximately Correct)
弱学习器:泛化性能略优于随机猜测的学习器
强学习器:泛化性能好的学习器
任意给定仅比随机猜测略好的弱学习器,可以将其提升为强学习器√
个体生成-Boosting
AdaBoosting(Adapting Boosting)- 带权采样
Bagging-自主采样
自主采样: 给定包含m个样本的数据集D,每次随机抽取一个样本放入采样数据集D‘,然后将该样本放回数据集D,使得该样本在下次采样时仍有可能被采到,重复执行m次,得到包含m个样本的数据集D’.
期末加油~!