5 Best Places to Read Research Papers

Since I'm starting to read more and more research papers, I thought I'd give a small rundown on where I'm finding these papers. You can find a lot available for free, and the places below are my favorite ones to go to.

Arxiv

Arxiv (I believe it is pronounced "archive") is the most popular place to find research papers. There are several subsections but the ones to look at are machine learning and artificial intelligence. There is just so much you find here. In fact, there's so much there's an open source version of Arxiv called Arxiv Sanity.

GitHub

Yep, the main place to find code is also a great place to find collections of research papers. Here are just a few of those collections to get you started.

Papers We Love

Papers We Love are a community of people who like to read computer science papers and then talk about what they have read. It's like a book club for computer science research. While this isn't solely for machine learning or AI there are some papers that touch on those fields.

Machine Learning Papers

While this repository isn't the most up-to-date having papers from NIPS in 2016, they do link out to the GitHub repositories so you can access the source code along with reading the paper.

Deep Learning Papers

This repository has quite a lot of papers in it. It has them broken down by category such as natural language process and reinforcement learning. This doesn't have just papers, either. There are some links to video lectures and other blogs you can go to as additional resources.

Quick tip if you want to find more more GitHub lists that are curated, there's a lot of people who have lists of topics under the awesome badge. Doing a search for github awesome and then what you're looking for will yield some interesting results.

Google Scholar

This is more of a search than a list of articles, but you can find a lot here. You can even create alerts on keywords or by researchers you want to follow to see what they are citing.

Machine Learning subreddit

Reddit is always a good place to find a community in topics that you're interesting in. Machine learning and sharing interesting papers has a place there as well.

While I'm on the data science subreddit a lot, the machine learning one is great for research, projects, and discussions. Often times, on the research posts, you'll get some extra context from the comments which can be more valulable than the paper itself.

Tech Company Sites

Some of the big tech companies have their own research entities, such as Google's Deep Mind, Microsoft Research, and Facebook Research. Often times, they'll publish their papers on their sites for anyone to access. Even better, sometimes they'll put out a blog post that highlights what a paper is about and will include some more feature rich graphics to go along with it that you can't always put into a research publication to help you understand what's going on in the paper.

Specific Journal Sites

There are some interesting journals that tailor specifically for publishing your work. Like ArXiv, all of the papers here are free to access. You have the Journal of Machine Learning Research which is specific to only machine learning topics. The Journal of Data Science which encompasses the huge field of data science, which you'll probably see a lot of statistics papers in here as well. And then there's the R Journal which has papers where the code was specifically written in R, so you may have more statistics topics in here, as well.


Hopefully, with these resources you'll be able to find research papers that will keep you busy for quite a long time.

Top 5 Artificial Intelligence Sessions at Build 2018

During the same week PyCon was going on, Microsoft had their annual Build conference. If you're not familiar with this conference this is where Microsoft announces a lot of new things for developers. The main focus of this year's Build was about artificial intelligence.

Also in the same way as PyCon, Microsoft records all of the sessions at Build so we're free to watch them later. With that, I present to you what I think are the top five session at Build that go over artificial intelligence. Why top five instead of top ten like in the PyCon session post? Well, there just wasn't enough to do a top ten. :)

10 Things Developers Need to Know about Building Intelligent Apps by Noelle LaCharite

This session goes a lot into the Cognitive Services. Not only how much it can improve your applications by incorporating them, but also how easy they are to implement.

The Microsoft AI platform: a State of the Union by Joseph Sirosh

Continuing with more information about Cognitive Services, this session goes into some of the other capabilities that were announced at Build. A nice demo they showed went over what they did with the released JFK files and how they used Cognitive Search to analyze all of that data.

DevOps for AI : Deploying everywhere by Paige Bailey

This is an interesting talk that goes into the basics of data science and machine learning, but also goes into how to integrate the mindset of DevOps into data science. Doing so can help with things like testing and version control as a process to doing data science which can help reproducability and putting models into production.

Microsoft AI overview for developers by Harry Shum

This video is full of great demos that show off the power of several Cognitive Services. Although, my favorite demo is the one where they show the power of having a bot on your site.

Demystifying Machine and Deep Learning for Developers by Seth Juarez and Chris Lauren

There are quite a few deep learning videos out there, but I firmly believe that this is one of the best. The way that Seth and Chris describe the deep learning process of the neural network algorithms makes it very understandable to what's going on behind the scenes when you train a model.


So a lot of interesting things happened at build in terms of AI, mostly involving their Cognitive Services APIs. These APIs, I think, are going to really help make your apps stand out from the rest of the crowd and Microsoft looks to continue to add to them with APIs from their Cognitive Services Labs.

I'm definitely looking forward to what else they come up with.

Top 10 Sessions at PyCon 2018

PyCon has a very nice history of releasing videos of all of their sessions in a very timely manner. Although, it's up to me to actually have time to watch them.

Now that I've gone through several videos I wanted to share the top ten of them that I think will give the most to people who are interested in which sessions they should watch.

Python 2 to 3: How to Upgrade and What Features to Start Using by Trey Hunner

With the announcement of Python 2 coming to a complete end in the very beginning of 2020, it's a good idea to start thinking of how to upgrade your existing Python 2 code to Python 3. Trey gives a great talk on ways you can start upgrading and the best features of Python 3 you can start using.

You're an expert. Here's how to teach like one by Shannon Turner

Shannon goes through some nice tips on how to better teach programming. These tips, I believe, also can help you give better presentations, as well.

Building a cross-platform native app with BeeWare by Russell Keith-Magee

This was a cool one to watch. Using BeeWare we were able to see Russell show how to create, not only desktop applications, but mobile applications. This is pretty big because Python isn't known for creating mobile applications, but now that we have BeeWare perhaps it's time that it is.

Oops! I Committed My Password To GitHub by Miguel Grinberg

I'm sure we've all encountered or, at least, worried about our credentials and API keys getting checked into GitHub for all to see. Miguel talks about how to resolve it if it does happen and also goes into ways to prevent it from happening again.

Elegant Solutions For Everyday Python Problems by Nina Zakharenko

In this talk, Nina goes over several interesting Python tricks that you could use to up your Python game. Such solutions that she provides are:

  • Named tuples
  • Decorators
  • Context managers

Using Python to build an AI to play and win SNES StreetFighter II by Adam Fletcher and Jonathan Mortensen

This was a fun one to watch. Adam and Jonathan go into how they used StreetFighter II for reinforcement learning. They detail how they coded it and what they found when they first started letting the AI play the game.

The Journey Over the Intermediate Gap by Sara Packman

I'm sure we've all had some imposter syndrome at some point. Having that can hinder improving ourselves as developers. Sara goes over what she did to get out of the pleateau of stagnating at an intermediate level and offers tips on how we can do the same.

Learning From Failure: Post Mortems by Alex Gaynor

You often learn best from failure. In this talk Alex goes over that failure happens and you have to learn from it. He then goes into that one of the best ways to do that is by writting a post mortem of the project which can serve as documentation and allow others who weren't part of the project learn from it as well.

Dataclasses: The code generator to end all code generators by Raymond Hettinger

New in Python 3.7, data classes are a new way to build, well, data classes. In this talk Raymond goes over what you get when you use a data class, compares it to named tuples, and offers an example of using data classes.

Bayesian Non-parametric Models for Data Science using PyMC3 by Christopher Fonnesbeck

In this talk Christopher goes over PyMC3, a packge to build Bayesian statistical models, and how to use it to build non-parametric, or parameters that scale with your data, models.