Transformation is a quintessential part of every deep learning scheme.

Simply, data transformation makes your data useful to apply to a model. Many machine learning methods, especially supervised learning, are susceptible to value ranges. It simply means that features with the same distribution shape and dependencies, lead to two different results with two different ranges of value. Strikingly, this is more critical in training the more sophisticated models such as neural networks which entail hundreds or thousands of parameters. …

Creational design patterns provide diverse object creation mechanisms, which boost flexibility and reuse of existing code.

If we try to define the design pattern in the context of software engineering, nothing better than Wikipedia can give a straight definition:

In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design.

There are three main categories in design pattern context: creational, structural, behavioral patterns. Creational design patterns mostly deal with various object creation mechanisms, which increase flexibility and reuse of existing code. Structural patterns explain how to assemble…

Autograd package in PyTorch enables us to implement the gradient effectively and in a friendly manner.

Differentiation is a crucial step in nearly all deep learning optimization algorithms. Deep learning frameworks such as PyTorch make it easy to calculate the gradient effectively. It is mainly based on the computational graph, tracking which data combined through which operations to produce the output. This is possible through back-propagation procedure. Here, backpropagate simply means to trace through the computational graph, filling in the partial derivatives with respect to each parameter.

Calculus

Why Gradient?

Most of us have studied the calculus in high school. Irrespective of the…

Tensors are the basic data structure of the PyTorch library.

Deep learning is one of the mainstreams in supervised machine learning, where using the inputs and labeled output, we aim at developing a function to map an input to an output. Deep learning is deep in precisely the sense that its models learn many layers of transformations, where each layer offers the representation at one level [1]. Deep learning frameworks have played a crucial role in disseminating ideas. The first generation of frameworks allowing for easy modeling encompassed Caffe, Torch, and Theano [1]. …

Clustering can be used for both knowledge discovery and augmenting the prediction models.

In machine learning (ML) and artificial intelligence (AI) domain, there are two basic approaches in dealing with data: supervised and unsupervised machine learning. In contrast to supervised learning where we have tabled data to train the model, in unsupervised learning we don’t. Thus, supervised techniques are mainly designed for prediction. For unsupervised learning, since there is no ground truth/label, we mainly use it for descriptive analysis. In other words, unsupervised learning is used for knowledge discovery.

Viruses

Clustering, as an unsupervised technique, is an efficient and effective way for knowledge discovery. They can also be used for augmenting the prediction models…

Principle component analysis is used to reduce dimensionality and finding out the way that variables covary.

In the machine learning (ML) and artificial intelligence (AI) domain, there are two basic approaches in dealing with data: supervised and unsupervised machine learning. In contrast to the supervised learning where we have tabled data to train the model, in unsupervised learning we don’t. Thus, supervised techniques are mainly designed for prediction. For the unsupervised learning, since there is no ground truth/label, we mainly use it for descriptive analysis. In other words, unsupervised learning is used for knowledge discovery.

Source

Unsupervised learning can be used…

XGBoost as one of the most widely used public domain software for boosting is an essential skill to be equipped by the data scientists.

Ensemble models have become a standard tool for predictive modelling. Boosting is a general technique to create an ensemble of models [1]. The boosting method has been developed almost at the same time the bagging was developed. Like bagging, boosting is used commonly with tree decision tree. In contrast to the bagging which requires little running, the boosting requires pretty high care in the applications. …

Tree Model and its powerful descendent, ensemble learning, are powerful techniques for both data explanatory and prediction tasks.

In statistical machine learning, the model is data-driven. By data-driven, we mainly mean that there is no predefined data model or structure assumed before fitting into data. This is in contrast with classical statistical methods in which some model and structure is presumed and data is fitted through deriving the required parameters. For example, in linear or logistic regression, it is assumed, that the underlying data follows the normal and Bernoulli distribution, respectively. However, in tree model or K-NN algorithms, the model…

K-NN can be used as a feature engineering to boost the predictive models.

Most of the recent advances in statistics have been devoted to the predictive models which are classified as classical statistical methods. In this class, the model tries to impose a linear or other overall structure on the data so that new output is predicted by feeding new unseen data. In contrast, in statistical machine learning, the predictive model does not seek to impose any overall structure. In other words, they are data-driven! The K-Nearest Neighbours (K-NN) method, for example, is quite simple: classify a record in accordance…

Logistic regression model is one of the efficient and pervasive classification methods for the data science.

Many business problems require automating decisions. For example, what is the churn likelihood for a given customer? What is the likelihood of a click on an ad for a given customer? and so many alike. These are categorised as classification problems which itself is a part of larger topic called supervised learning. Most of the classification problems have an outcome which takes only two different values. These sort of classification problems are known as binary classification. Some examples of binary outcomes are phishing/not-phishing, click/don’t…

Vahid Naghshin

Technology enthusiast, Futuristic, Telecommunications, Machine learning and AI savvy, work at Dolby Inc.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store