BMSTU, linguistics faculty practice, semester 6.
Similarity-based recommendation built on heat maps: items are compared pairwise across several attributes, the resulting similarity matrix is rendered as a heat map, and recommendations fall out of it. Four domain variants share one engine, plus graph and optimisation groundwork.
| Path | Contents |
|---|---|
graphs_common |
Graph and tree visualisation, BFS and DFS, own |
| stack and queue | |
ants |
Travelling salesman: ant colony versus brute force |
genetic_algos |
Genetic algorithm, two variants |
variant-01-restaurants |
Restaurant recommender |
variant-02-courses |
Course recommender |
variant-03-courses |
Course recommender, second variant |
variant-04-cosmetics |
Cosmetics recommender |
Each variant has the same shape: <domain>_recommender.py for the similarity
model, gui_classes.py and app.py for the interface, data/ for the
attribute tables.
pip install numpy pandas matplotlib
cd variant-01-restaurants && python main.pycd ants && python main.py # ant colony vs exhaustive search
cd graphs_common && python graph.pyPython, NumPy, pandas, matplotlib