Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/nikbarb810/pattern-recognition

Basic pattern recognition algorithms implemented in Python
https://github.com/nikbarb810/pattern-recognition

data-science ipynb-jupyter-notebook matplotlib numpy pattern-recognition python

Last synced: 2 days ago
JSON representation

Basic pattern recognition algorithms implemented in Python

Awesome Lists containing this project

README

        

# Pattern Recognition Algorithms

Welcome to the Pattern Recognition Algorithms repository! This collection of Python implementations utilizes popular data science libraries like Pandas, NumPy, Matplotlib, and more to explore various pattern recognition and machine learning concepts. Below, you'll find an overview of the implemented algorithms and their respective functionalities.

## Algorithms

### 1. Linear Regression

Explore the relationship between apartment price and factors like age and size. Implement linear regression models and visualize the results using 2D and 3D plots.

### 2. Basic Bayesian Classifier

Evaluate a Wine dataset and classify new samples into red, white, or rose categories using a basic Bayesian classifier. Examine how introducing Conditional Risk, like price for each category, affects the output. Gain insights into probabilistic classification.

### 3. Bayesian Update

Calculate the probability of an individual contracting a disease based on different factors, such as disease prevalence and the number of tests conducted. Investigate the famous birthday problem through Bayesian analysis.

### 4. Maximum Likelihood Estimation

Estimate parameters like mean and covariance for a 2-dimensional class. Enjoy live animations demonstrating parameter approximation and distribution visualization.

### 5. Parzen Windows

Implement Parzen window classifiers using both hypercube and Gaussian window functions. Categorize independent 1D samples and determine the "best" window width through detailed analysis, including animated plots.

### 6. K-Nearest Neighbors (KNN) Classification

Perform K-Nearest Neighbors classification on 2D data. Explore how decision boundaries change with different values of k in animated plots.

## Usage

Each algorithm is organized into its own directory with Python scripts, Jupyter notebooks, and example datasets. You can explore, run, and experiment with these algorithms by navigating to their respective directories.

## Dependencies

- Python 3.x
- Pandas
- NumPy
- Matplotlib
- Jupyter Notebook (for interactive exploration)

## Author

- [Nikolaos Barmparousis](https://github.com/nikbarb810)

## License

This repository is open-source and available under the [MIT License](LICENSE). Feel free to use, modify, and share these implementations as needed.

## Acknowledgments

Special thanks to the open-source community and the developers behind Pandas, NumPy, and Matplotlib for creating powerful tools that enable the exploration of pattern recognition and machine learning algorithms.