ICML2014流水账

首先我的兴趣是Bayesian Inference,尤其是topic modeling和HMM,所以听的talk以这个方向为主,有时候也听了几个deep learning方向的,优化则基本不懂。

周六

第一个tutorial听的是Max Welling和不认识的人讲的Bayesian Posterior Inference in the Big Data Arena。Max Welling讲了把variational inference变成online的一些进展,好像大部分是他参与的。还有用一些技巧提高sampling的 proposal distribution效率(降低rejection概率)。一个我不懂的keyword是:Langevin equation。

第二个tutorial听的是Finding Structure with Randomness: Stochastic Algorithms for Numerical Linear Algebra。我对优化了解比较少,所以只是听个耳熟,就是找某种低阶近似矩阵的技术,主要贡献是证了几个approximation error的bound。对技术细节感兴趣的可参考这篇同名paper:http://amath.colorado.edu/faculty/martinss/Pubs/2009_HMT_random_review.pdf

第三个tutorial听的是An introduction to probabilistic programming。这个貌似是个学生讲的,就像一部好莱坞烂片一样,节奏缓慢,高潮是几个demo,感觉确实很方便,但因为是sampling做inference,也没对特定model做优化(也许有我不知道),效率肯定不如自己写了,小数据集测一下效果还是可以的。

周日

主会开始了。

先是keynote,MSR的Eric Horvitz。个人感觉他看问题已经不是从理论,而是从应用来了,所以对researcher参考意义不大,亮点是几个demo。印象比较深的是,会后有个女的提问,如果机器人比人还聪明,人是不是该向机器人学习?感觉Eric Horvitz一头黑线,他心里肯定想,你想多了吧,不过还是很有涵养的回答说,在有些task上算法的确做得比人好。

上午听了Bayesian Optimization and Gaussian Processes这个session。印象比较深的是朱军组的paper:Robust RegBayes: Selectively Incorporating First-Order Logic Domain Knowledge into Bayesian Models。一作是清华的本科生。它在LDA里加了一阶逻辑约束。概念比较好理解,优化比较麻烦。这个idea在微博上有人说很不错,只是实验比较toyish,presentation之后大部分人都在质疑实验的规模。之后是An Efficient Approach for Assessing Hyperparameter Importance。基本思想是用Gaussian Process来拟合hyperparameters对maximum likelihood(或者其他性能指标)的影响曲面,然后找到最重要(variance最大)的参数。后来有一篇Input Warping for Bayesian Optimization of Non-stationary Functions,也是类似的思想。顺便说,听一个Stanford的人说,GP一开始是用在石油钻探上,因为打个眼成本很高,所以尽量少打眼,还能估计出油层分布。而每个hyperparameter设置对应的实验成本也是比较昂贵的,所以这个方法可以直接borrow过来。

下午主要听了Clustering and Nonparametrics这个session。第一篇是Von Mises-Fisher Clustering Models,Von Mises-Fisher(vMF)是个unit sphere上的分布。这篇paper把observation x先normalize到一个unit sphere上,然后假设p(x|z)服从Von Mises-Fisher分布。vMF的表达式很复杂,所以Inference也很复杂。我不太确定这么做的好处是什么。然后是朱军组的Online Bayesian Passive-Aggressive Learning。一作也是清华本科生。它感觉是在传统的Passive-Aggressive Learning里加了KL divergence作为新的约束,KL divergence保证新参数对应的分布和旧的分布比较接近,同时likelihood一项保证新参数比较好的model新数据。里边声称传统的Passive-Aggressive Learning是这个framework的一个特例。然后印象比较深的是Fast Computation of Wasserstein Barycenters。这篇paper是找和几个给定分布距离最近的分布(几个分布的“centroid”),具体应用不知,但是感觉挺有意思的。如果参数求mean,或者求KL divergence,好像不太好。Wasserstein distance是一种分布之间的距离,表达式很复杂。但从demo看,求出的centroid挺优美的。之后是Max-Margin Infinite Hidden Markov Models。这个貌似是RegBayes在iHMM上的一个扩展,或者说“填格子”。

周一

Keynote是Michael Kearns的Algorithmic Trading and Machine Learning,这个话题我本来是很感兴趣的,但让我失望的是,只讲了在普通exchanges和dark pools里下单的策略。本来我以为会讲一下价格预测模型的。(p.s. 听懂行的朋友说,价格预测并不是算法交易的核心,核心是portfolio optimization,比如 pairs trading,但这个也没讲) 一个小花絮是,有个不知道哪国人,提问时候问,这个世界,富人越来越富,穷人越来越穷,你为什么帮助富人,帮助资本主义(原话如此)?全场哄笑。Michael Kearns很汗,说这是personal question,然后blahblah说谋生不易之类的。

之后是上午的Latent Variable Models session。第一个talk没听懂,第二个是Exchangeable Variable Models,大概是把exchangeable random variables扩展到partially exchangeable random variables (可以用conditional independence和independence的关系来类比),推了一些定理。第四个是Latent Variable Copula Inference for Bundle Pricing from Retail Transaction Data,它是用copula来model某个商品组合的用户愿意支付的价格的联合分布(不同用户愿意支付的价格不同,因此是随机变量)。一般对于未知的联合分布,假设为multivariate Gaussian是很方便的,但是它要求marginal distribution是Gaussian,而价格分布很可能不是Gaussian。用copula,相当于把marginal distribution做了normalization变成Gaussian(不精确的说),然后假设变换后的r.v.的联合分布符合multivariate Gaussian. 听起来reasonable,但是论文里一个假设,“用户不购买就认为是价格超出用户心理预期”,被一个提问者challenge了,作者说这的确是个问题。顺便说,这样的不准确的假设被用在许多地方,来对付missing values。之后Affinity Weighted Embedding,Embedding的思路(包括现在很流行的word embedding)都是,把数据映射到一个vector space里,然后两个数据点之间的距离是某个measure下两个vector的距离。这个模型和最简单的Linear embedding models区别是,加了个给向量点乘用affinity function加权,这样可以把已有信息通过affinity function加进去。

下午的sessions大部分不太熟悉。试图听Nonparametric Bayes session 1,但大部分process都非常复杂,比如Zoubin学生搞的Beta Diffusion Trees,光模型描述就让人头晕了。反而是周二晚上的poster session(周一晚上没有),把几个talk给弄懂了。

下午听了个Methods of Moments for Learning Stochastic Languages,没听懂,周二晚上找作者问了个究竟。Stochastic Languages 听起来很牛逼,但其实就是一个离散字符集的HMM,转移矩阵可以用一个Hankel matrix表示,它可以把各种字符组合的概率写下来,是个无限大的矩阵,但有个很好的性质:阶数正好是hidden states数目,因此可以用来做model selection, recover hidden states数目。这篇paper实质上比较了几个现有方法,发现tensor表现的最差(看来流行的东西未必效果好),还是传统的EM效果最好。

在poster session还问了个Yoshua Bengio 的Deep Generative Stochastic Networks Trainable by Backprop,想法很牛,利用autoencoder的input和output之间相似的关系,试图做类似MCMC的sampler,从一个点generate出符合某个分布的其它点(相邻但是不同)。一层autoencoder只能找附近的点,所以他们使用了多层autoencoders。感觉Yoshua Bengio是个非常严肃认真的学者,不管多么弱智的问题他都会认真回答,对他印象很好。一个搞nonparametrics的俄国人对Bengio的学生直言说他不喜欢这个方法,因为是blackbox,没法解释里边数据怎么生成的(这种观念差异在Bayesian和frequentist之间很典型),Bengio的学生很有涵养的点头说没错。我自认是Bayesian,但对它还是捏着一把盐。个人觉得generative models虽然牛逼,有种创造万物的上帝的感觉,但许多任务,找到合适的generative process非常困难,而去“识别判断”它很容易,这就像是一个做一个好作家很难,但是能识别好的作品容易得多。而generative models为了保证inference可行,往往做很大简化,这使得效果未必比DNN这些blackbox方法好。

另一个有意思的poster是Lower Bounds for the Gibbs Sampler over Mixtures of Gaussians。作者证明了用Gibbs sampler做GMM inference的时候,收敛极慢(即使考虑label switching的问题,即把label重排后的cluster configuration认为是同一个等价类)。这无疑给sampling方法泼了一瓢冷水。

还有一个poster是Input Warping for Bayesian Optimization of Non-Stationary Functions。前面提到用GP做hyperparameter到maximum likelihood曲面拟合,GP的kernel function是stationary的话处理比较方便,但实际中可能未必能满足。作者提出用input warping function把non-stationary的kernel function变成stationary的,就可以方便的用GP了。

周二

Keynote是Michael Jordan讲的,本来满怀期望,但听了之后略感失望,讲了用statistical risk minimization做privacy和Bag of Little Bootstraps,感觉已经离主流Bayesian inference比较远了。

下午的topic models session是重点。

第一个presentation是Understanding the Limiting Factors of Topic Modeling via Posterior Contraction Analysis,这是今年ICML best paper,许多人慕名而来,房间后面站了一些人(但仍然比不上deep learning sessions的火爆)。它给出了LDA inference得到的topics和ground truth topics之间距离(“error”)的一个很简洁清晰的bound,支持了我们的intuition:如果training corpus里document太少,或者每个document太短,是不能train出来好model的。晚上的poster session我问了作者两个问题:1)如果ground truth topics degenerate成相同的topics,那么posterior会很快收敛到真实的topics,这时候bound还有效吗,他说这个bound考虑的是non-degenerate的情况; 2)为什么topic数k’设成1+真实topic数k后,bound会变差很多(直觉上应该是比较连续的),他说这给的是个lower bound,实际未必有这么差。后来我仔细看了一下paper,发现假设A2 要求inferred topics之间最小距离必须大于某个值,所以如果topic数为k+1,那么哪怕k个topics完美对应到ground truth topics,总剩一个topic很“差”,把error bound拉大了。而实际用LDA的时候,如果topic数目设的太多,很可能实际上学出来的一些topic会很类似,因而性能并不会变差太多,所以这个bound只适合作为理论参考吧。

第二个没怎么听懂。第三个是唐杰的postdoc的On Modelling Non-linear Topical Dependencies,提出了一个非常复杂的model,最后实验结果很让我吃惊:perplexity居然是vanilla LDA的1/3! 一般一个新model跟LDA的差别不会很大的。我提问为什么会这么小,作者很坦率的承认是overfit了。。。在这里对作者的诚实表示感谢。

第五个是Bing Liu组的Topic Modeling using Topics from Many Domains, Lifelong Learning and Big Data。Bing Liu是做web mining的元老。晚上poster session我问了一些技术细节,他说先是从一些domain学到的topics里用Frequent Itemset Mining(data mining的经典算法)挖掘一些关联pair,然后用Generalized Polya Urn来incorporate这些prior knowledge,作为topic prior,在另一个domain里做LDA inference。感觉是个Bayesian inference和data mining的有趣结合,但把rules结合在prior里感觉还是有点诡异,Bayesian常用的做法是结合到likelihood function里。他还提到之后他们改进了Generalized Polya Urn(具体怎么改我忘了),让效果得到大幅度提升,paper已经发表在另一个conference上。

之后听了Nonparametric Bayes session 2. 同样比较深奥,唯一听懂的是Pitfalls in the use of Parallel Inference for the Dirichlet Process,Zoubin学生做的一篇实验paper,结论是现有的DP并行算法效果都不好,因为DP得到的clustering会有类似winner take all的特性,即一个大类包含了大部分数据,如果每个类对应一个计算结点,那么这个大类对应的结点仍然要处理大部分的inference任务,其他结点空转,效率很低。总体感觉这篇paper比较水。。。

然后转战Time Series and Sequences session,听了一个Stochastic Variational Inference for Bayesian Time Series Models。感觉这是简单的把stochastic variational inference(SVI)用到HMM和HSMM上。HSMM时间复杂度比较高,所以作者用SVI,把数据分成mini batch来train,对提高效率比较明显。我提问说HMM/HSMM hidden states前后有dependency,如果minibatch太小效果肯定不好,怎么设minibatch size比较好,感觉他也没回答清楚。

周三和周四的workshops

周三先是听了Workshop on Issues of Sentiment Discovery and Opinion Mining (WISDOM),感觉很不好,presenters英语都很差,提的模型也没啥意思,就走了。然后听了Causal modeling & machine learning,因为里边涉及我之前关注过(但没参加)的一个competition,有位女士讲了一下竞赛结果,感觉还是feature engineering,有几个feature效果特别好。

周四先去Knowledge-Powered Deep Learning for Text Mining,听了Yoshua Bengio的keynote:Learning to Represent Natural Language Divergence Methods for Probabilistic Inference,大致对word embedding有了个了解。后面MSRA的一个keynote觉得有点水,就走了。

跑去Divergence Methods for Probabilistic Inference,听了A. Storkey的A Continuum from Mixtures to Products: Aggregation under Bias,他用Renyi Divergence来解释ensemble的两个特例: sum combiner和product combiner,各对应Renyi Divergence的α的两个取值。看了一下Renyi Divergence的科普文章The World According to Renyi: Thermodynamics of Multifractal Systems,感觉这个measure用来理论分析还是很有意思的,常用的Shannon entropy(对应KL Divergence)是它的α=1时的特例,但实际用来做inference,其他取值可能很不好处理,而log会把乘积变成求和,然后用Jensen Inequality 求bound,方便多了。