Duncan's Blog


  • menu.主页

  • menu.分类

  • menu.关于

  • menu.归档

  • menu.标签
Duncan's Blog

Crawler

Veröffentlicht am 2018-04-25 | in Crawler

由于论文需要补充数据集,现抓取微博上演员,歌手,导演,运动员和普通用户共1w个.包括他们的基本信息和粉丝和朋友关系.


步骤

(不考虑多线程)

  • 1.安装依赖的库: requests,selenium,BeautifulSoup

  • 2.分析页面,从微博搜索框输入相应领域,获得分页的结果页面,从结果页面提取用户的id.

  • 3.由于返回的结果页面是异步加载,通过selenium模拟浏览器访问,抓取返回的结果页面上的id.(需要对selenium添加请求头信息)

  • 4.抓取到用户id后,可通过weibo API抓取其基本信息和关系信息.

(在抓取用户的关注时,使用多线程)

  • 5.python多线程模块threading,因为是I/O密集型,所以用多线程
Duncan's Blog

ProbabilityTheory

Veröffentlicht am 2018-04-17 | in Data Mining

概率论相关公式整理如下:


第二章 基本概念

  • 交换律:A + B = B + A,AB=BA
  • 结合律:(A+B)+C=A+(B+C)=A+B+C,(AB)C=A(BC)=ABC
  • 分配律:(A+B)C=AC+BC,AB+C = (A+C)(B+C)
  • 德摩根律: $\overline{A+B}=\bar{A}\bar{B}$,$\overline{AB}=\bar{A}+\bar{B}$
  • P(A-B) = P(A)-P(AB)
  • P(A+B) = P(A) + P(B) - P(AB)
  • 乘法概率公式: 若P(B)>0,$P(AB)=P(B)P(A|B)$.若P(A)>0,$P(AB)=P(A)P(B|A)$.
    一般地,$P(A_1A_2…A_{n-1})>0$,则$P(A_1A_2…A_n)=P(A_1)P(A_2|A_1)P(A_3|A_2A_1)…P(A_n|A_1A_2…A_{n-1})$
  • 全概率公式: $P(B)=\sum_{i=1}^{n}P(A_i)P(B|A_i)$
  • 贝叶斯概率公式: $P(B|A) = \frac{P(B)P(A|B)}{P(A)}$

第三章 分布

1.离散型分布

  • 1.0-1分布 $X\sim B(1,p)$

  • 2.二项分布 $X \sim B(n,p)$

  • 3.泊松分布 $X \sim P(\lambda)$

2.连续型分布

  • 1.均匀分布 $X \sim U[a,b]$

  • 2.指数分布 $X \sim E(\lambda)$

    $\lambda>0$

  • 3.正态分布 $X\sim N(\mu,\sigma^2)$

第四章 随机变量的特征

1.期望概念

  • 离散型: $E(X)=\sum_{i=1}^{\infty}x_ip_i$
  • 连续型: 设连续型随机变量X的概率密度函数为f(x),若积分$\int_{-\infty}^{+\infty}|x|f(x)dx<+\infty$存在,并称积分$\int_{-\infty}^{+\infty}xf(x)dx$为X的数学期望,记为E(X),即$E(X)=\int_{-\infty}^{+\infty}xf(x)dx$

2.期望性质

  • E(c) = c, 其中c为常数
  • E(cX) = cE(X), 其中c为常数
  • E(X+Y) = E(X) + E(Y)
  • 若X,Y相互独立,E(XY) = E(X)E(Y)

3.方差概念
$D(X)=E(X^2)-[E(X)]^2$

4.方差性质

  • D(c) = 0, 其中c为常数
  • $D(cX) = c^2D(X)$, 其中c为常数
  • 若X,Y相互独立, D(X+Y) = D(X) + D(Y)

5.协防差
$Cov(X,Y) = E{[X-E(X)][Y-E(Y)]}$

6.相关系数
$\rho_{XY}=\frac{Cov(X,Y)}{\sqrt{D(X)}\sqrt{D(Y)}}$

7.协防差和相关系数性质

  • Cov(X,Y) = Cov(Y,X)
  • Cov(aX,bY) = abCov(X,Y), a,b为常数
  • $Cov(X_1+X_2,Y) = Cov(X_1,Y) + Cov(X_2,Y)$
  • D(X+Y) = D(X) + D(Y) + 2Cov(X,Y)
  • Cov(X,Y) = E(XY) - E(X)E(Y)
  • $|\rho_{XY}| \leq 1$
  • 若X,Y相互独立,则$\rho_{XY}=0$
  • $\rho_{XY}=\pm$的充要条件是存在两个常数a,b,且$a\neq0$,使得$P{Y=aX+b}=1$.

第五章 大数定律和中心极限定理

1.契比雪夫不等式: 设随机变量X的数学期望为E(X)=a,方差为D(X),则对于给定的数$\epsilon>0$,有

2.大数定律: 设{Xn}为一随机变量序列,a为一个常数,如果对任何给定的正数$\epsilon$,有$\lim_{n \to \infty}P{|X_n-a|\geq \epsilon}=0$,则称随机变量序列{Xn}依概率收敛于a,记为.

3.契比雪夫大数定律: 设{Xn}为一随机变量序列,若对于所有的自然数n,数学期望E(Xn)及方差D(Xn)均存在,且存在某常数M>0,使得D(Xn)$\leq M$,则有.

4.贝努里大数定律: 在n次重复独立试验中,设Yn为事件A发生的次数,每次试验事件A发生的概率为P,则.

5.辛钦大数定律: 设{Xn}为独立同分布的随机变量序列,且具有数学期望E(Xi)=$\mu,i=1,2,…$,则.

6.中心极限定理: 设{Xn}为独立同分布的随机变量序列,且E(Xi)=$\mu$,D(Xi)=$\sigma^2\neq0,i=1,2,…$,则当n充分大时,$\frac{\sum_{i=1}^{n}X_i-E(\sum_{i=1}^{n}X_i)}{\sqrt{D(\sum_{k=1}^{n}X_k)}}$近似地服从标准正态分布,记作.

第六章 数理统计概念

1.统计量

  • 样本均值: $\bar{X}=\frac{1}{n}\sum_{i=1}^{n}X_i$
  • 样本方差: $S^2 = \frac{1}{n-1}\sum_{i=1}^{n}(X_i-\bar{X})^2=\frac{1}{n-1}[\sum_{i=1}^{n}X_i^2-n(\bar{X})^2]$
  • 样本标准差: $S=\sqrt{S^2}$
  • 样本k阶原点矩 $A_k=\frac{1}{n}\sum_{i=1}^{n}X_i^k(k=1,2,..)$
  • 样本k阶中心矩 $B_k=\frac{1}{n}\sum_{i=1}^{n}(X_i-\bar{X})^k$

2.抽样分布
卡方分布,F分布,正态分布

第七章 参数估计

1.矩估计: 概括来讲就是用样本矩估计总体矩(原点矩).
2.极大似然估计法

  • 离散型:概率连乘求极大
  • 连续型:概率密度函数连乘求偏导

3.估计量的评价标准:待完善

4.区间估计:待完善

第八章 假设检验

  • 1.建立原假设H0(备选假设H1)
  • 2.根据检验对象,构造适当的统计量g(X1,X2,…,Xn)
  • 3.在H0成立的条件下,确定统计量g(X1,X2,…,Xn)的分布
  • 4.由显著性水平$\alpha$确定临界值,从而得到拒绝域或接受域
  • 5.根据样本值计算统计量的观测值,由此作出接受原假设或拒绝原假设的结论
Duncan's Blog

记录几个经典模型

Veröffentlicht am 2018-03-29 | in Learning

参考网络博客和个人理解记录如下:


1.GBDT(Gradient Boosting Decision Tree)

1.优势

  • 效果还不错
  • 既可用于分类也可用于回归
  • 可以筛选特征

2.关键点

2.1 gbdt 的算法的流程?
gbdt通过多轮迭代,每轮迭代生成一个弱分类器,每个分类器在上一轮分类器的残差基础上进行训练.(弱分类器一般会选择CART TREE - 分类回归树)

最终的总分类器是将每轮训练得到的弱分类器加权求和得到. - 加法模型

模型最终可描述为:$F_M(x)=\sum_{m=1}^{M}T(x;\theta_{m})$
模型一共训练M轮,每轮产生一个弱分类器$T(x;\theta_m)$,弱分类器的损失函数

gbdt在每轮迭代的时候,都去拟合损失函数在当前模型下的负梯度.
2.2 gbdt 如何选择特征 ?
原始的gbdt做法非常暴力,首先遍历每个特征,然后对每个特征遍历它所有可能的切分点,找到最优特征m的最优切分点j.

2.3 gbdt 如何构建特征 ?
工业界做法是和逻辑回归结合,得到组合特征.

2.4 gbdt 如何用于分类?
gbdt多分类

对于多分类任务,GBDT的做法采用一对多的策略.一共有K个类别,训练M轮,每一轮都训练K个树,训练完成后一共有M*K个树.损失函数log loss

2.5 gbdt 通过什么方式减少误差 ?
拟合残差,梯度下降

2.6 gbdt的效果相比于传统的LR,SVM效果为什么好一些 ?

  • 1.结合了多个弱分类器,是集成学习,所以泛化能力和准确率更高
  • 2.SVM对于训练集不同的维度,数据量的大小,核函数的选择直接决定了模型的训练效果.gbdt相较于SVM和LR更不容易过拟合,因为它的超参学习能力较好,gbdt的泛化能力更多取决于数据集.

2.7 gbdt的参数有哪些,如何调参 ?
1.框架参数

  • 步长 - 选择一个较大的步长
  • 迭代次数或者说学习器的个数 - 100左右
  • 学习率$\eta$
  • 损失函数 - 分类问题和回归问题不一样(分类问题有对数似然和指数似然函数;回归模型有均方误差,绝对损失,Huber损失和分位数损失)

2.弱学习器参数

  • 树的深度 - 10-100
  • 最大特征数 - 划分时考虑的最大特征数
  • 最小叶子结点样本数
  • 最大叶子结点个数 - 限制最大叶子结点数,防止过拟合

2.8 gbdt的优缺点 ?
1.优点

  • 泛化能力强,不容易过拟合
  • 不需要复杂的特征工程

2.缺点

  • 难以实行并行化
  • 模型复杂度较高,深入分析和调优有一定难度

2.XgBoost(Extreme Gradient Boosting)

1.xgboost和GBDT区别

  • 传统GBDT以CART作为基分类器,xgboost还支持线性分类器.
  • 传统GBDT在优化时只用到一阶导数信息,而xgboost进行了二阶泰勒展开
  • xgboost在代价函数中加入了正则项
  • 对于缺失值的处理,xgboost可以自动学习出它的分裂方向
  • xgboost支持并行,并行过程是在确定最佳分割点时,每一轮的训练还是前向分步法,这个过程不能并行.选择最佳分割点时使用近似直方图算法

3.SVM(Support Vector Machine)

参考该篇博客: https://blog.csdn.net/szlcw1/article/details/52259668 (谢谢作者整理)

4.CNN(Convolutional Neural Network)

Duncan's Blog

Leetcode

Veröffentlicht am 2018-03-20 | in Learning

刷题leetcode题解: https://github.com/DuncanZhou/LeetCodePractice
大约有300多道,如有错误,欢迎指教,邮箱链接: ymzhou@stu.suda.edu.cn

Duncan's Blog

StatisticLearning

Veröffentlicht am 2018-03-17 | in Learning

<统计学习方法> - 李航


重在推导过程,简单记录一些细节

第一章 统计学习方法概论

1.泛化误差/期望损失(风险函数):是理论模型f(X)关于联合分布P(X,Y)的平均意义下的损失.

2.训练误差(经验风险/经验损失):是模型f(X)关于训练数据集的平均损失

3.根据大数定律,当样本容量N趋于无穷时,经验风险趋于期望风险,所以一般用经验风险估计期望风险.但现实中训练样本数目有限,所以对经验风险要进行一定的矫正.经验风险最小化和结构风险最小化(正则化)

4.过拟合解决方案:

  • 正则化
  • 交叉验证
    • 简单交叉验证
    • K-Fold交叉验证
    • 留一交叉验证

5.生成方法和判别方法比较

  • 生成方法:由数据学习联合概率分布P(X,Y),然后求出条件概率分布P(Y|X)作为预测模型,即生成模型$P(Y|X)=\frac{P(X,Y)}{P(X)}$.
  • 判别方法:由数据直接学习决策函数f(X)或者条件概率分布P(Y|X)作为预测的模型.
  • 两者区别:
    • 生成方法可以还原出联合概率分布,而判别方法不能;生成方法的学习收敛速度更快.
    • 判别方法直接学习的式条件概率或决策函数,直接面对预测,往往学习的准确率更高.可以对数据进行各种程度上的抽象,定义特征并使用特征,简化学习问题.

6.回归问题按照输入变量的个数分为一元回归和多元回归;按照输入变量和输出变量之间关系的类型即模型的类型,分为线性回归和非线性回归.

7.回归学习最常用的损失函数是平方损失函数 - 最小二乘法求解.

第二章 感知机

1.模型:$f(x)=sign(w\cdot{x}+b)$,找一个可以划分正负样例的超平面,属于判别模型

2.学习策略:损失函数定义为误分类点到超平面的总距离

3.学习算法:随机梯度下降

第三章 k近邻法

kd tree的划分方法和搜索方法参考网上资料

第四章 朴素贝叶斯

1.基于属性独立的强假设

2.朴素贝叶斯 -> 贝叶斯估计(防止有属性概率为0存在)

略

第五章 决策树

1.决策树模型呈树形结构,在分类问题中,表示基于特征对实例进行分类的过程.可以认为是if-then规则的集合,也可以认为是定义在特征空间与类空间上的条件概率分布.

2.决策树学习过程包含三个步骤:特征选择,决策树的生成和决策树模型的修剪

3.决策树的损失函数通常是正则化的极大似然函数,决策树学习的策略是以损失函数为目标函数的最小化,决策树的学习算法通常采用启发式方法,因为从所有可能的决策树中选取最优决策树是NP完全问题.

4.特征选择

4.1 特征选择的准则通常是选择信息增益或信息增益率(基尼系数)

4.2 熵:$H(p)=-\sum_{i=1}^{n}p_ilogp_i$,熵越大,不确定性越大

4.3 条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性.$H(Y|X)=\sum_{i=1}^{n}p_iH(Y|X=x_i)$

4.4 信息增益:特征A对训练集D的信息增益g(D,A),定义为集合D的经验熵H(D)与特征A给定条件下D的经验条件熵H(D|A)之差,即$g(D,A)=H(D)-H(D|A)$

4.5 信息增益比:特征A对训练集D的信息增益比$g_R(D,A)$定义为其信息增益$g(D,A)$与训练集D的经验熵H(D)之比为:$g_R(D,A)=\frac{g(D,A)}{H(D)}$

5.ID3算法/C4.5算法参考<西瓜书>,西瓜书上讲得略微好一点

6.CART算法:最小二乘法生成回归树,基于基尼系数生成回归树

7.剪枝策略:预剪枝和后剪枝 (参考西瓜书上) 将数据集分为训练集和验证集,用验证集来进行剪枝操作.

第六章 Logistic回归和最大熵模型

1.X服从Logistic分布是指X具有以下分布函数和密度函数:

式中,$\mu$为位置参数,$\gamma>0$为形状参数.

2.logistic回归策略:构造极大似然函数,使用梯度下降方法或拟牛顿法求解优化.

3.最大熵模型(待完善)

第七章 SVM

其他略,已经复习过

补充:SMO(序列最小最优化算法):
1.总体思路

  • 选取一对需要更新的变量$\alpha_i$,$\alpha_j$
  • 固定$\alpha_i$,$\alpha_j$以外的参数,求解对偶问题

2.具体细节

  • First,SMO算法先选取违背KKT条件程度最大的变量
  • Second,第二个变量理应选择一个使目标函数值减小最快的变量,但由于比较各变量所对应的目标函数值减幅的复杂度过高,因此SMO采用了一个启发式:使选取的两变量所对应样本之间的间隔最大.

第八章 提升方法

1.概念:对提升方法来说,有两个问题需要回答

  • 在每一轮如何改变训练数据的权值或概率分布 - AdaBoost提高那些前一轮弱分类器错误分类样本的权值,而降低那些被正确分类样本的权值
  • 如何将弱分类器组合成一个强分类器 - AdaBoost采取加权多数表决的方法,具体地,加大分类误差率较小的弱分类器的权值,使其表决中起较大的作用,减小分类误差率较大的弱分类器的权值,使其再表决中其较小的作用.

2.AdaBoost
学习样本权重$D_m$,学习分类器权重$\alpha_m$

  • $D_m={w_{m1},w_{m2},…,w_{mN}}$,样本权重和上一次的分类器分类结果有关
  • $\alpha_m=\frac{1}{2}log\frac{1-e_m}{e_m}$,$e_m$为分类误差错误率(算错误率时乘上样本权重)

3.提升树
前向分步法+拟合残差,在拟合残差时,如果损失函数是平方差函数或指数损失函数时,每一步优化很简单.如果是一般损失函数,则可以使用梯度提升算法.

4.Bagging和Stacking见<西瓜书>

Duncan's Blog

西瓜书阅读

Veröffentlicht am 2018-03-15 | in Learning

西瓜书阅读记录(2.0)

2018年1月19日提交1.0
2018年3月1日重新持续更新2.0
2018年3月15日完成1-11章的阅读,下面开始阅读<统计学习方法>

=============================================

第一章 绪论

1.归纳偏好

  • 奥卡姆剃刀:若有多个假设与观察一致,则选择最简单的那个.

2.NEL定理(No Free Lunch):脱离具体问题,空泛的谈论”什么学习算法更好”毫无意义.

第二章.模型评估与选择

1.过拟合:当学习器把训练样本学得”太好了”的时候,很可能已经把训练样本本身的一些特点当作了所有潜在样本都会具有的一般性质.

2.欠拟合:学习能力低下造成的,解决办法:在决策树学习中扩展分支/在神经网络学习中增加训练轮数等.

3.评估方法:

3.1 测试集应该尽可能与训练集互斥,即测试样本尽量不再训练集中出现,未在训练过程中使用过.

3.2 划分训练集和测试集的方法: a)留出法,直接将数据集划分为互斥的两个集合;b)交叉验证法(k-fold validation),先将数据集D划分为k个大小相似的互斥子集,每个子集都尽可能保持数据分布的一致性.然后,每次用k-1个子集的并集作为训练集,余下的那个子集作为测试集,进行k次训练和测试,最终返回这k个测试结果的均值.(k的通常取值为10,并且通常对k-fold validation做多次,一般为10次10折交叉验证法).c)自助法(bootstrapping),给定包含m个样本的数据集D,对它进行采样产生数据集D’:每次随即从D中挑选一个样本,将其拷贝放入D’,然后再将该样本放回初始数据集D中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,我们就得到了包含m个样本的数据集D’.

3.3 调参参数类型:算法参数(超参)和模型参数.

  • 模型参数是学习得到的,作为模型的一部分保存
  • 算法参数是算法中的参数,是模型外部的配置,如:神经网络中的学习速率,支持向量机中的C和sigma参数.

4.性能度量:

4.1 回归任务最常用的性能度量是”均方误差”:

4.3 P-R图:以查准率为纵坐标,以查全率为横坐标.在进行比较时,若一个学习器的P-R曲线被另一个学习器的曲线完全”包住”,则可断言后者的性能优于前者. “平衡点”(BEP):当查准率 = 查全率时的取值,即为平衡点.当两个曲线有交点时,可通过比较平衡点的取值.

4.4 F1-measure:

(补充):,当$\beta=1$时,退化为标准的F1;$\beta>1$时查全率有更大影响;$\beta$&lt1时查准率有更大影响.

4.5 查准率和查全率的应用目的区别:例如在商品推荐系统中,为了尽可能少打扰用户,更希望推荐内容的确是用户感兴趣的,此时查准率更重要;而在逃犯信息检索系统中,更希望尽可能少漏掉逃犯,此时查全率更重要.

4.6 对于多分类考察查准率和查全率,基于两种方式:a)先在各个混淆矩阵上计算(P1,R1),(P2,R2),…,(Pn,Rn),然后再计算平均值得到”宏查准率”和”宏查全率”.b)先将各混淆矩阵上的对应元素计算平均,再基于这些平均值计算出”微查准率”和”微查全率”.

4.7 ROC和AUC: ROC体现了综合考虑学习器在不同任务下的”期望泛化性能”的好坏,或者说,”一般情况下”泛化性能的好坏.ROC曲线的纵轴是”真正例率(TPR)”,横轴是”假正例率(FPR)”,两者分别定义为TPR=TP / (TP + FN), FPR=FP / (TN + FP). 和P-R图相似,若一个学习器的ROC曲线被另一个学习器的曲线完全”包住”,则可断言后者性能优于前者.若两个学习器的ROC曲线发生交叉,则难以一般性地断言两者孰优孰劣,此时如果一定要进行比较,则较为合理的判据是比较ROC曲线下的面积,即AUC.

写成向量形式:

其中,w=(w1;w2;…;wd).w和b学得之后,模型就得以确定.

2.线性回归

2.1 概念:线性回归试图学得一个线性模型以尽可能准确地预测实值输出标记.

2.2 均方误差是回归任务中最常用的性能度量.基于均方误差来求解模型的方法成为最小二乘法.

2.3 对于多元线性回归,可以利用最小二乘法来对w和b进行估计.

2.4 对数线性回归: 认为示例所对应的输出标记是在指数尺度上变化.

实际上是试图让逼近y.

2.5 广义线性模型: (将输入空间上的真实值到输出空间上预测值的非线性函数映射)

3.对数几率回归

3.1 对数几率回归是一种”Sigmoid函数”.进而将回归问题转化为分类问题.

(补充):优化方法:极大似然估计;先构造极大似然函数,再利用梯度下降或牛顿法进行优化函数.

4.线性判别分析(待温故)

4.1 线性判别分析(Linear Discriminant Analysis),简称LDA,是一种经典的线性学习方法.LDA:给定训练样例集,设法将样例集投影到一条直线上,使得同类样例的投影点尽可能近/异类样例的投影点尽可能远;在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定新样本的类别.即,欲使同类样例的投影点尽可能接近,可以让同类样例投影点的协方差尽可能小;而欲使异类样例的投影点尽可能远离,可以让类中心之间的距离尽可能大.

4.2 奇异值: 特征值分解是提取矩阵特针很不错的方法,但是它只是针对方针而言的,对于非方阵矩阵,使用奇异值分解能适用于任何形式的矩阵.分解形式为:

5.多分类学习

5.1 多分类学习的基本思路是”拆解法”,即将多分类任务拆分为若干个二分类任务求解.最经典的拆分策略有三种:”一对一(One vs. One OvO)”,”一对其余(One vs. Rest,OvR)”和”多对多(Many vs. Many,简称MvM)”.

(补充)
5.2 类别不平衡问题:指的是分类任务中不同类别的训练样例数目差别很大的情况.
基本策略:

解决方案:

  • 1.直接对训练集里的反例样例进行”欠采样”(下采样),即去除一些反例使得正/反例数目接近,然后进行学习
  • 2.对训练集里的正类样例进行”过采样”(上采样),即增加一些正例使得正/反例数目接近,然后再进行学习
  • 3.直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,将基本策略公式嵌入到决策过程中,称为”阈值移动”

第四章 决策树

4.1 信息熵是度量样本集合纯度最常用的一种指标.假定当前样本集合D中第k类样本所占的比例为pk(k=1,2,…,|Y|),则D的信息熵为

Ent(D)的值越小,则D的纯度越高.

4.2 假定离散属性a有V个可能的取值{a1,a2,…,aV},若使用a对样本集D进行划分,则会产生V个分支结点,其中第v个分支结点包含了D中所有在属性a上取值为av,记为Dv.于是可以计算出用属性a对样本集D进行划分所获得的信息增益

其中,.(参考西瓜书Page86)

对于第二个问题,若样本x在划分属性a上的取值已知,则将x划入与其取值对应的子结点,且样本权值在子结点中保持为$W_x$.若样本x在划分属性a上的取值未知,则将x同时划入所有子结点,且样本权值在与属性值$a^v$对应的子结点调整为$\tilde{r_v}\cdot{w_x}$.

4.8 多变量决策树: 实现斜划分甚至更复杂的决策树.在多变量决策树的学习过程中,不是为每个非叶结点寻找一个最优划分属性,而是试图建立一个合适线性分类器.


第五章 神经网络

1 神经网络的学习过程就是根据训练数据来调整神经元之间的连接权以及每个功能神经元的阈值.

2 感知机: 由两层神经元组成,输入层接受外界输入信号后传递给输出层,输出层是M-P神经元,亦称”阈值逻辑单元”. 对于非线性问题,需要考虑使用多层功能神经元.

3 误逆差传播算法(亦称反向传播算法,BP算法):BP算法是基于梯度下降策略,以目标的负梯度方向对参数进行调整.

4 累积BP算法的目标是最小化训练集D上的累积误差.标准BP算法每次更新只针对单个样例,参数更新得非常频繁,而对不同样例进行更新的效果可能出现”抵消”现象.因此为了达到同样的累积误差极小点,标准BP算法往往需要进行更多次数的迭代.累积BP算法直接针对累积误差最小化,它在读取整个训练集D一遍后才对参数进行更新,其参数更新的频率低得多,但在很多任务中,累积误差下降到一定程度后,进一步下降会非常缓慢,这时标准BP往往会更快获得较好的解,尤其是在训练集D非常大时更明显.

5 BP神经网络经常遭遇过拟合,两种策略解决: a)早停,将数据分成训练集和验证集,训练集用来计算梯度/更新连接权和阈值,验证集用来估计误差,若训练集误差降低但验证集误差升高,则停止训练,同时返回具有最小验证集误差的连接权和阈值. b)正则化,其基本思想是在误差目标函数中增加一个用于描述网络负责度的部分.

6 神经网络采用一下策略”跳出”局部极小:

  • 以多组不同参数值初始化多个神经网络,按标准方法训练后,取其中误差最小的解作为最终参数.
  • 使用”模拟退火“,即以一定概率接受比当前解更差的结果.
  • 使用随机梯度下降.与标准梯度下降精确计算梯度不同,随即梯度下降法在计算梯度时加入了随即因素,于是,即使陷入局部极小点,它计算出的梯度仍可能不为0,这样有机会跳出局部极小点继续搜索.

(补充):梯度下降:

  • 1)批量梯度下降:每次使用全量的训练集样本来更新模型参数
  • 2)随机梯度下降:每次从训练集中随机选择一个样本来进行学习
  • 3)小批量梯度下降:每次更新速度与更新次数中间取得一个平衡,其每次更新从训练集中随机选择 m (m小于n) 个样本进行学习

7 其他常见神经网络

  • RBF网络(使用径向基函数作为隐层神经元激活函数,而输出层是对隐层神经元输出的线性组合.)
  • ART网络(竞争型学习是神经网络中一种常用的无监督学习策略,在使用该策略时,网络的输出神经元相互竞争,每一时刻仅有一个竞争获胜的神经元被激活,其他的神经元的状态被抑制.ART网络有比较层/识别层/识别阈值和重置模块构成.比较层负责接收输入样本,并将其传递给识别层神经元.识别层每个神经元对应一个模式类,神经元数目可在训练过程中动态增长以增加新的模式类)
  • SOM网络(一种竞争学习型的无监督神经网络,它能将高维输入数据映射到低维空间,同时保持输入数据在高维空间的拓扑结构.)
  • 级联相关网络
  • Elman网络
  • Boltzmann机

8 深度学习:一般地,CNN的基本结构包括两层,其一为特征提取层,每个神经元的输入与前一层的局部接受域相连,并提取该局部的特征。一旦该局部特征被提取后,它与其它特征间的位置关系也随之确定下来;其二是特征映射层,网络的每个计算层由多个特征映射组成,每个特征映射是一个平面,平面上所有神经元的权值相等。特征映射结构采用影响函数核小的sigmoid函数作为卷积网络的激活函数,使得特征映射具有位移不变性。此外,由于一个映射面上的神经元共享权值,因而减少了网络自由参数的个数。卷积神经网络中的每一个卷积层都紧跟着一个用来求局部平均与二次提取的计算层,这种特有的两次特征提取结构减小了特征分辨率。CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形.

8.1 卷积: 说白了,卷积操作就是一种加权求和.在卷积层中,通常包含若干个特征平面,每个特征平面由一些矩形排列的神经元组成,同一特征平面的神经共享单元共享权值,共享的权值就是卷积核.卷积核带来的直接好处减少网络各层之间的连接,同时降低了过拟合的风险.

8.2 池化: 也叫子采样,降维处理,减少了模型的参数.

(补充):神经网络的误差反向传播算法的推导需要重新看.


第六章 支持向量机

第六章 西瓜书

1.划分超平面:在样本空间中,划分超平面可通过如下线性方程来描述:

2.C为惩罚参数,当C无穷大时,则迫使所有样本都满足约束.当C取有限值时,则允许有一些样本不满足约束.
3.$l_{0/1}$为0/1损失函数.
4.硬间隔和软间隔区别在于:前者是$0\leq{\alpha_i}\leq{C}$,后者是$0\leq{\alpha_i}$.
5.支持向量机模型都由两项构成:结构风险和经验风险.结构风险用于描述模型的某些性质,经验风险用于描述模型与训练数据的契合程度.为了降低模型复杂度和防止过拟合,通过$L_p$范数来正则化结构风险.

11.损失函数:

  • hinge损失
  • 指数损失
  • 对率损失

补充:SVR-支持向量回归

  • 1)容忍$f(x)$与真实输出$y$之间有$\epsilon$的误差,通过这种方式来最大限度的包容尽可能多的点在内
  • 2)目标函数的优化,依然用拉格朗日乘子法.

第六章 统计学习方法

1.支持向量机学习方法包含构建由简至繁的模型:线性可分支持向量机,线性支持向量机及非线性支持向量机.当训练数据线性可分时,通过硬间隔最大化学习一个线性的分类器,即线性可分支持向量机,又称为硬间隔支持向量机;当训练数据近似线性可分时,通过软间隔最大化,也学习一个线性的分类器,即线性支持向量机,又称为软间隔支持向量机;当训练数据线性不可分时,通过核技巧及软间隔最大化,学习非线性支持向量机.

2.空间概念

2.1 线性空间(向量空间)

线性空间又称作向量空间,对于一个线性空间,知道”基”(相当于三维空间中的坐标系)便可确定空间中元素的坐标(即位置).线性空间之定义了加法和数乘元算.

2.2 赋范线性空间

定义了范数的线性空间(为了了解向量的长度)

2.3 内积空间

定义了内积的线性空间(为了了解向量的夹角)

2.4 欧式空间

定义了内积的实线性空间V为实内积空间或欧几里德空间.

2.5 Banach空间

完备的赋范线性空间

2.6 希尔伯特空间

希尔伯特空间是欧几里德空间的一个推广,其不再局限于有限维的情形.与欧几里德空间相仿,希尔伯特空间也是内积空间,其上有距离和角的概念,此外,希尔伯特空间还是一个完备的空间,其上所有的柯西序列等价于收敛序列,从而微积分中的大部分概念都可以无障碍地推广到希尔伯特空间中.
空间的一些数学概念


第七章 提升方法(boosting)

  1. 提升方法是一种常用的统计学习方法,在分类问题中,它通过改变训练样本的权重,学习多个分类器,并将这些分类器进行线性组合,提升分类的性能.\

  2. 提升树是以分类树或回归树为基本分类器的提升方法. 以决策树为基函数的提升方法称为提升树,对分类问题决策树是二叉分类树,对回归问题决策树是二叉回归树.

  3. 提升树算法采用前向分步算法.

  4. 提升树利用加法模型与前向分步算法实现学习的优化过程,当损失函数是平方损失和指数损失函数时,每一步的优化是简单的.但对一般的损失函数而言,往往每一步优化并不容易,这里可以使用梯度提升算法. 其关键是利用损失函数的负梯度在当前模型的值作为回归问题提升树算法中的残差的近似值,拟合一个回归树.


第八章 贝叶斯分类器

  1. 对分类任务来说,在所有相关概率都已知的理想情形下,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记.

  2. 贝叶斯判定准则: 为了最小化总体风险,只需在每个样本上选择那个是条件风险最小的类别标记.(条件风险=期望损失).

  3. 极大似然估算后验概率,两种策略: 1) 给定样本x,可通过直接建模P(c|x)来预测c(从为x的类别标记),这样得到的是”判别式模型”; 2) 也可以先对联合概率分布P(x,c)建模,然后由此获得P(c|x),这样得到的是”生成式模型”;

4.求解贝叶斯分类器:朴素贝叶斯分类器.基于一个假设:所有属性之间相互独立

  • 对于离散性属性:$P(x_i|c)=\frac{D_{c,x_i}}{D_c}$
  • 对于连续性属性:$p(x_i|c)=\frac{1}{\sqrt{2\pi}\sigma_{c,i}}exp(-\frac{({x_i-\mu_{c,i}})^2}{2{\sigma_{c,i}}^2})$

5.为了避免其他属性携带的信息被训练集中未出现的属性值”抹去”,在估计概率值时通常要进行”平滑”,常用”拉普拉斯修正”.令N表示训练集D中可能的类别数,$N_i$表示第i个属性可能的取值数,则修正为:

  • $P(c)=\frac{|D_c|+1}{|D|+N}$
  • $P(x_i|c)=\frac{|D_{c,x_i}|+1}{|D_c|+N_i}$

6.如果任务对预测速度要求较高,则针对训练集将朴素贝叶斯分类器涉及的所有概率估值事先计算好存储起来.如果任务数据更替频繁,则可事先不进行任何训练,待收到预测请求时再根据当前数据集进行概率估值.如果数据不断增加,则可在现有估值的基础上,仅对新增样本的属性值所涉及的概率估值进行计数修正即可实现增量学习.

判别式模型常见的主要有:
Logistic Regression
SVM
Traditional Neural Networks
Nearest Neighbor
CRF
Linear Discriminant Analysis
Boosting
Linear Regression

产生式模型常见的主要有:
Gaussians
Naive Bayes
Mixtures of Multinomials
Mixtures of Gaussians
Mixtures of Experts
HMMs
Sigmoidal Belief Networks, Bayesian Networks
Markov Random Fields
Latent Dirichlet Allocation

(判别式模型和生成式模型:http://www.cnblogs.com/fanyabo/p/4067295.html)

补充::
1.贝叶斯最优分类器为:$h^*=argmax_{c\in{y}}P(c|x)$.要用贝叶斯判定准则来最小化决策风险,首先要获得后验概率$P(c|x)$,而这在现实生活中是难以直接获得的,机器学习所要实现的是基于有限的训练样本集尽可能准确地估计出后验概率.有两种策略:判别式模型和生成式模型.

2.判别式模型和生成式模型比较:
定义单个测试数据为$(c_0,x_0)$,$c_0$为测试数据的label,$x_0$为测试数据的feature

  • 判别式模型(注重条件概率):它是训练完毕后,输入测试数据,判别模型直接给出的是$P(c|x_0)$.实际上是我们看了训练过的数据之后,学习到了对数据分步的后验知识,然后根据这个认识和测试样本的feature来决策.判别模型求解的思路是:条件分布———>模型参数后验概率最大———->(似然函数\cdot 参数先验)最大———->最大似然
  • 生成式模型(注重联合分布概率):给定输入$x_0$,生成式模型可以给出输入和输出的联合分布$P(x_0,c_0)$.生成模型的求解思路是:联合分布———->求解类别先验概率和类别条件概率

3.半朴素贝叶斯分类器
3.1 目的:为了降低贝叶斯公式中的后验概率$P(c|x)$的困难,朴素贝叶斯分类器采用了属性条件独立的假设,但在现实任务中这个假设很难成立.
3.2 做法:适当考虑一部分属性间的相互依赖信息
3.3 策略:独依赖估计(One-Dependent Estimator)-ODE,就是假设每个属性在类别之外最多依赖于一个其他属性.$P(c|x)\propto{P(c)\prod_{i=1}^{d}P(x_i|c,pa_i))}$.相比朴素贝叶斯分类器,$x_i$多了一个依赖.$pa_i$为属性$x_i$所依赖的属性.
3.4 问题的关键就在于:如何确定每个属性的父属性,也就是所依赖的属性.
方案:

  • 1.SPODE-所有的属性都依赖于同一个属性,称为”超父”,然后通过交叉验证等模型选择方法来确定超父属性
  • 2.TAN-在最大带权生成树算法的基础上,将属性间依赖关系约简到一种树形结构.
    • 1.计算任意两个结点的互信息$I(x_i,x_j|y)=\sum_{x_i,x_j;c\in{y}}P(x_i,x_j|c)log\frac{P(x_i,x_j|c)}{P(x_i|c)P(x_j|c)}$
    • 2.以属性为结点构建完全图,任意两个结点之间边的权重设为$I(x_i,x_j|y)$
    • 3.构建此完全图的最大带权生成树,挑选根变量,将边置为有向
    • 4.加入类别结点y,增加从y到每个属性的有向边
  • 3.AODE-一种基于集成学习机制,更为强大的独依赖分类器.AODE尝试将每个属性作为超父来构建SPODE,然后将那些具有足够训练数据支撑的SPODE集成起来作为最终结果.即$P(c|x)\propto{\sum_{i=1,|D_{x_i}|\geq{m^{‘}}}^{d}P(c,x_i)\prod_{j=1}^{d}P(x_j|c,x_i))}$

4.贝叶斯网
4.1 概念:借助有向无环图来刻画属性之间的依赖关系,并使用条件概率表来描述属性的联合概率分布.一个贝叶斯网B由结构G和参数$\theta$两部分构成,$\theta$定量描述变量的依赖关系.
4.2 结构:给定父结点集,贝叶斯网假设每个属性与它的非后裔属性独立,于是$B=<G,\theta>$将属性$x_1,x_2,…,x_d$的联合概率分布定义为$P_B(x_1,x_2,…,x_d)=\prod_{i=1}^{d}P_B(x_i|\pi_i)=\prod_{i=1}^{d}\theta_{x_i|\pi_i}$


第九章 集成学习(提升方法)

1.概念介绍

  1. 1 集成学习方法大致分为两类: 1) 个体学习器之间存在强依赖关系,必须串行化生成的序列化方法; 2) 个体学习器间不存在强依赖关系,可同时生成的并行化方法. 1)的代表是Boosting;2)的代表是Bagging和”随机森林”;

1.2 Bagging是并行集成学习方法最著名的代表,训练基于自助采样法.

1.3 Bagging通常对分类任务使用简单投票法,对回归任务使用简单平均法.

1.4 随机森林(Random Forest)是Bagging的一个扩展变体,RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择.

补充:
1.5 集成中只包含同种类型的个体学习器称为”同质的”.同质集成中的学习器亦称”基学习器”,相应的学习算法称为”基学习算法”.集成也可包含不同类型的个体学习器,这样的集成是”异质的”.相应的个体学习器一般不称为基学习器,常成为组件学习器.

1.6 Important:要获得好的集成,个体学习器应“好而不同”,即个体学习器要有一定的”准确性”,即学习器不能太坏,并且要有”多样性”,即学习器间具有差异.

1.7 Boosting:

1.7.1 概念:Boosting是一族可将弱学习器提升为强学习器的算法.

1.7.1 工作机制:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注,然后基于调整后的样本分布来训练下一个基学习器;如此重复,直至基学习器数目达到事先指定的值T,最终将这T个基学习器进行加权结合.

1.7.2 代表算法AdaBoost

  • 推导:基于”加性模型”,即学习器的线性组合,$H(x)=\sum_{t=1}^{T}\alpha_th_t(x)$.训练T个基分类器,对上一轮分类错误的样本分配更多的权重.

1.8 Bagging和随机森林

1.8.1 概念:Bagging是并行式集成学习方法最著名的代表.直接基于自主采样法(bootstrap sampling),有放回的采样.

1.8.2 操作:Bagging对分类任务使用简单投票法,对回归任务使用简单平均法.

1.8.3 随机森林:是Bagging的一个扩展变体.RF在以决策树构建Bagging集成的基础上,进一步再决策树的训练过程中引入了随机属性选择.具体来说,传统决策树在选择划分属性时是在当前结点的属性集合中选择一个属性;而在RF中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含k个属性的子集,然后再从这个子集中选择一个最优属性用于划分.

2.组合策略

2.1 平均法
包括简单平均法和加权平均法.加权平均法的权重一般是从训练数据中学习而得,但是加权平均法未必一定优于简单平均法.一般而言,在个体学习器性能相差较大时宜使用加权平均法,而在个体学习器性能相近是宜使用简单平均法.

2.2 投票法
包括绝对多数投票法,相对多数投票法及加权投票法.

2.3 学习法
当训练数据很多时,一种更为强大的结合策略是使用”学习法”,即通过另一个学习器来进行结合.Stacking是学习法的典型代表.Stacking先从初始数据集训练出初级学习器,然后”生成”一个新数据集用于训练次级学习器.在这个新数据集中,初级学习器的输出被当做样例输入特征,而初始样本的标记仍被当作样例标记.


第十章 聚类

1.性能度量

1.1 聚类性能的度量有两类: 一类是将聚类结果与某个”参考模型”进行比较,称为”外部指标”.另一类是直接考察聚类结果而不利用任何参考模型,称为”内部指标”.

1.1 外部指标

1.2 a = |SS|,b=|SD|,c=|DS|,d=|DD|(关于SS,SD,DS和DD的解释参考书Page198),常用的三种性能度量:

  • Jaccard系数:
  • FM指数:
  • $RI=\frac{2(a+d)}{m(m-1)}$
    上述性能度量的结果均在[0,1]区间,值越大越好.

1.2内部指标
补充:通过考虑聚类结果的簇之间的距离
DBI指数和DI指数(DBI值越小越好,而DI值越大越好.)

2.聚类算法
2.1 原型聚类:k-means聚类,学习向量量化(LVQ)-有标记聚类,高斯混合聚类
2.2 密度聚类:DBSACN:1.找到所有的核心对象;2.从核心对象出发将密度可达点加入生成聚类簇
2.3 层次聚类:Hierarchical clustering:先将数据集中的每个样本看作一个初始聚类簇,然后在算法运行的每一步中找出距离最近的两个聚类簇进行合并,不断重复,直到达到预设的聚类簇个数.

补充:3距离计算
3.1 距离度量函数满足以下性质:

  • 非负性
  • 同一性
  • 对称性
  • 直递性

3.2 常用的距离度量函数

  • Minkowski distance(闵可夫斯基距离)$dist_{mk}(x_i,x_j)=(\sum_{n}^{u=1}|x_{iu}-x_{ju}|^p)^\frac{1}{p}$
  • Euclidean distance(欧式距离) 当闵可夫斯基距离中的p=2时,即为欧式距离
  • Manhattan distance(曼哈顿距离) 当闵可夫斯基距离中的p=1时,即为曼哈顿距离

3.3 无序属性的处理

  • 对无序属性可采用VDM(Value Difference Metric).令$m_{u,a}$表示在属性u上取值为a的样本数,$m_{u,a,i}$表示在第i个样本簇中的属性u上取值为a的样本数,k为样本簇数,则属性u上两个离散值a和b之间的VDM距离为$VDM_p(a,b)=\sum_{i=1}^{k}|\frac{m_{u,a,i}}{m_{u,a}}-\frac{m_{u,b,i}}{m_{u,b}}|^p$.

  • 将闵可夫斯基距离和VDM结合即可处理混合属性.假定有$n_c$个有序属性,$n-n_c$个无序属性,则$MinkovDM_p(x_i,x_j)=(\sum_{u=1}^{n_c}|x_{iu}-x_{ju}|^p+\sum_{u=n_c+1}^{n}VDM_p(x_{iu},x_{ju}))^\frac{1}{p}$


第十一章 降维与度量学习

1.降维(维数约简)
1.1 为什么要降维?因为在高维情形下出现的数据样本稀疏,距离计算困难等问题,是所有机器学习方法共同面临的严重障碍.

1.2 为什么能进行降维?因为在很多时候,人们观测或收集到的数据样本虽然是高维的,但与学习任务密切相关的也许仅仅是某个低维分布,即高维空间中的一个低维”嵌入”.

1.3 降维方法:

  • 多维缩放MDS(最优化问题解法:计算内积矩阵)
    补充:
    • 原样本为$R^{m\times{m}}$,降维后为$R^{d’\times{m}}$,使得任意两个样本在$d’$维空间中的欧式距离等于原始空间中的距离,即$||z_i-z_j||=dist_{ij}$.
    • 令$B=Z^TZ$,B为降维后的内积矩阵,$b_{ij}=z_i^Tz_j$,$dist_{ij}^2=||z_i||^2+||z_j||^2-2z_i^Tz_j=b_{ij}+b_{jj}-2b_{ij}$,对Z进行中心化,然后推导求出B;求出B后利用特征值分解,求得Z矩阵
  • 主成分分析PCA(Principal Component Analysis)(最优化问题解法:计算协方差矩阵),用一个超平面对所有样本进行恰当表达.
    • 最近重构性:样本点到这个超平面的距离都足够近
    • 最大可分性:样本点在这个超平面上的投影点能尽可能分开
    • 思路:将所有的样本投影到超平面上,然后求投影变换后的新坐标系,正交基向量
  • 核化线性降维(KPCA)
  • 流形学习(Manifold Learning)
    • 等度量映射(Isometric Mapping)(将多维空间中的测地线距离作为MDS算法的原始空间距离矩阵的输入,其中任意两点之间的最短路径可以用Dijkstra或者Floyd算法求)
    • 局部线性嵌入(Locally Linear Embeeding)
  • 度量学习(Metric Learning)(通过学习的方式,学到一种转换维度的距离度量的方式)

第十二章 特征选择与稀疏学习

1.概念和意义
1.1 特征选择:从给定的特征集合中选择出相关特征子集的过程,成为”特征选择”;

1.2 特征选择的原因:

  • 在现实任务中经常会遇到维数灾难的问题,这是由于属性过多造成的,如果能从中选择出重要的特征,使得后续的学习过程仅需在一部分特征上构建模型,则维数灾难问题会大为减轻。
  • 去除不相关特征往往会降低学习任务的难度。

2.如何特征选择
分为两步:

  • “子集搜索”:前向搜索,每次向特征集合中添加,直到结果不再优为止;或者后向搜索,从完整的特征候选集合中减少特征(类似于贪心算法)。
  • “子集评价”:基于信息增益计算属性特征的贡献。对于属性子集A,假定根据其取值将D分成了V个子集{$D^1$,$D^2$,…,$D^V$},每个子集中的样本在A上取值相同,于是我们可计算属性子集A的信息增益.信息增益越大,意味着特征子集A包含的有助于分类的信息越多.基于每个属性子集的信息增益作为评价准则.

3.特征选择的方法
3.1 过滤式
过滤式选择不考虑后续学习器。

Relief是一种著名的过滤式特征选择方法,该方法设计了一个”相关统计量”来度量特征的重要性。(是为二分类问题设计的。扩展变体Relief-F能处理多分类的问题。)可以设定相关统计量的阈值或者设定选择特征的个数K.

3.2 包裹式
与过滤式选择不考虑后续学习器不同,包裹式选择直接把最终将要使用的学习器的性能作为特征子集的评价准则。In other words,包裹式选择的目的就是为给定学习器选择最有利于其性能的特征子集。包裹式选择方法直接针对给定学习器进行优化。

LWW(Las Vegas Wrapper)是一个典型的包裹式特征选择方法,它在拉斯维加斯方法框架下使用随机策略来进行子集搜索,并以最终分类器的误差为特征子集评价准则。-交叉验证

3.3 嵌入式
嵌入式选择是将特征选择过程与学习器训练过程融为一体,两者在同一个优化过程中完成,即在学习器训练过程中自动地进行了特征选择。
具体做法:将过拟合中的正则项中的L2范数替换为L1范数,L1范数和L2范数都有助于降低过拟合的风险,但L1范数还会带来一个额外的好处,它比后者更易于获得”稀疏”解。

4.稀疏表示与字典学习
4.1 将样本转化为合适的稀疏表示形式,从而使学习任务得以简化,模型复杂度得以降低,通常称为”字典学习”,亦称”稀疏编码”。

5.压缩感知
压缩感知关注的是如何利用信号本身所具有的稀疏性,从部分观测样本中恢复原信号。通常认为,压缩感知分为”感知测量”和”重构恢复”这两个阶段。”感知测量”关注如何对原始信号进行处理以获得稀疏样本表示;”重构恢复”关注的使如何基于洗属性从少量观测中恢复原信号,这是压缩感知的精髓。


第十三章 半监督学习

1.概念
在只有少量的标注样本,而有大量的未标注样本,让学习器不依赖外界交互,自动地利用未标记样本来提升学习性能,就是半监督学习.

2.方法
2.1 假设

  • 聚类假设:假设数据存在簇结构,同一个簇的样本属于同一个类别.
  • 流形假设:假设数据分布在同一个流形结构上,邻近的样本拥有相似的输出值.”邻近”程度常用”相似”程度来刻画,因此,流形假设可看作聚类假设的推广,但流形假设对输出值没有限制,因此比聚类假设的使用范围更广.
    其实,这两个假设本质都是“相似的样本拥有相似的输出”.

2.2 分类
半监督学习可分为纯半监督学习和直推学习.

  • 纯半监督学习:假定训练数据中的未标记样本并非待预测的数据.
  • 直推学习:假定学习过程中所考虑的未标记样本恰是待预测数据.

2.3 具体方法

  • 生成式方法
  • 半监督SVM
  • 图半监督学习
  • 基于分歧的方法(与上述三个不同的是,基于分歧的方法使用多学习器,而学习器之间的”分歧”对未标记数据的利用至关重要.)
  • 半监督聚类

第十四章 概率图模型

1.隐马尔可夫模型
1.假定所关心的变量集合为Y,可观测变量集合为O,其他变量的集合为R,”生成式”模型考虑联合分布P(Y,R,O),”判别式”模型考虑条件分布P(Y,R|O).给定一组观测变量值,推断就是要由P(Y,R,O)或P(Y,R|O)得到条件概率分布P(Y|O).

2.概率图模型是一类用图来表达变量相关关系的概率模型.它以图为表示工具,最常见的是用一个结点表示一个或一组随即变量,结点之间的边表示变量间的概率相关关系,即”变量关系图”.

3.概率图模型大致分为两类:

  • 使用有向无环图表示变量之间的依赖关系,称为有向图模型或贝叶斯网.
  • 使用无向图表示变量间的相关关系,称为无向图模型或马尔可夫网.

4.隐马尔可夫模型是结构最简单的动态贝叶斯网.(主要用于时序数据建模,在语音识别/自然语言处理等领域有广泛应用.)

5.确定一个隐马尔可夫模型需要以下三组参数:

  • 状态转移概率(状态转移矩阵)
  • 输出观测概率(输出观测矩阵)
  • 初始状态概率

2.马尔可夫随机场(MRF)
2.1 全局马尔可夫性:给定两个变量子集的分离集,则这两个变量子集条件独立.

2.2 由全局马尔可夫性得到两个有用的推论:

  • 局部马尔可夫性:给定某变量的邻接变量,则该变量条件独立于其他变量.
  • 成对马尔可夫性:给定所有其他变量,两个非邻接变量条件独立.

2.3 指数函数常被用于定义势函数.

3.条件随机场
3.1 条件随机场是一种判别式无向图模型.

3.2 生成式模型是直接对联合分布进行建模,而判别式模型则是对条件分布进行建模.(隐马尔可夫模型和马尔可夫随机场都是生成式模型,条件随机场是判别式模型.)


第十五章 规则学习

1.基本概念
1.1 规则分为两类: “命题规则”和“一阶规则”,前者由是”原子命题”和逻辑连接词”与,或,非”和”蕴含”构成的简单陈述句.后者的基本成分是能描述事物的属性或关系的”原子公式”.

2.方法
2.1 序贯覆盖

2.2 剪枝优化(预剪枝和后剪枝)

2.3 一阶规则学习
受限于命题逻辑表达能力,命题规则学习难以处理对象之间的”关系”,而关系信息在很多任务中非常重要.例如,我们在现实世界挑选西瓜时,通常很难把水果摊上所有西瓜的特征用属性值描述出来,因为我们很难判断:色泽看起来多深才叫”色泽青绿”?敲起来声音多低才叫”敲声沉闷”?比较现实的做法是将西瓜进行相互比较,例如,”瓜1的颜色比瓜2更深,并且瓜1的根蒂比瓜2更蜷”,因此”瓜1比瓜2更好”.


第十六章 强化学习

1.基本概念
1)强化学习任务通常用马尔可夫决策过程(MDP-Markov Decision Process)来描述:机器处于环境E中,状态空间为X,其中每个状态x是机器感知到的环境的描述.机器能采取的动作构成了动作空间A.若某个动作a作用在当前状态x上,则潜在的转移函数P将使得环境从当前状态按某种概率转移到另一个状态.在转移到另一个状态的同时,环境会根据潜在的“奖赏”函数R反馈给机器一个奖赏.

2)强化学习任务对应了四元组E=,其中P:X*A*X->R指定了状态转移概率,R:X*A*X->R指定了奖赏;在有的应用中,奖赏函数可能仅与状态转移有关,即R:X*X->R;

3)机器要做的是通过在环境中不断尝试而学得一个“策略”Pi,根据这个策略,在状态x下,就能得知要执行的动作a=Pi(x).

策略有两种方法:

  • 一种是将策略表示为函数Pi:X->A,确定性策略常用这种表示.
  • 另一种是概率表示Pi:X*A->R,随机性策略常用这种表示,Pi(x,a)为状态x下选择动作a的概率,动作概率之和为1.

总结:在强化学习任务中,学习的目的就是要找到能使长期累积奖赏最大化的策略.

  • T步累积奖赏
  • r折扣累积奖赏

4)强化学习和监督学习的差别和联系

强化学习 监督学习
状态(x) 示例(x)
动作(a) 标记(y)
策略(Pi) 分类器或回归器

与一般监督学习不同,强化学习任务的最终奖赏是在多步动作之后才能观察到的.

2.应用
2.1 K-摇臂赌博机

  • 若仅为获知每个摇臂的期望奖赏,则可采用”仅探索”法,将所有尝试机会平均分配给每个摇臂,最后以每个摇臂各自的平均吐币概率作为其奖赏期望的近似估计.
  • 若仅为执行奖赏最大的动作下,则可采用”仅利用”法,,按下目前最优的(即到目前为止平均奖赏最大的)摇臂.

总结:”探索”和”利用”两者是矛盾的,因为尝试次数有限,加强了一方则会自然削弱另一方.这就是强化学习所面临的”探索-利用窘境”.显然,欲累积奖赏最大,则必须在探索和利用之间达成较好的折中.

策略:

  • epsilon-贪心:基于一个概率来对探索和利用进行折中,每次尝试时,以epsilon的概率进行探索,以均匀概率选取一个摇臂,以1-epsilon的概率进行利用,即选择当前平均奖赏最高的摇臂.
  • Softmax:基于当前已知的摇臂平均奖赏来对探索和利用进行折中.若各摇臂的平均奖赏相当,则选取各摇臂的概率也相当;若某些摇臂的平均奖赏明显高于其他摇臂,则它们被选取的概率也明显更高.
Duncan's Blog

面试细节

Veröffentlicht am 2018-03-13 | in Note

写于2018年3月,刚好在找实习,搜集了一些<剑指offer>上和其他关于面试的建议,记录下来.


1.着装及外貌

  • 衣服不用过于正式,整洁干净就可以了.
  • 保持思维敏捷,容光焕发

2.自我介绍

  • 时间: 30s - 1min (面试官手中已有你的简历,因此自我介绍不用过于详细)
  • 内容: 主要学习,工作经历(没有工作经历就简短说一下做了什么项目)

3.项目介绍

建议使用STAR模型描述自己经历过的每一个项目

  • Situation:简短的项目背景,比如项目的规模,开发的软件的功能,目标用户等.
  • Task:自己完成的任务,在用词上注意区分”参与”和”负责”
  • Action:为了完成任务自己做了哪些工作,怎么做的.详细介绍
  • Result:自己的贡献.如果是参与功能开发,可以说按时完成了多少功能;如果做优化,可以说性能提高的百分比是多少;如果是维护,可以说修改了多少个bug.

面试官可能会问的问题:

  • 你在该项目中碰到的最大的问题是什么?怎么解决的?
  • 从这个项目中你学到了什么?
  • 什么时候会和其他团队成员有什么样的冲突?怎么解决冲突的?

note:介绍项目时,少讲背景,突出自己的贡献.

4.掌握的技能

  • 了解:指对某一个技术只是上过课或看过书,但没有做过实际的项目.
  • 熟悉:如果我们在实际项目中使用某一项技术已经有较长的时间,通过查阅相关的文档可以独立解决大部分问题,我们就熟悉它了.(在简历中我们描述技能的掌握程度大部分应该是”熟悉”).
  • 精通:如果我们对一项技术使用得得心应手,在实际开发过程中我们都有信心也有能力解决,可以说精通这个技术.

5.面试官面试考察interviewee的几个方面

  • 1.扎实的基础知识:编程语言,数据结构,算法等-
    • 语言:至少掌握1-2门编程语言
    • 数据结构:熟练掌握链表,树,栈,队列和哈希表等数据结构和它们的操作
    • 算法:查找,排序,贪心,动规,dfs等
  • 2.能写高质量的代码:能写出正确,完整的,鲁棒的高质量代码;面试官会格外关注边界条件,特殊输入等看似细枝末节但实质至关重要的地方.
  • 3.分析问题思路清晰:思路清晰,解决复杂问题
  • 4.能优化时间效率和空间效率:能从时间,空间复杂度两方面优化算法效率
  • 5.学习和沟通能力:具备优秀的沟通能力,学习能力,发散思维能力等
    • 团队合作能力
    • 沟通能力
    • 举一反三能力

6.interviewee提问环节

Don't talk about pay!
Duncan's Blog

红黑树学习

Veröffentlicht am 2018-03-07 | in Learning

1.定义

1.红黑树是每个节点都带有颜色属性的二叉查找树,颜色或红色或黑色.并且有如下性质:

  • 1)性质1. 节点是红色或黑色。

  • 2)性质2. 根节点是黑色。

  • 3)性质3 每个叶节点(null节点,空节点)是黑色的。

  • 4)性质4 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)

  • 5)性质5.从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。

特性:从根到叶子结点最长的可能路径不多于最短的可能路径的两倍长.

2.操作

1.左旋
图片来自慕课

2.右旋
图片来自慕课

3.插入(5种情况)

  • 1)情况1:插入的是根结点
    • 对策:直接把该结点涂黑
  • 2)情况2:插入的结点的父结点是黑色
    • 对策:Do nothing
  • 3)当前结点的父结点是红色且祖父结点的另一个子结点(叔叔结点)是红色
    • 对策:将当前节点的父节点和叔叔节点涂黑,祖父节点涂红,把当前节点指向祖父节点,从新的当前节点重新开始算法。
  • 4)当前结点的父结点是红色,叔叔结点是黑色,当前结点是其父结点的右孩子
    • 对策:当前节点的父节点做为新的当前节点,以新当前节点为支点左旋。
  • 5)当前结点的父结点是红色,叔叔结点是黑色,当前结点是其父结点的左孩子
    • 对策:父节点变为黑色,祖父节点变为红色,在祖父节点为支点右旋

4.删除
删除操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
private void fixAfterDeletion(Entry<K,V> x) {
while (x != root && colorOf(x) == BLACK) {
if (x == leftOf(parentOf(x))) {
Entry<K,V> sib = rightOf(parentOf(x));
if (colorOf(sib) == RED) {
setColor(sib, BLACK); // 情况1
setColor(parentOf(x), RED); // 情况1
rotateLeft(parentOf(x)); // 情况1
sib = rightOf(parentOf(x)); // 情况1
}
if (colorOf(leftOf(sib)) == BLACK &&
colorOf(rightOf(sib)) == BLACK) {
setColor(sib, RED); // 情况2
x = parentOf(x); // 情况2
} else {
if (colorOf(rightOf(sib)) == BLACK) {
setColor(leftOf(sib), BLACK); // 情况3
setColor(sib, RED); // 情况3
rotateRight(sib); // 情况3
sib = rightOf(parentOf(x)); // 情况3
}
setColor(sib, colorOf(parentOf(x))); // 情况4
setColor(parentOf(x), BLACK); // 情况4
setColor(rightOf(sib), BLACK); // 情况4
rotateLeft(parentOf(x)); // 情况4
x = root; // 情况4
}
} else { // 跟前四种情况对称
Entry<K,V> sib = leftOf(parentOf(x));
if (colorOf(sib) == RED) {
setColor(sib, BLACK); // 情况5
setColor(parentOf(x), RED); // 情况5
rotateRight(parentOf(x)); // 情况5
sib = leftOf(parentOf(x)); // 情况5
}
if (colorOf(rightOf(sib)) == BLACK &&
colorOf(leftOf(sib)) == BLACK) {
setColor(sib, RED); // 情况6
x = parentOf(x); // 情况6
} else {
if (colorOf(leftOf(sib)) == BLACK) {
setColor(rightOf(sib), BLACK); // 情况7
setColor(sib, RED); // 情况7
rotateLeft(sib); // 情况7
sib = leftOf(parentOf(x)); // 情况7
}
setColor(sib, colorOf(parentOf(x))); // 情况8
setColor(parentOf(x), BLACK); // 情况8
setColor(leftOf(sib), BLACK); // 情况8
rotateRight(parentOf(x)); // 情况8
x = root; // 情况8
}
}
}
setColor(x, BLACK);
}

(具体插入和删除操作见 http://www.imooc.com/article/11715)

Duncan's Blog

DeepLearningNotes

Veröffentlicht am 2018-02-27 | in Learning

阅读<白话深度学习与Tensorflow>记

因为前几章都是介绍,不做记录了.近期更新中

1.第四章 前馈神经网络

1.1 概念

  • BP神经网络(Back Propagation Networks-反向传播网络)
  • RBF Network-径向基函数神经网络
    求解凸函数方法:梯度下降法. 凸函数的定义:

把残差函Loss数描述成待定的若干个w所描述的凸函数-Loss(w),那么就可以用梯度下降法,更新w的各个维度,最后找到满足Loss(w)极值点的位置.

2.第五章 手写板功能

直接上手了.

1.传统机器学习与深度学习对比

1.1 传统的机器学习中的监督学习方法概括:

  • 1 朴素贝叶斯

    • 实现的是概率量化计算的模型
    • 解释:通过对样本的统计,然后算出某件事A发生的概率和某件事B发生的概率之间的量化关系。
  • 2 决策树

    • 通过选择合适的维度来增加约束条件降低分类的信息熵。
  • 3 回归模型

    • 通过建模和拟合来确定待定系数,通过不断调整待定系数的大小来降低残差的大小,也就是降低模型预测值与训练目标的差距。
  • 4 SVM(支持向量机)

    • 通过超平面来分割空间中不同的分类向量,让它们到超平面的距离尽可能远(以保证超平面的鲁棒性)

    而深度学习与此不同的是,它通过大量的线性分类器或非线性分类器、可导或不可导的激励函数,以及池化层(卷积网络中会用到这种设计)等功能对观测对象的特征进行自动化的提取。
    然而存在的问题:

  • 1.在神经网络中,一般网络是比较负责的,如此多的权重值w已经早就没有了统计学中的权值权重的意义,无法得到清晰的物理解释,也无法有效地进行逆向研究。

  • 2.这种拥有极高的VC维的网络能够学到很多东西,但这种学习能力通常会导致泛化能力下降。

2.数据集的划分

深度学习中数据的切分:

  • 1.训练集:训练得到模型参数
  • 2.验证集:用来调整分类器的参数的样本集,在训练过程中,网络模型会立刻在验证集进行验证。用来调整模型参数,我们可以在模型训练过程就可以观察到模型的效果,而不用等到训练结束。并且,有助于验证模型的泛化能力,预防过拟合,是深度学习的标配。
  • 3.测试集:测试集则是在训练后为测试模型的能力(主要是分类能力)而设置的一部分数据集合。

第六章 卷积神经网络

1.概念

1.1 同样是一种前馈神经网络,卷积神经网络的两个特点:

  • 卷积网络有至少一个卷积层,用来提取特征。
  • 卷积网络的卷积层通过权值共享的方式进行工作,大大减少权值w的数量,使得在训练中在达到同样识别率的情况下收敛速度明显快于全连接BP网络。

1.2 用途
卷积网络主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。

2.卷积

卷积操作
2.1 解释

卷积:在泛函分析中,卷积(convolution)是一种函数的定义。它是通过两个函数f和g生成第三个函数的一种数学算子,表征函数f与g经过翻转和平移的重叠部分的面积。

卷积的数学定义:

从Softmax函数的定义可以看出,最后一层的结点的输出值加和都是1.

4.2 交叉熵
Softmax这种激励函数使用的损失函数看上去比较特殊,叫做交叉熵(cross entropy)损失函数。

5.典型的CNN网络

第七章 综合问题(即一些笼统地都会出现的问题)

本书将这一章安排在第七章,可我总觉这一章貌似应该放在讲完几种神经网络更靠后的位置。

下面罗列一些知识点,供之后再汇过来补充。

  • 1.为了加快训练速度,使用GPU并行计算。
  • 2.在TensorFlow中指定一个Batch的Size来规定每次被随机选择参与归纳的样本数量,完成随机梯度下降。
  • 3.梯度消失问题解决方案:
    • 初始化一个合适的w
    • 选择一个合适的激励函数(ReLU-“热鲁函数”,Rectified Linear Units-线性修正单元激励函数)
  • 4.数据预处理:归一化
    • 线性函数归一化
    • 0均值标准化
  • 5.参数初始化:权值w的初始化。业界比较认可的说法是把整个网络中所有的w初始化成以0为均值,以一个很小的值为标准差的正态分布的方式效果会比较好。即N(0,1)正态分布。
  • 6.正则化:在损失函数中加入正则项。带有正则项的损失函数前半部分的损失函数称为”经验风险”,后半部分称为”结构风险”。引入正则化的目的是:防止过拟合。
  • 7.其他超参数。什么是超参数:通常指那些在机器学习算法训练的步骤开始之前设定的一些参数值,这些参数没法通过算法本身来学会的。所以,超参的设定可能更多的是经验了。
  • 8.DropOut:在一轮的训练阶段丢弃一部分网络节点,在一定程度上降低了VC维的数量,减小过拟合的风险。

第八章 循环神经网络(Recurrent Neural Networks)

1.引入

1.1 隐马尔可夫模型:训练一个HMM模型是比较容易的,输入为:状态序列$X_i$和输出序列$O_i$,得到的模型由两个矩阵构成,一个是状态X之间的表示隐含状态转移关系的矩阵,一个是X到O之间的输出概率矩阵.

2.循环神经网络

2.1 输入:$X_t$向量,输出:$Y$,需要训练的待定系数$W_X$和$W_H$.前面一次的输入缓存在$H_t$中,每次$W_X$和输入$X_t$做乘积,然后与另一部分Ht-1和$W_H$乘积共同参与运算得到$Y$.最后训练得到的就是$W_X$和$W_H$系数矩阵.

2.2 训练过程:传统的RNN在训练过程中的效果不理想,改进后的出现了LSTM算法.

3.LSTM(长短期记忆网络)

3.1 LSTM与传统的RNN网络相比多了一个非常有用的机制,忘记门(forget gate).

3.2 优点:减少训练的时间复杂度,消除梯度爆炸

3.3 构造

  • 在t时刻,LSTM的输入有三个:当前时刻网络的输入值Xt,上一时刻LSTM的输出值Ht-1,以及上一时刻的单元状态Ct-1.LSTM的输出有两个:当前时刻LSTM输出值$H_t$和当前时刻单元状态$C_t$.
  • LSTM使用门来控制长期状态,门其实就是一层全连接层,输入是一个向量,输出是一个0到1之间的实数(Sigmoid层).
    • 当门输出为0时,任何向量与之相乘都会得到0向量,就是什么都不能通过.
    • 当门输出为1时,任何向量与之相乘都不会有任何改变,相当于什么都可以通过.
  • LSTM前向计算中有三个门
    • 遗忘门:用来控制上一时刻的单元状态Ct-1有多少能保留到当前时刻$C_t$
    • 输入门:用来控制即时时刻网络的输入$X_t$有多少能保存到单元状态$C_t$.
    • 输出门:控制单元状态$C_t$有多少能保留到LSTM的当前输出值$H_t$.

3.4 LSTM和传统的RNN对比:
传统的RNN只有一个状态,对短期的输入非常敏感,而LSTM增加了一个状态C,用来保存长期的状态

Duncan's Blog

Spielberg-哈佛大学演讲

Veröffentlicht am 2018-02-04 | in Life

Thank you, thank you, President Faust, and Paul Choi, thank you so much.
非常感谢Faust校长、Paul Choi校长 谢谢你们。

It’s an honor and a thrill to address this group of distinguished alumni and supportive friends and kvelling parents. We’ve all gathered to share in the joy of this day, so please join me in congratulating Harvard’s Class of 2016.
非常荣幸能被邀请成为哈佛2016年毕业典礼的演讲嘉宾,在众位优秀的毕业生、热情的朋友和诸位家长前做演讲。今天让我们一起,祝贺2016届哈佛毕业生顺利毕业。

I can remember my own college graduation, which is easy, since it was only 14 years ago. How many of you took 37 years to graduate? Because, like most of you, I began college in my teens, but sophomore year, I was offered my dream job at Universal Studios, so I dropped out. I told my parents if my movie career didn’t go well, I’d re-enroll.
我记得我自己的大学毕业典礼,这不难,因为就是14年以前的事情。你们当中的多少人花了37年才毕业?因为就像你们中的多数人,我在十几岁时进入大学,但是大二的时候我从环球影城获得了我的梦想工作,所以我休学了。我跟我的父母说,如果我的电影事业不顺,我会重新上学的。

It went all right.
我的电影事业发展得还行。

But eventually, I returned for one big reason. Most people go to college for an education, and some go for their parents, but I went for my kids. I’m the father of seven, and I kept insisting on the importance of going to college, but I hadn’t walked the walk. So, in my fifties, I re-enrolled at Cal State - Long Beach, and I earned my degree.
但是我最后还是回到了学校,主要为了一个原因。很多人为了获得教育去上大学,有的人为了父母上大学,而我是为了我的孩子去上的。我是7个孩子的爸爸,我总是不断强调上大学的重要性,可我自己都没上过。所以在我50多岁的时候,我重新进入加州州立大学长滩分校,获得了学位。

I just have to add: It helped that they gave me course credit in paleontology for the work I did on Jurassic Park. That’s three units for Jurassic Park, thank you.
我必须补充一点,我获得学位的一个原因是学校为我在《侏罗纪公园》里所做的,给我了考古学学分。《侏罗纪公园》换得了3个学分,非常感谢。

Well, I left college because I knew exactly what I wanted to do, and some of you know, too - but some of you don’t. Or maybe you thought you knew but are now questioning that choice. Maybe you’re sitting there trying to figure out how to tell your parents that you want to be a doctor and not a comedy writer.
我离开大学是因为我很清楚地知道我想要做什么。你们中的一些人也知道,但是有些人还没弄明白。或者你以为你知道,但是现在开始质疑这个决定。或者你坐在这里,试着想要怎么告诉你的父母,你想要成为一名医生,而不是喜剧编剧。

Well, what you choose to do next is what we call in the movies the ‘character-defining moment.’ Now, these are moments you’re very familiar with, like in the last Star Wars: The Force Awakens, when Rey realizes the force is with her. Or Indiana Jones choosing mission over fear by jumping over a pile of snakes.
你接下来要做的事情,在我们这行叫做“定义角色的时刻”。这些是你非常熟悉的场景,例如在最近的一部《星球大战:原力觉醒》里女主角Rey发现自己拥有原力的一刻。或者在《夺宝奇兵》里印第安纳·琼斯选择战胜恐惧跳过蛇堆,继续任务的时候。

Now in a two-hour movie, you get a handful of character-defining moments, but in real life, you face them every day. Life is one strong, long string of character-defining moments. And I was lucky that at 18 I knew what I exactly wanted to do. But I didn’t know who I was. How could I? And how could any of us? Because for the first 25 years of our lives, we are trained to listen to voices that are not our own. Parents and professors fill our heads with wisdom and information, and then employers and mentors take their place and explain how this world really works.
一部两小时的电影里有几个定义角色的时刻,但是在真实的生活中,你每天都在面对这样的时刻。生活就是一长串强大的定义角色的时刻。我非常幸运在18岁时就知道我想要做什么。但是我并不知道我是谁。我怎么可能知道呢?我们中任何人都不知道。因为在生命的头一个25年里,我们被训练去倾听除自己以外的人的声音。父母和教授们把智慧和信息塞进我们的脑袋,然后换上雇主和导师来向我们解释这个世界到底是怎么一回事。

And usually these voices of authority make sense, but sometimes, doubt starts to creep into our heads and into our hearts. And even when we think, ‘that’s not quite how I see the world,’ it’s kind of easier to just to nod in agreement and go along, and for a while, I let that going along define my character. Because I was repressing my own point of view, because like in that Nilsson song, ‘Everybody was talkin’ at me, so I couldn’t hear the echoes of my mind.’
通常这些权威人物的声音是有道理的,但是有些时候,质疑会爬进你的脑子和心里。就算我们觉得“这好像不太是我看世界的方式”,点头表示赞同也是更容易做的事情,有段时间我就让“附和”定义了我。因为我压抑了自己的想法,因为就像尼尔森歌里唱的一样:“每个人都在对我说话,所以我听不见我思考的回声。”

And at first, the internal voice I needed to listen to was hardly audible, and it was hardly noticeable - kind of like me in high school. But then I started paying more attention, and my intuition kicked in.
一开始,我需要倾听的内心的声音几乎一声不响,也难以察觉——就像高中时的我。但是之后我开始更加注意这些声音,然后我的直觉开始工作。

And I want to be clear that your intuition is different from your conscience. They work in tandem, but here’s the distinction: Your conscience shouts, ‘here’s what you should do,’ while your intuition whispers, ‘here’s what you could do.’ Listen to that voice that tells you what you could do. Nothing will define your character more than that.
我想告诉你,你的直觉和你的良心是两个不同的事物。它们会协力工作,但这是它们的不同:你的良心会呼喊“你应当去做这个”,而你的直觉只会低语“你是可以这样做的”。倾听那个告诉你你能怎么去做的声音。没有什么比这更能定义你的角色的了。

Because once I turned to my intuition, and I tuned into it, certain projects began to pull me into them, and others, I turned away from.
因为我一旦会听从我的直觉,我就会全力投入到一些项目中去,而放弃其它。

And up until the 1980s, my movies were mostly, I guess what you could call ‘escapist.’ And I don’t dismiss any of these movies - not even 1941. Not even that one. And many of these early films reflected the values that I cared deeply about, and I still do. But I was in a celluloid bubble, because I’d cut my education short, my worldview was limited to what I could dream up in my head, not what the world could teach me.
直到19世纪80年代时,我电影中的大多数,我猜你们可以称之为“逃避现实”。我不会拒绝任何这些电影的邀约,不只是《1941》。不止那一部,很多早期电影反映了我当时内心的价值观,如今我仍然在这样做。但我当时处于自己的电影泡沫中,因为我的辍学,我受限的世界观部分来自于我的想象,而不是外界教会我的。

But then I directed The Color Purple. And this one film opened my eyes to experiences that I never could have imagined, and yet were all too real. This story was filled with deep pain and deeper truths, like when Shug Avery says, ‘Everything wants to be loved.’ My gut, which was my intuition, told me that more people needed to meet these characters and experience these truths. And while making that film, I realized that a movie could also be a mission.
当我执导《紫色》的时候,这部电影让我体验了我从未想象过,却如此真实的一些感受。这个故事充满了深深的痛苦和更深一部的真理,就像Shug Avery说“任何一个东西都想被爱着。”我的直觉告诉我,更多的人需要来认识这样的角色,来体验这样的真理。在导演这部电影时,我突然发现一部电影也可以是一个使命。

I hope all of you find that sense of mission. Don’t turn away from what’s painful. Examine it. Challenge it.
我希望你们所有人都能找到这样的使命感。不要避让让你痛苦的事情。研究它、挑战它。

My job is to create a world that lasts two hours. Your job is to create a world that lasts forever. You are the future innovators, motivators, leaders and caretakers.
我的工作是要构筑一个维持两小时的世界。你的工作是要建一个会一直持续的世界。你们是未来的创新者、激励者、领导者和守护者。

And the way you create a better future is by studying the past. Jurassic Park writer Michael Crichton, who graduated from both this college and this medical school, liked to quote a favorite professor of his who said that if you didn’t know history, you didn’t know anything. You were a leaf that didn’t know it was part of a tree. So history majors: Good choice, you’re in great shape…Not in the job market, but culturally.
你们要研究过去,才能建设一个更好的未来。《侏罗纪公园》的编剧Michael Crichton是从这所大学的医学院毕业的。他喜欢引用他最喜欢的一位教授的话,他说如果你不懂得历史,那么你一无所知。你是一片树叶,不知道自己只是树的一部分。所以主修历史的同学们,很棒的选择,你的前景不错…不是说在招聘市场上啊,从文化上来说的话。

The rest of us have to make a little effort. Social media that we’re inundated and swarmed with is about the here and now. But I’ve been fighting and fighting inside my own family to get all my kids to look behind them, to look at what already has happened. Because to understand who they are is to understand who we were, and who their grandparents were, and then, what this country was like when they emigrated here. We are a nation of immigrants - at least for now.
我们剩下的其它人就需要努点力了。淹没和吞噬我们的社交媒体只关乎当下。但是我自己和家人都不断尝试,让我所有的孩子们能透过这些,去看过去发生过的事情。因为要知道他们是谁,就要去理解他们曾经是谁,他们的祖父母是谁,以及当他们移民到这个国家来的时候,这个国家到底是什么样。我们是一个移民国家——至少现在还是。

So, to me, this means we all have to tell our own stories. We have so many stories to tell. Talk to your parents and your grandparents, if you can, and ask them about their stories. And I promise you, like I have promised my kids, you will not be bored.
所以对我来说,这意味着我们每个人都有自己的故事可讲,有很多故事可讲。如果可以的话,和你的父母、祖父母聊聊天,听听他们的故事。我保证,就像我向我的孩子保证的一样,一定收获颇丰,绝对不会无聊。

And that’s why I so often make movies based on real-life events. I look to history not to be didactic, ‘cause that’s just a bonus, but I look because the past is filled with the greatest stories that have ever been told. Heroes and villains are not literary constructs, but they’re at the heart of all history.
这就是为什么我经常就会导演由真实事件改编的电影。我回顾历史并不是为了说教,这是额外的奖励,我回顾历史因为过去充满了那些从来没被讲述出来的伟大故事。英雄和坏人不是文学塑造出来的,而是在一切历史的最中心。

And again, this is why it’s so important to listen to your internal whisper. It’s the same one that compelled Abraham Lincoln and Oskar Schindler to make the correct moral choices. In your defining moments, do not let your morals be swayed by convenience or expediency. Sticking to your character requires a lot of courage. And to be courageous, you’re going to need a lot of support.
所以,这就是为什么倾听你内心的低语非常重要。这与驱使亚伯拉罕·林肯和奥斯卡·辛德勒去做正确的道德选择的东西是一样的。在属于你的“定义角色的时刻”里,不要让你的道德被便利或者私利左右。忠于你的角色需要很多的勇气,变得勇敢,你又需要很多的支持。

And if you’re lucky, you have parents like mine. I consider my mom my lucky charm. And when I was 12 years old, my father handed me a movie camera, the tool that allowed me to make sense of this world. And I am so grateful to him for that. And I am grateful that he’s here at Harvard, sitting right down there.
如果你足够幸运,你会有像我父母一样开明的父母。我把母亲看做我的幸运女神。12岁时,我父亲给了我一个电影摄像机,也是因为有了这个,我可以更好地去感知这个世界,我很感谢我的父亲。现在我很感激父亲也来到哈佛,坐在这里。

My dad is 99 years old, which means he’s only one year younger than Widener Library. But unlike Widener, he’s had zero cosmetic work. And dad, there’s a lady behind you, also 99, and I’ll introduce you after this is over, okay?
我父亲今年99岁了,只比怀德纳图书馆(哈佛最大的图书馆今年100年)年轻1岁,但不像这个图书馆可以翻新,父亲已垂垂老矣。另外,父亲,在你身后有一位99岁的女士,这个之后我会介绍你给她,好吗?

But look, if your family’s not always available, there’s backup. Near the end of It’s a Wonderful Life - you remember that movie, It’s a Wonderful Life? Clarence the Angel inscribes a book with this: “No man is a failure who has friends.” And I hope you hang on to the friendships you’ve made here at Harvard. And among your friends, I hope you find someone you want to share your life with. I imagine some of you in this yard may be a tad cynical, but I want to be unapologetically sentimental. I spoke about the importance of intuition and how there’s no greater voice to follow. That is, until you meet the love of your life. And this is what happened when I met and married Kate, and that became the greatest character-defining moment of my life.
但是,如果你的家人并不总是支持你,还有B计划。在《生活多美好》剧终前,天使Clarence在一本书上题写了这句话:“有朋友的人,不会是生活的失败者。”我希望你们会珍惜在哈佛建立的这些友谊。而在你的朋友之中,我希望你们找个能分享你生活的另一半。我猜想你们中的一些人对此会会抱有怀疑,但是我表现出的感性毫无歉意。我说了直觉的重要性,以及除了直觉没有更值得追随的声音。这是指在你遇到你一生最爱之前。我与妻子相恋并结婚的经历就是如此,这成为了我生活中最重要的“定义角色的时刻”。

Love, support, courage, intuition. All of these things are in your hero’s quiver, but still, a hero needs one more thing: A hero needs a villain to vanquish. And you’re all in luck. This world is full of monsters. And there’s racism, homophobia, ethnic hatred, class hatred, there’s political hatred, and there’s religious hatred.
爱、支持、勇气、直觉。所有的这些都在你英雄的箭袋之中,但是英雄还需要一件东西——英雄需要一个去征服的坏人。而你们所有人都很走运,这个世界充满了怪物。有种族歧视、恐同、种族仇恨、阶级仇恨,还有政治仇恨和宗教仇恨。

As a kid, I was bullied - for being Jewish. This was upsetting, but compared to what my parents and grandparents had faced, it felt tame. Because we truly believed that anti-Semitism was fading. And we were wrong. Over the last two years, nearly 20,000 Jews have left Europe to find higher ground. And earlier this year, I was at the Israeli embassy when President Obama stated the sad truth. He said: ‘We must confront the reality that around the world, anti-Semitism is on the rise. We cannot deny it.’
还是孩子的时候,我因为是犹太人而被起伏。这让人丧气,但是与我父母和祖父母曾经面对的事情比起来,这很平淡。我们都真正相信反犹太运动正在衰退,但我们错了。在过去两年间,有大约两万犹太人离开欧洲寻找生存之地。今年早些时候,我在以色列大使馆听奥巴马总统陈述了一个悲惨的现实。他说:“反犹太运动的增势发生在全球各地,这是我们需要面对的事实。我们不能否认它。”

My own desire to confront that reality compelled me to start, in 1994, the Shoah Foundation. And since then, we’ve spoken to over 53,000 Holocaust survivors and witnesses in 63 countries and taken all their video testimonies. And we’re now gathering testimonies from genocides in Rwanda, Cambodia, Armenia and Nanking. Because we must never forget that the inconceivable doesn’t happen - it happens frequently. Atrocities are happening right now. And so we wonder not just, ‘When will this hatred end?’ but, ‘How did it begin?’
我正视这一事实的强烈愿望驱使我从1994年成立了大屠杀真相基金会,从那以后我们采访了63个国家5.3万名大屠杀的幸存者或目击者,录制了他们所有人的证词。现在我们还在收集卢旺达、柬埔寨、亚美尼亚以及南京大屠杀的证词。因为我们永远都不要忘记那些难以想象的罪恶会发生,并且时有发生。暴行也仍在发生。所以我们不能只去想“仇恨什么时候才会停止?”而是“它是怎么开始的?”。

Now, I don’t have to tell a crowd of Red Sox fans that we are wired for tribalism. But beyond rooting for the home team, tribalism has a much darker side. Instinctively and maybe even genetically, we divide the world into ‘us’ and ‘them.’ So the burning question must be: How do all of us together find the ‘we?’ How do we do that? There’s still so much work to be done, and sometimes I feel the work hasn’t even begun. And it’s not just anti-Semitism that’s surging - Islamophobia’s on the rise, too. Because there’s no difference between anyone who is discriminated against, whether it’s the Muslims, or the Jews, or minorities on the border states, or the LGBT community - it is all big one hate.
我想我并不需要向一群红袜队的球迷解释我们为什么会拥抱部落文化。但是在为主队加油之外,部落文化有它更阴暗的一面。本能地或者由基因决定,我们把世界分成“我们”和“他们”。所以棘手的问题是,我们所有人能共同发现“我们”?我们应当如何去做?仍旧有许多的工作要做,有的时候我甚至觉得这一事业还没开始。这不仅仅是指反犹太运动抬头,伊斯兰恐惧症也在抬头。因为那些被歧视的人群之间是没有区别的,不管他们是穆斯林、犹太人、边境州里的弱势人群,或者是同性恋、双性恋及变性者社群——他们遭受的都是同样的仇恨。

And to me, and, I think, to all of you, the only answer to more hate is more humanity. We gotta repair - we have to replace fear with curiosity. ‘Us’ and ‘them’ - we’ll find the ‘we’ by connecting with each other. And by believing that we’re members of the same tribe. And by feeling empathy for every soul - even Yalies.
对我来说,我想对你们也一样,只能用更多的人性来对抗更多的仇恨。我们需要修护,用好奇来替代恐惧。不排斥异己,我们通过建立人与人的联系来找到共同的“我们”。我们要相信我们是同一个部落的成员。我们对所有的人都要有同情心——哪怕对“友校”耶鲁人也要如此。

My son graduated from Yale, thank you…
我的儿子就是从耶鲁毕业的,谢谢…

But make sure this empathy isn’t just something that you feel. Make it something you act upon. That means vote. Peaceably protest. Speak up for those who can’t and speak up for those who may be shouting but aren’t being hard. Let your conscience shout as loud as it wants if you’re using it in the service of others.
但是你要确认你的同理心不只是你的感受。让它是你采取行动的诱因。这是指参加投票、和平地抗议、为那些不能为自己发声或者已经声嘶力竭却无法让人注意的人发声。让你的良心大声疾呼吧,如果是为了服务于他们。

And as an example of action in service of others, you need to look no further than this Hollywood-worthy backdrop of Memorial Church. Its south wall bears the names of Harvard alumni - like President Faust has already mentioned - students and faculty members, who gave their lives in World War II. All told, 697 souls, who once tread the ground where stand now, were lost. And at a service in this church in late 1945, Harvard President James Conant - which President Faust also mentioned - honored the brave and called upon the community to ‘reflect the radiance of their deeds.’
作为为他人服务的行动榜样,你只需要看看这像好莱坞背景一般的纪念教堂。它的南墙上是哈佛校友们的名字,福斯特校长已经说过,他们是在第二次世界大战中献身的哈佛学生和教师们。697个人,他们曾经在你站着的地方逗留过,697条生命逝去。在1945年纪念教堂举行的追思会上,柯南特校长纪念这些勇敢的人们,并号召哈佛人身上要“反射出他们壮举的荣光”。

Seventy years later, this message still holds true. Because their sacrifice is not a debt that can be repaid in a single generation. It must be repaid with every generation. Just as we must never forget the atrocities, we must never forget those who fought for freedom. So as you leave this college and head out into the world, continue please to ‘reflect the radiance of their deeds,’ or as Captain Miller in Saving Private Ryan would say, “Earn this.”
70年后,这句话仍然适用。因为他们所做出的牺牲不是一代人就能报答的。每一代人都应该报答他们。就像我们永远不该忘记那些恶行,我们永远也不应当忘记那些为自由而战的人。所以当你离开这所学校进入世界,请继续“反射出他们壮举的荣光”,或者像《拯救大兵瑞恩》里米勒上尉说的“别辜负大家”。

And please stay connected. Please never lose eye contact. This may not be a lesson you want to hear from a person who creates media, but we are spending more time looking down at our devices than we are looking in each other’s eyes. So, forgive me, but let’s start right now. Everyone here, please find someone’s eyes to look into. Students, and alumni and you too, President Faust, all of you, turn to someone you don’t know or don’t know very well. They may be standing behind you, or a couple of rows ahead. Just let your eyes meet. That’s it. That emotion you’re feeling is our shared humanity mixed in with a little social discomfort.
此外,请保持彼此的联系,别避而不见。这可能不是你想从一个创作媒体的人这里听的一课,但是我们花越来越多的时间低头看手机,而不是注视别人的眼睛。所以请原谅我,现在所有人,请找一双眼睛深刻凝视。学生们、校友们都是,福斯特校长、你们所有人,转向一位你不认识或者不熟悉的人,对视,仅此而已。你所感受到的使我们共同拥有的人性,混进去了一丝社交不适感。

But, if you remember nothing else from today, I hope you remember this moment of human connection. And I hope you all had a lot of that over the past four years. Because today you start down the path of becoming the generation on which the next generation stands. And I’ve imagined many possible futures in my films, but you will determine the actual future. And I hope that it’s filled with justice and peace.
如果你今天别的什么都没记住,我希望你能记住这一刻人与人之间的联系。我希望过去四年中,你们经历了很多的这样的时刻。因为从今天开始,你们会像前辈一样,托举起下一辈人。我在我的电影里幻想过很多种不同的未来,但是你们会决定未来的实际样子。我希望,这样的未来充满公正与和平。

And finally, I wish you all a true, Hollywood-style happy ending. I hope you outrun the T. rex, catch the criminal and for your parents’ sake, maybe every now and then, just like E.T.: Go home. Thank you.
最后,我祝愿大家好莱坞式的大团圆结局成真。祝你们能跑过暴龙、抓住罪犯,为了你们的父母,也别忘了像E.T.那样常回家看看。谢谢。

1…4567
duncan

duncan

write something useful

70 Artikel
13 Kategorien
18 Tags
RSS
GitHub instagram music zhihu
© 2019 duncan
Erstellt mit Hexo
Theme - NexT.Pisces
| Total visited times