This repo contains all the programming lab assignments from course AI & Cybersecurity. The datasets used in the Jupyter notebooks are available in the Data Files folder of this repo.
What is Perceptron?? A perceptron is a machine learning algorithm for supervised learning of binary classifiers. A binary classifier is a function which can decide whether or not an input, represented by a vector of numbers, belongs to some specific class. It is a type of linear classifier, i.e. a classification algorithm that makes its predictions based on a linear predictor function combining a set of weights with the feature vector. Hyperparameters in the moel are tunned to acheive better performance.
Dataset Details: The dataset used in Perceptron for Phish Detection Jupyter Notebook is extracted from UCI Machine Learning Repository: Phishing Websites Data Set.
What is Logistic Regression?? Logistic regression is a statistical method for analyzing a dataset in which there are one or more independent variables that determine an outcome. The outcome is measured with a dichotomous variable (in which there are only two possible outcomes). Hyperparameters in the model are tunned to achieve better performance.
Dataset Details: The dataset used in Logistic Regression for Spam Classification Jupyter Notebook is a refined dataset of SMS Spam Collection Data Set, extracted from UCI Machine Learning Repository.
What are SVMs?? In machine learning, support-vector machines (SVMs, also support-vector networks) are supervised learning models with associated learning algorithms that analyze data used for classification and regression analysis. An SVM model is a representation of the examples as points in space, mapped so that the examples of the separate categories are divided by a clear gap that is as wide as possible. Hyperparameters in the model are tunned to achieve better performance.
Dataset Details: The dataset used in SVM for Phish Detection Jupyter Notebook is extracted from UCI Machine Learning Repository: Phishing Websites Data Set.
Here are some things I looked at while making these tutorials. Some of it may be out of date.
- https://en.wikipedia.org/wiki/Perceptron
- https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.Perceptron.html
- https://www.medcalc.org/manual/logistic_regression.php
- https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html
- https://en.wikipedia.org/wiki/Support-vector_machine
- https://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html