Goto

Collaborating Authors

 Performance Analysis


Feature selection in high-dimensional dataset using MapReduce

arXiv.org Machine Learning

The exponential growth of data generation, measurements and collection in scientific and engineering disciplines leads to the availability of huge and high-dimensional datasets, in domains as varied as text mining, social network, astronomy or bioinformatics to name a few. The only viable path to the analysis of such datasets is to rely on data-intensive distributed computing frameworks [1]. MapReduce has in the last decade established itself as a reference programming model for distributed computing. The model is articulated around two main classes of functions, mappers and reducers, which greatly decrease the complexity of a distributed program while allowing to express a wide range of computing tasks. MapReduce was popularised by Google research in 2008 [2], and may be executed on parallel computing platforms ranging from specialised hardware units such as parallel field programmable gate arrays (FPGAs) and graphics processing units, to large clusters of commodity machine using for example the Hadoop or Spark frameworks [2]-[4]. In particular, the expressiveness of the MapReduce programming model has led to the design of advanced distributed data processing libraries for machine learning and data mining, such as Hadoop Mahout and Spark MLlib. Many of the standard supervised and unsupervised learning techniques (linear and logistic regression, naive Bayes, SVM, random forest, PCA) are now available from these libraries [5]-[7]. Little attention has however yet been given to feature selection algorithms (FSA), which form an essential component of machine learning and data mining workflows. Besides reducing a dataset size, FSA also generally allow to improve the performance of classification and regression models by selecting the most relevant features and reducing the noise in a dataset [8].


Visualizing Cross-validation Code

@machinelearnbot

Let's visualize to improve your prediction... Let us say, you are writing a nice and clean Machine Learning code (e.g. You code is OK, first you divided your dataset into two parts, "Training Set and Testing Set" as usual with the function like train_test_split and with some random factor. Your prediction could be slightly under or overfit, like the figures below. As the name of the suggests, cross-validation is the next fun thing after learning Linear Regression because it helps to improve your prediction using the K-Fold strategy. What is K-Fold you asked?


Dealing With Imbalanced Datasets

@machinelearnbot

Summary: Dealing with imbalanced datasets is an everyday problem. SMOTE, Synthetic Minority Oversampling TEchnique and its variants are techniques for solving this problem through oversampling that have recently become a very popular way to improve model performance. There are some problems that never go away. Imbalanced datasets is one in which the majority case greatly outweighs the minority case. Years ago we dealt with this by naïve oversampling or, if we had enough data, even under sampling to get the dataset more in balance.


Blockchains for Artificial Intelligence – The BigchainDB Blog

#artificialintelligence

And, it was first published on Dataconomy on Dec 21, 2016; I'm reposting here for ease of access. In May 2017 I gave an updated talk; here's the slides & video.] In recent years, AI (artificial intelligence) researchers have finally cracked problems that they've worked on for decades, from Go to human-level speech recognition. A key piece was the ability to gather and learn on mountains of data, which pulled error rates past the success line. In short, big data has transformed AI, to an almost unreasonable level. Blockchain technology could transform AI too, in its own particular ways. Some applications of blockchains to AI are mundane, like audit trails on AI models. Some appear almost unreasonable, like AI that can own itself -- AI DAOs. All of them are opportunities. This article will explore these applications. Before we discuss applications, let's first review what's different about blockchains compared to traditional big-data distributed databases like MongoDB.


Blockchains for Artificial Intelligence – The BigchainDB Blog

#artificialintelligence

And, it was first published on Dataconomy on Dec 21, 2016; I'm reposting here for ease of access. In May 2017 I gave an updated talk; here's the slides & video.] In recent years, AI (artificial intelligence) researchers have finally cracked problems that they've worked on for decades, from Go to human-level speech recognition. A key piece was the ability to gather and learn on mountains of data, which pulled error rates past the success line. In short, big data has transformed AI, to an almost unreasonable level. Blockchain technology could transform AI too, in its own particular ways. Some applications of blockchains to AI are mundane, like audit trails on AI models. Some appear almost unreasonable, like AI that can own itself -- AI DAOs. All of them are opportunities. This article will explore these applications. Before we discuss applications, let's first review what's different about blockchains compared to traditional big-data distributed databases like MongoDB.


Blockchains for Artificial Intelligence – The BigchainDB Blog

#artificialintelligence

And, it was first published on Dataconomy on Dec 21, 2016; I'm reposting here for ease of access. In May 2017 I gave an updated talk; here's the slides & video.] In recent years, AI (artificial intelligence) researchers have finally cracked problems that they've worked on for decades, from Go to human-level speech recognition. A key piece was the ability to gather and learn on mountains of data, which pulled error rates past the success line. In short, big data has transformed AI, to an almost unreasonable level. Blockchain technology could transform AI too, in its own particular ways. Some applications of blockchains to AI are mundane, like audit trails on AI models. Some appear almost unreasonable, like AI that can own itself -- AI DAOs. All of them are opportunities. This article will explore these applications. Before we discuss applications, let's first review what's different about blockchains compared to traditional big-data distributed databases like MongoDB.


Practical Naive Bayes -- Classification of Amazon Reviews

@machinelearnbot

If you search around the internet looking for applying Naive Bayes classification on text, you'll find a ton of articles that talk about the intuition behind the algorithm, maybe some slides from a lecture about the math and some notation behind it, and a bunch of articles I'm not going to link here that pretty much just paste some code and call it an explanation. So I'm going to try to do a little more here, by hopefully writing and explaining enough, is let you yourself write a working Naive Bayes classifier. There are three sections here. First is setup, and what format I'm expecting your text to be in for the classification. Second, I'll talk about how to run naive Bayes on your own, using slow Python data structures.


A Statistical Approach to Increase Classification Accuracy in Supervised Learning Algorithms

arXiv.org Machine Learning

Probabilistic mixture models have been widely used for different machine learning and pattern recognition tasks such as clustering, dimensionality reduction, and classification. In this paper, we focus on trying to solve the most common challenges related to supervised learning algorithms by using mixture probability distribution functions. With this modeling strategy, we identify sub-labels and generate synthetic data in order to reach better classification accuracy. It means we focus on increasing the training data synthetically to increase the classification accuracy.


Cross-Validation: Concept and Example in R

@machinelearnbot

In Machine Learning, Cross-validation is a resampling method used for model evaluation to avoid testing a model on the same dataset on which it was trained. This is a common mistake, especially that a separate testing dataset is not always available. However, this usually leads to inaccurate performance measures (as the model will have an almost perfect score since it is being tested on the same data it was trained on). To avoid this kind of mistakes, cross validation is usually preferred.


Balancing Interpretability and Predictive Accuracy for Unsupervised Tensor Mining

arXiv.org Machine Learning

Very frequently, tensor mining is done in an entirely unsupervised way, since ground truth and labels are either very expensive or hard to obtain. Our problem, thus, is: given a potentially very large and sparse tensor, and its R-component decomposition, compute a quality measure for that decomposition. Subsequently, using that quality metric, we would like to identify a "good" number R of components, and ultimately minimize human intervention and trial-and-error fine tuning. This problem is extremely hard. In fact, even computing the rank of a tensor has been shown to be an NPhard problem, in stark contrast to the matrix rank which can be easily computed in polynomial time. Fortunately, there exist heuristics that are able to assist with the above problem and have been shown to work well in practice, in the field of Chemometrics. Such a powerful and intuitive heuristic is the so-called "Core Consistency Diagnostic" [1], which given a tensor and its PARAFAC decomposition, provides a quality measure, which we can in turn use as a proxy of how interpretable our results are.