可视化分析ICLR 2018:你想要的接收论文情况都在这

前日,ICLR 公布了接收论文,ICLR 2018 共计 2.3% 的 Oral 论文、31.4% 的 Poster 论文、9% 被接收为 Workshop track,51% 的论文被拒收、6.2% 的撤回率。在 ICLR 2018 公布了接收论文情况后,Arthur Pajot 利用这些数据进行了可视化分析以更深入地了解本次大会的接收情况。本文从论文评分、研究机构和国家等方向出发可视化探讨 ICLR 2018 的接受论文分布情况。

可视化地址:http://webia.lip6.fr/~pajot/dataviz.html

Arthur Pajot 在他的 GitHub 上也开放了本次接收论文的各项数据,读者可使用这些数据在自己的平台上运行该可视化分析。这份可视化分析是基于 NumPy、Matplotlib 和 Pandas 等基本科学计算工具,所以读者需要先导入对应的库和工具:

  1. import pandas as pd

  2. import matplotlib.pylab as plt

  3. import numpy as np

  4. import matplotlib.cm as cm

  5. import seaborn

  6. seaborn.set()

  7. %matplotlib inline

接收论文数据地址:https://github.com/pajotarthur/ICLR_data

我们需要将这些数据下载到本地,然后就能愉快地导入它们并执行如下或其他一些分析了。当然读者也可以直接查看以下的可视化分析而对整个大会的接收论文情况有一个深入的了解。

  1. ### Loading dataframe

  2. df_paper = pd.read_json('./paper_df.json')

  3. df_author = pd.read_json('./author_df.json')

  4. df_inst = pd.read_json('./inst_df.json')

  5. df_country = pd.read_json('./country_df.json')

  6. df_paper = df_paper.drop([0]) # has nan

各种接收类型(包括拒绝,不包含放弃)的论文平均分数

  1. groupby_decision = df_paper.groupby('decision')

  2. groupby_decision.aggregate(np.average).review


上图展示了 ICLR2018 最终的各接收类型(oral、poster、workshop track、reject)论文的平均双盲评分。其中被接收的论文中,oral 论文的平均分为 7.304348,poster 论文的平均分为 6.497877,workshop track 论文的平均分为 5.362963;而被拒绝的 reject 论文的平均分为 4.644313。

论文评分分布直方图

  1. ag.plot(kind = 'bar', colormap = cm.Accent, width = 1,figsize=(15,10),stacked=True)

  2. plt.show()


四种接收类型的论文评分基本遵从高斯分布。比较有意思的是,在 Oral 论文中,还有几篇的评分相对于其它 Oral 论文较低(如绿色所示)。

论文评分分布直方图(非重叠版本)

  1. df = pd.DataFrame({'value': df_paper.review.round(1), 'type': df_paper.decision})

  2. df['dummy'] = 1

  3. ag = df.groupby(['value','type']).sum().unstack()

  4. ag.columns = ag.columns.droplevel()

  5. ag.plot(kind = 'bar', colormap = cm.Accent, width = 1,figsize=(15,10))
  6. plt.show()


接收论文数最多的作者排名

  1. df_author.sort_values(['nb_poster','nb_oral','nb_workshop'],ascending=**False**).head(25)


排名前三的作者有 Sergey Levine、Yoshua Bengio 和 Richard Socher,但是他们并没有 oral 的接收论文,而紧随其后的两位作者 Pieter Abbeel 和 Dawn Song 分别有两篇和一篇 oral 论文。此外,还有一些我们比较熟悉的作者,比如 Ian Goodfellow、Xi Chen、Demis Hassabis 等。

提交论文数最多的作者排名

  1. df_author.sort_values(['nb_paper'],ascending=**False**).head(10)


按平均评分的作者排名,我们(随机地)挑选了提交论文数大于三篇的作者

  1. df_author[df_author.nb_paper > 3].sort_values(['avg_note'],ascending=**False**).head(10)


各机构的接收论文数排名

如果一篇论文的作者都来自机构,则该机构发表了一篇论文。如果一篇论文有三名作者,只有一名来自机构,则相当于该机构发表了 1/3 篇论文。机构名称是从作者的电子邮箱地址上截取的,其中 gmail.com 的地址已被删除。

代码地址:https://github.com/pajotarthur/ICLR_data/blob/master/add_paper_origin.ipynb。

  1. df_inst.sort_values(['nb_poster','nb_oral','nb_workshop'],ascending=**False**).head(10)


各机构的提交论文数排名

  1. df_inst.sort_values(['nb_paper'],ascending=**False**).head(10)


谷歌仍然是提交论文与接收论文最多的机构,而且超过其它机构非常多。其它排名前列的机构都是我们非常熟悉的科技巨头与顶尖科研院校。

各机构的论文接收率排名。我们(随机地)挑选了提交论文数大于三篇的机构。

  1. df_inst[df_inst.nb_paper > 3].sort_values(['acceptance_rate'],ascending=**False**).head(10)

按机构区分的接收论文的总数和类型分布

  1. df_inst[df_inst.nb_poster > 1][['nb_poster','nb_reject','nb_oral','nb_workshop']].sort_values(by='nb_poster').plot.bar(figsize=(15,10),legend=**True**,fontsize=15,stacked=**True**)


按机构区分的接收论文数排名

  1. df_inst[df_inst.nb_poster > 1].nb_poster.sort_values().plot.bar(figsize=(15,10),legend=**False**,fontsize=20)


各国家的接收论文数排名

  1. df_country.sort_values(['nb_poster','nb_oral','nb_workshop'],ascending=**False**).head(10)


各国家的提交论文数的排名

  1. df_country.sort_values(['nb_paper'],ascending=**False**).head(10)


从上可知,国内(CN)共提交了 50 篇论文,而有 3 篇入选 Oral、7 篇入选 Poster 论文。

各国家的论文接收率排名

  1. df_country[df_country.nb_paper > 5].sort_values(['acceptance_rate'],ascending=**False**).head(10)


按国家区分的接收论文的总数和类型分布

  1. df_country[df_country.nb_poster > 1][['nb_poster','nb_reject','nb_oral','nb_workshop']].sort_values(by='nb_poster').plot.bar(figsize=(15,10),legend=**True**,fontsize=15,stacked=**True**)


图中 com 代表来自机构,edu 代表来自大学,和其它国家需要区分开。从 com 和 edu 这两项可以看出(至少在 ICLR2018),机构的论文产出已经赶上甚至略微赶超了大学,彰显了机构的学术研究水平,这或许跟人工智能的研究阶段有关(工程超越理论)。而在国家层面,领先的国家有中国(cn)、英国(uk)和加拿大(ca),中国的论文接收情况基本是,拒绝率高,oral 率也高。

按国家区分的接收论文数的条形图

  1. df_country[df_country.nb_paper >1].nb_paper.sort_values().plot.bar(figsize=(15,10),legend=**False**,fontsize=25)



工程
1
暂无评论
暂无评论~