Very crude implementations of common machine learning algorithms.
These are some basic implementations of machine learning algorithms from scratch, mostly using numpy/scipy. They are designed as a learning experiment and are not suitable for general use other than that.
Currently, this repository contains the following directories:
supervised/
knn.py
- K-Nearest Neighbours Classifiersimple_linear_regression.py
- Linear Regression designed for single dependent and indepent variablegaussian_naive_bayes.py
- Gaussian Naive Bayes classifierperceptron.py
- Single Layer Perceptronlogistic_regression.py
- Logistic Regression classifierdecision_tree_id3.py
- Decision Tree using ID3 algorithm
unsupervised/
kmeans.py
- simple KMeansdbscan.py
- Density-Based Spatial Clustering of Applications with Noisemean_shift.py
- Mean Shiftpca.py
- Principal Component Analysisrake.py
- Rapid Automatic Keyword Extractionspectral_clustering.py
- Spectral Clusteringyake.py
- Yet Another Keyword Extractor
utils/
metrics.py
- system evaluation metricscalculations.py
- distances and other math related calculations