关于确定性

seq2seq的intuition某种程度上来说就是把两个vector拟合出一个映射关系.

或者说任何向量化的计算抽象了说都是拟合这种映射关系.

所不同的是像machine translation的recurrent neural network/long short term memory.
提供的是一种position相关的调整策略.

因为从语言侧面来说,翻译的一个思路是两种语言之间语义指向的别称之间的关联关系.
也就是所谓的基本字词的转换关系.
而语法只不过是一种arrangement的方式.

对于表意来说,怎么放置其实更多的是一种约定俗成的关系.

所以简化一下就是两种语言的意指之间的对照关系.

于是,通过LSTM等具有位置调整功能的组件把两种语言关联到一种通用的"语法"结构下面,也就很自然而然了.

RNN系某种意义上来说,对于向量本身就像一种elementary operation.
简单地对向量的唯独做类似行交换的reprojection.

它跟普通的matrix transform的思路区别在于,这种纬度切换面向的是单个的向量本身.
而不是一个操作apply到所有向量的同一纬度.

所以,这个的intuition更像是一种pattern extraction.

CNN也类似.
如果把RNN像CNN一样排练,或者把CNN的convolution layer看出某种形式长度的LSTM的话.
pooling+rectifier也就类似于某种位置转换来达到某种pattern的align.

考虑回两组向量的拟合映射问题.
或者说去掉拟合连两个字.

给定任意两组向量和之间的一个映射关系,定义这个映射关系为一个operator.

于是,一个例子,比如整数加法,或者所谓的group.
1+1 = 2 就是[1,1] -> [2]
2+3 = 5 就是[2,3] -> [5]

那么同样地,可以定义另外一种operator.
使得
1+1 = 9 也就是[1,1] -> [9]
之类的.

从group theory的角度来说,只是某些约束符合不符合/满足不满足/定义没定义的问题.

这里的一个点在于.
数学或者说某种确定性关系,某种程度上来说是对向量两边的映射关系的一个特定子集描述.

或者说是某种特定的分组方式.

于是问题就在于,对于这个特解的所谓合理/相容/不矛盾是包含了这个group的某种constrain在内的.

简单说,就是排除了"已知的反例"的.

比如对于square操作.
\sqrt 2和\sqrt -2的区别.

后者可以说是在前者的一个新的reproduction或者说一个新的group子集划分.

这里想说的是什么呢?

所谓的确定性或者说科学性合理性在于,可以给出A->B的一个自洽的结果.
也就是,这时候有一种足够描述能力的子集划分,去概括这些映射关系.

那么,当如果出现一个是地A->B不自洽了的情况.
就像out of vocabulary或者某些算法的bad case的时候,就出现的需要对这个"映射关系"/理论做修补的时候.

就像物理学的发展.

那么到底什么是确定性呢.
或者说理论上存在么.

halting problem的思路在于,如果一个UTM能够simulate自身的话.
这个simulation是non stop的递归过程.
于是反过来说不存在一个UTM可以描述所有的东西.

这里隐含的一个假设就是,如果可以simulate,那么一定是会或者说必要halt的.
反过来说,如果把这个条件去掉,那么就存在一个可以simulate除自身之外的任意事件的UTM.

也就是说,把这组映射关系里去掉某些之后还是可以自洽的.

于是,反过来说,只要出现任意一个不在自洽体系里的case的话,这个体系的确定性就不存在.
或者说至少需要重构.

因此,一个体系所能描述的"确定性"只是针对已知或者已经发生的A->B的一个特例划分.
它的有效性最多仅仅限于"过去".

而对于"未来",这个是undefined的.

你可能感兴趣的:(关于确定性)