rebiber - 使用官方信息(例如,DBLP 或 ACL 选集)更新围兜条目的简单工具。

Created at: 2021-01-24 17:41:52
Language: Python
License: MIT

Rebiber:使用官方信息标准化 bibtex 的工具。

我们经常引用使用他们的arXiv的论文版本不提的是,他们已经出版的一些会议。这些非官方的围兜条目可能会违反有关某些会议的提交或相机就绪版本的规则。我们介绍Rebiber,这是一个简单的 Python 工具来自动修复它们。它基于来自DBLPACL 选集(用于 NLP 会议)的官方会议信息!你可以在此处查看支持的会议列表。除了处理过时的 arXiv 引用,Rebiber还以统一的方式(DBLP 风格)规范化引用,支持缩写和值选择。

是我们的 Rebiber网络应用程序的测试版(仍在开发中)。你还可以将此 google colab 笔记本用作简单的网络演示。

变更日志

  • 2021.05.30 我们为Rebiber构建了一个测试版网络应用程序;将新会议添加到我们的数据集中;修复一些小错误。
  • 2021.02.08 我们现在支持多种有用的功能:1) 关闭某些特定值,例如,“-r url,pages,address”用于从输出中删除值,2) 使用 abbr。缩短 booktile 值,例如
    Proceedings of the .* Annual Meeting of the Association for Computational Linguistics
    -->
    Proc. of ACL
    。更多例子在这里。
  • 2021.01.30 我们构建了一个 colab notebook 作为一个简单的 web 演示。关联

安装

pip install rebiber -U
rebiber --update  # update the bib data and the abbr. info 

或者

git clone https://github.com/yuchenlin/rebiber.git
cd rebiber/
pip install -e .

如果你想使用带有更多错误修复的最新 github 版本,请使用第二种安装方法。

用法(v1.1.2)

使用官方会议信息规范你的 bibtex 文件:

rebiber -i /path/to/input.bib -o /path/to/output.bib

你可以在

rebiber/example_input.bib
和 中找到一对示例输入和输出文件
rebiber/example_output.bib

争论 用法
-i
--input_bib
。要更新的输入 bib 文件的路径
-o
--output_bib
。要保存的输出 bib 文件的路径。如果你不指定任何内容,
-o
则它将与
-i
.
-r
--remove
。要删除的值名称的逗号分隔列表,例如“-r pages,editor,volume,month,url,biburl,address,publisher,bibsource,timestamp,doi”。默认为空。
-s
--shorten
。一个布尔值的论点,即是
"False"
通过默认,用于替换
booktitle
用的英文缩写
-a
。用作
-s True
.
-d
--deduplicate
。一个布尔值的论点,即是
"True"
通过默认,用于去除重复的围兜条目共享相同的密钥。用作
-d True
.
-l
--bib_list
。要加载的 bib json 文件列表的路径。检查rebiber/bib_list.txt以获取默认文件。通常你不需要设置这个参数。
-a
--abbr_tsv
。会议缩写数据列表。检查rebiber/abbr.tsv以获取默认文件。通常你不需要设置这个参数。
-u
--update
。使用最新的 Github 版本更新本地围兜相关数据。
-v
--version
。打印当前 Rebiber 的版本。
-st
--sort
。一个布尔值的论点,即是
"False"
默认。用于保持输入文件的 bib 条目的原始顺序。通过将其设置为
"True"
,bib 条目在输出文件中按字母顺序排列。用作
-st True
.

示例输入和输出

带有 arXiv 信息的示例输入条目(来自 Google Scholar 或其他地方):

@article{lin2020birds,
	title={Birds have four legs?! NumerSense: Probing Numerical Commonsense Knowledge of Pre-trained Language Models},
	author={Lin, Bill Yuchen and Lee, Seyeon and Khanna, Rahul and Ren, Xiang},
	journal={arXiv preprint arXiv:2005.00683},
	year={2020}
}

带有官方信息的标准化输出条目示例:

@inproceedings{lin2020birds,
    title = "{B}irds have four legs?! {N}umer{S}ense: {P}robing {N}umerical {C}ommonsense {K}nowledge of {P}re-{T}rained {L}anguage {M}odels",
    author = "Lin, Bill Yuchen  and
      Lee, Seyeon  and
      Khanna, Rahul  and
      Ren, Xiang",
    booktitle = "Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP)",
    month = nov,
    year = "2020",
    address = "Online",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/2020.emnlp-main.557",
    doi = "10.18653/v1/2020.emnlp-main.557",
    pages = "6862--6868",
}

支持的会议

bib_list.txt
含有的官方围脖数据的转换JSON文件的列表。在这个 repo 中,我们现在支持完整的ACL 选集,即在 *CL 会议(ACL、EMNLP、NAACL 等)以及研讨会上发表的所有论文。此外,我们支持可从 DBLP 下载的任何会议论文集,例如 ICLR2020。

支持以下会议,他们的 bib/json 文件在我们的

data
文件夹中。你可以在 中打开/关闭每个项目
bib_list.txt
请随时创建 PR 以在此之后添加新会议!

姓名
ACL文集 (至 2021-05)
美国汽车工业协会 2010 -- 2020
统计局 2013 -- 2020
亚力士 2010 -- 2020
阿索南 2010 -- 2019
大数据会议 2013 -- 2019
BMVC 2010 -- 2020
2010 -- 2020
CIDR 2009 -- 2020
知识管理中心 2010 -- 2020
小马 2000 -- 2020
CVPR 2000 -- 2020
ICASSP 2015 -- 2020
ICCV 2003 -- 2019
集成电路LR 2013 -- 2020
ICML 2000 -- 2020
IJCAI 2011 -- 2020
凯德 2010 -- 2020
机器学习系统 2019 -- 2020
毫米 2016 -- 2020
神经网络信息系统 2000 -- 2020
RECSYS 2010 -- 2020
SDM 2010 -- 2020
SIGIR 2010 -- 2020
信号模块 2010 -- 2020
苏打 2010 -- 2020
斯托克 2010 -- 2020
UAI 2010 -- 2020
WSDM 2008 -- 2020
WWW(网络会议) 2001 -- 2020

感谢Anton Tsitsulin在收集如此完整的围兜文件方面所做的出色工作!

添加新会议

你可以从 DBLP 手动添加任何会议,方法是将他们的 bib 文件下载到我们的

raw_data
文件夹中,然后运行准备好的脚本
add_conf.sh

以ICLR2020和ICLR2019为例:

  • 第 1 步:转到DBLP
  • 第二步:下载围兜文件,并把它们作为
    raw_data/iclr2020.bib
    raw_data/iclr2019.bib
    (名称应采用{conf_name}{year}.bib格式)
  • 第 3 步:运行脚本
bash add_conf.sh iclr 2019 2020

接触

如果你有任何问题或建议,请发送电子邮件至yuchen.lin@usc.edu或在此处创建 Github 问题。