Statistical Learning
Data Science e-book: first draft available for download
See below for an outdated HTML version; the PDF version is of much higher quality, proofread and with the most recent content. To download a copy, you must be a member. Click here to sign up and check all the benefits of membership. New random number generator: simple, strong and fast Lifetime value of an e-mail blast: much longer than you think Two great ideas to create a much better search engine Identifying the number of clusters: finally a solution Online advertising: a solution to optimize ad relevancy Example of architecture for AaaS (Analytics as a Service) Why and how to build a data dictionary for big data sets Hidden decision trees: a modern scoring methodology Approximate Solutions to Linear Regression Problems Preserving metric and score consistency over time and across clients Advertising: reach and frequency mathematical formulas Real Life Example of Text Mining to Detect Fraudulent Buyers Sales forecasts: how to improve accuracy while simplifying models? How could Amazon increase sales by redefining relevancy?
Low Gasoline Prices, What are Consumers Doing with the Extra Cash?
Knowing where the consumer is spending is normally not public information. Google Trends tracks the frequency of terms searched on their website and reports it as an index. Although web search terms are not a guarantee that a purchase was made, it's a good insight into the consumer's thoughts. And a great indication of when and where advertising companies should advertise. Could there be a possible relationship between some web search terms and gasoline prices?
An Introduction to Variable and Feature Selection
Feature selection is one of the core topics in machine learning. In statistical science, it is called variable reduction or selection. Our scientist published a methodology to automate this process and efficiently handle la large number of features (called variables by statisticians). Here, we mention an article published by Isabelle Guyon and Andre Elisseeff in Journal of Machine Learning Research. While published in 2003, it is still one of the best ML papers on feature selection.
Stacking models for improved predictions: A case study for housing prices
If you have ever competed in a Kaggle competition, you are probably familiar with the use of combining different predictive models for improved accuracy which will creep your score up in the leader board. While it is widely used, there are only a few resources that I am aware of where a clear description is available (One that I know of is here, and there is also a caret package extension for it). Therefore, I will try to workout a simple example here to illustrate how different models can be combined. The example I have chosen is the House Prices competition from Kaggle. This is a regression problem and given lots of features about houses, one is expected to predict their prices on a test set.
Improved Dropout for Shallow and Deep Learning
Li, Zhe, Gong, Boqing, Yang, Tianbao
Dropout has been witnessed with great success in training deep neural networks by independently zeroing out the outputs of neurons at random. It has also received a surge of interest for shallow learning, e.g., logistic regression. However, the independent sampling for dropout could be suboptimal for the sake of convergence. In this paper, we propose to use multinomial sampling for dropout, i.e., sampling features or neurons according to a multinomial distribution with different probabilities for different features/neurons. To exhibit the optimal dropout probabilities, we analyze the shallow learning with multinomial dropout and establish the risk bound for stochastic optimization. By minimizing a sampling dependent factor in the risk bound, we obtain a distribution-dependent dropout with sampling probabilities dependent on the second order statistics of the data distribution. To tackle the issue of evolving distribution of neurons in deep learning, we propose an efficient adaptive dropout (named \textbf{evolutional dropout}) that computes the sampling probabilities on-the-fly from a mini-batch of examples. Empirical studies on several benchmark datasets demonstrate that the proposed dropouts achieve not only much faster convergence and but also a smaller testing error than the standard dropout. For example, on the CIFAR-100 data, the evolutional dropout achieves relative improvements over 10\% on the prediction performance and over 50\% on the convergence speed compared to the standard dropout.
The Guide to Learning Python for Data Science
Another essential skill in data analysis is data . Visuals are extremely important for both exploratory data analysis, as well the communication of your results. Matplotlib is the most commonly used library for this in Python. Get inspired by viewing some plots and graphs: Matplotlib Gallery Take a look at some sample code: Matplotlib Examples Review the Matplotlib chapter on DataCamp: DataCamp Python for Data Science Come up with some visualizations for your toy dataset.
From 0 to 1: Machine Learning, NLP & Python-Cut to the Chase
Prerequisites: No prerequisites, knowledge of some undergraduate level mathematics would help but is not mandatory. Working knowledge of Python would be helpful if you want to run the source code that is provided. Taught by a Stanford-educated, ex-Googler and an IIT, IIM - educated ex-Flipkart lead analyst. This team has decades of practical experience in quant trading, analytics and e-commerce. The course is shy but confident: It is authoritative, drawn from decades of practical experience -but shies away from needlessly complicating stuff.
Machine Learning in Javascript- A compilation of Resources
Encog's machine learning framework in Javascript: Encog is a machine learning framework available for Java, .Net, and C . Encog supports different learning algorithms such as Bayesian Networks, Hidden Markov Models and Support Vector Machines. However, its main strength lay in its neural network algorithms. Encog contains classes to create a wide variety of networks, as well as support classes to normalize and process data for these neural networks. Multithreading is used to allow optimal training performance on multicore machines.
Regression, Logistic Regression and Maximum Entropy
For classification tasks there are three widely used algorithms; the Naive Bayes, Logistic Regression / Maximum Entropy and Support Vector Machines. We have already seen how the Naive Bayes works in the context of Sentiment Analysis. Although it is more accurate than a bag-of-words model, it has the assumption of conditional independence of its features. This is a simplification which makes the NB classifier easy to implement, but it is also unrealistic in most cases and leads to a lower accuracy. A direct improvement on the N.B. classifier, is an algorithm which does not assume conditional independence but tries to estimate the weight vectors (feature values) directly.