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的.
2017-04-16
2017-04-15
PINCode的意义
考虑下支付pin code的意义.
如果没有pin code而协议走的是对称加密的话.
那么理论上只要能够对process/device有一定的访问权限的话,reveal key应该不是什么问题.
而https的话,机制上也有可能通过root certificate的方式让加密透明化.
剩下私有的非对称加密方式.
原则上来说,因为对于client的发出的信息来说,只有key owner能够decrypt.
所以貌似没什么问题.
但这里有一点是,key owner其实并不能verified client.
因为它verify的是基于public key的一个signature.
只是某种integrity的校验,而对于消息的发起者身份也是没有任何信息的.
于是,理论上,在client和owner之间就存在一个中间人的机会.
这样的话,同样可以使得加密透明化.
而如果需要对client和owner做一个第三方认证,也就是类似https方式的话,同样地不能避免中间人攻击.
所以,实际上来说,这里的问题一个消息的integrity.
另一个是authorization.
而integrity是建立在authorization之上的.
因为不管你的integrity check多么完善.
如果不能确认消息的制造者是期望中的一样的话,也是没有意义的.
那么怎么做authorization呢?
或者直观的一个例子就是,如果确认一个communication channel另一端的你是你.
而不是一条狗.
然后看pin code.
假设pin code没有leak的话.
或者说pin code是只有client和service provider之间才知道的信息的话.
换句话说,就是没有第三方知道这个信息的话,也就没有authorization的问题.
因为能通过这个pin code关联起来的除了自身就是对方.
本质上来说,这里依赖的是某种形式two party private information.
所以它的问题在于,如果leak了呢.
考虑什么时候会leak.
一个是在首次交换的时候.
或者说存在一个唯一一次交换信息过程的时候.
比如设定pin code让对方知道/确认的形式.
这个时候因为没有一个private information,所以理论上是存在leak的机会的.
那么存在不存在不需要交换,但双方都能agree的一个形式呢?
理论上是可以存在的.
一个最简单的方式就是考虑类似btc的方式.
双方随机生产一个code,然后encrypt一个公共信息,然后尝试decrypt这个信息.
如果能够成功还原,那么就因为这双方有了一个agreement.
这样的话,剩下的问题就是如何提高这种碰撞/配对的成功概率.
理论上可以把生产算法narrow到跟时间设备信息等已知条件习惯的某种半确定性算法.
比如最简单的通过当前通信的ip:port+limited random field去尝试配对.
当然,这里同样存在中间人的问题.
因为一开始谁也不知道谁是谁.
所以同样存在一个开始negotiate的时候被中间人的机会.
这样的话,倒不如回退回直接交换pin code的方式.
再扩展一下考虑用户名密码的模式的话也是类似.
本质上来说,这里需要的是一个private held的information.
用来做unique identity和mutual information.
于是,这里再回头看https的话,其实算不错的方案了.
通过https交换最初的pin code.
不存储的话,以后即使信道被compromise.
只要这个code保存地好/没有leak,那大致上还是能够做身份确认的.
如果没有pin code而协议走的是对称加密的话.
那么理论上只要能够对process/device有一定的访问权限的话,reveal key应该不是什么问题.
而https的话,机制上也有可能通过root certificate的方式让加密透明化.
剩下私有的非对称加密方式.
原则上来说,因为对于client的发出的信息来说,只有key owner能够decrypt.
所以貌似没什么问题.
但这里有一点是,key owner其实并不能verified client.
因为它verify的是基于public key的一个signature.
只是某种integrity的校验,而对于消息的发起者身份也是没有任何信息的.
于是,理论上,在client和owner之间就存在一个中间人的机会.
这样的话,同样可以使得加密透明化.
而如果需要对client和owner做一个第三方认证,也就是类似https方式的话,同样地不能避免中间人攻击.
所以,实际上来说,这里的问题一个消息的integrity.
另一个是authorization.
而integrity是建立在authorization之上的.
因为不管你的integrity check多么完善.
如果不能确认消息的制造者是期望中的一样的话,也是没有意义的.
那么怎么做authorization呢?
或者直观的一个例子就是,如果确认一个communication channel另一端的你是你.
而不是一条狗.
然后看pin code.
假设pin code没有leak的话.
或者说pin code是只有client和service provider之间才知道的信息的话.
换句话说,就是没有第三方知道这个信息的话,也就没有authorization的问题.
因为能通过这个pin code关联起来的除了自身就是对方.
本质上来说,这里依赖的是某种形式two party private information.
所以它的问题在于,如果leak了呢.
考虑什么时候会leak.
一个是在首次交换的时候.
或者说存在一个唯一一次交换信息过程的时候.
比如设定pin code让对方知道/确认的形式.
这个时候因为没有一个private information,所以理论上是存在leak的机会的.
那么存在不存在不需要交换,但双方都能agree的一个形式呢?
理论上是可以存在的.
一个最简单的方式就是考虑类似btc的方式.
双方随机生产一个code,然后encrypt一个公共信息,然后尝试decrypt这个信息.
如果能够成功还原,那么就因为这双方有了一个agreement.
这样的话,剩下的问题就是如何提高这种碰撞/配对的成功概率.
理论上可以把生产算法narrow到跟时间设备信息等已知条件习惯的某种半确定性算法.
比如最简单的通过当前通信的ip:port+limited random field去尝试配对.
当然,这里同样存在中间人的问题.
因为一开始谁也不知道谁是谁.
所以同样存在一个开始negotiate的时候被中间人的机会.
这样的话,倒不如回退回直接交换pin code的方式.
再扩展一下考虑用户名密码的模式的话也是类似.
本质上来说,这里需要的是一个private held的information.
用来做unique identity和mutual information.
于是,这里再回头看https的话,其实算不错的方案了.
通过https交换最初的pin code.
不存储的话,以后即使信道被compromise.
只要这个code保存地好/没有leak,那大致上还是能够做身份确认的.
订阅:
博文 (Atom)
爽文
去看了好东西. 坦白说,多少是带着点挑刺的味道去的. 毕竟打着爱情神话和女性题材的气质,多多少少是热度为先了. 看完之后倒是有些新的想法. 某种程度上来说,现在的年轻人或者说声音就像小叶. 只要说点贴心的话就能哄好. 也是那种可以不用很努力了. 留在自己的舒适区避难所小圈子抱团就...
-
最近尝试了下海淘. 当然,方向上来说是从国内到新加坡. 先是买了个iPhone,算上运费和双重征税,到手比官方还是便宜个一两百新的. 换算回来也不多事10%的纯粹价格因素差异. 当然,之类有电商促销的因素. 也有比较基准是新加坡Apple Store售价的原因. 但如果同样比较A...
-
这两天看完了Netflix版的三体. 某种程度上来说,完成度还是不错的. 尽管开始的时候对于第一集片头有些争论,但整体如果带入当下去看的话,还是有些梗的. 比如三体对于地球科技的发展速率的担忧,由此衍生的智子. 以及现有力量对比上的压倒性优势. 如果带入中美关系以及各自的历史阶段...
-
前几天Sora出来后才仔细看了下diffusion,发觉确实算挺取巧的. 按照naive的intuition或者说不那么现代的方式的话,可能需要segmentaion为基础的composite的方式去生成图片,即使扯点deep learning/network的,可能也是类似一些...