/GIK-ProductQuantization

Product Quantization Apllication for KNN

Primary LanguageC++

Garuda Ilmu Komputer - Weekly Task

Product Quantization Apllication for KNN


Table of Contents

  1. General Info
  2. Creator Info
  3. Features
  4. Technologies Used
  5. Setup
  6. Usage
  7. Screenshots
  8. Structure
  9. Project Status
  10. Room for Improvement
  11. Acknowledgements
  12. Contact

General Information

A simple product quantization application for KNN algorithm. This application is made for the weekly task of Garuda Ilmu Komputer (GIK) program.

Creator Information

Nama NIM E-Mail
Mohammad Rifqi Farhansyah 13521166 13521166@std.stei.itb.ac.id

Features

  • This project will generate n dimensional with m dataset vectors
  • The program will then train, encode, and decode the dataset vectors
  • The program will then search the dataset vectors based on the query vector
  • The program will then calculate the distance between the query vector and the dataset vectors
  • The program will then sort the dataset vectors based on the distance between the query vector and the dataset vectors
  • The program will then output the most similar dataset vectors to the query vector

Technologies Used

  • MingGw-W64 version 8.1.0

Note: The version of the libraries above is the version that we used in this project. You can use the latest version of the libraries.

Setup

  1. Download the MingW-W64 from here.
  2. Install the MingW-W64.

Usage

  1. Open the terminal in the project directory.
  2. cd output and then main.exe to run the program.
  3. The program will print out all of the result

Screenshots

Figure 1. Vector Database

Figure 2. Project Process

Figure 3. Result

Structure

│   main.cpp
│   Product Quantization for KNN.docx
│   README.md
│
├───image
│       SS1.png
│       SS2.png
│       SS3.png
│
└───output
        main.exe

Project is: complete

Room for Improvement:

  • Need improvement in the training and encoding process
  • Thanks To Allah SWT

Contact

Contact Me : mrifki193@gmail.com
2023