人工智能复习

人工智能

逻辑
逻辑分为命题逻辑和谓词逻辑。
机器学习
监督学习(给出正确答案)
无监督学习(答案未知)
增强/强化学习(学习的正向激励)
分类
输入向量(属性值)
目标向量(分类结果)
回归
计算:与概率统计相关
目标:将独立变量集与因变量之间的相关性最小化
关键:分清自变量和因变量(考虑现实逻辑)
关联规则
事物同时出现或事件同时发生的关联。
聚类
记录的特征提取
特征的权重赋值
记录间的距离计算

概率
事件的概率Probability指无限次重复实验时,事件发生次数的比值。
概率视为一种主观置信度。
概率计算
联合概率P(A,B)是指事件A和事件B同时发生的概率,定义:P(A,B)=P(A)·P(B|A)=P(B)·P(A|B)。
类似地,推广到多事件联合概率P(A,B,C,D)=P(A)·P(B|A)·P(C|A,B)·P(D|A,B,C)。
当事件A和事件B相互独立时,P(A,B)=P(A)·P(B)。

P(A)=P(A,B)+P(A,Bc),其中Bc为B的对立事件。
变量
变量分为离散变量和连续变量。
期望
离散变量:E[X] = Sum(Xi·P(X=Xi))
连续变量:E[X] = Int(Xi·f(Xi))dX

离散期望满足:E[Sum(Xi)]=Sum(E[X])
概率分布中重要指标
中位数Median

众数Mode

方差Var(X) = E[(X-E[X])^2] = E[X^2]-(E[X])^2

协方差Cov(X,Y) = E[(X-E[X])·(Y-E[Y])] = E[X·Y]-E[X]·E[Y]

相关系数Corr(X,Y) = Cov(X,Y)/sqrt(Var(X)·Var(Y))
距离Distance(范数Norm)
Dis(x,y)=(Sum(|Xi - Yi|^r))^(1/r)
r=1:街区距离
r=2:欧氏距离
r=∞:最大距离 

逻辑Logic
命题逻辑:以逻辑运算符结合原子命题来构成代表“命题”的公式,以及允许某些公式建构成“定理”的一套形式“证明规则”。
一阶谓词逻辑:一阶逻辑是一种形式系统(Formal System),即形式符号推理系统。
...
命题逻辑Propositional Logic
逻辑常量Logical Constants:True、False。
命题符号Propositional Symbol:P、Q...等原子表达式(用于用户定义具体语境)。
逻辑连接词: 
        (1)与∨
        (2)或∧
        (3)蕴含→ 
        (4)等价↔
        (5)非﹁ 
知识库
前提为所有命题逻辑都是可以判断真假的。
知识库时一个命题逻辑的集中,其中所有的命题全部视为真命题。
一阶谓词逻辑First-order Predicate Logic
个体词Object:代表一个具体的对象。
谓词Predicate:代表一个对象属性。属性Attributes可以描述关系Relation或者性质Function。
量词Quantifier:
        (1)全称量词Universial Quantifier:∀
        (2)存在量词Existential Quantifier:∃
摩根定律Morgan’s Law
∀xL ↔ ﹁(∃x﹁L)
﹁(∀xL) ↔ ∃x﹁L
量词的作用域Quantifier Scope
∀x(F(x) ↔ F(h))
∀xF(x) ↔ F(h)
∀x(∃yR(x,y))

K最近邻算法K-Neareast Neighbor
所有的数据(对象)都以n维向量的形式表示。
数据之间的相似程度使用欧氏距离衡量。
目标向量可能是连续值或者离散值:
            (1)对于离散目标向量,KNN算法的结果是离测试数据最近的K个样本的众数。
            (2)对于连续目标向量,KNN算法的结果是K个醉解结果的平均值或中位数。
KNN算法的影响因素:
            (1)相似度的计算方法。
            (2)最近样本数K的选择。
            (3)数据向量中每个维度的权重设置。
            (4)最近样本的统计方法。
朴素贝叶斯
贝叶斯公式:P(Ci|X) = (P(X|Ci)·P(Ci))/P(X),其中:
            (1)P(Ci|X):后验概率。
            (2)P(X|Ci):先验概率。
            (3)P(Ci):似然度。
            (4)P(X):标准化常量。
假设每一种属性之间是相互独立的,那么P(X|Ci)=P(X1|Ci)·P(X2|Ci)·...·P(Xk|Ci)。

某些事件的发生概率P(Xk|Ci)=0导致先验概率为0的概率问题:拉普拉斯平滑(基于较大次数实验的统计下假设事件发生过1次)。

决策树Decision Tree
决策树是类似Flow-Chat的树状结构。
            (1)中间节点代表属性Attributes的分支。
            (2)分枝Branch代表属性的不同取值。
            (3)叶子节点Leaf Node代表样本的最终分布。
决策树的建立:
            (1)建树:迭代性地利用属性的分支进行节点的划分。
            (2)剪枝:移除残生噪点的节点。
熵Entropy
熵H(X) = -Sum(P(X)·log2(P(X))) = Sum(P(X)·log2(1/P(X))) = E[log2(1/P(X))]

条件熵H(Y|X) = Sum(P(X)·H(Y|X=Xi)) = -Sumx_Sumy(P(x)·P(y|x)·log2(P(y|x)))

联合熵H(X,Y) = -Sumx_Sumy(P(x,y)log2(x,y)) = H(X) + H(Y|X)

互信息I(X;Y) = H(X) - H(X|Y) = H(Y) - H(Y|X)
不确定性的衡量
连续变量X的不确定性,用方差Var(X)来衡量。
离散变量X的不确定性,用熵H(X)来衡量。
相关度的衡量
连续变量X、Y的相关度,用协方差和相关系数来衡量。
离散变量X、Y的相关度,用互信息I(X;Y)来度量。
决策树建立策略
ID3算法:信息增益Infomation Gain(互信息的大小)。

C4.5算法:信息增益率GainRatio(D) = Gain_{A}(D) / SplitInfo_{A}(D),其中SplitInfo_{A}(D) = -Sum(|Di|/|D|·log2(|Di|/|D|))

CART算法:基尼指数Gini Index,即Gini(D) = Sum_{j=1}{n}(P(j)·(1-P(j)) = 1 - Sum_{j=1}{n}(P(j)^2)
剪枝
目标:避免过拟合Over-fitting
方法:设置惩罚系数Penalty

分类器衡量
对于一个拥有n个属性x的输入向量X,为每一个属性设置一个权重构成权重向量W,另有常数项d。输入向量的正确分类为y,构成了输出向量Y。

分类器对于所有输入向量x的分类结果都正确,即分类噪声均值为0:Sum_{i=1}{m}(Yi-(Sum_{j=i}{n}(W_{ij}·X_{ij}))) / n = 0。

成本函数Q(W) = min Sum_{i=1}{n}((Y-W_{i}·X_{i})^2),即分类误差的平方和最小。

根据凸函数理论,成本函数Q(W)的极值点满足: ∂Q(W)/∂wi = 0,即成本函数对每一个维度权重的偏导数都为0。
PLA算法
对于一个d个维度的输入向量:
            (1)如果Sum_{i=1}{d}(wi·xi) > threshold,则分类为+1
            (2)如果Sum_{i=1}{d}(wi·xi) < threshold,则分类为-1
将上述判别规则fengzhuang为函数h(X):
            h(X) = Sign(Sum_{i=1}{d}(wi·xi) - threshold) 
                 = Sign(Sum_{i=1}{d}(wi·xi) + 1·(-threshold))
                 = Sign(Sum_{i=0}{d}(wi·xi))  //w0 = -threshold;  x0 = 1;
                 = Sign(W·X)
此时权重向量W的更新策略为:
            当Sign(W·X) ≠ y时,W_{t+1} ← W_{t} + y·X,其中t表示第t次遍历。

逻辑回归Logistic Regression
在初始最小二乘的回归模型y = w0 + Sum_{i=0}{d}(wi·xi) + u中(u是异方差),由于y是二元分布,所以分类的结果并不具有概率的意义。
可以通过logit函数y=p/(1-p)将y和分类为y的概率p映射起来,其中p/(1-p)成为几率odd ratio。
通过计算可以得到p = 1/(1 + e^(-W·X)) = (e^(W·X))/(e^(W·X) + 1)。
分类器权重更新
似然函数f = Mul_{i-1}{n}(Pi^yi · (1-Pi)^(1-yi))用于衡量回归的效果,所以需要使似然函数最大化。
使用log对数运算将乘法变成加法,得到函数L(W):
            L(W) = Sum_{i=1}{n}(yi·log(Pi) + (1-yi)·log(1-Pi))
                 = Sum_{i=1}{n}(yi·W·Xi - log(1 + e^(W·Xi)))
要使L(W)最大化,根据函数的凸理论需要找到极值点。
max L(W) ⇔ min C(W) = -L(W) = -Sum_{i=1}{n}(yi·log(Pi) + (1-yi)·log(1-Pi))即最小化交叉熵(最大程度提高Y和P的相关性)。
使用梯度下降法Gradient Descent找到C(W)的极值点:
            wi = wi - η · ∂C(W)/∂wi
               = wi - η · Sum_{i=1}{n}(((e^(W·Xk))/(1 + e^(W·Xk)) - yi)·Xki),其中η叫做变化步长,Xki为第k个输入向量的第i维参数。
需要注意的是,LR算法中给定的标签y是0或1(与PLA算法不一样)。

神经网络

关联规则
关联规则:前项Antecedent → 后项Consequent[支持度Support,置信度Confidence]。
            (1)支持度Support:s(A→C) = s(C→A) = P(A,C)
            (2)置信度Confidence:c(A→C) = P(A,C) / P(A)
频繁项集Frequent Itemset
频繁项集:满足最小支持度Mimsup的项目集合。
性质:频繁项集的子集一定是频繁的。
频繁项集的生成:Apriori Algorithm
算法:原始数据 → 1项集 → 频繁1项集 → 2项集 → 频繁2项集 → ...
算法核心:用频繁(k-1)项集生成候选频繁项集的k项集。
最大频繁项集
最大频繁项集:没有一个直接超集是频繁的频繁项集。
闭频繁项集
闭频繁项集:没有一个直接超集具有相同的Support计数的频繁项集。
性质:最大频繁项集一定是闭频繁项集。
关联规则生成
假设Y={a,b,c}是一个频繁项集,那么从Y可以生成6个关联规则:
            (1){a,b} → {c}
            (2){a,c} → {b}
            (3){b,c} → {a}
            (4){a} → {b,c}
            (5){b} → {a,c}
            (6){c} → {a,b}
然后衡量最小置信度minconf。

K均值聚类算法K-Mean
方法(一):
            (1)随机选择K个中心点Centroid;
            (2)聚类划分;
            (3)重新选择中心点/更新中心点;
方法(二):
            (1)将所有点随机分配到K个标签中;
            (2)聚类划分;
            (3)更新中心点;
基于密度的聚类DBSCAN
设置一个密度阈值minPts,然后分别将所有点按一下类别进行分类:
            (1)核心点:以该点为中心的圆内包含的点的数目大于minPts;
            (2)边界点:以该点为中心的圆内包含的点的数目小于minPts但是包含核心点;
            (3)噪声点:其他点。
层次式聚类
聚合式聚类:
            (1)单连接Single-link
            (2)全连接Full-link
            (3)组平均Group-average

分裂式聚类:聚合式聚类的拟过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值