The Open-Source Data Science Masters
The open-source curriculum for learning Data Science. Foundational in both theory and technologies, the OSDSM breaks down the core competencies necessary to making use of data.
- The Open-Source Data Science Masters
- The Open Source Data Science Curriculum
The Internet is Your Oyster
With Coursera, ebooks, Stack Overflow, and GitHub -- all free and open -- how can you afford not to take advantage of an open source education?
We need more Data Scientists.
...by 2018 the United States will experience a shortage of 190,000 skilled data scientists, and 1.5 million managers and analysts capable of reaping actionable insights from the big data deluge.
-- McKinsey Report Highlights the Impending Data Scientist Shortage 23 July 2013
There are little to no Data Scientists with 5 years experience, because the job simply did not exist.
-- David Hardtke "How To Hire A Data Scientist" 13 Nov 2012
An Academic Shortfall
Classic academic conduits aren't providing Data Scientists -- this talent gap will be closed differently.
Academic credentials are important but not necessary for high-quality data science. The core aptitudes – curiosity, intellectual agility, statistical fluency, research stamina, scientific rigor, skeptical nature – that distinguish the best data scientists are widely distributed throughout the population.
We’re likely to see more uncredentialed, inexperienced individuals try their hands at data science, bootstrapping their skills on the open-source ecosystem and using the diversity of modeling tools available. Just as data-science platforms and tools are proliferating through the magic of open source, big data’s data-scientist pool will as well.
And there’s yet another trend that will alleviate any talent gap: the democratization of data science. While I agree wholeheartedly with Raden’s statement that “the crème-de-la-crème of data scientists will fill roles in academia, technology vendors, Wall Street, research and government,” I think he’s understating the extent to which autodidacts – the self-taught, uncredentialed, data-passionate people – will come to play a significant role in many organizations’ data science initiatives.
-- James Kobielus, Closing the Talent Gap 17 Jan 2013
The Open Source Data Science Curriculum
Intro to Data Science / UW Videos
- Topics: Python NLP on Twitter API, Distributed Computing Paradigm, MapReduce/Hadoop & Pig Script, SQL/NoSQL, Relational Algebra, Experiment design, Statistics, Graphs, Amazon EC2, Visualization.
- Topics: Data wrangling, data management, exploratory data analysis to generate hypotheses and intuition, prediction based on statistical methods such as regression and classification, communication of results through visualization, stories, and summaries.
Data Science with Open Source Tools Book
- Topics: Visualizing Data, Estimation, Models from Scaling Arguments, Arguments from Probability Models, What you Really Need to Know about Classical Statistics, Data Mining, Clustering, PCA, Map/Reduce, Predictive Analytics
- Example Code in: R, Python, Sage, C, Gnu Scientific Library
A Note About Direction
This is an introduction geared toward those with at least a minimum understanding of programming, and (perhaps obviously) an interest in the components of Data Science (like statistics and distributed computing). Out of personal preference and need for focus, I geared the original curriculum toward Python tools and resources. R resources can be found here.
Ethics in Machine Intelligence
Human impact is a first-class concern when building machine intelligence technology. When we build products, we deduce patterns and then reinforce them in the world. Ethics in any Engineering concerns understanding the sociotechnological impact of the products and services we are bringing to bear in the human world -- and whether they are reinforcing a future we all want to live in.
Linear Algebra & Programming
- Linear Algebra Khan Academy / Videos
- Linear Algebra / Levandosky Stanford / Book
- Linear Programming (Math 407) University of Washington / Course
- The Manga Guide to Linear Algebra Book
- An Intuitive Guide to Linear Algebra Better Explained / Article
- A Programmer's Intuition for Matrix Multiplication Better Explained / Article
- Vector Calculus: Understanding the Cross Product Better Explained / Article
- Vector Calculus: Understanding the Dot Product Better Explained / Article
- Stats in a Nutshell Book
- Think Stats: Probability and Statistics for Programmers Digital & Book
- Think Bayes Digital & Book
Differential Equations & Calculus
- Differential Equations in Data Science Python Tutorial
- Problem-Solving Heuristics "How To Solve It" Polya / Book
Get your environment up and running with the Data Science Toolbox
Distributed Computing Paradigms
- *See Intro to Data Science UW / Lectures on MapReduce
- Intro to Hadoop and MapReduce Cloudera / Udacity Course *includes select free excerpts of Hadoop: The Definitive Guide Book
- Introduction to Databases Stanford / Online Course
- SQL School Mode Analytics / Tutorials
- SQL Tutorials SQLZOO / Tutorials
- Mining Massive Data Sets / Stanford Coursera & Digital & Book
- Mining The Social Web Book
- Introduction to Information Retrieval / Stanford Digital & Book
How does the real world get translated into data? How should one structure that data to make it understandable and usable? Extends beyond database design to usability of schemas and models.
OSDSM Specialization: Web Scraping & Crawling
Foundational & Theoretical
- Machine Learning Ng Stanford / Coursera & Stanford CS 229
- A Course in Machine Learning UMD / Digital Book
- The Elements of Statistical Learning / Stanford Digital & Book
$80& Study Group
- Machine Learning Caltech / Edx
- Programming Collective Intelligence Book
- Machine Learning for Hackers ipynb / digital book
- Intro to scikit-learn, SciPy2013 youtube tutorials
- Probabilistic Programming and Bayesian Methods for Hackers Github / Tutorials
- Probabilistic Graphical Models Stanford / Coursera
Deep Learning (Neural Networks)
- Neural Networks Andrej Karpathy / Python Walkthrough
- Neural Networks U Toronto / Coursera
- Deep Learning for Natural Language Processing CS224d Stanford
Social Network & Graph Analysis
- Social and Economic Networks: Models and Analysis / Stanford / Coursera
- Social Network Analysis for Startups Book
Natural Language Processing
- From Languages to Information / Stanford CS147 Materials
- NLP with Python (NLTK library) Digital, Book
- How to Write a Spelling Correcter / Norvig (Tutorial)[http://norvig.com/spell-correct.html]
One of the "unteachable" skills of data science is an intuition for analysis. What constitutes valuable, achievable, and well-designed analysis is extremely dependent on context and ends at hand.
- Data Analysis in Python Tutorial
- Python for Data Analysis Book
- An Example Data Science Process ipynb
Data Communication and Design
Data Visualization and Communication
- The Truthful Art: Data, Charts, and Maps for Communication Cairo / Book
Theoretical Design of Information
- Envisioning Information Tufte / Book
- The Visual Display of Quantitative Information Tufte / Book
Applied Design of Information
- Information Dashboard Design: Displaying Data for At-a-Glance Monitoring Stephen Few / Book
Theoretical Courses / Design & Visualization
- Data Visualization University of Washington / Slides & Resources
- Berkeley's Viz Class UC Berkeley / Course Docs
- Rice University's Data Viz class Rice University / Slides
Practical Visualization Resources
- D3 Library / Scott Murray Blog / Tutorials
- Interactive Data Visualization for the Web / Scott Murray Online Book & Book
OSDSM Specialization: Data Journalism
Installing Basic Packages Python, virtualenv, NumPy, SciPy, matplotlib and IPython & Using Python Scientifically
Command Line Install Script for Scientific Python Packages
Data Structures & Analysis Packages
- Flexible and powerful data analysis / manipulation library with labeled data structures objects, statistical functions, etc pandas & Tutorials Python for Data Analysis / Book
Machine Learning Packages
- scikit-learn - Tools for Data Mining & Analysis
- networkx - Network Modeling & Viz
- PyMC - Bayesian Inference & Markov Chain Monte Carlo sampling toolkit
- Statsmodels - Python module that allows users to explore data, estimate statistical models, and perform statistical tests
- PyMVPA - Multivariate Pattern Analysis in Python
Natural Language Processing & Understanding
- NLTK - Natural Language Toolkit
- Gensim - Python library for topic modeling, document indexing and similarity retrieval with large corpora. Target audience is the natural language processing (NLP) and information retrieval (IR) community.
- twython - Python wrapper for the Twitter API
- matplotlib - well-integrated with analysis and data manipulation packages like numpy and pandas
- Seaborn - a high-level statistical visualization package built on top of matplotlib
iPython Data Science Notebooks
- Data Science in IPython Notebooks (Linear Regression, Logistic Regression, Random Forests, K-Means Clustering)
- A Gallery of Interesting IPython Notebooks - Pandas for Data Analysis
Data Science as a Profession
- Doing Data Science: Straight Talk from the Frontline O'Reilly / Book
- The Data Science Handbook: Advice and Insights from 25 Amazing Data Scientists Book
- Capstone Analysis of Your Own Design; Quora's Idea Compendium
- Healthcare Twitter Analysis Coursolve & UW Data Science
- Analyze your LinkedIn Network Generate & Download Adjacency Matrix
- DataTau - The "Hacker News" of Data Science
- Wikipedia - The free encyclopedia
The Signal and The Noise - Nate Silver
$15- Bestseller Pop Sci
- Zipfian Academy's List of Resources
- A Software Engineer's Guide to Getting Started with Data Science
- Data Scientist Interviews / Metamarkets
Watch & Listen
- The Life of a Data Scientist / Josh Wills
- The Talking Machines - Podcast about Machine Learning
- What Data Science Is / Hilary Mason
- Metacademy - Search for a concept you want to learn
- Coursera - Online university courses
- Wolfram Alpha - The smart number and info cruncher
- Khan Academy - High quality, free learning videos
Non-Open-Source books, courses, and resources are noted with
Please Contribute -- this is Open Source!