
1. 从投稿记录里能挖出什么先搞清楚数据长什么样很多人一听到分析会议投稿记录第一反应是去官网找统计页面。但ICLR这类会议的公开数据其实相当分散——OpenReview上挂着每篇论文的标题、作者、关键词、评审分数、决策结果但这些信息散落在成千上万个独立页面里没有现成的汇总表格。所以第一步不是分析而是把散落的页面变成一份能用的结构化数据。我这次拿到的原始素材是近三年2023–2025的ICLR投稿记录格式是JSON。JSON这种格式在学术数据里非常常见因为OpenReview的API返回的就是JSON。它的好处是层级清晰、字段明确坏处是——如果你不熟悉它的嵌套结构打开文件就是一团乱麻。一份典型的投稿记录JSON大概长这样{ title: Some Paper Title, keywords: [deep learning, optimization, generalization], decision: Accept (Poster), ratings: [6, 5, 8], authors: [...], year: 2024 }看起来简单但实际文件里字段名可能不统一有的年份用rating有的用ratings有的把关键词放在keywords数组里有的塞在primary_area字段。这就是做这类分析第一个绕不开的坑字段漂移。不同年份的数据采集口径不一样直接合并会出错。我的处理思路是先写一个字段映射表把三年的数据统一到同一套schema下再做后续分析。这一步听起来枯燥但它决定了后面所有结论可不可信。很多人跳过这步直接跑词云结果出来的图好看但经不起推敲。提示如果你拿到的JSON里有json parse error之类的报错八成是编码问题或者字段里混了非法字符。Python里用json.loads()之前先确认文件是UTF-8编码必要时用errorsignore兜底。关键词keywords是这次分析的核心抓手。为什么因为标题往往写得花哨摘要又太长而作者自己填的关键词最能反映一篇工作真正想挂在哪个方向上。ICLR的投稿系统要求作者手动填写关键词这就相当于让作者自己给论文贴标签——虽然主观但信息密度高。2. 关键词清洗词云好看的前提是数据干净拿到关键词字段之后别急着往词云工具里丢。原始关键词的脏乱程度远超想象。我统计了一下三年数据里出现的关键词变体包括但不限于deep learning、Deep Learning、deep-learning、deeplearning、DL。如果不清洗词云里会出现五个深度学习每个都显得很小完全看不出真实热度。清洗分三步走我按实际操作顺序说。2.1 大小写归一与连字符处理统一转小写是最基本的。连字符的处理要分情况deep-learning和deep learning应该合并但self-supervised和self supervised也要合并。我的做法是先把所有连字符替换成空格再压缩多余空格最后统一小写。这样Deep-Learning、deep learning、DEEP LEARNING都会变成deep learning。但这里有个反例re-inforcement这种拼写错误不能靠规则修得靠人工维护一个同义词表。我建了一个约200条的映射表把常见变体归并到标准词。这个表是逐步积累的第一版肯定不全跑完一轮发现新的变体再加进去。2.2 停用词与泛化词过滤有些关键词几乎每篇都有比如machine learning、neural networks、deep learning。这些词在词云里会巨大无比但信息量极低——它们不能帮你区分不同方向。我的处理是把这类领域级泛词单独拎出来统计趋势但不放进主词云。具体哪些算泛词我的标准是在超过30%的投稿里都出现的关键词就归为泛词。这个阈值可以调但30%是个经验值能过滤掉大部分噪音又不至于误伤。2.3 同义词合并的边界同义词合并最怕过度。比如transformer和attention要不要合并我的判断是不合并。虽然transformer基于attention但这两个词在投稿里指向的工作类型不同——写attention的可能在做可解释性写transformer的可能在做架构改进。合并了反而丢失信息。同理diffusion model和generative model也不合并因为后者太宽泛。合并的原则是只有当两个词在作者意图里几乎等价时才合并。这个判断需要你对领域有一定了解不能纯靠字符串相似度。清洗完之后我得到了一份约1.2万条有效关键词记录覆盖近三年约6000篇投稿。这个数据量做词云和趋势分析都够了。3. 词云背后的趋势哪些方向在涨哪些在退词云只能看静态热度真正有价值的是时间维度上的变化。我把三年数据按年份拆开分别统计每个关键词的出现频次然后算同比增长率。这一步用Python的collections.Counter就能做不需要复杂工具。3.1 增长最快的关键词按我的统计口径2023到2025年增长最猛的关键词集中在几个方向关键词2023频次2025频次增幅diffusion model42187345%large language model38156310%in-context learning2598292%multimodal31112261%chain-of-thought1267458%chain-of-thought的增幅最夸张从12次涨到67次。这跟2023年之后推理相关工作的爆发完全吻合。diffusion model虽然增幅不是最高但绝对频次最大说明它已经从新兴方向变成了主流方向。3.2 增长停滞甚至下滑的方向有涨就有跌。我注意到几个传统方向的关键词频次在下降kernel method从28次降到11次gaussian process从19次降到8次graph neural network从54次降到41次GNN的下滑比较意外因为前几年它一直很热。但仔细想想也合理——GNN的很多核心问题过平滑、可扩展性已经被研究得比较透新投稿要么转向更具体的应用场景要么被transformer-based的图模型分流了。注意频次下降不等于方向死了。有些方向只是从方法创新转向了应用落地投稿量减少但单篇质量可能更高。看趋势要结合决策结果一起看不能只看数量。3.3 词云里看不出来的隐性热点词云有个天然缺陷它只显示高频词但有些方向虽然总频次不高却在快速增长。比如mechanistic interpretability这个词三年总频次只有35次在词云里几乎看不见但它的年增长率是180%。这种小而快的方向往往比大而稳的方向更有前瞻性。我的做法是单独拉一个高增长低基数列表把年增长率超过100%但总频次低于50的关键词挑出来。这个列表里经常藏着下一年的热点。4. 从关键词到决策什么样的关键词更容易被接收分析投稿记录最有意思的部分是把关键词和最终决策结果关联起来。ICLR的决策结果分几档Oral、Spotlight、Poster、Reject。我把前三档归为接收最后一档归为拒绝然后统计每个关键词对应的接收率。4.1 接收率最高的关键词结果有点反直觉。接收率最高的不是那些最热的方向而是一些相对小众但方法论扎实的方向关键词投稿数接收率causal inference4738%optimization theory5235%probabilistic method3933%reinforcement learning theory2832%这些方向的共同点是问题定义清晰评价标准明确。理论类工作虽然投稿量不大但一旦做扎实了评审很难挑出硬伤。相比之下一些热门应用方向虽然投稿量大但接收率反而偏低因为同质化竞争太严重。4.2 高投稿量低接收率的红海large language model相关的投稿接收率只有约22%低于会议平均水平。diffusion model稍好约25%。这说明什么说明这两个方向已经进入卷的阶段——投稿量暴涨但评审标准水涨船高没有真正的novelty很难脱颖而出。我个人的观察是如果你在做LLM相关的工作光靠把某个任务用LLM做一遍已经不够了必须有方法论层面的贡献比如新的训练策略、新的评估框架、或者对现有模型行为的深入分析。4.3 关键词组合的威力单看一个关键词有时候会误导。比如reinforcement learning单独看接收率一般但reinforcement learningtheory的组合接收率明显更高。我做了个简单的共现分析发现某些关键词组合的接收率显著高于各自单独出现的接收率。这个发现的实际意义是投稿时选关键词不是越多越好而是要选能准确反映工作定位的组合。如果你做的是RL理论只写reinforcement learning可能被分到应用赛道加上theory才能进对赛道。5. 实操中踩过的坑与工具选择这部分说点实在的。整个分析流程我用的是Python Jupyter Notebook没有用什么高级工具。原因很简单数据量不大几千条记录pandas完全够用上Spark或数据库反而是杀鸡用牛刀。5.1 JSON读取的编码陷阱第一个坑是编码。OpenReview导出的JSON有时候带BOM头直接json.load()会报json parse error。解决办法是用codecs.open()指定utf-8-sig编码。这个坑我踩了两次才记住。第二个坑是嵌套结构。有些年份的数据把关键词放在content.keywords下面有些放在content.subject_areas下面。如果不先检查结构就硬编码字段路径跑出来的结果会是空的。我的做法是先写个探测函数打印出每条记录的所有字段路径确认结构后再写正式解析代码。5.2 词云工具的取舍词云生成我用的是wordcloud库没有用在线工具。在线工具的问题是第一数据要上传有隐私顾虑第二参数不可控出来的图千篇一律。wordcloud库虽然要写几行代码但可以精确控制字体、背景色、最大词数、停用词表出来的图更符合分析目的。from wordcloud import WordCloud wc WordCloud( width1600, height900, background_colorwhite, max_words150, collocationsFalse, # 关键关闭自动词组搭配 stopwordsmy_stopwords ) wc.generate_from_frequencies(freq_dict) wc.to_file(iclr_wordcloud.png)collocationsFalse这个参数很重要。默认情况下wordcloud会把经常一起出现的词组合并成一个词组比如deep learning会变成一个词。但我们的关键词已经是人工标注的不需要它再合并关掉这个功能结果更准确。5.3 趋势计算的坑基数效应算增长率的时候要小心基数效应。一个关键词从2次涨到8次增长率是300%但绝对增量只有6次这种高增长可能只是噪音。我的做法是设一个最低基数门槛只有2023年频次不低于10次的关键词才纳入增长率排名。这样过滤掉大部分偶然波动。另外三年数据做趋势分析其实偏短。如果能拿到五年数据趋势会更可靠。但ICLR的关键词标注规范在2022年有过一次调整再往前的数据口径不一致硬合并反而引入偏差。所以三年是个折中。6. 这套分析方法还能怎么用我做这套分析的初衷是给自己找选题方向但做完之后发现它的适用范围比想象中广。如果你是准备投稿的研究者可以用它来判断某个方向是蓝海还是红海。具体做法是查你想投的关键词近三年的投稿量和接收率如果投稿量年增超过50%但接收率低于20%说明这个方向已经很卷需要更强的novelty才能中。如果你是组里的学生可以用它来跟导师讨论选题。把高增长低基数的关键词列表拉出来逐个评估哪个跟组里的积累匹配。这比拍脑袋想选题靠谱得多。如果你是做科研管理或趋势分析的这套流程可以复用到其他会议。只要那个会议在OpenReview上公开数据字段结构类似清洗和统计的代码几乎不用改。我后来用同样的代码跑了NeurIPS的数据除了字段名微调主体逻辑完全通用。还有一个延伸用法把关键词共现网络画出来。我用networkx做了个简单的共现图节点是关键词边是共现次数。这个图能直观看出哪些方向在交叉融合比如diffusion model和reinforcement learning的共现在这两年明显增多说明有人在用扩散模型做RL的策略表示。这种交叉点往往是创新的高发区。最后说个小心得分析结果别只看一年。我第一年做完觉得diffusion model要凉因为当年接收率降了。但第二年再看发现它只是从方法创新期进入了应用爆发期投稿量翻倍但接收率稳定在25%左右。单年数据容易误判三年起步才能看出真实走势。