Statistical Learning
Linear Shape Deformation Models with Local Support Using Graph-based Structured Matrix Factorisation
Bernard, Florian, Gemmar, Peter, Hertel, Frank, Goncalves, Jorge, Thunberg, Johan
Representing 3D shape deformations by linear models in high-dimensional space has many applications in computer vision and medical imaging, such as shape-based interpolation or segmentation. Commonly, using Principal Components Analysis a low-dimensional (affine) subspace of the high-dimensional shape space is determined. However, the resulting factors (the most dominant eigenvectors of the covariance matrix) have global support, i.e. changing the coefficient of a single factor deforms the entire shape. In this paper, a method to obtain deformation factors with local support is presented. The benefits of such models include better flexibility and interpretability as well as the possibility of interactively deforming shapes locally. For that, based on a well-grounded theoretical motivation, we formulate a matrix factorisation problem employing sparsity and graph-based regularisation terms. We demonstrate that for brain shapes our method outperforms the state of the art in local support models with respect to generalisation ability and sparse shape reconstruction, whereas for human body shapes our method gives more realistic deformations.
Minimizing Finite Sums with the Stochastic Average Gradient
Schmidt, Mark, Roux, Nicolas Le, Bach, Francis
We propose the stochastic average gradient (SAG) method for optimizing the sum of a finite number of smooth convex functions. Like stochastic gradient (SG) methods, the SAG method's iteration cost is independent of the number of terms in the sum. However, by incorporating a memory of previous gradient values the SAG method achieves a faster convergence rate than black-box SG methods. The convergence rate is improved from O(1/k^{1/2}) to O(1/k) in general, and when the sum is strongly-convex the convergence rate is improved from the sub-linear O(1/k) to a linear convergence rate of the form O(p^k) for p \textless{} 1. Further, in many cases the convergence rate of the new method is also faster than black-box deterministic gradient methods, in terms of the number of gradient evaluations. Numerical experiments indicate that the new algorithm often dramatically outperforms existing SG and deterministic gradient methods, and that the performance may be further improved through the use of non-uniform sampling strategies.
Machine learning for financial prediction: experimentation with David Aronson's latest work โ part 2
My first post on using machine learning for financial prediction took an in-depth look at various feature selection methods as a data pre-processing step in the quest to mine financial data for profitable patterns. I looked at various methods to identify predictive features including Maximal Information Coefficient (MIC), Recursive Feature Elimination (RFE), algorithms with built-in feature selection, selection via exhaustive search of possible generalized linear models, and the Boruta feature selection algorithm. I personally found the Boruta algorithm to be the most intuitive and elegant approach, but regardless of the method chosen, the same features seemed to keep on turning up in the results. In this post, I will take this analysis further and use these features to build predictive models that could form the basis of autonomous trading systems. Firstly, I'll provide an overview of the algorithms that I have found to generally perform well on this type of machine learning problem as well as those algorithms recommended by David Aronson (2013) in Statistically Sound Machine Learning for Algorithmic Trading of Financial Instruments (SSML). I'll also discuss a framework for measuring the performance of various models to facilitate robust comparison and model selection. Finally, I will discuss methods for combining predictions to produce ensembles that perform better than any of the constituent models alone.
Ordinal regression - Wikipedia, the free encyclopedia
In statistics, ordinal regression (also called "ordinal classification") is a type of regression analysis used for predicting an ordinal variable, i.e. a variable whose value exists on an arbitrary scale where only the relative ordering between different values is significant. It can be considered an intermediate problem in between (metric) regression and classification.[1] Ordinal regression turns up often in the social sciences, for example in the modeling of human levels of preference (on a scale from, say, 1โ5 for "very poor" through "excellent"), as well as in information retrieval. In machine learning, ordinal regression may also be called ranking learning.[2][a] Ordinal regression can be performed using a generalized linear model (GLM) that fits both a coefficient vector and a set of thresholds to a dataset.
Support Vector Machines
In this post I will explain the Support Vector Machines method. First, what is a Support Vector? It's the margins of an Hyperplane (linear or not) that divides two or more groups, whose margin (distance between two groups) must be maximized: The Hyperplane borders are H1 and H2 and the distance to be maximized is d1 and d2. First, let's do a regular Linear Regression with black dots (X1) and white dots (X2). You can easily see that the estimated Y (red line) barely touches some of the blue dots (real Y).
Scaling_synthesized_data
In particular, I checked out the k-Nearest Neighbors (k-NN) and logistic regression algorithms and saw how scaling numerical data strongly influenced the performance of the former but not that of the latter, as measured, for example, by accuracy (see Glossary below or previous articles for definitions of scaling, k-NN and other relevant terms). The real take home message here was that preprocessing doesn't occur in a vacuum, that is, you can prepocess the heck out of your data but the proof is in the pudding: how well does your model then perform? Scaling numerical data (that is, multiplying all instances of a variable by a constant in order to change that variable's range) has two related purposes: i) if your measurements are in meters and mine are in miles, then, if we both scale our data, they end up being the same & ii) if two variables have vastly different ranges, the one with the larger range may dominate your predictive model, even though it may be less important to your target variable than the variable with the smaller range. What we saw is that this problem identified in ii) occurs with k-NN, which explicitly looks at how close data are to one another but not in logistic regression which, when being trained, will shrink the relevant coefficient to account for the lack of scaling. As the data we used in the previous articles was real-world data, all we could see was how the models performed before and after scaling.
What's the difference between machine learning, statistics, and data mining? - SHARP SIGHT LABS
Over the last few blog posts, I've discussed some of the basics of what machine learning is and why it's important: Throughout those posts, I've been using the following definition of machine learning: creating computational systems that learn from data in order to make predictions and inferences. However, machine learning isn't the only subject in which we use data for prediction and inference. Anyone who's taken an introductory statistics class has heard a similar definition about statistics itself. And if you talk to someone who works in data-mining, you'll hear the same thing: data mining is about using data to make predictions and draw conclusions from data. This raises the question: what is the difference between machine learning, statistics, and data mining? The long answer has a bit of nuance (which we'll discuss soon), but the short answer answer is very simple: machine learning, statistical learning, and data mining are almost exactly the same.
What's the difference between machine learning, statistics, and data mining?
Over the last few blog posts, I've discussed some of the basics of what machine learning is and why it's important: Throughout those posts, I've been using the following definition of machine learning: creating computational systems that learn from data in order to make predictions and inferences. However, machine learning isn't the only subject in which we use data for prediction and inference. Anyone who's taken an introductory statistics class has heard a similar definition about statistics itself. And if you talk to someone who works in data-mining, you'll hear the same thing: data mining is about using data to make predictions and draw conclusions from data. This raises the question: what is the difference between machine learning, statistics, and data mining? The long answer has a bit of nuance (which we'll discuss soon), but the short answer answer is very simple: machine learning, statistical learning, and data mining are almost exactly the same.
Training Neural Networks Without Gradients: A Scalable ADMM Approach
With the growing importance of large network models and enormous training datasets, GPUs have become increasingly necessary to train neural networks. This is largely because conventional optimization algorithms rely on stochastic gradient methods that don't scale well to large numbers of cores in a cluster setting. Furthermore, the convergence of all gradient methods, including batch methods, suffers from common problems like saturation effects, poor conditioning, and saddle points. This paper explores an unconventional training method that uses alternating direction methods and Bregman iteration to train networks without gradient descent steps. The proposed method reduces the network training problem to a sequence of minimization sub-steps that can each be solved globally in closed form. The proposed method is advantageous because it avoids many of the caveats that make gradient methods slow on highly non-convex problems.