2011-10-28

歧途的思维

  想起上周跟某人吃饭时候谈到的一个问题.

  之前一直很模糊Data Mining这东西.
  后来,做了些不算Data Mining的,但是需要类似思路的东西之后貌似有点头绪了.

  原本以为的DataMining嘛,如字面意思.
  数据挖掘.
  
  也就是说,你期望从数据中得到一些意外的东西.
  犹如被引用及神话很多的,关于纸尿片的案例.

  如果不深入想的话,会觉得数据挖掘是一件很美好的事情.
  你不知道的事情,通过挖掘会整齐地出现在你面前.

  而现在的想法是,其实数据挖掘.
  挖掘这个词已经概括了目前的认知.
 
  所谓挖掘,其实就是你原本知道那里可能会有什么,才会去所谓挖掘.
  某种程度上来说,数据挖掘其实只是通过结果来说明你猜测的准确度如何.

  换句话说,其实是你已经知道了结果是什么,只不过是通过这种手段来证明而已.

  于是说到数据驱动.
  
  所谓的数据驱动,就是让数据说话.
  而要让数据说话的前提是,你知道数据是什么意思
  换个角度来说,其实是你已经有各种预期了,然后通过对比数据,找出比较符合的一个.
  
  也就是所谓的fitting.

  这在某种程度上来说,其实也只是利用数据来验证自己的想法.
  
  于是,退一步想.
  这种数据挖掘其实是可有可无的.
  
  它依赖的还是人本身.
  它需要一种直觉,然后人通过这种直觉把它具象化.
 
  于是,把之前的认知推翻.
  数据挖掘其实就是检验你想法与现实符合到了什么程度.

  也就是一个model fitting的问题.

  而说符合到什么程度,这个其实也是很主观的问题.

  且不说它受你的预期条件的约束,更不用说它还受各种你可能不知道的因素的综合影响.
  结果可能只是恰好而已.

  也就是说,它依赖的还是人的建模水平.
  能排除多少干扰因素,能设想多少影响关系,能估计多少波动范围.

  极端点说,这其实跟空想一个idea然后实行没什么太本质的区别.
  
  原因在于,它始终是supervise的.
  有了一定预期,然后用结果解释结果.
  
  这看上去多少有些变扭.

  至少,纯学术上来说,并不优雅.

  而unsupervised的东西,看上去更复杂更优雅.
  但是实现程度和效果可能并不理想.

  尤其是,unsupervised也很容易地,在先期设计思维上陷入supervise的陷阱里.
  你还是需要知道某些特定的规律.

  毕竟,机器还是按照规则运作的.
  非确定性中,还是带有某种"确定性"的味道的.

  所以,试图依靠了解全部运作机制而做出相应决策的想法,感觉有些过于天真了.
  
  尤其是在数据涉及到人的行为的时候.
  人本身的不确定性,很多时候都是非理性的.
  意味这你对人的一个行为的结果,或者决策思路很难捉摸.
  
  如果不清楚输入输出的可能组合,也就很难有一套有效的规则来模拟这种行为.

  所以,还是觉得,在Social Network等涉及到人的地方.
  还是不要想着建造一个僵硬的规则,然后让人顺着这条规则走下去.

  而应该是构建一个开放的世界观.
  至于这个世界到底是怎样的,应该让参与到里面的人自己去营造.

  而不是创世者自己规划好了,然后让里面的人一步步走下去.
  这无论是对于造物主还是里面的生物来说,都是乏味的.
  
  未来可预测.
  这不能不让人觉得索然无味.

  而只有让用户自己去做三体运动,去通过复杂的不可描述的相互作用去构建的世界才能足够有趣.
  以及足够的强壮.

  而这时候的所谓"数据挖掘"才算是有点意义.

  因为你能了解这个"世界"的唯一途径就是数据.
  
  就像现实的人类社会一样.
  通过数学,去了解这个世界.
  去猜测这个世界.

  你完全不清楚你所创造的那个"世界"到底是怎样的.
  而此时的你,也才有兴趣去通过数据猜测这个你所创造的,但永远无法进去体验的世界,是如何的.

  即便,它最后并不能反馈给你"真实"的信息.
  但是,对于神来说,已经足够了.

  因为这个时候,创世已经是一件永远在进行的事情.
  而不是短短的"七天".

BalanceTree和交互设计

  "用tree描述交互流程,balance tree优化交互流程".
  这是前两天在G+和Twitter上说的.

  其实想法很简单.
  对于一个应用来说,都会有一个唯一的landing.
  即使是互联网的网站也会有一个理论上的主页,虽然,很多时候其实是某个特定链接.

  不管怎么样,只要使用一个东西,都会有一个最初的入口.
  所谓的landing.

  于是对应到tree,其实就是那个root.

  简单想一下,怎么描述跟这个landing的交互过程,以及由这个landing衍生出的其他东西.
  很自然的,第一个想法是state machine.

  然后稍微加些约束简化下模型,就可以得到一个唯一初始状态的状态机.
  于是,换个角度,其实就是一个tree.

  当然,实际情况可能复杂些.
  尤其是对于互联网,每一个地方都可能是入口.
  所以实际上,这个交互更像是graph.

  回到tree.
  
  其实tree本身便是graph的一个子集,只不过"单向"关系比较多.

  当然,tree也可以是双向的.
  只是,相对于纯粹的graph来说,直觉上联通性比较差.

  如果说实际的交互是一个graph结构,那么换个角度.
  每个交互序列其实都是从某个特定点开始的.
 
  上面说了,无论是graph还是状态机,其实都可以退化到某个特定的点.

  于是,说了那么多,想表达的其实就是,把东西简化下,约束下,交互流程其是就是一个tree结构.
  而且是节点间可以是双向关系.

  这算是解释了前半句.

  仔细想下,其实要说交互能够被tree描述的话,做的约束条件是它必须能退化成tree.
  也就是说必须没有交叉.

  形象地说,其实就是只能有前进和后退两个操作.
  一个前进操作不能越级,回溯到parents的sibling.

  即给定一个操作序列S,把序列里每个节点s的sibling考虑将来则有一个集合O包含s以及它们的sibling.
  也即是说,对于某个s的前进页面的集合F,必然有全集A,满足A=O+F
  即F和O是不相交的.

  只有满足这个,才能将整个交互退化为tree.

  而对于后半句,为什么要牵扯到balance tree呢.
  原因在于balance tree的一个属性在于其节点在插入和删除时候的auto balance.
  
  也就是之所以成为balance tree的原因在于,它的目的是使得整个tree的level尽可能地少.
  
  而诸多balance tree的实现里都是自适应.
  也即任何对tree的operation都附带着对tree level的维护.

  于是,投射到交互流程上面来说,你可以不停地修改增删交互点.
  而在修改的过程里,如果能够严格地保证整个交互满足graph->tree的退化原则,则整个过程其实都会自己维护交互深度/复杂度的.
  
  当然,它的完成结果并不一定是符合直觉的交互点安排.
  但是,它提供了一种辅助手段.

  而实际上,对于交互点的权值设置得越合理,那么对auto balance的最终结果做调整的概率就越低.

  证明很简单.
  当理论权值都是完美的,也就退化为寻常的数值插入了.
  
  而权值的赋予,则不能算是一个很模型话的东西.
  它更多的时候是一个依靠先期的对于交互频度的估计.

  虽然,它可以基于一些其他渠道的统计数据.
  但是,同时应该考虑交互环境异构的多样和复杂性.
  
  统计数据只能说明统计问题.
  说明不了个体问题.
  尤其是,这个统计本身受样本交互流程设计的影响.
 
  最后, "用tree描述交互流程,balance tree优化交互流程"这句话的意义其实在于.
  提供一种简单的约束方式.

  它的基本点其实就在于保证graph的可退化性.
  balance只是一个简单的工具思想.
  
  如此而已.

2011-10-09

手机与云端

  大概是前两天吧.某群里忽然谈到了iPod的,然后提到了MP3/MP4.
  于是忽然冒除了一个想法.

  能不能用无线电波作为载体,实现类似音乐点播的功能呢,这样的话,存储是在云端,而功耗方面应该类似于FM.
  后来想想,其实现在的通讯技术就是这么做的吧.
  不然,如何实现移动电话的.

  于是,很简单的这东西应该可以通过 现有的SP等渠道方式实现吧.
  
  它试图解决的其实是手机的能耗问题.

  所谓的云计算,大概的一个着力点其实也是在于能耗,或者说资源的高效利用上.

  毕竟单纯以CPU计算能力来说的话,其实并不是每台机器每时每刻都在满负荷运转.
  但只要启动则就存在消耗.

  于是,能不能把这种资源利用集中起来统一分配下去,也就成为一个有利可图的事情.
  从这点上来说,其实有点共产主义的味道.

  实际上,现在的云收费也大概是按劳分配的方式.
  
  想来,也唯有纯粹逻辑的机器能实现这种理想机制的运转.

  回到手机上,或者回到普通云端接入设备上,其实就是把某些功能委托出去.
  
  在技术上,其实也是有某种二八原则的.
  最简单例子就是cache.

  Amazon的Sink便算是这种应用概念的产品化.
  一个页面在一定时期内的多次渲染结果其实是一样的.
  而同时同一个渲染成页也可能供给不同的客户端使用.
  于是,在云端处理的话,那就大致是一次渲染多次使用了.

  而链接预测更是这种想法的延伸.
  如果一个链接点击频度超过一定,那么它被点击的可能从概率上来说就高些.
  如果结合Amazon擅长的推荐系统,那自然又可以省下不少功夫.

  从某个角度来说,Google的Instant Search加上Suggestion的话,其实也可能实际上增加了搜索的命中程度,降低了服务开销.

  印象中,似乎是有人在搞游戏的云端渲染的.
  更早一些时候是一些学术性的分布式计算,比如算DNA之类的"公益性"性作品.

  实际上,以手机来说,其实是个很尴尬的情况.

  现在的手机单机能力在攀升,而云端技术和带宽传播速度等都在不同程度地提升,看上去,似乎是无论如何都是间前景光明的事.
  只是一谈到现有的电池技术,就显得虚无缥缈了.

  大概也因此才有了平板的立足之地吧.
  一个介于正统Notebook和手机之间的过渡产品.

  也不知道续航能力这个问题什么时候能解决.

  虽然是有类似无限点充电之类的技术.
  但是总感觉不是很乐观.

  一来转化率是一个很直接的问题.
  二来辐射强度也不能不是一个需要考虑的点.
  最后是即使上述都解决了,设施建设也是个大工程.

  当然,也许根本不需要设施.

  比较,光也是种电磁.

  不过,感觉还是改变能耗方案来得靠谱些吧.
  少些本地计算能力,也就少很多能耗.
  再把屏幕技术革新下,看有没能利用自然光或者其他什么特性的材料,把屏幕这一大块降低.
  或者去掉屏幕,把距离往眼睛上靠,视网膜成像技术之类的.
  剩下的就是纯粹地提高传输速率了.

  到时,手机大概就是个类似收音机一样纯"被动式"设备了吧.只不过还有"主动"发起功能.

  也许,连"主动"其实也不存在了.
  比如量子纠缠.

2011-10-05

无题

  发布会结束,没有iPhone5,但也没有想象中的欢乐场面.
  把5改为4s本也是件很简单的事情.
  谁会在意.

  其实,大概从头到尾就没人在意过是否真的有iPhone5.
  因为这对于有些人来说,不过是一笔意外之财.
  有自然好,没有,也无甚关系.
  毕竟,本来也不曾失去些什么.

  也无所谓愚弄与被愚弄.
  毕竟,结果可能是部价值几千块的手机.
  真假倒是不值得计较了. 

  原来,只要有可能得利,也就无谓是非曲直了吧.

  当然,也大可说一声不是自身无能,而是奸商太狡猾.
  对方使了诈才上当的.
  只是,对于一部确然不清楚是何物的东西,那个确定按钮也是扎扎实实地自己按下的.
  由不得其他借口.

  自然,这只不过是一时的贪小便宜,认了也无伤大雅.
  毕竟,到底是个人.
  所谓无利而不往.
  倒也是情理之中.

  于是,只要给些小利,也无心手中的是否是事实了.
  大抵是能拿到手的便是踏踏实实了,至于传出去的是真是假,也无所谓了.
  不过是拿人钱财,替人消灾.
  何况,本也并未曾实质拿到些什么.
  换个角度,自身也是个受害者,也能坦然一副备受欺凌的模样.

  本是平民百姓,也无需用如此的道德枷锁于己.
  
  毕竟,或得利益者,大概也能有既得的一天.
  且不管是否真的有.
  
  也许有,总比没有来得强.
  这便是逻辑.
 

聊聊卡布里尼

最近看了部片叫卡布里尼,算是可能这段时间来比较有意思的一部电影. 故事也不算复杂,就是一个意大利修女去美国传教,建立慈善性质医院的故事. 某种程度上来说,也很一般的西方普世价值主旋律. 但是如果换一套叙事手法,比如共产国际的社会主义革命建立无产阶级广厦千万间的角度来看的话,也不是...