新智元报道
来源:Reddit
编辑:好困
程序不会编怎么办?上 Stck Overflow 啊。报错过不去怎么办?上 Stck Overflow 啊。
有些人是面向对象编程,还有一些人是面向Stackoverflow编程,当然还可能是面向工资编程。
初级选手
进阶选手
当然事情的进展通常不会这么顺利,比如当 Stack Overflow 维护的时候,或者你关注的问题没有人回答,或者你的问题被关闭的时候,咋整?
况且,如果不理解 Stack Overflow 上的代码,不仅检查不出来原本的bug,而且在复用的时候会让你的项目充斥更多的bug。
那你说怎么办?当然是去 Google 了,当然是去读论文了!
近日,一位博主开源了自己制作的文献搜索引擎「Sci-Genie」的核心库:「ArXiv-Miner」。
搜索引擎:https://sci-genie.com
ArXiv-Miner:https://arxiv-miner.turing-bot.com/#/README
ArXiv-Miner 是一个 Python 库,可帮助用户从 ArXiv 中提取、解析和挖掘文献的 LaTeX 源码。
作者表示,自己在学习机器学习和人工智能的时候 Stack Overflow 上还没有相关的内容,而「野生」的资料又多又乱,不方便查找。
所以决定自己做一个搜索引擎,从而可以对文献研究进行解析、索引、挖掘其中的信息等。简而言之就是:「make the life easier」。
ArXiv-Miner环境配置
ArXiv-Miner 最简单的功能就是作为一个独立的库来快速挖掘 ArXiv 上的内容。当然,首先需要 pip 一下。
pip install -r git+https://github.com/valayDave/arxiv-minerpip install arxiv-miner
Latex 挖掘工具安装
主要依赖:texlive-full (Ubuntu) , texshop (OSX) 和,opendetex。
setup_latex_parsing.sh 脚本将为 ubuntu 安装 texlive-full 和其他依赖项,并在当前工作目录中为 opendetex 创建二进制文件。
sh setup_latex_parsing.sh
本体分类器安装
在开始挖掘过程时,需要安装 cso-classifier 从而涵盖对本体挖掘。
sh cso_setup.sh
运行ArXiv-Miner
抓取数据提取
scripts/scrape_papers.py 利用 ArXiv 提供的提要来存储记录以供进一步挖掘。
提取过去 24 小时内发布的记录并存储在数据库中。
python scripts/scrape_papers.py --with-config default_config.ini daily-harvest
提取特定日期范围内发布的记录并存储在数据库中。
python scripts/scrape_papers.py --with-config default_config.ini date-range --start_date '2020-05-29' --end_date '2020-06-30'
数据挖掘和存储
scripts / mine_papers.py 可以提取LaTeX源码并解析数据。
python scripts/mine_papers.py --with-config default_config.ini start-miner
Streamlit Dashboard
scripts/arxiv_search_dash.py 可以进行搜索以及对抓取和挖掘后存储的搜索结果进行可视化。
streamlit run scripts/arxiv_search_dash.py -- --config default_config.ini
有兴趣的读者可以前往作者提供的文档进行学习和应用。如果不会使用的话,等等Stack Overflow,没准之后也会有相关的问题。
最后,作者希望能够进一步丰富项目的功能:
少不了的赞
「我爱这个搜索!曾经也在做类似的项目,但是一个又快又好的搜索很难做!」
「这是我最近看到最有趣的项目之一了。随着深度学习的应用领域呈指数级增长,这会是一个非常有用的工具。我已经加入到了书签中,谢谢分享。」
「针对网友的建议,作者表示感谢,并将它们列为了待解决的问题。」
参考资料:
https://arxiv-miner.turing-bot.com/#/README
https://github.com/valayDave/arxiv-miner
https://sci-genie.com
https://www.reddit.com/r/MachineLearning/comments/nn9q8s/p_arxivminer_a_toolkit_for_scraping_parsing_and/