本次IJCAI之行共七天時間。前面三天是tutorial和workshop同時進(jìn)行。后面四天是conference,每個時間段有多個session同時進(jìn)行。由于時間有限,前三天本人只參加了tutorial部分。后面四天是主會階段,也主要關(guān)注了RL部分和部分的classification和embedding。并且由于每個talk只有10-12分鐘,所以每篇文章只能給一些關(guān)鍵詞參考,具體細(xì)節(jié)還需大家自行閱讀文章。
Tutorial?
1.?https://sites.google.com/view/lianghu/home/tutorials/ijcai2019
此tutorial持續(xù)時間四個小時,講述范圍涵蓋了推薦系統(tǒng)的各個類別。
傳統(tǒng)的分類方法是:user或item側(cè)基于協(xié)同過濾的方法;基于內(nèi)容的過濾方法;基于地理位置的推薦系統(tǒng);基于知識的推薦系統(tǒng)。前兩種方法是最常用的。第一種方法有數(shù)據(jù)稀疏和冷啟動的困擾;第二種方法有信息不足和內(nèi)容過分一致的困擾。
但是此tutorial則從不同的角度來分類。先后從用戶間關(guān)系側(cè)(social RS, group-based RS),item側(cè)( session-based RS, cross-domain RS), 多模態(tài)側(cè)(multi-modal RS), 多準(zhǔn)則側(cè)(multi-criteria RS ),環(huán)境側(cè)( context-aware RS)來進(jìn)行分析。
下面分別進(jìn)行介紹。
Social RS:
此類算法是把social network引入。
Sorec是利用MF分別對social network和user-item rating matrix來共同進(jìn)行分解,同時共享user latent feature。
SocialMF是根據(jù)social trust的假設(shè)來作為user latent feature的額外約束,即user latent feature應(yīng)該等于social network為weight的鄰居user的sum。
SoReg則是類似的把social network作為user和其每個鄰居向量相似性的weight。
而Sorec的deep neural network版本也在2017年被提出。
還未解決的問題有:如何識別出有影響力的鄰居,social network的shift如何capture。
Group-based RS:
此類算法是考慮對于group如何來進(jìn)行推薦,因為要盡量滿足大部分人的需求。
一種方法是直接對于每個人的打分進(jìn)行合計;
一種是利用MF來對group-item rating matrix分解,其中引入了user,item,group feature;
一種是利用每個user對pairwise items的preference來預(yù)測user-item rating matrix然后再整合;
一種是把每個用戶分為collective embedding和individual embedding,然后再用神經(jīng)網(wǎng)絡(luò)來預(yù)測group-item?rating matrix;
一種是用attention來對group中的user進(jìn)行加權(quán)作為神經(jīng)網(wǎng)絡(luò)的輸入來預(yù)測group-item的rating matrix;
一種是同時用神經(jīng)網(wǎng)絡(luò)來預(yù)測user-item和group-item的rating matrix。
現(xiàn)有的問題有:缺少數(shù)據(jù)集;缺少對不同環(huán)境感知的建模能力。
Cross-domain RS:
基于用戶在不同domain的喜好相關(guān)假設(shè)來建模。
一種方法是不同的domain直接共享用戶向量,但是沒考慮不同domain的異構(gòu)性;
所以一種方法是在MF里面引入domain factor變成tensor factorization;
進(jìn)一步對上一個方法引入神經(jīng)網(wǎng)絡(luò)就是multi-view deep learning方法;
DiscoGAN則是把不需要配對的兩個domain的item進(jìn)行自動的進(jìn)行相應(yīng)轉(zhuǎn)換,具體做法就是把A domain的item作為generation部分的輸入跟B domain的item來進(jìn)行discriminative判斷,同時再把generator部分decoder成為A domain的item確保原始信息不丟失。這樣一來就可以在預(yù)測的時候直接用generator的當(dāng)作對應(yīng)的轉(zhuǎn)換輸出。
現(xiàn)有的問題有:如果沒有user或者item的overlap,要如何進(jìn)行cross-domain;如何整合多個domain的異構(gòu)的信息。
Session-based RS:
基于用戶在同一個session里選擇的item有依賴關(guān)系的假設(shè)來建模。我們不僅僅是想推薦類似的物品而是相關(guān)的物品。
對于一階依賴假設(shè),可以建立關(guān)于u,i,j的pairwise的MF。
對于高階依賴假設(shè),可以利用RNN來建模,2016年更是提出了一個用parallel的多類RNN利用id和feature來一起建模;2017年有人把機(jī)器翻譯中的attention-based encoder-decoder架構(gòu)用來建模。
對于松散的依賴關(guān)系假設(shè),可以直接concat歷史item作為context embedding直接進(jìn)行fc變換,或者直接根據(jù)距離越近權(quán)重越大weighed sum起來,實(shí)驗表明在天貓的場景下此方法比RNN方法表現(xiàn)更好,同時推薦的多樣性也更好;2018年有人用self-attention的方法來計算weight,效果好過RNN和直接concat,并且對order和context的length更魯棒;基于item不是point wise依賴而是union-level依賴的假設(shè),2018年有人提出Caser把CNN引入來encode歷史輸入,效果遠(yuǎn)好于RNN的方法,實(shí)際是在用CNN來自動選擇不同的item組合方式;
2019年有人把以上方法混合,分別用FC,RNN或者CNN,attention來encode從短到長的依賴,效果遠(yuǎn)好于Caser或者RNN方法。
總結(jié)一下,根據(jù)用戶和物品特性可以分為以下幾種情況:對歷史有高階依賴(RNN方法);對歷史有松散的依賴(CNN方法);歷史中有噪音(attention方法);歷史中由不同的異構(gòu)關(guān)系(混合方法);歷史有層級結(jié)構(gòu)(層級embedding)。
Multi-modal RS:
對于有多種modal特征的item,我們有必要把多種特征結(jié)合起來。圖像特征可以用預(yù)訓(xùn)練好的VGG直接transfer過來,文字特征則可以用word embedding等。
現(xiàn)階段比較重要的問題有:如何從多模態(tài)信息中提取一致的信息;以及如何利用基于GAN的方法去產(chǎn)生更多的sample。
針對第二個問題,2016年已經(jīng)有人提出了用GAN來從表述中生成圖像的方法,具體是把表述加入噪音作為generator的輸入,然后再利用discriminator來判斷(真表述,真圖像),(真表述,假圖像),(假表述,真圖像)來訓(xùn)練。
Multi-criteria RS:
我們應(yīng)該從多個維度來評價推薦系統(tǒng)的好壞,包括準(zhǔn)確率、多樣性、新穎度等。如果用MF來做推薦系統(tǒng),那么多個目標(biāo)可以通過約束多個MF間的latent vector一致來達(dá)成多準(zhǔn)則的model。
現(xiàn)有的問題還有:如果根據(jù)用戶或者context的不同來個性化的對多目標(biāo)做integrate;是否可以用game theory的方法來找到多準(zhǔn)則間的納什均衡。
Context-aware RS:
不同context下推薦的item應(yīng)該不同,考慮如何把context加入到模型中。
一種方法是直接在MF中加入額外的一個維度來做context latent feature;
2011年有人提出了FM來針對更一般的多維度context特征,可以把多種稀疏context特征的二階組合整合起來作為輸入;后續(xù)為了得到更高階的組合特征,2016年提出了wide&deep model。
2.?http://maple-lab.net/projects/small_data.htm
此tutorial持續(xù)時間四個小時,主要有兩部分組成。第一部分是關(guān)于unsupervised和semi-supervised學(xué)習(xí),第二部分是關(guān)于few-shot學(xué)習(xí)。
a. Unsupervised Methods以及Semi-Supervised Methods
講述在只有少量標(biāo)注數(shù)據(jù)和大量未標(biāo)注數(shù)據(jù)的時候,如何進(jìn)行unsupervised或者semi-supervised學(xué)習(xí)。
Unsupervised Methods
Auto-Encoder
這里介紹了auto-encoder(AE),以及variational auto-encoder(VAE),auto-encoding transformations(AET)。最后一種方法是把輸入做了transformation之后讓decoder判斷對應(yīng)是transformation是什么。此方法效果不會比AE差,但同時decoder的參數(shù)少了很多。
Generative Adversarial Nets(GANs)
傳統(tǒng)的GAN并不能從真實(shí)data中得到latent code z,2016年有人提出額外加入一個真實(shí)數(shù)據(jù)的encoder,然后把(x,E(x))當(dāng)作真實(shí)數(shù)據(jù),(G(z),z)當(dāng)作假數(shù)據(jù)給discriminator。這樣一來,就可以根據(jù)E(x)來得到latent code了。
GANs的一個缺點(diǎn)是會collapsing to only produce one image no matter what noise it starts with,而GLOW則從數(shù)據(jù)分布直接入手,通過invertible函數(shù)來實(shí)現(xiàn)generate。相比GAN此方法還未成熟,局限性較大。
Autoregressive Models
PixelRNN,Contrastive Prediction Coding(CPC)
Semi-Supervised Methods
Semi-Supervised?Auto-Encoder
在AE中加入label作為因變量。在AET中加入classifier作為額外task。
Semi-Supervised GANs
此時的generator是通過feature matching來訓(xùn)練,而discriminator部分則變成了判斷K+1個class,其中K為真實(shí)數(shù)據(jù)的class數(shù)目。
Localized GAN
Teacher-Student Methods
Temporal Ensembling,Mean Teacher,MixUp。
b. Few-Shot Learning
關(guān)于在擁有大量的auxiliary set數(shù)據(jù)之后,如何在少量的support set上訓(xùn)練一個模型使得其在query set上表現(xiàn)良好。即我們想要找到一個算法:有很好的泛化性;有很好的遷移性;在有限的數(shù)據(jù)集上學(xué)到高精度的分類能力。
主要有以下三種方法:
Hallucination based methods
Learn to augment
人類是善于從少量數(shù)據(jù)里面學(xué)習(xí)到規(guī)則來增強(qiáng)數(shù)據(jù)。所以我們可以從數(shù)據(jù)增強(qiáng)方面入手來增加數(shù)據(jù)量。
Meta-learning based methods
Learn to learn
MANN,MAML,MTL
Metric-learning based methods
Learn to compare
Siamese Neural Networkds,Matching Networks,Episodic training,Prototypical Networks,Relation Network,Covariance Metric Network等
3.?http://bit.ly/tf-ijcai
本教程是Google資深開發(fā)人員Josh Gordon講授,提供了最新TensorFlow 2.0的實(shí)操介紹,重點(diǎn)介紹了最佳實(shí)踐。講述了如何編寫幾種類型的神經(jīng)網(wǎng)絡(luò)(Dense, Convolutional, 和 Recurrent),以及生成對抗網(wǎng)絡(luò)(Generative Adversarial Network)。
4.?Deep Learning: Why deep and is it only doable for neural networks?
此外還聽了周志華教授的此invited talk。在演講中,周志華教授首先從自己的角度解讀了深度神經(jīng)網(wǎng)絡(luò)為什么能夠成功的比較關(guān)鍵的原因:layer-by-layer processing、feature representation、sufficient model complexity。但是它也有很多局限性:太多超參要調(diào)、模型復(fù)雜度必須保持一致、黑箱模型、只能連續(xù)數(shù)值建模,因為必須可導(dǎo)。
參考深度神經(jīng)網(wǎng)絡(luò)的三個成功因素,周志華教授介紹了gcForest方法,此方法是基于決策樹森林,以及基于集成模型的深度模型。此方法相比神經(jīng)網(wǎng)絡(luò)超參比較少,模型復(fù)雜度是adaptive的,可解釋度較高,也不需要反向傳播。但是同時必須保證子forest的多樣性才能夠把網(wǎng)絡(luò)做深。此方法有一些比較振奮人心的效果,但是因為沒有對應(yīng)的硬件設(shè)備,所以還不能跑太復(fù)雜的任務(wù)。而最近英特爾也和南京大學(xué)聯(lián)合設(shè)立了一個人工智能研究中心,目標(biāo)就是共同探索是否有可能設(shè)計新的人工智能芯片為深度森林提供加速。
Conference
Classification
Zero-shot Learning with Many Classes by High-rank Deep Embedding Networks 是在圖像分類任務(wù)中,利用其他任務(wù)的embedding來zero-shot完成目標(biāo)任務(wù),使用任務(wù)間的feature similarity作為weight來得到目標(biāo)任務(wù)的embedding。
Submodular Batch Selection for Training Deep Neural Networks 在神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)中,如何選擇batch也會影響到學(xué)習(xí)的效率和結(jié)果。此文章把batch selection作為一個submodular問題,從而找到一個heuristic來選擇batch,方法跟SGD比效果更好
Extensible Cross-Modal Hashing 在cross modal hashing任務(wù)中,如果我們想加入新的數(shù)據(jù)來hashing,歷史方法或者是全部重新regenrate或者需要fine-tune,此論文則給出了一種extensible的方法來做
Reinforcement Learning
Soft Policy Gradient Method for Maximum Entropy Deep Reinforcement Learning 此文章是把maximum entropy約束加入到了Q網(wǎng)絡(luò)中,由于是action-state算法所以需要double sampling。實(shí)驗中跟SAC,DDPG方法進(jìn)行了比較。
Adversarial Imitation Learning from Incomplete Demonstrations 此文章類似于state-based GAIL版本,而action只用來當(dāng)作auxiliary。
An Atari Model Zoo for Analyzing, Visualizing, and Comparing Deep Reinforcement Learning Agents 此文章是Google Brain和OpenAI聯(lián)合發(fā)布,介紹了the Atari Zoo framework,其中包含了在benchmark Atari games訓(xùn)練的一些模型,并且給出了一些分析和視圖工具。?
Experience Replay Optimization 此文章是關(guān)于如何選擇experience來replay的,提出根據(jù)future reward來選擇replay的experience。
Interactive Teaching Algorithms for Inverse Reinforcement Learning 如果teacher和policy是可交互的話,此文章證明了最多?step就足夠收斂。
Interactive Reinforcement Learning with Dynamic Reuse of Prior Knowledge from Human and Agent Demonstrations 在inverse RL中,如果人類的demonstration數(shù)據(jù)并不是全部可信的,那么對于demo數(shù)據(jù)我們可以加入confidence來充分利用。
Planning with Expectation Models? 在planning中,為了建模環(huán)境model,或者是表示它的分布,或者是表示它的采樣。而此論文則試圖表示它的期望,并證明了其優(yōu)勢
Randomized Adversarial Imitation Learning for Autonomous Driving 傳統(tǒng)的GAIL還是需要跟環(huán)境進(jìn)行大量交互來學(xué)習(xí),而此論文則提出通過finite difference來訓(xùn)練GAIL而不用跟環(huán)境交互
Building Personalized Simulator for Interactive Search? 此文是關(guān)于如何在interactive search中構(gòu)建個性化的simulator環(huán)境。
DeltaDou: Expert-level Doudizhu AI through Self-play 此文章類似于AlphaGo使用MCTS來做斗地主問題
Imitation Learning from Video by Leveraging Proprioception 關(guān)于模仿學(xué)習(xí)
Playing FPS Games With Environment-Aware Hierarchical Reinforcement Learning 使用Hierarchical RL來做FPS游戲,贏得了2018年track1比賽的冠軍
Curriculum Learning for Cumulative Return Maximization 此文章使用課程學(xué)習(xí)來學(xué)習(xí)如何從cumulative return的角度最大化。