## Метрика

Для оценки используется метрика MAP@5, мы с вами рассматривали ее на вебинаре.
https://towardsdatascience.com/breaking-down-mean-average-precision-map-ae462f623a52

## Дополнительный функционал

Для удобства перевода данных в подходящий для загрузки формат можете использовать следующую функцию:

```
def transform_data_for_eval(dataset, rec_col, user_col='user_id'):
    '''
    Func for transforming recommendations into kaggle evaluation format

    Parameters:
    dataset (pd.DataFrame): Dataset with 2 required columns:
        rec_col - column with recommendations should be iterable
        user_col - columns with user id
        
    rec_col (str): name of column in dataset with recommendations
    
    user_col (str): name of column in dataset with user id

    Returns:
    pd.DataFrame: DataFrame in suitable format

   '''
    eval_dataset = dataset[[user_col, rec_col]].copy()
    eval_dataset[rec_col] = eval_dataset[rec_col].apply(lambda x: ' '.join([str(i) for i in x]))
    eval_dataset.rename(columns={
        user_col: 'UserId',
        rec_col: 'Predicted'
    }, inplace=True)
    return eval_dataset
```
