Giter Site home page Giter Site logo

niteeshkanungo / arxiv-network-graph Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ranihorev/arxiv-network-graph

1.0 1.0 0.0 2.37 MB

Arxiv's ML papers network graph and browser

Home Page: http://www.lyrn.ai/

License: MIT License

Python 41.13% Jupyter Notebook 9.67% Shell 0.08% JavaScript 15.24% CSS 8.30% HTML 25.57%

arxiv-network-graph's Introduction

MLG - Visual Machine Learning arxiv Graph and Textual explorer

MLG is a visual representation of ML researchers and papers from arXiv from the last year (for now). Each node in the graph is an authors and the edges represent co-authorship of papers.

MLG allows you to:

  1. Search for papers or authors.
  2. Filter by topics (NLP, Vision, etc).
  3. Focus on specific author and explore his/her neighbors gradually.

user interface

The backend is based on arxiv-sanity but with a lot of modifications - all arXiv data is stored on MongoDB, rebuilt Twitter deamon, etc.

There are two large parts of the code:

  1. / - arXiv text explorer
  2. /network - arXiv visual graph explorer

Dependencies

$ virtualenv env                # optional: use virtualenv
$ source env/bin/activate       # optional: use virtualenv
$ pip install -r requirements.txt

There is still some legacy code from arxiv-sanity, therefore some of the

Processing pipeline

  1. Install and start MongoDB
  2. Optional - Run fetch_papers.py to collect all paper from arXiv
  3. Create twitter.txt with your Twitter API credentials (values of consumer key and secret, in separate lines).
  4. Run the flask server with serve.py. Visit localhost:5000 and enjoy sane viewing of papers!
  5. Background tasks will to fetch new papers and search for twitter mentions

Generating the network graph

After fetching papers from arXiv you can build the network graph by running the notebook graph_generator.ipynb. It will overwrite the static/network_data.json.

Note: Calculating the physics of the network (nodes' position) is very slow. The current hack is to run it once (by changing the physics settings in network.js) and store the calculated positions. I tried using networkX to calculate the positions, however, the results weren't pleasing...

Running online

If you'd like to run the flask server online (e.g. AWS) run it as python serve.py --prod.

You also want to create a secret_key.txt file and fill it with random text (see top of serve.py).

arxiv-network-graph's People

Contributors

andland avatar carlini avatar cwgreene avatar ecprice avatar edoput avatar gokceneraslan avatar hans avatar helges avatar karpathy avatar kingtaurus avatar lucidrains avatar martinthoma avatar matttrent avatar mlaneuville avatar moredread avatar openai-sys-okta-integration avatar ranihorev avatar sudoankit avatar tricao avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.