- Justs Vidušs (JV)
- Erika Todjēre (ET)
- Jevgenijs Bodrenko (JB)
The goal of the project is to develop a machine learning model that can recommend products to customers based on their transaction history using the dataset (H&M Personalized Fashion Recommendations, 2023). An additional challenge is to improve the recommendation accuracy by including additional data about the customers, products and potentially product image processing data. The initial scope of the project is summarized by the WBS diagram. Briefly, it is expected to explore capabilities provided by LightFM, Implicit and TFRS libraries, and compare the resulting models using the kaggle submission for the H&M dataset.
- notebooks
- This section contains the code in a form of jupyter notebooks.
- It is organized into subdirectories based on the task the code was developed for.
- Each subdirectory contains readme file with the description of its contents.
- models - section for trained models
- This section contains the trained models that can be reconstructed and imported directly using specific library.
- It is organized into subdirectories based on the task the model was built for.
- Each subdirectory contains readme file with the description of its contents.
Project component | Description | VJ | ET | JB |
---|---|---|---|---|
Documentation | Documenting the code and project progress | 25 | 25 | 50 |
Code | Contributing code for the tasks of the project | 35 | 20 | 45 |
Communication | Communication with stakeholders and facilitator role within the team | 35 | 45 | 20 |
Research | Module-specific research to direct the development | 33 | 33 | 33 |
Presentation | Presentation of the project results | 40 | 40 | 20 |
Management | Planning individual work as well as collaboration within the assigned module | 33 | 33 | 33 |
Overall | Involvement optimality score | 1.01 | 0.98 | 1.01 |
- Project component - directory name that represents single module of the project
- Description - short description of the component
- Initials - contribution in %
-
- t - number of team members
- C - number of components
- c_i - contribution form the individual component
- Example:
- the score represents the ratio between the observed and optimal (equal) contribution
- it assumes that in case of equal contribution each team member should contribute equally to the project
- given that each project component is taken as 100 %, the overall project contribution can be calculated as 100*C:
- 100*6 = 600 in this case
- the optimal contribution can then be calculated by dividing the resulting value by t:
- 600 / 3 = 200 in this case
- the observed contribution c_i for each member is calculated as a sum of contributions for each component, for example:
- JB = 50 + 45 + 20 + 33 + 20 + 33 = 201
- the final score is obtained by dividing the observed contribution by the optimal contribution:
- JB = 201/200 = 1.01
- the score represents the ratio between the observed and optimal (equal) contribution
- Interpretation:
- Scores close to 1 indicate optimal involvement
- Scores between 1 and 0 indicate low involvement
- Socres above 1 indicate high involvement