Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
castolpe authored Nov 7, 2024
1 parent b3d7139 commit f70535f
Showing 1 changed file with 22 additions and 55 deletions.
77 changes: 22 additions & 55 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,35 @@
Project Name
==============================
Movie Recommendation System (MLOps exercise project)
====================================================

This project is a starting Pack for MLOps projects based on the subject "movie_recommandation". It's not perfect so feel free to make some modifications on it.
This project was created as part of the MLOps boot camp. The project was used to try out many tools that can be used to deploy ML projects.

Project Organization
**Developer Team**
- Asma Heena Khalil
- Ringo Schwabe
- Carolin Stolpe

Business Objectives
------------------

The Movie Recommendation application addresses the challenge of providing personalized movie recommendations to users on a streaming platform. By leveraging collaborative filtering techniques, it enhances the user experience by suggesting movies that align with individual tastes. Sponsored by a streaming service, the project aims to improve user engagement and satisfaction through tailored content.

Architecture
------------


File structure
------------

β”œβ”€β”€ LICENSE
β”œβ”€β”€ README.md <- The top-level README for developers using this project.
β”œβ”€β”€ data
β”‚Β Β  β”œβ”€β”€ external <- Data from third party sources.
β”‚Β Β  β”œβ”€β”€ interim <- Intermediate data that has been transformed.
β”‚Β Β  β”œβ”€β”€ processed <- The final, canonical data sets for modeling.
β”‚Β Β  └── raw <- The original, immutable data dump.
β”‚
β”œβ”€β”€ logs <- Logs from training and predicting
β”‚
β”œβ”€β”€ models <- Trained and serialized models, model predictions, or model summaries
β”‚
β”œβ”€β”€ notebooks <- Jupyter notebooks. Naming convention is a number (for ordering),
β”‚ the creator's initials, and a short `-` delimited description, e.g.
β”‚ `1.0-jqp-initial-data-exploration`.
β”‚
β”œβ”€β”€ references <- Data dictionaries, manuals, and all other explanatory materials.
β”‚
β”œβ”€β”€ reports <- Generated analysis as HTML, PDF, LaTeX, etc.
β”‚Β Β  └── figures <- Generated graphics and figures to be used in reporting
β”œβ”€β”€ models <- Trained and serialized models, model predictions, or model summaries, tracked by DVC
β”‚
β”œβ”€β”€ requirements.txt <- The requirements file for reproducing the analysis environment, e.g.
β”‚ generated with `pip freeze > requirements.txt`
Expand All @@ -52,49 +56,12 @@ Project Organization

--------

## Steps to follow

Convention : All python scripts must be run from the root specifying the relative file path.

### 1- Create a virtual environment using Virtualenv.

`python -m venv my_env`

### Activate it

`./my_env/Scripts/activate`

### Install the packages from requirements.txt (You can ignore the warning with "setup.py")

`pip install -r .\requirements.txt`

### 2- Execute import_raw_data.py to import the 4 datasets (say yes when it asks you to create a new folder)

`python .\src\data\import_raw_data.py`

### 3- Execute make_dataset.py initializing `./data/raw` as input file path and `./data/processed` as output file path.

`python .\src\data\make_dataset.py`

### 4- Execute build_features.py to preprocess the data (this can take a while)

`python .\src\features\build_features.py`

### 5- Execute train_model.py to train the model

`python .\src\models\train_model.py`

### 5- Finally, execute predict_model.py file to make the predictions (by default you will be printed predictions for the first 5 users of the dataset).

`python .\src\models\predict_model.py`

### Note that we have 10 recommandations per user

<p><small>Project based on the <a target="_blank" href="https://drivendata.github.io/cookiecutter-data-science/">cookiecutter data science project template</a>. #cookiecutterdatascience</small></p>
## How to run locally

xxx

# Notes

Start API locally:

`fastapi dev .\src\api\main.py`
`fastapi dev .\src\api\main.py`

0 comments on commit f70535f

Please sign in to comment.