Welcome to the AI Character Recognition project! This project utilizes four different machine learning models, including k-Nearest Neighbors (KNN), Support Vector Machine (SVM), Multilayer Perceptron (MLP), and Convolutional Neural Network (CNN) to perform character recognition on the EMNIST Letter dataset. The code is designed to run seamlessly on Google Colab, making it easy for you to leverage the power of cloud computing.
- Phạm Đức Mạnh
- Nguyễn Thiên Nguyên
- Nguyễn Thanh Sơn
- Nguyễn Thanh Tú
- Nguyễn Hoàng Yến Ngọc
- Võ Tấn Sang
- Đỗ Nam Hải
Ph.D Lê Trọng Nhân
Character recognition is a fundamental task in the field of artificial intelligence, and this project focuses on implementing and comparing four different AI models for this purpose. The models are chosen based on their distinct architectures and capabilities, providing a comprehensive understanding of their performance on the EMNIST dataset.
- A simple and effective algorithm for classification.
- Suitable for small to medium-sized datasets.
- An algorithm that works well for both linear and non-linear classification.
- Effective in high-dimensional spaces.
- A type of artificial neural network with multiple layers.
- Capable of learning complex patterns in data.
- Specifically designed for image data, CNNs are excellent for capturing spatial hierarchies in features.
The project uses the EMNIST dataset, a collection of handwritten characters. This dataset is suitable for training and evaluating character recognition models. You can find more information about the EMNIST dataset here.
Google Colab provides a free and powerful platform for running Jupyter notebooks in the cloud. The project code is designed to be run on Google Colab, allowing you to take advantage of its resources without the need for extensive setup on your local machine.
To run this project, follow these steps:
-
Clone the repository to your local machine:
git clone https://github.com/MannoKat/Introduction-to-Computer-Science-Project.git
-
Open the project in Google Colab.
-
Run the provided notebooks for each model.
Follow the instructions in the notebooks to train and evaluate each model. Customize the code according to your requirements, and experiment with hyperparameters to optimize performance.
If you'd like to contribute to this project, feel free to open issues, submit pull requests, or provide feedback. Contributions of all kinds are welcome!
Happy coding!