Welcome to the first article of Introduction to Machine Learning Series. You can continue reading about the Perceptron Algorithm after this one.

## What are Cognitive Algorithms?

An algorithm is:

a process or set of rules to be followed in calculations or other problem-solving operations, especially by a computer.

We can perform calculations, automate tasks or process data with algorithms.

What is Cognition?

derived from cognoscere (latin) : to recognize

In simple terms; cognition is using the existing knowledge to generate new knowledge.

## Basics of ML

### Features

Each problem, both in math and real life, has its own set of inputs.

In machine learning, it is crucial to choose features wisely, while solving a real life problem. For example, while forecasting weather, we would need the following inputs to achieve a accurate solution:

- Location
- Last 10 days
- Weather data for last 10 years in that day
- Air Pressure
- Humidity
- etc.

There is no computer powerful enough or no algorithm so genius, that can solve a problem with insufficient data. But we should also keep in mind, that unnecessary data would:

- increase data volume
- increase noise of data, therefore worsen the performance
- increase the time needed to train our model

This process is called **Feature extraction** and corresponding set is the **Feature Space** of our problem. There are numerous algorithms and techniques on extracting feature, modifying feature space size, dimension, stability etc. , and we will talk about those in the next articles.

Each data input is a vector in our feature space X

### Problems

#### Supervised vs Unsupervised Problems

In an unsupervised problem,

we are given a bunch of (usually at least >10k) data points in the feature space and the algorithm should find an underlying pattern in data

Whereas a supervised problem uses the given labels in the data set, to predict a label for a new data point.

#### Classification and Regression

Now that we not what supervised learning algorithms do, there is a one last point left to make.

A Classification problem has a limited label domain. The Label Set Y can have only 2 distinct elements for a binary classification problem, and corresponding number of elements for a multiple classification problem.

Whereas the Domain of Y can be Real numbers, when working with Regression.

So, a regression algorithm predicts the exact label value in real numbers given a new point, while classification algorithms, as the name suggests, assigns the point with the correct class.