62 분 소요

Shopping Basket Recommendation System with Python

Python을 이용한 장바구니 추천 시스템

Introduction

인공지능은 프로세스를 자동화하고, 비즈니스에 대한 통찰력을 모으고, 프로세스 속도를 높이기 위해 다양한 산업에서 사용되고 있습니다. 인공지능이 실제로 산업에 어떤 영향을 미치는지 실제 시나리오에서 인공지능의 사용을 연구하기 위해 Python을 사용할 것입니다.

장바구니에는 기본적으로 사람이 구매한 아이템 목록이 포함되어 있습니다. 이러한 데이터는 어떤 제품이 수요가 있는지, 어떤 제품이 계절적 상품인지 등과 같은 정보를 나타낼 것이기 때문에 상점에 매우 유용할 정보가 될수 있습니다. 기업은 어떠한 상품에 초점을 맞춰야 하는지 파악하고 이를 바탕으로 추천할 수 있습니다. 장바구니 추천은 AI를 이용해 한 사람의 쇼핑 리스트를 연구해 그 사람에게 구매할 가능성이 있는 물건을 제안할 수 있습니다.

이 노트북에서는 KNN 모델을 사용한 장바구니 추천 시스템에 중점을 둘 것입니다.

Context

[Kaggle]에서 가져온 Amazon 제품 리뷰를 사용하여 작업합니다. Kaggle은 데이터 전문가들이 모여 지식을 공유하고 서로 경쟁하여 보상을 받을 수 있는 데이터 공유 플랫폼입니다.

고객 리뷰 데이터

Amazon, Walmart와 같은 대형 전자 상거래 회사는 매일 수백만 명의 고객과 거래합니다. 고객은 제품을 검색하고 구매하고 때로는 리뷰를 남깁니다. 이를 감안할 때 고객은 전자 상거래 회사에게 가장 중요한 요소입니다: 그들을 지속적으로 만족시켜야 합니다.

고객의 쇼핑 이력, 즉 고객이 무엇을 구매하고 무엇을 선호하는지 알고 있다고 상상해 보십시오. 당신은 그들이 미래에 무엇을 사고 싶어할지 예측하고 그러한 것들을 제안함으로써 이 정보를 당신에게 유리하게 사용할 수 있습니다.

Side note: KNN 이란?

KNN(K-Nearest Neighbors)은 분류와 회귀에 모두 사용되는 알고리즘입니다. KNN 알고리즘은 ‘유유상종’이라는 말처럼 주변에 비슷한 것이 존재한다고 가정한다. KNN 알고리즘은 가장 가까운 이웃의 클래스, 특히 k 수를 기반으로 새 데이터 포인트를 분류합니다. k는 객체의 클래스를 결정하는 데 도움이 되는 가장 가까운 이웃의 수를 나타냅니다. 다음 다이어그램에서 명확하게 확인할 수 있습니다.

Knn where k = 3

Types of recommendations

There are mainly 6 types of the recommendations systems :-

  1. Popularity based systems :- It works by recommeding items viewed and purchased by most people and are rated high.It is not a personalized recommendation.

  2. Classification model based:- It works by understanding the features of the user and applying the classification algorithm to decide whether the user is interested or not in the prodcut.

  3. Content based recommedations:- It is based on the information on the contents of the item rather than on the user opinions.The main idea is if the user likes an item then he or she will like the “other” similar item.

  4. Collaberative Filtering:- It is based on assumption that people like things similar to other things they like, and things that are liked by other people with similar taste. it is mainly of two types:

a) User-User

b) Item -Item

  1. Hybrid Approaches:- This system approach is to combine collaborative filtering, content-based filtering, and other approaches .

  2. Association rule mining :- Association rules capture the relationships between items based on their patterns of co-occurrence across transactions.

Use Python to open csv files

scikit-learn, pandas, matplotlib를 사용하여 데이터 세트를 작업합니다. Scikit-learn은 예측 데이터 분석을 위한 효율적인 도구를 제공하는 매우 유용한 기계 학습 라이브러리입니다. Pandas는 데이터 과학을 위한 인기 있는 Python 라이브러리입니다. 강력하고 유연한 데이터 구조를 제공하여 데이터 조작 및 분석을 더 쉽게 만듭니다. Matplotlib은 고품질의 데이터 시각화를 위한 Python의 2차원 그래프 라이브러리입니다. 코드 몇 줄만으로 간단하게 복잡한 그래프를 만들 수 있어서 사용성이 매우 높습니다.

Import Libraries

import numpy as np 
import pandas as pd 
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.metrics.pairwise import cosine_similarity
from sklearn.model_selection import train_test_split
from sklearn.neighbors import NearestNeighbors
import joblib
import scipy.sparse
from scipy.sparse import csr_matrix
from scipy.sparse.linalg import svds
%matplotlib inline

이제 라이브러리를 가져왔으므로 csv 파일을 읽어오겠습니다.

# electronics_data 변수로 [Dataset]_Module11_(Recommendation).csv 파일 읽어오기
# your code here
col = ['userId', 'productId', 'Rating', 'timestamp']
df_dataset = pd.read_csv("./[Dataset]_Module11_(Recommendation).csv",names=col, header=None)

데이터가 어떻게 구성되었는지 살펴보겠습니다.

# your code here
df_dataset.head(5)
userId productId Rating timestamp
0 AKM1MP6P0OYPR 0132793040 5.0 1365811200
1 A2CX7LUOHB2NDG 0321732944 5.0 1341100800
2 A2NWSAGRHCP8N5 0439886341 1.0 1367193600
3 A2WNBOD3WNDNKT 0439886341 3.0 1374451200
4 A1GI0U4ZRJA8WN 0439886341 1.0 1334707200

Task 1: electronic data의 첫 20 행 표시

#yourcodehere
df_dataset.head(20)
userId productId Rating timestamp
0 AKM1MP6P0OYPR 0132793040 5.0 1365811200
1 A2CX7LUOHB2NDG 0321732944 5.0 1341100800
2 A2NWSAGRHCP8N5 0439886341 1.0 1367193600
3 A2WNBOD3WNDNKT 0439886341 3.0 1374451200
4 A1GI0U4ZRJA8WN 0439886341 1.0 1334707200
5 A1QGNMC6O1VW39 0511189877 5.0 1397433600
6 A3J3BRHTDRFJ2G 0511189877 2.0 1397433600
7 A2TY0BTJOTENPG 0511189877 5.0 1395878400
8 A34ATBPOK6HCHY 0511189877 5.0 1395532800
9 A89DO69P0XZ27 0511189877 5.0 1395446400
10 AZYNQZ94U6VDB 0511189877 5.0 1401321600
11 A1DA3W4GTFXP6O 0528881469 5.0 1405641600
12 A29LPQQDG7LD5J 0528881469 1.0 1352073600
13 AO94DHGC771SJ 0528881469 5.0 1370131200
14 AMO214LNFCEI4 0528881469 1.0 1290643200
15 A28B1G1MSJ6OO1 0528881469 4.0 1280016000
16 A3N7T0DY83Y4IG 0528881469 3.0 1283990400
17 A1H8PY3QHMQQA0 0528881469 2.0 1290556800
18 A2CPBQ5W4OGBX 0528881469 2.0 1277078400
19 A265MKAR2WEH3Y 0528881469 4.0 1294790400

데이터셋에 대한 정보 얻기

데이터 세트에 대한 다양한 정보를 수집할 수 있다면 데이터 세트에 대한 명확한 그림을 제공하고, 데이터를 처리하는 데 도움이 될 것입니다.

# 데이터의 형태
# your code here
df_dataset.shape
(7824482, 4)
# 데이터 세트의 하위 집합 1048576 개 데이터 가져오기
# your code here
df_dataset.iloc[:1048576]
userId productId Rating timestamp
0 AKM1MP6P0OYPR 0132793040 5.0 1365811200
1 A2CX7LUOHB2NDG 0321732944 5.0 1341100800
2 A2NWSAGRHCP8N5 0439886341 1.0 1367193600
3 A2WNBOD3WNDNKT 0439886341 3.0 1374451200
4 A1GI0U4ZRJA8WN 0439886341 1.0 1334707200
... ... ... ... ...
1048571 A1H16CBCNEL4G3 B000IF51UQ 5.0 1356739200
1048572 A1C2OANTC49AQI B000IF51UQ 5.0 1382486400
1048573 A2JL0387FDDFS B000IF51UQ 5.0 1340409600
1048574 A2KIYE5RF0OEMY B000IF51UQ 4.0 1391212800
1048575 A1G9Q5UJ5Y7DES B000IF51UQ 2.0 1390780800

1048576 rows × 4 columns

# 데이터 타입 확인
# your code here
df_dataset.dtypes
userId        object
productId     object
Rating       float64
timestamp      int64
dtype: object
# 데이터 정보 확인
# your code here
df_dataset.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 7824482 entries, 0 to 7824481
Data columns (total 4 columns):
 #   Column     Dtype  
---  ------     -----  
 0   userId     object 
 1   productId  object 
 2   Rating     float64
 3   timestamp  int64  
dtypes: float64(1), int64(1), object(2)
memory usage: 238.8+ MB

Task 2: 데이터 세트의 Rating 열에 대한 정보 표시

# yourcode here
df_dataset['Rating'].describe()
count    7.824482e+06
mean     4.012337e+00
std      1.380910e+00
min      1.000000e+00
25%      3.000000e+00
50%      5.000000e+00
75%      5.000000e+00
max      5.000000e+00
Name: Rating, dtype: float64
# 등급이 1-5 척도인지 1-10 척도인지 알아보기 위해 최소 및 최대 등급을 찾아보겠습니다.
# yourcode here
print( "Minimum rating is: " + str(int(df_dataset['Rating'].min())) )
print( "Maximum rating is: " + str(int(df_dataset['Rating'].max())) )
Minimum rating is: 1
Maximum rating is: 5

Task 3: 데이터 세트에서 누락된 값 확인

# 데이터세트에서 누락된 값을 확인하겠습니다.
# your code here
df_dataset.isnull().sum()
userId       0
productId    0
Rating       0
timestamp    0
dtype: int64
# 막대 그래프를 이용하여 다양한 등급 분포를 알아보겠습니다.
# 해당 코드는 나중에 진행;;; catplot으로 하는 방법에 관해서 빨리...
# with sns.axes_style('white'):
#     g = sns.catplot(data=df_dataset["Rating"], kind='bar', x='Rating' )

with sns.axes_style('white'):
    g = sns.factorplot("Rating", data=df_dataset, aspect=2.0,kind='count')
    g.set_ylabels("Total number of ratings")
C:\ProgramData\Anaconda3\lib\site-packages\seaborn\categorical.py:3717: UserWarning: The `factorplot` function has been renamed to `catplot`. The original name will be removed in a future release. Please update your code. Note that the default `kind` in `factorplot` (`'point'`) has changed `'strip'` in `catplot`.
  warnings.warn(msg)
C:\ProgramData\Anaconda3\lib\site-packages\seaborn\_decorators.py:36: FutureWarning: Pass the following variable as a keyword arg: x. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.
  warnings.warn(

print("Total data ")
print("-"*50)
print("\nTotal no of ratings :", df_dataset.shape[0] )# your code here
print("Total No of Users   :", len(np.unique(df_dataset.userId)))# your code here
print("Total No of products  :", len(np.unique(df_dataset.productId)))# your code here
Total data 
--------------------------------------------------

Total no of ratings : 7824482
Total No of Users   : 4201696
Total No of products  : 476002

관심 있는 데이터 세트만 선택합니다.

때로는 추정을 위해 모든 데이터 세트가 필요하지는 않습니다. 데이터의 모든 속성이 우리가 구축하는 모델에 유용한 것은 아닙니다. 이 경우 해당 속성을 안전하게 삭제할 수 있습니다. 예를 들어, 사용자가 구매하고 싶어할 수 있는 제품을 추천하는 데 timestamp 열은 어떠한 도움도 주지 않기 때문에 여기에서는 삭제할 수 있습니다.

# timestamp 열은 필요하지 않으므로 삭제합니다.
# your code here
df_modiset = df_dataset.drop('timestamp', axis='columns')
df_modiset.head()
userId productId Rating
0 AKM1MP6P0OYPR 0132793040 5.0
1 A2CX7LUOHB2NDG 0321732944 5.0
2 A2NWSAGRHCP8N5 0439886341 1.0
3 A2WNBOD3WNDNKT 0439886341 3.0
4 A1GI0U4ZRJA8WN 0439886341 1.0
# 구매 고객이 부여한 평가를 분석해 보겠습니다.
# your code here
no_of_rated_products_per_user = df_modiset.groupby(by='userId')['Rating'].count().sort_values(ascending=False)
no_of_rated_products_per_user.head()
userId
A5JLAU2ARJ0BO     520
ADLVFFE4VBT8      501
A3OXHLG6DIBRW8    498
A6FIAB28IS79      431
A680RUE1FDO8B     406
Name: Rating, dtype: int64

분위수 분포 보기

분위수는 샘플을 동일한 크기의 그룹으로 나누는 지점입니다. 정렬된 데이터 집합의 중앙값은 해당 집합의 중간 지점으로 정렬은 오름차순 또는 내림차순으로 정렬됨을 의미합니다. 따라서 중앙값은 데이터 세트를 2개의 동일한 그룹으로 나눌 때 분위수입니다.

중앙값(분위수 예제)

quantiles = no_of_rated_products_per_user.quantile(np.arange(0,1.01,0.01), interpolation='higher')
plt.figure(figsize=(10,10))
plt.title("Quantiles and their Values")
quantiles.plot()
# 차이가 0.05인 분위수를 찾습니다.
plt.scatter(x=quantiles.index[::5], y=quantiles.values[::5], c='orange', label="quantiles with 0.05 intervals")

# 차이가 0.25인 분위수도 구해 보겠습니다.
plt.scatter(x=quantiles.index[::25], y=quantiles.values[::25], c='m', label = "quantiles with 0.25 intervals")
plt.ylabel('No of ratings by user')
plt.xlabel('Value at the quantile')
plt.legend(loc='best')
plt.show()

print('\n No of rated product more than 50 per user : {}\n'.format(sum(no_of_rated_products_per_user >= 50)) )

 No of rated product more than 50 per user : 1540

Task 4: 평가한 사용자 수가 60명 이상인 제품 표시

#your code here

print('\n No of rated product more than 60 per user : {}\n'.format(sum(no_of_rated_products_per_user >= 60)) )

 No of rated product more than 60 per user : 996

인기도에 따라 최종 작업 데이터 세트 가져오기

KNN 기능이 있는 Surprise 라이브러리를 import 시킵니다. 인기가 적은 상품은 추천에 크게 영향을 주지 않기 때문에 어떤 상품이 사용자에게 정말 인기가 있는지 확인하고 새로운 상품을 추천할 때 사용합니다.

라이브러리가 설치되어 있지 않은 경우 터미널에서 다음 단계를 수행하십시오.

pip install surprise

conda install -c conda-forge scikit-surprise

%pip install surprise
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: surprise in c:\users\user\appdata\roaming\python\python39\site-packages (0.1)
Requirement already satisfied: scikit-surprise in c:\users\user\appdata\roaming\python\python39\site-packages (from surprise) (1.1.3)
Requirement already satisfied: scipy>=1.3.2 in c:\programdata\anaconda3\lib\site-packages (from scikit-surprise->surprise) (1.9.1)
Requirement already satisfied: joblib>=1.0.0 in c:\programdata\anaconda3\lib\site-packages (from scikit-surprise->surprise) (1.1.0)
Requirement already satisfied: numpy>=1.17.3 in c:\programdata\anaconda3\lib\site-packages (from scikit-surprise->surprise) (1.21.5)
Note: you may need to restart the kernel to use updated packages.
import surprise
from surprise import KNNWithMeans
from surprise import Dataset
from surprise import accuracy
from surprise import Reader
import os
from surprise.model_selection import train_test_split
from sklearn.decomposition import TruncatedSVD
# 인기 기반
# 평점 50점 이상 받은 고객들을 포함하는 새로운 데이터 프레임을 가져옵니다.
# 새로운 데이터 프레임에 평점 60점 이상 받은 고객들을 포함하는 경우도 테스트해 보세요.
new_df=df_modiset.groupby("productId").filter(lambda x:x['Rating'].count() >=50)
no_of_ratings_per_product = new_df.groupby(by='productId')['Rating'].count().sort_values(ascending=False)

fig = plt.figure(figsize=plt.figaspect(.5))
ax = plt.gca()
plt.plot(no_of_ratings_per_product.values)
plt.title('# RATINGS per Product')
plt.xlabel('Product')
plt.ylabel('No of ratings per product')
ax.set_xticklabels([])

plt.show()

위에서 평점60점 이상 받은 고객들 포함시

new_df=df_modiset.groupby("productId").filter(lambda x:x['Rating'].count() >=60)
no_of_ratings_per_product = new_df.groupby(by='productId')['Rating'].count().sort_values(ascending=False)

fig = plt.figure(figsize=plt.figaspect(.5))
ax = plt.gca()
plt.plot(no_of_ratings_per_product.values)
plt.title('# RATINGS per Product')
plt.xlabel('Product')
plt.ylabel('No of ratings per product')
ax.set_xticklabels([])

plt.show()

# Average rating of the product (내림차순 정렬)
# your code here
new_df.groupby("productId")['Rating'].mean().sort_values(ascending=False).head()
productId
B004I763AW    4.966667
B0043ZLFXE    4.955556
B000TMFYBO    4.953125
B00GMRCAC6    4.951872
B008I6RVZU    4.951456
Name: Rating, dtype: float64
# Total no of rating for product
# your code here
new_df.groupby("productId")['Rating'].count().sort_values(ascending=False).head()
productId
B0074BW614    18244
B00DR0PDNE    16454
B007WTAJTO    14172
B0019EHU8G    12285
B006GWO5WK    12226
Name: Rating, dtype: int64
# poductID 별 Rating 평균과 rating_count 로 Pandas Dataframe set 만들기
# your code here
ratings_mc = pd.DataFrame(new_df.groupby("productId")['Rating'].mean())
ratings_mc['rating_counts'] = pd.DataFrame(new_df.groupby("productId")['Rating'].count())

ratings_mc.head()
Rating rating_counts
productId
0972683275 4.470980 1051
1400501466 3.560000 250
1400501520 4.243902 82
1400501776 3.884892 139
1400532620 3.684211 171
# 가장 높은 rating_counts 값 출력 
# your code here
ratings_mc['rating_counts'].max()
18244
plt.figure(figsize=(8,6))
plt.rcParams['patch.force_edgecolor'] = True
ratings_mc['rating_counts'].hist(bins=50)
<AxesSubplot:>

plt.figure(figsize=(8,6))
plt.rcParams['patch.force_edgecolor'] = True
ratings_mc['Rating'].hist(bins=50)
<AxesSubplot:>

plt.figure(figsize=(8,6))
plt.rcParams['patch.force_edgecolor'] = True
sns.jointplot(x='Rating', y='rating_counts', data=ratings_mc, alpha=0.4)
<seaborn.axisgrid.JointGrid at 0x23196d9a670>
<Figure size 800x600 with 0 Axes>

popular_products = pd.DataFrame(new_df.groupby('productId')['Rating'].count())
most_popular = popular_products.sort_values('Rating', ascending=False)
most_popular.head(30).plot(kind = "bar")
<AxesSubplot:xlabel='productId'>

# 데이터 세트를 읽어 옵니다.
reader = Reader(rating_scale=(1, 5))
data = Dataset.load_from_df(new_df, reader)
# 데이터 세트를 훈련과 테스트 데이터로 분할합니다. 
# 이렇게 하면 7:3으로 분리
trainset, testset = train_test_split(data, test_size=0.3, random_state=10) #code here
algo = KNNWithMeans(k=5, sim_options={'name': 'pearson_baseline', 'user_based': False})
algo.fit(trainset)
Estimating biases using als...
Computing the pearson_baseline similarity matrix...
Done computing similarity matrix.
<surprise.prediction_algorithms.knns.KNNWithMeans at 0x2319c1097c0>
# 테스트 세트에 대해 훈련된 모델을 실행해 보겠습니다.
test_pred = algo.test(testset)
test_pred
[Prediction(uid='A20PER3PX47JWZ', iid='B00DVHV7TW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3MXC41SY0VS7Q', iid='B0019CSVMW', r_ui=5.0, est=5, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='AFI1OCQJL300N', iid='B00A3YN0Z0', r_ui=5.0, est=4.265865531608766, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AF8HH6GQK5O8G', iid='B000CP4ML6', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AI0YK3KKHLTHN', iid='B005DOK8NW', r_ui=4.0, est=4.353169984653047, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A9919Z9E8A40S', iid='B0017TFVUW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A37M5ZMHCCSTN6', iid='B00172V6XK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A27WH8ZRW8AKBB', iid='B004WNGKF0', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AGTN05CEBVIKZ', iid='B009NB8WRU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1UP6XCLJWKDWF', iid='B001AO1SRE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1RPP2I8VHFWJU', iid='B003LPTAYI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AAALI9W6DSC1E', iid='B002J9G59U', r_ui=5.0, est=3.176470588235294, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1EUHFUW57B6F6', iid='B000TKHBDK', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1XJB1AFKWUXD', iid='B0050D1XMG', r_ui=5.0, est=3.75, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2ARTUDDIJCO47', iid='B007PY3ZPG', r_ui=1.0, est=4.09433962264151, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A261DDG96HBQKN', iid='B00B0O1BWG', r_ui=5.0, est=4.737180815329655, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2VDFP4S3S63FF', iid='B001TK3D4K', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1R9BBBW5MJH6V', iid='B000OEV88K', r_ui=1.0, est=3.5643835616438357, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AVU5HD4JYPUUY', iid='B007FELOZO', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3CQ6CPZ9M96IH', iid='B001XHBNN2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1O1UE8SWIUH6U', iid='B002ZKTCUM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1R0D48X7AB3HT', iid='B004J6PI8K', r_ui=3.0, est=4.0, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2YEIHOA570JOO', iid='B0054JE64I', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A9WDTZG61ZOM9', iid='B006ZZ2V9M', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ANQS63GCRU1TR', iid='B0098F5W0Q', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1EVDWA956XRJW', iid='B0050SPZMK', r_ui=3.0, est=3.5641039869045312, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1CTKUEW3VZ0TV', iid='B0064L8Q1E', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2RLJ6LIH51I4T', iid='B000BPD330', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3AL3H4M74IGT3', iid='B002NEGTTW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3TZPXW8WR0UWN', iid='B005K7192G', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1QI6HTLI49CP7', iid='B008JJLW4M', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2EWM90Y3T2SUX', iid='B004I5BUSO', r_ui=5.0, est=4.41199684293607, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ATV56YMBUY58H', iid='B001GTT0VO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2AGZKL5N1MPR1', iid='B00D6PTMHI', r_ui=4.0, est=3.5345528455284554, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1RL1OTV8IJMVD', iid='B000Z80ICM', r_ui=4.0, est=4.370974871253287, details={'actual_k': 3, 'was_impossible': False}),
 Prediction(uid='A2M9GIR4CKZPV7', iid='B000EF3D4Q', r_ui=4.0, est=3.533980582524272, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2R2HS6F0JX5O7', iid='B001498LIO', r_ui=5.0, est=3.591743119266055, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1CR1XSR99YO0R', iid='B008HK3Y5S', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1D45EID9JU8J', iid='B0040720NY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1Q0HJFI9YY485', iid='B00E055H5O', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ALWHRHVQ8EI9C', iid='B006ZW4IVE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A7O9GWTHHGS94', iid='B0000UV2AW', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A26EF0FFHL68HP', iid='B00BGA9WK2', r_ui=5.0, est=4.075403608736942, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A22R6CXMBF617A', iid='B004T1YA5W', r_ui=5.0, est=3.2, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2EMNYT7SFKOOO', iid='B001MSU1FS', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2AAAUV0L6KVMA', iid='B001FA1NZU', r_ui=5.0, est=4.29, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3U0ZXAEVWRHWW', iid='B000W9DJ1Q', r_ui=5.0, est=4.258780034849597, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3VN9ZGCFSIWAD', iid='B00834SJNA', r_ui=5.0, est=4.0602409638554215, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1F98J95UB42Z9', iid='B000WOVD1Y', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1434F8KAR1W0V', iid='B00CAMCCLQ', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3EO4NL9SI2BK2', iid='B00DR0PDNE', r_ui=5.0, est=3.935356547671257, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3UEV6YFLSWA5W', iid='B0075W8Y1S', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A6YNST64DV16U', iid='B000NUBY0C', r_ui=3.0, est=3.7162162162162162, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3NW0K0A5J664', iid='B005UA3I72', r_ui=5.0, est=4.694312796208531, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2S6XCFQCN27GB', iid='B004GTCA2C', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AYPF6B7H5XBWR', iid='B000U5TUWE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3JKXNX3H2SW7J', iid='B006OBGEHW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1GXRUK2GVNHZ7', iid='B003S5SOLG', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A13AO2VJEATZYT', iid='B004LRPXAU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A61M4Q3JMVZGB', iid='B004616OIQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ASCU0TZ1WAAYP', iid='B0071BTJPI', r_ui=4.0, est=4.077433628318584, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3053LOLVONNW8', iid='B004KDVNZO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1Z2IC0CAI4U8S', iid='B003ZK5NZY', r_ui=5.0, est=4.461538461538462, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3UMINY2XEKTV9', iid='B0000BYDKO', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1UPG37DTOZFP0', iid='B004RRU1B0', r_ui=4.0, est=3.7887589214908806, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='ACI149LLMUJ4B', iid='B001RB24S2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AK4DEV5MJOYY1', iid='B004AD7UJC', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A7FXQ4HQM6JQ0', iid='B000V0DY8Y', r_ui=5.0, est=4.149253731343284, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1TZ0VDFSS1Z4C', iid='B0002IYOKM', r_ui=5.0, est=4.253012048192771, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1P518VRFAYY0R', iid='B004X8EODY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A19M2M6JQBOA1H', iid='B003TW77KC', r_ui=1.0, est=3.90363482671175, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A268GUARLO5TCE', iid='B00AW90T0U', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3TYYEG3B1GQ55', iid='B000WQ21SQ', r_ui=4.0, est=4.1678832116788325, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AYUYJTVD93CL4', iid='B002HWRJBM', r_ui=4.0, est=3.6445199309574763, details={'actual_k': 3, 'was_impossible': False}),
 Prediction(uid='A22PN8Z6FVNJSZ', iid='B00CFIDQZG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AUCMDESPGUXSH', iid='B007YKUWN4', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A12LVYSQN3DLNQ', iid='B001PIBE8I', r_ui=5.0, est=4.175461741424802, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AK933TSWSLPMK', iid='B0022TSC5C', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AJTJ0DUWPI5IB', iid='B007Y8N19S', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1LI3TJQ4AUXOY', iid='B008AST7R6', r_ui=5.0, est=4.312622886354699, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A18P92GAMTFZ1E', iid='B002SFDJMQ', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WZNZVKRL7Z9E', iid='B004HHAE9Y', r_ui=3.0, est=4.276209677419355, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3595SIT4104FD', iid='B00004THCZ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AGYTMH5OBK530', iid='B0002U1TJY', r_ui=5.0, est=4.190804597701149, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2D37S73MP28G7', iid='B004GF8TIK', r_ui=5.0, est=4.418014589280051, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1XQRENRB92LAM', iid='B002V92X9Y', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3JF0AXWKECBUP', iid='B005HP77RM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ARBKYIVNYWK3C', iid='B004WIUDGM', r_ui=4.0, est=3.9893934935990636, details={'actual_k': 3, 'was_impossible': False}),
 Prediction(uid='A2OJ6XZFKF65T9', iid='B000NVEG8S', r_ui=1.0, est=4.26875, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1JOQ0R3E2GFHZ', iid='B0074BW614', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3AY8UNEVOEJLI', iid='B007PV0LAQ', r_ui=5.0, est=3.931924882629108, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3C2GTCQYLW2LW', iid='B005JALQGI', r_ui=4.0, est=3.6285714285714286, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A11GTHJ4FY14L4', iid='B000FKQ8LA', r_ui=5.0, est=4.747474747474747, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A12FFX9GZJREMR', iid='B00752R4PK', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2H6M68M9YZHA0', iid='B003ZHV70M', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1CZ17TQRK6JGJ', iid='B0014S5FVQ', r_ui=5.0, est=3.735294117647059, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AE5O7S2H8X7HI', iid='B003L62T7W', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1F6G5D85FUVFD', iid='B003TFEHMU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AC6U04WHU0464', iid='B003EB0AXY', r_ui=4.0, est=4.2153846153846155, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3AE539R6FY38', iid='B0090Z3QG6', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2CXPQ1DZ6QGCP', iid='B0030LVHM6', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1189D1Y8FFXB4', iid='B003LZA95W', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2UMFF2OTRUUX1', iid='B000F8LQ0A', r_ui=4.0, est=4.301369863013699, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1JW7PDVDOTVQ9', iid='B0088PUEPK', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2RH0IB10OT4OV', iid='B008Z2661W', r_ui=4.0, est=3.1550094517958414, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AY3D7DG5L5WCK', iid='B00DQZOD8Q', r_ui=5.0, est=4.456623423631869, details={'actual_k': 5, 'was_impossible': False}),
 Prediction(uid='A2O55JT007Q6O0', iid='B00EL93M3S', r_ui=5.0, est=4.205438066465256, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3J6VTUHPAR9HL', iid='B00AGABISW', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2R6PJ570KC3MY', iid='B001O5CCQK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3F9I5273VCE9Z', iid='B00140DBRY', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3LDHIY79W6GWV', iid='B0037WNONS', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1TB1VVM0LTZM2', iid='B0007DDK7A', r_ui=5.0, est=4.218487394957983, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1SWMHJLEVHD6R', iid='B005UBNGY6', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3DRKSHKZPZTGE', iid='B008CS5QTW', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AAGAW6J507ZK1', iid='B0013RTHEO', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3LQPV5D0T8XV1', iid='B000VM60I8', r_ui=2.0, est=3.3417721518987342, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A23YGKUGWVMU3U', iid='B000ER5G58', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A17P2DBVJKD196', iid='B000SMVQK8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ACSKNGOYVQNL8', iid='B00005Y1Z7', r_ui=5.0, est=3.7160493827160495, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2QTC05M62OAES', iid='B001FBM0OW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1AUEMVG6E42E6', iid='B00B1928FE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A34J0OYNSQG2C4', iid='B0000513O4', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1HPVKJ2J7F4HD', iid='B000EVSLRO', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A5U59HQLVKCGI', iid='B006GDTTM0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A34TWLUP4XK8CC', iid='B001N2789K', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2WV816Z0MR2ZL', iid='B00IDG3IDO', r_ui=5.0, est=4.731543624161074, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1A0XELKJOWOQ3', iid='B001F7AJKI', r_ui=3.0, est=4.541733547351525, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2K27OFTPORP52', iid='B0041MY32Y', r_ui=1.0, est=4.247191011235955, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1F4DFQDVWMXR', iid='B001GCUTE8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A19B9W5QL6YBIX', iid='B006GWO5WK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3RWBRE6PYJYKB', iid='B003D78O1Y', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2X11CHNOPES2V', iid='B003ULJU2A', r_ui=5.0, est=3.4296296296296296, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1JVEATNF4GP94', iid='B004O0TRCO', r_ui=5.0, est=3.4393305439330546, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1UDEWPLNHGE88', iid='B009T5FY44', r_ui=5.0, est=4.029850746268656, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1WLNRTMDJ75RU', iid='B001L6LJJS', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2SEJ4OH1DTHMJ', iid='B004UZVDTI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A4FVAF2S3DAIB', iid='B007TAGX0U', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2GMJ29EIS3TZ0', iid='B002U1ZBG0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1SA8NY0QMVJ54', iid='B000F6SR0O', r_ui=5.0, est=4.59349593495935, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1589HG3K8U6H4', iid='B004R0RQ8S', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3E86MBVVUX6SD', iid='B003NR57BY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3R5CKC1C57JHP', iid='B004HW73S4', r_ui=1.0, est=3.939622641509434, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ATI6S1R4HF4LL', iid='B009A5204K', r_ui=3.0, est=4.379393908079654, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3IBMW56ZISN9F', iid='B0012Q72IY', r_ui=1.0, est=4.688172043010753, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1OULT3UQ5HYNS', iid='B00006HCJI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3IEJ0JKID83HX', iid='B003FGWF04', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ASHHOQF9FQZ2V', iid='B000MWAKVU', r_ui=4.0, est=3.810126582278481, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3P8P49CSG79ZN', iid='B00A7EQQ3O', r_ui=4.0, est=4.365079365079365, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1LHP24N5UAMYX', iid='B007CZNS0U', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A31HGDJ8YBJJ45', iid='B001EBE1LI', r_ui=5.0, est=1.91283141138614, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1CPELS9BKO931', iid='B0013MWTB2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3VCU42YMAOUBM', iid='B00D601UC8', r_ui=4.0, est=4.32962962962963, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3EDYB5FJ2OLM2', iid='B007G9GT8U', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A18XGFYKRPZ5YY', iid='B005CPGHAA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2INYA0LKF4455', iid='B002LITT3S', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ARIDN94LOCQFD', iid='B001FWYXD2', r_ui=4.0, est=4.244938004594164, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AVF4M4GATYI47', iid='B00023NDLS', r_ui=5.0, est=3.4598930481283423, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2B3CIEV3SW6EG', iid='B004N625AK', r_ui=4.0, est=3.7505945171247204, details={'actual_k': 3, 'was_impossible': False}),
 Prediction(uid='A2MCP6BSKOHM92', iid='B002G1YPIE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1VJN7640G9T59', iid='B004S4R5CK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2NPRWROOCNBP7', iid='B004CLYOHI', r_ui=5.0, est=4.978867623604465, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1DU5ZQKMSZKDW', iid='B0088LYCZC', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2D261TA4EJW1Y', iid='B0091UJRRM', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3EJJR9VA9VIV6', iid='B00EEBS9O0', r_ui=5.0, est=4.7995406910229175, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1SE5DK28LV8R1', iid='B004289ZW0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A11UX5C0TCCYFH', iid='B00EB7812C', r_ui=4.0, est=4.330097087378641, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2LZ8F6TNVQWAX', iid='B00841AGCO', r_ui=5.0, est=4.939918946301925, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3PK4PV5F31K8N', iid='B003U4VIXQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A38TT29T79FXIN', iid='B00A17I8LA', r_ui=4.0, est=3.298902070228021, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1NRBZMZS5QF8M', iid='B00192KF12', r_ui=5.0, est=4.7125, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2V9BYT0B0SNRP', iid='B00BS4KUCK', r_ui=5.0, est=4.006944444444445, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A75RK82U28B8T', iid='B0052YFYFK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='APTXQX6AZ50BB', iid='B0074FGLUM', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2KSMCH46TL9QF', iid='B002M3SOBU', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AP4S0LFN71R2G', iid='B0009RKLMG', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2YH6HB8QMS5MD', iid='B00001OWYM', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3JEY8FRBTI8OL', iid='B000JV9LUK', r_ui=2.0, est=4.35935397039031, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A12B3A3BWJK4F4', iid='B0076HMDQO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2VKTVEXXBSSCQ', iid='B006B7R9PU', r_ui=5.0, est=4.379310344827586, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1R5LZN1SEGPJG', iid='B007FUDKB4', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1PE8Q6S9TKB93', iid='B00030CHRQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2Y5WX7S1TX2X0', iid='B0009O6IXA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AN8SHEH3M8CS5', iid='B007TAGX0U', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3BBNT1BVREC6Q', iid='B0081XAXXM', r_ui=3.0, est=4.075949367088608, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A22F2UXOKEOXWQ', iid='B00005NVBT', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A8NV3O97OY0M4', iid='B003OC6LWM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1VELOT636K6GI', iid='B00746W3HG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2S9HFO4K1IQ0K', iid='B005CLPP84', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ACS3H8PLLX7IP', iid='B000068NYF', r_ui=4.0, est=4.553846153846154, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2G225KBMRK2BJ', iid='B001P3PSSU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3EZ1975PL40OD', iid='B006CZ0C3W', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2JB5WQWNUXBAP', iid='B00IT1WJZQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A318IDAWJ9ZYAY', iid='B005GJC01C', r_ui=5.0, est=4.6521739130434785, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3ESYJAOF8SH1B', iid='B003TFEHMU', r_ui=5.0, est=4.201077199281867, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2NLNRWB1OBHCP', iid='B00BGGDVOO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A88Y4CZT54D40', iid='B00B7QC108', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AG15IN96V6T2V', iid='B0013G8PTS', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2900L97B91N3Y', iid='B006ZBWV0K', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AEJ8B5CGQRTMY', iid='B007KI8IMW', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1HZ1A9ATRQMCA', iid='B0089ZV1WY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3C8HXZKHAMO7N', iid='B007R5YGO2', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A31S0ELIIQCC3Y', iid='B004GCJEZU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AJ6K2U4OU5YX6', iid='B00DVFLJDS', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ANC6NHMNVVUWV', iid='B004XC6GJ0', r_ui=5.0, est=4.7716483848894375, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A27KXK28IGMKN0', iid='B00029U1DK', r_ui=5.0, est=4.171830985915493, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AY8CPUENCNT1O', iid='B008LTBITY', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A16BSOOMVMXGR9', iid='B00AJHCJ2Q', r_ui=5.0, est=4.213114754098361, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A7LNUIJYXEZPH', iid='B001DF2CQQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2KZKHZLVTPOLW', iid='B002M3SOBU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ACO22RBMUABV7', iid='B0002L5R78', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1YAV0278V7IN6', iid='B002RYYZZS', r_ui=4.0, est=3.5949367088607596, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AYCBJJUWHZKSN', iid='B001EYU3L2', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A15PWPL7EYJXDP', iid='B008E0VFZC', r_ui=5.0, est=3.723404255319149, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2I7BUP8HPJW6O', iid='B000MSS5YS', r_ui=5.0, est=4.418032786885246, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1SU2KPHEHQ1CZ', iid='B003ELVLKU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1N010N0NFT9J3', iid='B003DZ167K', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3KQCO30W766OL', iid='B00B9DQ2QI', r_ui=5.0, est=3.971014492753623, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2ZGJTC34AJPMW', iid='B006OBGEHW', r_ui=5.0, est=4.479882955376738, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2HJ6OYB0ETCI', iid='B003JD6LVW', r_ui=5.0, est=3.190661478599222, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A92PGEAW9KGT8', iid='B004A7ZEI2', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2BFOGHCKVQWUJ', iid='B0043WJRRS', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A349LVCIYR9TOJ', iid='B002L6HE7S', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2IIL50DM336RP', iid='B000KHPIO6', r_ui=4.0, est=4.492094861660079, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1RVKF8QG2BTH2', iid='B005LFT3GG', r_ui=5.0, est=4.71957671957672, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2OB0IK83HTU18', iid='B009PK9SB8', r_ui=4.0, est=4.417207554892846, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2VUJ79X4Y1D2Y', iid='B008GVL9YQ', r_ui=4.0, est=3.2145816072908038, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1IB14VRXM9NT6', iid='B002JSDHCY', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A100NTN4X2G3J6', iid='B0000AZK0D', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AUDY17PSQT28', iid='B00622AG6S', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2NO5IEDTZZS4U', iid='B007RTACDM', r_ui=5.0, est=4.573033707865169, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1AC49B7I62O9G', iid='B004NYB68E', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AKT02NIXNM1RN', iid='B0015L0TBI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2VGJH6FVRGBGF', iid='B009GERY14', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1OMOAUSDQUAM7', iid='B001LNO722', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1ZPKKWT79C6HW', iid='B0015HS1HQ', r_ui=4.0, est=4.143344709897611, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2ZAHTMAQOJ8TZ', iid='B005HARR2W', r_ui=5.0, est=4.267605633802817, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AH3TM3ZL4XQQ0', iid='B006OS71TA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1FWLB7FG829RF', iid='B000067SMH', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ATJ67Q3SSZ9RT', iid='B005HY4UPK', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A281JW8EH3JLE', iid='B008GGH5HQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A19UH9SLOO04BA', iid='B000VM60I8', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WX4CIGZ6ZHNG', iid='B00422KZQG', r_ui=5.0, est=4.7360406091370555, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3HKTJKJ3FT120', iid='B005FIFDSQ', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2400MOO10FSPW', iid='B0023RRNJY', r_ui=5.0, est=3.925233644859813, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1ED6D9APTDM1M', iid='B001MQA6K0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3FNCP5BUKC2WW', iid='B0007VTUB2', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AC28UWKJRSEHR', iid='B005PCOKEK', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3H02IH9AAGACB', iid='B00005B8M3', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A39IQR42BQYFG1', iid='B002VKVZ1A', r_ui=5.0, est=4.740259740259741, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3PR6YQUJ1P02G', iid='B008U5ZM6E', r_ui=5.0, est=4.222222222222222, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2IC2CQA7H061S', iid='B004N3XC7I', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A14T3IEJX18CNZ', iid='B005UBNGY6', r_ui=2.0, est=4.23336853220697, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1VXEI16N2GC02', iid='B00068U44I', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3VXL65WF0VGQ4', iid='B00264GYMG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1PV9IWCOLPBKX', iid='B00AQUXN6C', r_ui=2.0, est=4.56043956043956, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1UEOYHM62IFZN', iid='B003ES5ZUU', r_ui=5.0, est=4.702642867026428, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A38IZV2AO2KN68', iid='B009XN8NKO', r_ui=1.0, est=3.935483870967742, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A344U32NWZMLWD', iid='B0076HMDQO', r_ui=5.0, est=4.2592592592592595, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A11JRX5ZVB4U80', iid='B0041OSQB6', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2A1EYZZSCSEDQ', iid='B000M4KXF6', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3QWN5AE4J3GVQ', iid='B002HMWQE2', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3BOYIYEPWX77S', iid='B008JGR9MO', r_ui=5.0, est=4.305681818181818, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3CM3GMHM3QJSP', iid='B0051D3KMG', r_ui=5.0, est=3.7083333333333335, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3SWUNO9FYZ70U', iid='B000G1D8HU', r_ui=4.0, est=3.4523809523809526, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A4YY568BUFDX0', iid='B007TAMHRI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3SJW7KR70L33S', iid='B0074BW614', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3N7N8PTWEAP65', iid='B007VB2KIG', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A127GB0CJKS5T2', iid='B000JLK5PK', r_ui=5.0, est=4.033747412008282, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AFKF45OJML03S', iid='B00005T3N3', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='APN8BCFXDI59E', iid='B003CFATMY', r_ui=1.0, est=3.6705882352941175, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ANV9H9I9ERYYI', iid='B005KG44V0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ASMY60JR9EFI2', iid='B0010T8X9A', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2TYHDS8VWAJHE', iid='B0000AAAPF', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2U3CL0RHSLFGS', iid='B002KPGMXW', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1YAZY3KRGUL8V', iid='B000EZV3T8', r_ui=4.0, est=4.450331125827814, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2X3X96HVBCHZE', iid='B00547IVXM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3RKSU78ME5SO5', iid='B007OAFLOY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1ZPU1PW7ZOMNK', iid='B00434OWDA', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3TJ2K4LP6V71U', iid='B000Z80ICM', r_ui=4.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2T1QPB4C3O3HE', iid='B000XHS4SK', r_ui=4.0, est=3.951646493199005, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A349XKWYAW7I84', iid='B004DDI0IE', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2Q0UGKMVOO7T3', iid='B00F2CWRLQ', r_ui=4.0, est=4.621119771402329, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A13P92RXIJKBAY', iid='B001UGMTKC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A269FH9V0X3593', iid='B004ZMG55I', r_ui=5.0, est=4.156521739130435, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3ILTXS25QE2G4', iid='B004CETK8S', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2LZO0UPHD81DF', iid='B007TYUTY2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3T2WEQ9LXQYAV', iid='B00BMR7UPS', r_ui=5.0, est=4.9361702127659575, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1O2416LTJ81TI', iid='B00B9996LA', r_ui=5.0, est=3.799431009957326, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AM9BBAMJDHXL6', iid='B009VXH3UW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2JJLWP0GNGSL9', iid='B007GC4L7S', r_ui=5.0, est=4.723684210526316, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1AVFBYO3STGBM', iid='B006MRAVFE', r_ui=5.0, est=4.259740259740259, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ATYABHSTWNASF', iid='B000Z80ICM', r_ui=5.0, est=4.822501291464516, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='AQCO0PB0AQRXO', iid='B0041Q38NU', r_ui=5.0, est=4.391069823194486, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A24A47KIW2JYBC', iid='B003WQ2T5S', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3L1Q19L5QPN6Z', iid='B005QX7KYU', r_ui=5.0, est=3.989430894308943, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A365L8A48RNH80', iid='B0072B5E4M', r_ui=3.0, est=4.0625, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A194W7DHXJY03X', iid='B005972X3Q', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2I0KVAGC6YIYZ', iid='B000VX6XL6', r_ui=4.0, est=5, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='ATDPXZR9VNTME', iid='B00ETAU00C', r_ui=5.0, est=4.24, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A21JA9B4M56JQP', iid='B003YH9EZ8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2AKTBRML05X69', iid='B003YL3KUO', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WAT1BNSVC4JB', iid='B002GQRROS', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1YZP0JU46SM61', iid='B003ELVLKU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3GDVQVLORH26Z', iid='B004WIUDGM', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1KEYFTFOLXYWH', iid='B000NLSGA2', r_ui=4.0, est=4.426666666666667, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A28BMWP4M0Y95H', iid='B005GTR0R6', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2OX0L1P49SJRD', iid='B0052Z9HZ2', r_ui=4.0, est=3.924731182795699, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A29471XNU58PXD', iid='B00264TQQM', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2EVBZU30NJYS9', iid='B003QH2MY6', r_ui=5.0, est=3.5698924731182795, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1BC62X6HZJGZR', iid='B0056TYRMW', r_ui=5.0, est=3.6925467933789626, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A2FLFTRLWM4P3U', iid='B002MAPRYU', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A18LEN5RY23IHS', iid='B009SYZ8OC', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2FQDTR1ZN5I3E', iid='B00FQ1NHA8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1183442JPOZSP', iid='B008DWH00K', r_ui=5.0, est=4.378531073446328, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A34AZ7U9E1IJS0', iid='B003U8K0N6', r_ui=5.0, est=3.5813953488372094, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1LKTQ1KL91IO6', iid='B0092KRAVQ', r_ui=5.0, est=4.503831417624521, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3P8CLDO9QU3WT', iid='B00020S7XK', r_ui=4.0, est=4.398666666666666, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A4OH7YGNBVQ3X', iid='B003GSLE2Q', r_ui=5.0, est=3.65, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1LFT6ZAWDBZ29', iid='B0024UEVUO', r_ui=1.0, est=3.272727272727273, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1F0PVUT71338V', iid='B0031MJ70I', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AO8GSL7E23ESA', iid='B00DIOALPE', r_ui=1.0, est=3.603795966785291, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2LOC0VXYAB4CT', iid='B004DI7DFU', r_ui=5.0, est=4.104347826086957, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2ZT9UP11DGS0O', iid='B00426C57O', r_ui=5.0, est=4.662703917450569, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2N1E23FNQQRFR', iid='B004Z4FBE2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A25QJBK33C4O0R', iid='B005J31BCO', r_ui=5.0, est=3.995347394540943, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3A79K6Y4AIUEO', iid='B0038JEDAI', r_ui=5.0, est=4.22, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2ZLHOJ5ZXTGSM', iid='B005LJQOPK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3HYMJ0SB3RN8T', iid='B00DQGIHZ0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A8KT10C7S433N', iid='B00B46XL50', r_ui=5.0, est=4.333333333333333, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2C2YAJQWO8BQ1', iid='B000V1VG5G', r_ui=1.0, est=4.1692307692307695, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1MJ0311NRIHAY', iid='B00395WIXA', r_ui=5.0, est=4.250513347022587, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A4MG0X5RJZD7H', iid='B003Z80IF6', r_ui=1.0, est=4.299212598425197, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2B5DJ0IVKTBIW', iid='B000VOE466', r_ui=3.0, est=3.635869565217391, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A12DGP4ZVB5HVA', iid='B005KDYA44', r_ui=5.0, est=4.378962536023055, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AN55119FPY8FO', iid='B003CH77YK', r_ui=5.0, est=4.356643356643357, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AA39RQTNBFVBS', iid='B004QK7HI8', r_ui=3.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1L80UX2MUH5BQ', iid='B00BFDHVAS', r_ui=5.0, est=3.977777777777778, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3VP06HPCA7X68', iid='B001413D94', r_ui=5.0, est=4.717293233082707, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A16D0KD3THSFJT', iid='B0035KDK72', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A15YEWABO9ZMVL', iid='B005QBK5V2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AHH3QF60X2LJD', iid='B001P5GKBM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3LOALVHMA8GNW', iid='B00908BMVE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1D59XP7UEV264', iid='B003QCOKGO', r_ui=5.0, est=4.2727272727272725, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2TWJOS3X4A5BG', iid='B004ZIMU7Y', r_ui=3.0, est=4.4411764705882355, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AQI9AYI4AFK32', iid='B000065UDU', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WJ6S32KCXL3C', iid='B00B5TELRI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A59WH7QIMCGT6', iid='B00B8KGTWY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1DMW823PFV79Y', iid='B001CEYYFK', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A12XB1L10WG270', iid='B000WYVBR0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A8C81CH94HIZK', iid='B0091PEC3Q', r_ui=5.0, est=4.098468271334792, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3D9MBWRXM81VK', iid='B009A6PJKQ', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1N2Z2UVPHNXKO', iid='B008LURQ76', r_ui=5.0, est=4.063408190224571, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A58ONS9WNBT9F', iid='B002G1YPHA', r_ui=5.0, est=4.496046027665565, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='ADHAMKKKMVU05', iid='B008R77ZCO', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AUPOA18DB1CTL', iid='B000FVDD30', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2QA31XZAIW6S', iid='B001DFX2OC', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2Q6TV13Y518D3', iid='B004LTEUDO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A4QCYNKAT2UN', iid='B0088LYCZC', r_ui=1.0, est=4.504412666565197, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AEG5XA48DX393', iid='B007136EBI', r_ui=5.0, est=3.9397590361445785, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A19HM61K6FOP0S', iid='B002SQK2F2', r_ui=4.0, est=3.0502793296089385, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AWHI1SO0226S7', iid='B004JOQSEA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2HPGHR6XJTWBW', iid='B00005ATMI', r_ui=4.0, est=4.3175, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AR0ID8UQUR3FI', iid='B004O0TRD8', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2DTM2TFJJLGRV', iid='B000FBK3QK', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A29CHHNLIZCV41', iid='B000RN1RXE', r_ui=5.0, est=3.3728813559322033, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A37D1ZP1LTQVV0', iid='B007YWMCA8', r_ui=4.0, est=4.040404040404041, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1VT986AIY7AMV', iid='B000UH8I66', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1HPA9TK89PW9B', iid='B007RFYEQW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A17UI5581FD4YC', iid='B003LR7ME6', r_ui=5.0, est=4.505329457364341, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2PPL1ZY0G5HRW', iid='B002JLJNV0', r_ui=1.0, est=3.932806324110672, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AQ85ZGQGC6XPZ', iid='B000B9RI14', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2WG310V8BKUEW', iid='B004J5BYTS', r_ui=5.0, est=4.132743362831858, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A34DQMQ8U9PUHQ', iid='B009LL9VDG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3E0N35AXMJ8GW', iid='B004UBU3SY', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A20FDWFCDWK5UW', iid='B004PYD950', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ATTT5VLT7U426', iid='B000069K98', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AK8HJE65M4JRN', iid='B005C31H34', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A37QV6IU7JX7S8', iid='B00065L5TE', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3EAS6MRV6YHNZ', iid='B001CBLN7K', r_ui=1.0, est=4.161016949152542, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1Z17XGPRLZH6J', iid='B000UO6C5S', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2XPQ4ZYCE0QE0', iid='B003CJTR82', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3AQYACF4AM2KO', iid='B00535CD5C', r_ui=5.0, est=4.470588235294118, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='APHGZE8N8TCD6', iid='B003GCLGYS', r_ui=5.0, est=4.8125, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A290WQ5GOBL3WH', iid='B007R5YDYA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A267KS6E4QC1N6', iid='B0007XJSQC', r_ui=5.0, est=4.536000589416456, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A18EA7MNLXP9H5', iid='B0031ANZPS', r_ui=3.0, est=3.220779220779221, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2RHV42BTJSVON', iid='B007Y4TTWU', r_ui=4.0, est=2.7844155844155845, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1FJZOOVP3CI3I', iid='B000U5TUWE', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2UQ3YZHZ6A650', iid='B002RT8LJO', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A26Q9QH8LX5XY', iid='B0019EHU8G', r_ui=4.0, est=4.7555555555555555, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AF79D51F13FFZ', iid='B004XIT4NO', r_ui=5.0, est=3.991892089219874, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1C47ROOK7BSVL', iid='B000UXDHOI', r_ui=3.0, est=4.391304347826087, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2IQ7NYVGYQSCS', iid='B001GS8FZM', r_ui=4.0, est=3.592814371257485, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1KGM5CYLOZI6Y', iid='B0011TS8LM', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A312LE5GYERBD7', iid='B00AAIPT76', r_ui=5.0, est=4.61129207383279, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='APV2WCHC3ON99', iid='B00GXSEG4O', r_ui=2.0, est=3.8875, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3Q8CEYOG0CREQ', iid='B0024G48VA', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AOR53OOPXNUHU', iid='B002BH3I9U', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3R1Y8U9NJ1A22', iid='B00426FEL8', r_ui=2.0, est=3.636015325670498, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A4HLDK32K7YCE', iid='B004BQTSKC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A22FAZDOVWCWQO', iid='B005QF2NCW', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2W9GX82SLKROQ', iid='B004J4VYEY', r_ui=3.0, est=2.124718665389902, details={'actual_k': 3, 'was_impossible': False}),
 Prediction(uid='A1K1Q6XI98C7QF', iid='B007KEZMX4', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AHYP33WGESPWK', iid='B002PHM0XQ', r_ui=3.0, est=3.894230769230769, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1WB033X9T96AI', iid='B00AAKHCOM', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A130LX4ZZHZGMW', iid='B00004VX39', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A8GCDCKNYAGUD', iid='B008THTWIW', r_ui=5.0, est=4.237288135593221, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2ZSCGZYSL51UJ', iid='B005DLDO4U', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A28NQM6FEFI3L4', iid='B00007E7JU', r_ui=3.0, est=4.813983265040059, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1DSFNSUA0ATRH', iid='B00ATQF0DC', r_ui=5.0, est=4.337142857142857, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AWJ52IAL6HWOV', iid='B002MYQTEI', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1B318YWMZACY1', iid='B000SNOT4C', r_ui=4.0, est=2.9844961240310077, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A6EYTU1TZ1IGH', iid='B004XY65WQ', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2L6ISR9UUO6GA', iid='B000NLSGA2', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2CZLOR0X70JCK', iid='B0063K4NN6', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2A3BLPBHISRZ4', iid='B000U5TUWE', r_ui=5.0, est=4.37020316027088, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AT8ZGUWLJPEWO', iid='B00E0GNWMS', r_ui=5.0, est=3.758169934640523, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A10CONTO8EF57Q', iid='B00066EK3G', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1Z6QVIP10DCYT', iid='B00BQ4SBSM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3UIUKJN4EOHT', iid='B00005QFZF', r_ui=5.0, est=4.395061728395062, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1D33LH2SO6UZ2', iid='B005LS2J14', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2C87PW728A81', iid='B002R9CQYK', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A363BSK2SNBI82', iid='B0035B4LJM', r_ui=3.0, est=4.10632911392405, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3AB1F25L392LO', iid='B002VX0GJY', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2CFIISATEC56O', iid='B002MUGUFK', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A9DFQ943Z37WY', iid='B001963NZI', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1NZ2P2U3L4VG', iid='B00BBFL2X2', r_ui=5.0, est=4.372881355932203, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1YY7BIGN24C7B', iid='B00393THEK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3N1Z5WQUVODGC', iid='B0054X8C1M', r_ui=1.0, est=3.6310679611650487, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1R0NFYQUCIHM', iid='B001U3Y8Q8', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A28YCH2NGZSP5Y', iid='B004X49TAG', r_ui=1.0, est=3.7986577181208054, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2U8XSU8ZCVPX9', iid='B008R7EVE4', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='ALST0FE91XUYY', iid='B002JCSV8A', r_ui=5.0, est=4.529411764705882, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AL1J1D50X0DQA', iid='B0052DYWU4', r_ui=5.0, est=4.105263157894737, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A25XKO3B7W6U45', iid='B00DULMXTW', r_ui=1.0, est=4.0, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A18CVRV9BOBV7X', iid='B009WSCW4S', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ATLP1FM568THE', iid='B000TQPTTM', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2HNXE3GS0N3BX', iid='B005S6XUXA', r_ui=4.0, est=4.1268758526603, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2H5NDVV3WL1HT', iid='B006GWO5WK', r_ui=5.0, est=4.989778270680145, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1POL0R3RNLZ53', iid='B002QEBMAK', r_ui=4.0, est=2.082002603938082, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1016Q5UDME15Z', iid='B002K8A75I', r_ui=5.0, est=4.52054794520548, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AAQBHHPDKMEER', iid='B00B7N9CWG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A14XULA608M2V8', iid='B0002GMDQG', r_ui=1.0, est=2.6451612903225805, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AM6SEQ609F0X8', iid='B006U1VH2S', r_ui=5.0, est=4.580260864568769, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A36QYO0OAN52AV', iid='B004G6002M', r_ui=5.0, est=4.186629526462395, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2H9DLPZY8AJNY', iid='B0028LK6IU', r_ui=5.0, est=3.8078431372549018, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2XY2RQBZOKFYS', iid='B000GAUZFO', r_ui=2.0, est=4.086956521739131, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A9M69KQAD1PYS', iid='B00149PA42', r_ui=2.0, est=3.817142857142857, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AY7OJZBZOAN6C', iid='B0034CL2ZI', r_ui=5.0, est=4.233269598470363, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2V8RH4X4TMMTY', iid='B005FYNSPK', r_ui=2.0, est=4.4568720379146916, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1Y6B7YYZ5K7SS', iid='B003G2Z1M6', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1P4H9IB2GUTRL', iid='B001A4HAFS', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A226WYZCHGNE0T', iid='B00542PJTQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AZ2MUNC5MVZ1R', iid='B003NREDC8', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A30J7WQV0ZNRXG', iid='B0072B5E4M', r_ui=1.0, est=4.0625, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ATGQ1PP3EZ6J6', iid='B0043JDU56', r_ui=3.0, est=3.246376811594203, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AOO2ZBQXO0SWH', iid='B00713AA5E', r_ui=4.0, est=4.074074074074074, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1MC6BFHWY6WC3', iid='B001W1TZTS', r_ui=5.0, est=3.8177083333333335, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1MC9CG1VCUOWH', iid='B00007KDVK', r_ui=5.0, est=3.736625514403292, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AK3GKIV8DEY8B', iid='B00065ANYC', r_ui=4.0, est=4.3798076923076925, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2RAYCUTJT088B', iid='B000E6G9RI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ABY421XP1UYCX', iid='B0039RW9WS', r_ui=5.0, est=3.9523809523809526, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A23VBIAH8URA51', iid='B000SOQ6KQ', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1UMTYJSDJ6FR9', iid='B001HSOFI2', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A35SNSDRNE9P8Q', iid='B00004ZC9V', r_ui=5.0, est=4.395973154362416, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2NJMSMQ1Z0UOC', iid='B006ZBWV0K', r_ui=5.0, est=4.545243619489559, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3CU8A5WNQBKYF', iid='B009MAKWC0', r_ui=5.0, est=4.167603344959377, details={'actual_k': 4, 'was_impossible': False}),
 Prediction(uid='A3JYSPSG07OW4E', iid='B00DMS0GTC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A14G6XVOYKESV8', iid='B001GGL7Z4', r_ui=5.0, est=4.30635838150289, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AIB1TXN9L5JA2', iid='B00EZPCWWA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1ABPOYED44WCP', iid='B000066CCU', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2U8WES162T1A5', iid='B0000XOB7U', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A10DAX20MEBMLK', iid='B005DOK8NW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ACP0NVQ4TV38E', iid='B006ZP8UOW', r_ui=5.0, est=4.08889536578257, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A365S0NLE69831', iid='B0086UXQES', r_ui=4.0, est=4.453333333333333, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2AIPUXFQOBU2H', iid='B00752R4PK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A5FQ7DOUC6PY3', iid='B000V1VG2E', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2GQFW1HVDH9PW', iid='B008OO41P4', r_ui=4.0, est=2.8, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3BBRVJHAOW6SE', iid='B003CGMQ38', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3IH9LSCTYPBUH', iid='B004QBUL1C', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A19IJ6MIJHTKL4', iid='B004P15HD0', r_ui=4.0, est=4.2936507936507935, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AJLMTRCMUXKWR', iid='B0015F1L7A', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1V5LNNI5116KO', iid='B003K1EYM6', r_ui=5.0, est=4.198511166253102, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2KTMPLK5NNBDF', iid='B005GI2VMG', r_ui=3.0, est=4.0436507936507935, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1L5F0YLUTTS85', iid='B003ZUIHY8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AXGMJ32BB8YCX', iid='B004ZP756S', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A29EUR7UXCZMV1', iid='B0007LCLPE', r_ui=5.0, est=3.7131782945736433, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2EMCVIANJ46A1', iid='B00F6E8OUS', r_ui=5.0, est=4.444827586206896, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2QXRID3Z2Y7PD', iid='B008HY8XTG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1BNZ1YYVZOCKH', iid='B003I4FHNA', r_ui=5.0, est=4.397872340425532, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2BRJ1JRNRMLTV', iid='B005FN5DJA', r_ui=5.0, est=4.391304347826087, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2AH1N9QB595D5', iid='B005NF5NTK', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2KCA9V8NV7EMN', iid='B003JUN9YW', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WVMBKLDH2XJ2', iid='B001D60LG8', r_ui=5.0, est=4.184965380811078, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AAZMZS2ZJEVI5', iid='B000B9O83A', r_ui=5.0, est=4.373056994818653, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A4LC2671SUPT1', iid='B002D41HKS', r_ui=5.0, est=3.8974358974358974, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A30GYWED56V17J', iid='B0012GQZZU', r_ui=4.0, est=3.662113748320645, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AX4A4234XKOUW', iid='B000XQRAI6', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A53OG3Q99WAVL', iid='B0012WXFPM', r_ui=4.0, est=4.197530864197531, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3F99LRE32DG5X', iid='B0002WPREU', r_ui=5.0, est=4.953027879907012, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AFNBZ6L517NOB', iid='B008BWL4MW', r_ui=3.0, est=3.5961538461538463, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3KR8MYPMPZOCX', iid='B0010TEOLQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A61O8S2173O5S', iid='B00AGABISW', r_ui=5.0, est=4.678082191780822, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2NTFH1NIPI9ZN', iid='B000NVVDKC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1G8MVPVWLOG6M', iid='B002WE0QN8', r_ui=5.0, est=4.831397174254318, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='AF4ZXRVQD8JDM', iid='B00EAY7MBM', r_ui=5.0, est=4.421232876712328, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A17JAB82HTXVZ0', iid='B000HAOVGM', r_ui=5.0, est=4.491606714628297, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2XQP0O6P7JB8V', iid='B005ONMDYE', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2U9LQBSLXY2KM', iid='B00001P4XA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3V9EIKTZ5BGKI', iid='B000EWJYYW', r_ui=4.0, est=3.6049382716049383, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AD000UNQRH2CA', iid='B001KLEUOA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A22RY6AVGS4WHK', iid='B006U5W49O', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2H9T7F8JPT32O', iid='B0038W0K2K', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1N7LFD6NRTRUS', iid='B00AZCGF7K', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3VW8VT32AZF2W', iid='B003VWZFRW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2U5Y74LP0A7X8', iid='B0045EFZUM', r_ui=5.0, est=3.8666666666666667, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AW2QDBFE3GXFF', iid='B00CMM1PI0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3IM7JOR2QWV6W', iid='B0088LYCZC', r_ui=5.0, est=3.9345114345114345, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ABXZHZK97SGKY', iid='B00FNPD1OY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3EGDOLB1P9TDX', iid='B003DZ167A', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1JNOBM32R74D1', iid='B005PXMKI2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A182WJO263DAJD', iid='B001DUQU0A', r_ui=3.0, est=4.148514851485149, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ARM9JQHVXNMN7', iid='B00DR0PDNE', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3DKXGIDV1B514', iid='B0016D1I0G', r_ui=4.0, est=4.301724137931035, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3V8QNJI2EG8HW', iid='B002K42W4Q', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2VH270KTWRTVW', iid='B003V42O6K', r_ui=5.0, est=4.297709923664122, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A35TZ81LT65ICQ', iid='B003XM1WE0', r_ui=5.0, est=4.804878048780488, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A34KEK65UQKSWE', iid='B003DZ165W', r_ui=5.0, est=4.306242274412855, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A6ZEL2ECVHNWD', iid='B007UNULT0', r_ui=5.0, est=4.382513661202186, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AI7CXVDW8BS59', iid='B0014Z29OU', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1PW7IQ6X5SJPL', iid='B001L6LG5K', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A48WD3S5X21MU', iid='B009VL9YGU', r_ui=5.0, est=4.073170731707317, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A17BGWK8T9GTLS', iid='B00BWLL9N8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A32OL90H37H76N', iid='B002Q887BS', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A22R4823SR8211', iid='B00D5Q75RC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1PAZNH4HEGSAG', iid='B009OX22B4', r_ui=5.0, est=3.5902777777777777, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A191MLR7SNDQU', iid='B00FJ8JC8Y', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ALIEILGEE5ZDT', iid='B005Q311OK', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1P631KG2W2A8', iid='B00DR0PDNE', r_ui=5.0, est=3.935356547671257, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AFDOI8OG6C3FE', iid='B0056HNTAU', r_ui=5.0, est=4.601246105919003, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A15MGYDDG3F8MG', iid='B004CVSTVU', r_ui=5.0, est=3.2954545454545454, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A18NOHFD1NRXHB', iid='B009NXFLWW', r_ui=5.0, est=2.994430325347359, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A3ATDZESH9V4SL', iid='B002K40R6G', r_ui=3.0, est=4.57772815331253, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3SDDMEUMCN858', iid='B0041RSDXE', r_ui=3.0, est=4.312632057216628, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A3LEDV9VQYWLTW', iid='B0015DYMVO', r_ui=5.0, est=4.107532210109019, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3Q5NFSOUT4UKA', iid='B003GSLE1M', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A153F3QOGIUSRD', iid='B001G5ZTPY', r_ui=3.0, est=4.47191011235955, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1HIO67M6NGCRJ', iid='B000R9J5OG', r_ui=5.0, est=4.404958677685951, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1X9TO2AXELLKU', iid='B002J9HBSE', r_ui=5.0, est=4.27065527065527, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3B1DE4AGQA4WF', iid='B00B588HY2', r_ui=5.0, est=4.562805872756933, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AXFUMZYEVI4Z0', iid='B006MRAVFE', r_ui=5.0, est=4.259740259740259, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1R6WC4MYJZF6K', iid='B005CG2AL4', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3JB1EUKXGJL0', iid='B005HMO6A6', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1KY9WUM96VKA9', iid='B0055D66V4', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1G9B1RNQIOIKC', iid='B003LSTD38', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A22LU96KC709NH', iid='B003E2TQI8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A31WBY15IZTN7B', iid='B001EZRJZE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AYNTHGBSRGEG', iid='B009BEXSNW', r_ui=5.0, est=4.348555452003728, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AV6TPBFK8B8OS', iid='B009FU8BTI', r_ui=5.0, est=3.9460580912863072, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A33RS0UBTINWGX', iid='B005PXMKI2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AO6LAZJ2V1IU9', iid='B005P99KWU', r_ui=1.0, est=2.30188679245283, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1MP58OMXBH52K', iid='B00CU2K35I', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1ZAM559YD2O88', iid='B00BOHNYTW', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A114HR79TYVHR6', iid='B001C219C8', r_ui=5.0, est=4.206030150753769, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2JPGNKUBZB29V', iid='B00021XIJW', r_ui=2.0, est=2.923679060665362, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A16PHHMO2WWYEB', iid='B004HHICKC', r_ui=5.0, est=4.391810517864312, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2SN2R1PBOG46Q', iid='B009CQOXTC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A7JGEKN140F4S', iid='B003VANO7C', r_ui=5.0, est=4.320406278855033, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2LIH5ZPOC8JO9', iid='B004FVMKV2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ATGO2APOGM78Q', iid='B008R7EVE4', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1ULAF163Z7PM7', iid='B000097O5F', r_ui=5.0, est=4.576744186046511, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A9O20WH04SMBS', iid='B009NB8WR0', r_ui=5.0, est=4.844488188976378, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A212K97UBVIOHD', iid='B007PJ4Q4A', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ANKBSC1OU36UY', iid='B00BBHN0RQ', r_ui=5.0, est=3.7549019607843137, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AE3V6RUQT1GTO', iid='B000FJJASO', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1N1NC5OXK2PCD', iid='B009A13IB8', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3RFFRT86GUSIF', iid='B004E10KFG', r_ui=5.0, est=3.878000979911808, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1JPVLJ3Z4K0F1', iid='B00009KH63', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A4DMHUNXXGJ2T', iid='B001DFZ5HO', r_ui=4.0, est=3.771604938271605, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2I1JZ1XHVIYDT', iid='B000CRFOMK', r_ui=5.0, est=4.451086956521739, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AFQPQ8XGD3FKY', iid='B0074BW614', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1DU4G2VLXPJDS', iid='B00D02AHEO', r_ui=5.0, est=4.5060975609756095, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AQZYNJ5W7UDLK', iid='B007PRHNHO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AZ1Q1P7RLWKS', iid='B0063Q3G3I', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1Y51RANSRYQHP', iid='B0000C73CQ', r_ui=5.0, est=4.941860206070732, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1072SLLQ4GYUU', iid='B007B5ZR4G', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AQKTCGNSOSSRL', iid='B0040JHMIU', r_ui=5.0, est=4.557377049180328, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2NUME7NEYG9JG', iid='B001EYU3JO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A19YT1QY9673ZX', iid='B005BUDSGW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2A8IY4GTR7GWQ', iid='B004CLYEE6', r_ui=4.0, est=4.039562091187403, details={'actual_k': 4, 'was_impossible': False}),
 Prediction(uid='ANUV35Y318CJV', iid='B009SYZ8OC', r_ui=5.0, est=4.227865244625021, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A320GY0YFX8VHW', iid='B0030MIU16', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2UIVMG14PC6QD', iid='B003FVVMS0', r_ui=5.0, est=4.847432024169184, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A37IBUI8R3AHF7', iid='B000065BP9', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A30JX5UMHGHPY', iid='B0047XRVWQ', r_ui=4.0, est=4.520370370370371, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3UFYWINH5G5KG', iid='B007M50PTM', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3IAU6ZPVF2R5K', iid='B000EVM5DK', r_ui=1.0, est=3.899267399267399, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AVIH70O2D1J5R', iid='B0031RGKVC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3BBA3IA36YJUH', iid='B006JSR4QU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A25EHXGAXBJBUE', iid='B007FL7GGS', r_ui=5.0, est=4.088050314465409, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ARQXKR5RB00T3', iid='B004OBZ088', r_ui=4.0, est=4.051724137931035, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AQIP2Q5JORD8R', iid='B000CKVOOY', r_ui=5.0, est=4.700152207001522, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3U2T6T0GGE2JP', iid='B0030UL7IG', r_ui=5.0, est=3.780821917808219, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2I1I7DGJHMKK2', iid='B00008VF5W', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AZ6N6C3TQZL3Y', iid='B002W7U3E2', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A38BZNIKZORS0A', iid='B008D4X4GW', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3L30T0VFGDECI', iid='B000SMVQK8', r_ui=5.0, est=4.377427184466019, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1A5N8KGKLAI8O', iid='B0062IPIPQ', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1QPFB16EIUKIT', iid='B004PEIG12', r_ui=5.0, est=4.152626362735382, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ALBAWGOE1KXKR', iid='B005RFOJT6', r_ui=4.0, est=3.070588235294118, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AK2HY2VWM77IB', iid='B004H9C4JK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A289D4W6XK6NGX', iid='B00B7E1D7W', r_ui=5.0, est=4.253549695740365, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2IAGYPSHXU9TQ', iid='B000NNFS4C', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3L67QUVQJOXCV', iid='B00017LSPI', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A351OZ9ZZKRU4K', iid='B003ES5ZUU', r_ui=5.0, est=4.702642867026428, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A19123D9G66E0O', iid='B0000A2QBP', r_ui=5.0, est=4.595918367346939, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AL41JU3AWH5TD', iid='B0099XGZXA', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A141FO19SUYFUF', iid='B008JGR9MO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A157HQWB17JVWG', iid='B0053VZUW4', r_ui=1.0, est=4.3893129770992365, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1PVJOH1KB4H60', iid='B002ZIMEMW', r_ui=5.0, est=4.667013527575442, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1GJZZWBYC0CT1', iid='B0021L9C0A', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A4PW78Q5BN306', iid='B0047XUFH4', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A5OJ1QGW2MMKB', iid='B009YC3Y08', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AEA1O1YK6R8CL', iid='B008OHRJ32', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1Y0H8SEE8076B', iid='B0039BPG1A', r_ui=5.0, est=4.415271265907569, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3AKXQCLUB1D7D', iid='B00DJE33AI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A66BGXSWMDMZS', iid='B000UEZ36W', r_ui=5.0, est=5, details={'actual_k': 4, 'was_impossible': False}),
 Prediction(uid='APZRFQTXKYVLL', iid='B00D5Q75RC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3TAQVX4HF41A4', iid='B009VN9F0S', r_ui=4.0, est=4.135702746365105, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ADW5Z87Z64H3P', iid='B00748IJ2M', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3L3XO8MRHMA89', iid='B004GF8TIK', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3HFA497LX7BW3', iid='B0045JHJSS', r_ui=3.0, est=4.1638795986622075, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AXP6A2Y1IM5JJ', iid='B0092KRAVQ', r_ui=4.0, est=4.503831417624521, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AXBBVFBI1YG62', iid='B00DBX371C', r_ui=4.0, est=3.9019607843137254, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AZGC4124KZEWZ', iid='B00AFUKXCU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1RII5VTF8QDBW', iid='B0089DZNS4', r_ui=3.0, est=4.490445859872612, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1XNIVLZSS3NIN', iid='B005ARQV6U', r_ui=5.0, est=4.280130293159609, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A26M1R1JQTTPS1', iid='B001M5BIX0', r_ui=5.0, est=3.9689119170984455, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3J0EA7CJBO1NP', iid='B0093HMKVI', r_ui=5.0, est=4.448160535117057, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A25MB82PRJIJNB', iid='B009WU5XUG', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1CGSPL74SHZG5', iid='B00803WNOK', r_ui=5.0, est=4.015037593984962, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2H1UN6JMVJ4NO', iid='B007F85R30', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AM6ZG5ORQK5SA', iid='B000CSQRYS', r_ui=4.0, est=4.276190476190476, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AQ11X453S4C8S', iid='B003IE49T8', r_ui=1.0, est=4.391304347826087, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2UU6A74JUJODA', iid='B001QWQDPC', r_ui=1.0, est=3.6625, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3PORXJM4BRG86', iid='B000TMI17I', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3NRDH1UE681T0', iid='B003LWXJ2A', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1W4500HT7GGD6', iid='B0000B006W', r_ui=5.0, est=4.6092715231788075, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A11ZPB1C7YORKJ', iid='B004YW79F4', r_ui=5.0, est=4.548223350253807, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3HT0ZCE30LGG2', iid='B004HIN7SI', r_ui=5.0, est=3.685082872928177, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2ZKJHIX3L0AS', iid='B004I5BUSO', r_ui=3.0, est=4.41199684293607, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2D0LH54S7B9G8', iid='B000AYJDD6', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3HZBKRLSWX24A', iid='B008CS5QTW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3KR42X6V874C5', iid='B004COCMRO', r_ui=5.0, est=3.808333333333333, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1J3UZ0LR406C5', iid='B008JJLW4M', r_ui=5.0, est=2.726621611124058, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2VEU7Y09941IH', iid='B0098PRKA6', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3OW6KUQYQIGDV', iid='B007PPYXOC', r_ui=5.0, est=3.6762402088772848, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A234U1ZU1Q937F', iid='B005GSRKT0', r_ui=5.0, est=3.6666666666666665, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1Z9B9UCG0MG1D', iid='B000AMPXN2', r_ui=2.0, est=3.127659574468085, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ABX7SEE84DMLU', iid='B0001DYXOU', r_ui=4.0, est=2.9156626506024095, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A14QIFMKA9756G', iid='B005UG3KS8', r_ui=5.0, est=4.194915254237288, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1O4GF8JXLNEWH', iid='B00005T39Y', r_ui=5.0, est=3.9927884615384617, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AK6UKXIVNYXP0', iid='B009HISC3I', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1AXO8VSNXH3B5', iid='B001U0O7SA', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A5BWLE1UZB9AO', iid='B000LRMS66', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2LRGO2BWN6DGG', iid='B000F7857S', r_ui=5.0, est=4.1675042297961955, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2I3BQIA3U672U', iid='B004J3V90Y', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2MI2KIIFAVO5K', iid='B0049VVQ9U', r_ui=3.0, est=4.073529411764706, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A14QPGZPT2AUQH', iid='B004HNCRNO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A17GDDTTARVM0N', iid='B009X5BBT2', r_ui=3.0, est=3.6904761904761907, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2C92ROUSUJHLB', iid='B00198BY48', r_ui=4.0, est=4.4576271186440675, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3DCBAOXOL0DA7', iid='B0067G6PKA', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A9840X4IJFZ7Y', iid='B003CH77YK', r_ui=4.0, est=4.356643356643357, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3J7T3P0WSD97L', iid='B003GIJTR8', r_ui=5.0, est=3.7774740295243303, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3H8MAJCMR86CO', iid='B004XZHY34', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A33GZWCRJJSOK3', iid='B000N4WRFY', r_ui=3.0, est=3.7304347826086954, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1VFSEBVYD0IYM', iid='B0095ONNTC', r_ui=5.0, est=4.212371134020619, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3LI2KFMXR68XK', iid='B001FA1NZK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AYYP0FF77Y13C', iid='B000BQ7GW8', r_ui=5.0, est=5, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A2TTM4086B05EN', iid='B0015AARJI', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WRYBM2ZYB0PW', iid='B00012EYNG', r_ui=5.0, est=4.519607843137255, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1HXBZW8J3R5DY', iid='B00DR0PDNE', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A23M9849DE5L3N', iid='B000HDONV2', r_ui=4.0, est=4.478260869565218, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2FS3VL9BD587V', iid='B0051PGX2I', r_ui=4.0, est=4.101239669421488, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A312TVY5P8489R', iid='B0026ZPFCK', r_ui=5.0, est=4.88710121603828, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A777CAX59NW2A', iid='B00186YU4W', r_ui=3.0, est=4.108695652173913, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A25IMOJF5EWTAB', iid='B001QBG614', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3UOSNL1HUUCUT', iid='B0093XTHHM', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ATJR32HT32JIQ', iid='B003ZUIHY8', r_ui=5.0, est=4.641006931776724, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ASL98T4B8CFLT', iid='B000EDK8V4', r_ui=5.0, est=4.4148148148148145, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1QM9B8VEX9G5G', iid='B004V4K4SO', r_ui=5.0, est=4.168269230769231, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AOSSGWETCTP6W', iid='B00AWX6EYQ', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A29FR400FEXXGZ', iid='B008RNQEUW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3LCO0KUI9YC1D', iid='B001TH7GSW', r_ui=5.0, est=4.625899280575539, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AZEZ7XDV5LB5V', iid='B00C94GTJQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2M5OV2SUEUCH2', iid='B00DE0EPCM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AWZRQ3MSIUY34', iid='B00A1A4KHS', r_ui=5.0, est=4.570422535211268, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3NZ5M3T45U18F', iid='B007PRHNHO', r_ui=4.0, est=4.418287937743191, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2H2ZZEC8D0Q', iid='B007B5WHTE', r_ui=1.0, est=3.936046511627907, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A4FPN5LGPPOXZ', iid='B005HSG3TC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1THVRRI9ZYCCZ', iid='B0038A9HSK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2F1TJJTGBPGG6', iid='B003DSCU72', r_ui=3.0, est=4.264297337581533, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A12S8UQEIPZJKE', iid='B000ZJZ7OA', r_ui=5.0, est=4.401639344262295, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A37W6P18V841AJ', iid='B002RWJD7A', r_ui=5.0, est=4.930663818691226, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3UNBK7XUJF6R2', iid='B000P9CEV4', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3DPB9LS55U0SS', iid='B0034XIL60', r_ui=5.0, est=3.5127551020408165, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1S716DLZH3DF3', iid='B003LR7ME6', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2IFQR1IVYRCJK', iid='B000BBAKSA', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AD9ZL63H0VKCZ', iid='B0059AK8HQ', r_ui=4.0, est=3.906474820143885, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AN7ESNCB95861', iid='B0009Q4PH4', r_ui=3.0, est=4.063106796116505, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A4WABIZNRFGTJ', iid='B0063KGRBW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AQIJ3ZEEVCIKU', iid='B002JM1V6O', r_ui=4.0, est=3.326500817424996, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A38SB6QSRT1DZ1', iid='B006ZTMEZ4', r_ui=5.0, est=4.823661735549794, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A14N9IXFFCUP3E', iid='B00AASPQLU', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2B1KH2I8FDYQ7', iid='B007FSRSZU', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1BHW7WCBYWV7D', iid='B00BX2YLVI', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A31DOHQ16EM4SF', iid='B001D60LG8', r_ui=5.0, est=4.184965380811078, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2HSGHTVZNPRG6', iid='B00BIFNTMC', r_ui=5.0, est=4.294007490636704, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2VUQZECNWGF1', iid='B0086V5TVU', r_ui=5.0, est=4.707792207792208, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A228OBD59D3W3D', iid='B001AVIQOK', r_ui=2.0, est=4.087912087912088, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A73TWVE9DJF6K', iid='B004G6002M', r_ui=5.0, est=4.186629526462395, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A26CCLHNEF9O05', iid='B00C5AW7ZO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A20L461CTZ2M5H', iid='B0015AARJI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2GIIXIDSZDK4V', iid='B0011X5I7U', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3JDHC4S8CXCKF', iid='B00FFJ0HUE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WM5SUPVBNW4J', iid='B008CBQSKU', r_ui=5.0, est=4.365, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2NPD3OLATX6QI', iid='B000O1FTYC', r_ui=4.0, est=4.715686274509804, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2IA925FJXP26E', iid='B001NIEK3Q', r_ui=5.0, est=4.548022598870056, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AD1IBZH2GNGY7', iid='B007WTAJTO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3O5QHVZI9X1D7', iid='B003MVMTDA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1EWUBNPGTJTGA', iid='B00DVFLJDS', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A14A4YYKPLYY26', iid='B00005T3XH', r_ui=4.0, est=4.037433155080214, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AOVCMUDN30YE', iid='B008P8FDEW', r_ui=3.0, est=3.217391304347826, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AEF39TS5TY3RX', iid='B001UHMCT4', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3ID0ELJFTXJAX', iid='B000V0IE66', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1V4664XHDNM6R', iid='B002CTV060', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2T5ZD2HC9O9K3', iid='B0096T9ACU', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A311H90T52PTUW', iid='B003VANOI6', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AWTMK5Y15U3OT', iid='B004YU6TFC', r_ui=5.0, est=4.005235602094241, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A129CI0G6F0TV9', iid='B0052YFYFK', r_ui=4.0, est=4.305793712652637, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A178W7LO01MOFS', iid='B005KDY8AU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2UALR606NA2BS', iid='B009YN8998', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3QGFY7KEKPI1T', iid='B000095SB6', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AZRWLXDPXPBKX', iid='B0049II7W2', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A31V5E1J0T5201', iid='B0014DURIW', r_ui=4.0, est=4.1891891891891895, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A399UYHSKC11HF', iid='B001QGT1CA', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1SHBW6QORA3S9', iid='B00BJH1DRW', r_ui=4.0, est=3.7325581395348837, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='APOUV52VYRBIE', iid='B00AU0HMGA', r_ui=5.0, est=4.283018867924528, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2LD7X71EI6M9L', iid='B000W2MW7U', r_ui=3.0, est=4.4222222222222225, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A26X1DKMFM0NY1', iid='B0000632H7', r_ui=5.0, est=4.645161290322581, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3P9F0LIBMKX0F', iid='B0055QZ216', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2NWDFUODEQJWU', iid='B0097BEFYA', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3R35MFRXP228R', iid='B007IV7KRU', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3QQKFY49G1GXS', iid='B0017Q2W6G', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A214TSUEXJ2Y7E', iid='B0015AE4CE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3GCY69BCZW4VO', iid='B0080YBH8M', r_ui=4.0, est=4.614601018675722, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A20X9NDSET1JAV', iid='B000I68BD4', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2M7ZC9SL5CWZR', iid='B001SEQN3U', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1FAS12PEI6XC8', iid='B00119T6NQ', r_ui=4.0, est=4.309579439252336, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3HNYHB17EA931', iid='B001LYX3MQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AOU9MWIUJBQXC', iid='B0061JPXLU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3FX0YLQR245Y2', iid='B000062VUO', r_ui=4.0, est=4.316005471956224, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AK88BSXW84UP1', iid='B0011FQURK', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A33JOJI27299ZM', iid='B004HCKRKA', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AOCAPVEDHC9ZD', iid='B00BGA9WK2', r_ui=1.0, est=4.075403608736942, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1IENYK5ITZ6V5', iid='B0028IKXLS', r_ui=4.0, est=3.9814814814814814, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1VI8P5LEXX6TJ', iid='B0016LFN2C', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2HU3Q6EPCD3RH', iid='B00A7MFRHC', r_ui=5.0, est=4.359281437125748, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ACEE1SLRCAUFO', iid='B005Q314NS', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AFY8QLS51NVI3', iid='B0015TJNEY', r_ui=3.0, est=3.2446958981612446, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1WCK3QM89XB2D', iid='B00ASLSQHK', r_ui=4.0, est=3.4535104364326377, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1VVQF3ID4CH3C', iid='B0099Z70ZK', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ALOUPMQ38Q7ZT', iid='B00B588HY2', r_ui=5.0, est=4.562805872756933, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2EAQ61037OD3Y', iid='B00908BMVE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2C124A7MUL99T', iid='B001M56DI0', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ANM6S7MTGGNSB', iid='B000JLG5ZY', r_ui=1.0, est=3.616580310880829, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AXJ5ZS6TC5FLY', iid='B00BGGDVOO', r_ui=5.0, est=4.684533796383573, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1WUOIEAT0M3Y4', iid='B007ADFKAK', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A18FNQBU4RLF1K', iid='B0012S7GRY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A5YLDNJZ16H59', iid='B004QK7HI8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3UUNL0WMA5A4B', iid='B000B9RI14', r_ui=5.0, est=4.775317946302402, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1HAJHQH2COWNK', iid='B0050SPZMK', r_ui=2.0, est=3.774436090225564, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2OOX3ZIHEJZ7L', iid='B00EL93M3S', r_ui=5.0, est=4.170776021404598, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A259ASOF1K4O7Q', iid='B003ISWI24', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A66IMQ0RK72MG', iid='B009OUFP1Q', r_ui=5.0, est=3.4651162790697674, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1QJX1NAOEEXM2', iid='B00065L5SU', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1QM7NEPNR6J3N', iid='B00009ZWC8', r_ui=5.0, est=3.9855072463768115, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3PX6SIYNRJ0CY', iid='B008V9959O', r_ui=5.0, est=4.125984251968504, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2Y8ZPXERU1GT0', iid='B000A6PPOK', r_ui=1.0, est=3.951244286439817, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2W7XO7Q1UUP0R', iid='B0062QPKAQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2BNO04PJFIVH9', iid='B004GCJEZU', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A36A79N4YP9NZ4', iid='B00328HR44', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1J9V8FPJDES4P', iid='B0096YOQQA', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AOBV10QFFUBEC', iid='B001EYU3L2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3GO9M4ED4A6K8', iid='B000E8X5ZU', r_ui=4.0, est=4.661538461538462, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A167FGHSNHYA62', iid='B0038JE07O', r_ui=3.0, est=3.3576437587657786, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A34U6WKGEO82P2', iid='B00003WGP5', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AXGVX02ZB0YCZ', iid='B00109Y2DQ', r_ui=5.0, est=4.014469929749797, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1Q6WLQMN5BRU6', iid='B004G6002M', r_ui=3.0, est=4.99591544826321, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A3UICOKLNG5PD8', iid='B0055D66V4', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2FN9RRDALVDAB', iid='B000MSDL6K', r_ui=5.0, est=4.47945205479452, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AVAG2D00E6ZDZ', iid='B008D4XBII', r_ui=4.0, est=4.518105849582173, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1Y5YF2AUXK5XT', iid='B00FU83YWS', r_ui=5.0, est=4.122448979591836, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A24DOH1BT6ETNU', iid='B00829THH8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1SW155A81HKLJ', iid='B002XVBAKI', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1U554UZF2PS93', iid='B004U78J1G', r_ui=4.0, est=3.894875164257556, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AN9Q1NAME38FL', iid='B005CT56F8', r_ui=5.0, est=4.517569759896171, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A17UHZF9Z6DKY4', iid='B003U8HTMG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A4S2WAQVQR6PI', iid='B0000AI0N1', r_ui=5.0, est=4.6521739130434785, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3V94T9Z8HB36O', iid='B00B9DQ2QI', r_ui=3.0, est=3.971014492753623, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1JRJV57XJKXPO', iid='B001EZUQ5E', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2M5COJ7NFWOF1', iid='B007DNG9DY', r_ui=5.0, est=3.607843137254902, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AHWM9IM9E2OAO', iid='B000U5TUWE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2OTW9WRG83OLE', iid='B0043M9AU2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3K8CX0C92VN7B', iid='B0058XGN7I', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A12C0UNX4KGNFC', iid='B0035ITWGC', r_ui=5.0, est=4.45, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A13V387HYFGXVG', iid='B0035WSQEC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A38OB30ESYFNC9', iid='B00368CDH6', r_ui=5.0, est=3.869565217391304, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2GSCL8JG3NNKE', iid='B0088O7C7Y', r_ui=3.0, est=3.7534246575342465, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3FG49HTR233KE', iid='B004HO58KW', r_ui=2.0, est=3.6792452830188678, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AEAL8JBU9Y5VM', iid='B0018SHJPM', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2W80WBIE41N8E', iid='B0073FE1F0', r_ui=4.0, est=4.391572456320658, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AGAXK0DNJNMPF', iid='B0011ULQNI', r_ui=4.0, est=4.215323645970938, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3S2ZNBOVW4MW1', iid='B007PRHNHO', r_ui=5.0, est=4.418287937743191, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AHTC44C4YQJ9N', iid='B007JBN6AO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3UNRKDI2UOB6M', iid='B0083XTPH0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3BZ9PF4SV6NUF', iid='B003DZ168E', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A4V3MZPLN3XUU', iid='B005DSPLDA', r_ui=5.0, est=4.475915221579961, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AMEVQ3KBB1VXM', iid='B0042TW3J6', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A27RVF7CVMK9X1', iid='B00004Z6XS', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3FC8Y4E6668W0', iid='B00004SABB', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1FGE7IUZTW5B9', iid='B008YFB4FS', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3SRU584GQ26T7', iid='B003DZ165W', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A28IAAH3KT5L8X', iid='B007VL90AW', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ADY0MS46QQ0G1', iid='B003VAGXWK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AHVXOL1RUWYHR', iid='B000BNY64C', r_ui=2.0, est=4.623563218390805, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3V7D0LH8L7BG0', iid='B0015BYKGI', r_ui=5.0, est=3.7628865979381443, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A28VKA0ZY1EPFE', iid='B008MIQGTQ', r_ui=4.0, est=4.543520309477756, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1RADUDRJZB5QQ', iid='B009X3UW2G', r_ui=5.0, est=4.082377476538061, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A7657U6RAV1BX', iid='B004UAKCS6', r_ui=5.0, est=4.140909090909091, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2TYZUQHR8RM9I', iid='B0044CWG0M', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AG71XMQGQ2UTJ', iid='B00CWBABP4', r_ui=5.0, est=4.076923076923077, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1NKYV39GX42VM', iid='B004SO876S', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A32ATMOQQ156A6', iid='B00CSMYBFS', r_ui=3.0, est=4.303030303030303, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AWP1WU0NXZAEA', iid='B007PJ4PKK', r_ui=2.0, est=4.329866270430906, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3225U2HB84Q37', iid='B004B8GF7Y', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3K36QGTS3NMYI', iid='B00EZ9XLC6', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1ENTFDCMLGHWD', iid='B008UHK3KM', r_ui=4.0, est=4.115289765721331, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A26MX4QK3LGO82', iid='B00008ZOYE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A22BZD9BW8YPZF', iid='B0042VLFIE', r_ui=5.0, est=5, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='AHDC88AH4330', iid='B002K40R6G', r_ui=5.0, est=4.036842105263158, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3LGV5JXFSBFTL', iid='B0081F2Z40', r_ui=4.0, est=4.823984351908483, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A3W37O3M32N8J7', iid='B000MUXVZE', r_ui=5.0, est=4.406779661016949, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2F38OFV637M31', iid='B00AQFFSAG', r_ui=4.0, est=2.964349254286092, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1NXUQL5T6N87M', iid='B008D2POAS', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1G7Q74TEVBT6X', iid='B000652M6Y', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3DB5HA693NI5A', iid='B000HARTYI', r_ui=4.0, est=4.186915887850467, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1GVH3AKIDVEAW', iid='B004NBL9WK', r_ui=5.0, est=4.208917197452229, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2GEDIMLZZB49F', iid='B000QY9KIS', r_ui=5.0, est=4.181184668989547, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1K91B9LG7ZIVN', iid='B004W2JKWG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ABNP40K6DDP3N', iid='B0000CE1UO', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3V44AS0DBPFAQ', iid='B0094R4POC', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2JWDEMXQ8SQTI', iid='B00008AWL2', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A37MUF9HEYM5XE', iid='B005EK3OF4', r_ui=5.0, est=4.105263157894737, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2QV0WRTN4T9NK', iid='B0001GZ87I', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1OWSIBZN3BCVS', iid='B00166F8YU', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A26YF89Q2JN162', iid='B001UI2FPE', r_ui=5.0, est=4.487268419186925, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A23PY09MZ3GR4T', iid='B008THTRVO', r_ui=5.0, est=3.9503722084367245, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1SVVLL2YZD6U9', iid='B003EM0RM2', r_ui=5.0, est=4.144736842105263, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1898DG18TDBJJ', iid='B00IBR189Q', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2N4II7G6J86EC', iid='B0002SQ2P2', r_ui=5.0, est=4.530108588351432, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2XA8CW5DF4MNZ', iid='B005EJH6RW', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A30EQDRL4VV5BV', iid='B00CAFPF26', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A34H1TFXR2MZ7U', iid='B0062K951C', r_ui=4.0, est=3.763157894736842, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A28J6S1MGRQ4OC', iid='B004A9NKIG', r_ui=3.0, est=4.095238095238095, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2VVIQ0RSM89HG', iid='B002XJN5B2', r_ui=4.0, est=4.058490566037736, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1W1P440OYSNTA', iid='B0045TYDX2', r_ui=5.0, est=4.324074074074074, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ANUGPFWYN38AW', iid='B00AQRUW4Q', r_ui=5.0, est=3.6606060606060606, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AJ6N8FZERATCQ', iid='B0036RH93K', r_ui=5.0, est=3.7124600638977636, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A329MPRZBOZQBR', iid='B007OY5V68', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ATQP8C6703GKN', iid='B004RKQM8I', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3GFYTEL5J6KSE', iid='B009OAZW28', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A324CX5OL0LK64', iid='B00CD1PTF0', r_ui=5.0, est=4.371794871794871, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2PPWRINZBD8KS', iid='B00698ZUHK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A35FRMY5U4SOC3', iid='B0098F5W0Q', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3JU16JTNLVK1J', iid='B0019RGQVU', r_ui=4.0, est=3.4680535652517666, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='ADOQEB6QHONTY', iid='B005HJWWW8', r_ui=5.0, est=3.916326530612245, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ALL555YU03H6C', iid='B005EJH6RW', r_ui=3.0, est=4.476543209876543, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A30CP8DCG46RP1', iid='B0009S5HQA', r_ui=5.0, est=4.436285097192225, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3UHY0M4YLBRXX', iid='B0096YOQRY', r_ui=3.0, est=3.6379067550218993, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A2ST04A5UG7K77', iid='B001CJOLBW', r_ui=5.0, est=3.455421686746988, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3QDRRJ2D3SHGO', iid='B00F96PUNW', r_ui=5.0, est=4.107142857142857, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AS3X5RJYR7JBP', iid='B004URBZ4O', r_ui=1.0, est=3.991228070175439, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1RP57MYTPKM97', iid='B000B525DY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3BPBYATV7WH32', iid='B00BIP6G9K', r_ui=5.0, est=4.044943820224719, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AIS0JS2ETHYC7', iid='B000IVDTSG', r_ui=5.0, est=4.321428571428571, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1ANCOCQLRU1U3', iid='B00DR0BQ0I', r_ui=5.0, est=3.98297213622291, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3M2TMPK88UCSR', iid='B0076BNK30', r_ui=5.0, est=3.9868232093780938, details={'actual_k': 3, 'was_impossible': False}),
 Prediction(uid='A202DC58JWUAOS', iid='B004M8SWBU', r_ui=5.0, est=4.426470588235294, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A18B0NCSR7BUM1', iid='B009AIBW1E', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2RMU3IMO7GUE2', iid='B0089ZV1WY', r_ui=2.0, est=4.220481927710844, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A54903TT5GQZD', iid='B000N5T0UI', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A34LEE6XEYR09N', iid='B001MYASTG', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1MMX605RCN4DX', iid='B003VYEYE0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1MQ8RYOAHLEBK', iid='B002U1N95K', r_ui=5.0, est=3.9647058823529413, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3GD5IZ6AQND40', iid='B00JTI4X3E', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3C08BZRVV500V', iid='B0014F9U6U', r_ui=1.0, est=3.0854700854700856, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1UL29HKRBI7W9', iid='B0077QHF1C', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3R2ABK5DW86KM', iid='B00BCGRRWA', r_ui=5.0, est=4.134920634920635, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1SKGR6XGK3VGM', iid='B00139W0XM', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AFZI3G887G93K', iid='B006K5536K', r_ui=4.0, est=3.984126984126984, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2VKI81PBWS274', iid='B004OOODPG', r_ui=5.0, est=4.219298245614035, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1FCFE54EN3NEY', iid='B00478O0JI', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AMS3QJZN6QS47', iid='B00CO9L1F8', r_ui=3.0, est=4.413793103448276, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AILY9J2PT81A7', iid='B00142JKSG', r_ui=5.0, est=4.439024390243903, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2QDM2AWMHP3NT', iid='B00AANMVNQ', r_ui=5.0, est=4.60916179337232, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A13IA7HIQPZ04C', iid='B00EF1OGOG', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AO5NZ5ZX639A9', iid='B0000A0AEM', r_ui=5.0, est=4.044585987261146, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1F0VHM05XHI3H', iid='B005H3AU1Y', r_ui=5.0, est=3.9060402684563758, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AXYDWFIF3RW41', iid='B00DR0PDNE', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2XO6F6MNBPM0C', iid='B00007E7C8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A23HEPFHMLY7SV', iid='B0062EUE54', r_ui=4.0, est=4.384083044982699, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3LYDMSDTL5XIG', iid='B0012X5766', r_ui=5.0, est=4.43646408839779, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2BSTYYYU4V0TF', iid='B009U7WZCA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A15BFEJX8W63CX', iid='B004QK7HI8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A5PJD66R9MSDH', iid='B004ASY5ZY', r_ui=5.0, est=4.523809523809524, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1RBK07YQ3Z6DA', iid='B0038KLCQ0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2P77IVJWZNWMM', iid='B004GJ6FI2', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1ZOIYE8WZT3AJ', iid='B00E87YPNE', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AW5MWFNAAMENP', iid='B0071NWYP8', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2Q9LGNO6OQ23G', iid='B001SH2AVQ', r_ui=5.0, est=3.017897091722595, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3MFUM5ENEX74R', iid='B008SFPMRK', r_ui=5.0, est=4.574324324324325, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3URPD69CU0NOI', iid='B009PK9S90', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1FG7UI419TYKI', iid='B001M56DI0', r_ui=5.0, est=3.385665529010239, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AOFQRV7JN8H3U', iid='B00DQGIHNW', r_ui=5.0, est=4.110320284697509, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1FPKUSM0MP4PH', iid='B00502ZG3O', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A55HFBT6GTF9M', iid='B0041OSQ9I', r_ui=5.0, est=3.9765130984643178, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AQGOVP4F7053Y', iid='B00395WIXA', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AKPJ0G297KLBV', iid='B0054JJ0QW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2D32UFZAR37GH', iid='B00291NGXQ', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3CPALUJ4FKGX0', iid='B000652SOK', r_ui=5.0, est=4.077844311377246, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A122R2NTS8VO3G', iid='B00834SJNA', r_ui=5.0, est=2.4820870984714514, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A4MP0OVTUI0OU', iid='B000NOSUAU', r_ui=5.0, est=3.5606060606060606, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1XOO8GZ4CCL75', iid='B00DIFIM36', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AG86VEKC01IWK', iid='B0036MDUO2', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A314APICCL70GO', iid='B001LJIQ32', r_ui=5.0, est=3.3404255319148937, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A18WTKFTVDFJFZ', iid='B002P8LZ36', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A246I5D7XQ14UR', iid='B005KDYBIO', r_ui=5.0, est=4.370852582948341, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AAFL4M05W5EFE', iid='B0094NXBZ0', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2YGF29E5KEB77', iid='B007STRVTY', r_ui=5.0, est=4.12621359223301, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A27FJAUS15GTVT', iid='B0081JOH1K', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A16UISL4S22SUL', iid='B0079M711S', r_ui=5.0, est=4.183235626343064, details={'actual_k': 3, 'was_impossible': False}),
 Prediction(uid='ASW1VAL9CUMJE', iid='B007QXLIWI', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A29F1V51WQF28V', iid='B00A9SX5WS', r_ui=2.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AIQCLYHZ1C8FE', iid='B00AR1JYN6', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2XLQGIJPFY4XX', iid='B00BQH8UEY', r_ui=5.0, est=4.435729847494553, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2P5A7NPCVNNLS', iid='B002LBQWMG', r_ui=4.0, est=3.590643274853801, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2G25TYPQLWSVB', iid='B0025VKUQQ', r_ui=2.0, est=4.048523206751055, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3NB4QIJ5BVY39', iid='B00EF1OGOG', r_ui=5.0, est=4.294478527607362, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='ABRAS5RI13GA7', iid='B0080AO68E', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3GDOOZ4O4YAC8', iid='B005FNH9RE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A16PMKNN0RI2', iid='B0015M4G5C', r_ui=5.0, est=3.851063829787234, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A157Q8UEW6Z7BK', iid='B006BUN6ZE', r_ui=2.0, est=4.176165803108808, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3VZH3GF6X8AOM', iid='B002LSDKSI', r_ui=5.0, est=3.485294117647059, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A29EI0LHAWPHW', iid='B00BP5MB56', r_ui=5.0, est=4.981242905179374, details={'actual_k': 2, 'was_impossible': False}),
 Prediction(uid='A1SWIA8RZPXOAT', iid='B00BTMEKNQ', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AGXH8X0V9JSZO', iid='B006XGCQ2U', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1BBBVR0ZG6MO4', iid='B008XM630S', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2TE13BTGQTDG9', iid='B002WUVAVE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1OMDVTLBB6BFD', iid='B00DR0B31U', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AF9ATPTTXVDE', iid='B0001FTVEK', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1WATFEN2DCDX1', iid='B0076S5022', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A3JQMG67H45VZF', iid='B000VQ7ZK6', r_ui=5.0, est=4.164383561643835, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2UYM081VA8IGV', iid='B005Y1CYSQ', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A6YZY6ZWPW68U', iid='B0096FT902', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1D9I5RJSPM2WH', iid='B007F9XHCM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2KSJ10GE635YE', iid='B0049S6ZUS', r_ui=5.0, est=4.654118698809871, details={'actual_k': 1, 'was_impossible': False}),
 Prediction(uid='A1CSMXD6S4KA44', iid='B003TVWNAM', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1GPTA5PB5DUXL', iid='B005J7EOIS', r_ui=4.0, est=3.8260869565217392, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A152Z9WE4NDA6C', iid='B00BUCLVZU', r_ui=4.0, est=4.420062695924765, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3DV9XKPRGKNF', iid='B007RNCLBY', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ARZYUYZQ5P0T1', iid='B003SQEAY0', r_ui=5.0, est=4.360091743119266, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2XCKW6UGRT9HX', iid='B00FNPD1VW', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A247704ZT5V4A3', iid='B002TA7VO2', r_ui=5.0, est=3.914772727272727, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A2RXZGI78AO2DO', iid='B006ALR3OE', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='ATH2LYED5CGI5', iid='B009PAEE58', r_ui=3.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2K24MHWQN8Q77', iid='B004J3ZV62', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A1CY7C48DGZ2U8', iid='B0088RIV1W', r_ui=5.0, est=4.786259541984733, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='AZTXO0D8DILTL', iid='B003X7TRWE', r_ui=1.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A639SSAX07GJK', iid='B0032ANC00', r_ui=4.0, est=4.0, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A3MQI7C2ARSG', iid='B000067VB7', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2PU281XKBF8AL', iid='B009NHWVIA', r_ui=5.0, est=4.523188405797101, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A1F74I8YML7SSA', iid='B004QK7HI8', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='AD0OHTWWBGJC7', iid='B003DZ168E', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A7C45E7ZN46SH', iid='B003YKG2XM', r_ui=4.0, est=3.8754208754208754, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A38TOAR2INC1K5', iid='B005HM0SNA', r_ui=5.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2VIGSOQZ6R77I', iid='B00GP4CW24', r_ui=4.0, est=4.068380608555389, details={'was_impossible': True, 'reason': 'User and/or item is unknown.'}),
 Prediction(uid='A2TWTP6HD3CFT8', iid='B0048O0WKW', r_ui=4.0, est=3.9454545454545453, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A276OI0NHBYORX', iid='B002AZ3D3E', r_ui=5.0, est=3.9357429718875503, details={'actual_k': 0, 'was_impossible': False}),
 Prediction(uid='A13U1HCI5MXRS0', iid='B003O1UYHG', r_ui=5.0, est=5, details={'actual_k': 1, 'was_impossible': False}),
 ...]

Getting accuracy

정확도

기계 학습 알고리즘의 정확도는 알고리즘이 얼마나 잘 수행되고 있는지, 즉 알고리즘이 데이터 포인트를 올바르게 분류하는 빈도를 측정하는 것입니다. 정확도는 다음과 같이 주어집니다:

정확도

상관 행렬

상관 행렬은 변수 간의 관계, 즉 다른 변수가 변경될 때 한 변수가 어떻게 변경되는지를 보여주는 테이블입니다. 5개의 변수가 있는 경우 상관 행렬에는 5 곱하기 5 또는 25개의 항목이 있으며 각 항목은 두 변수 간의 상관 관계를 보여줍니다.

RMSE

RMSE는 평균 제곱근 오차를 나타냅니다. 기계 학습 모델을 사용하여 예측을 수행할 때 예측이 정확한지 확인해야 합니다. RMSE는 예측 오류를 측정하는 방법입니다. RMSE가 높으면 예측이 나쁘고, 낮으면 예측이 좋은 것입니다.

# RMSE를 구합니다.
print("Item-based Model : Test Set")
accuracy.rmse(test_pred, verbose=True)
Item-based Model : Test Set
RMSE: 1.3317
1.3316598350472562

우리의 최종 목표는 예측 모델을 얻는 것입니다. 기존 사용자-항목 상호 작용을 이용하여 사용자에게 가장 적합할 수 있는 상위 5개 항목을 예측하도록 모델을 훈련할 수 있습니다. 상위 10000개의 추천 항목과 SVD 알고리즘을 사용하는 모델을 사용하겠습니다.

new_df1 = new_df.head(10000)
ratings_matrix = new_df1.pivot_table(values='Rating', index='userId', columns='productId', fill_value=0)
ratings_matrix.head()
productId 0972683275 1400501466 1400501520 1400501776 1400532620 1400532655 140053271X 1400532736 1400599997 1400698987 ... B00000JHWX B00000JI4F B00000JII6 B00000JSGF B00000JYLO B00000JYWQ B00000K135 B00000K13A B00000K13L B00000K2YR
userId
A01852072Z7B68UHLI5UG 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
A0266076X6KPZ6CCHGVS 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
A0293130VTX2ZXA70JQS 5 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
A030530627MK66BD8V4LN 4 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
A0571176384K8RBNKGF8O 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0

5 rows × 64 columns

X = ratings_matrix.T
X.head()
userId A01852072Z7B68UHLI5UG A0266076X6KPZ6CCHGVS A0293130VTX2ZXA70JQS A030530627MK66BD8V4LN A0571176384K8RBNKGF8O A0590501PZ7HOWJKBGQ4 A0641581307AKT5MAOU0Q A076219533YHEV2LJO988 A0821988FXKFYX53V4QG A099626739FNCRNHIKBCG ... AZVL57D2NG3T1 AZWOPBY75SGAM AZX0ZDVAFMN78 AZX5LAN9JEAFF AZX7I110AF0W2 AZXKUK895VGSM AZXP46IB63PU8 AZYTSU42BZ7TP AZZGJ2KMWB7R AZZMV5VT9W7Y8
productId
0972683275 0 0 5 4 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
1400501466 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
1400501520 0 0 0 0 0 0 0 0 0 3 ... 0 0 0 0 0 0 0 0 0 0
1400501776 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 1
1400532620 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0

5 rows × 9841 columns

X1 = X
SVD = TruncatedSVD(n_components=10)
decomposed_matrix = SVD.fit_transform(X)
decomposed_matrix.shape
(64, 10)

상관 행렬을 찾습니다.

correlation_matrix = np.corrcoef(decomposed_matrix)
correlation_matrix.shape
(64, 64)

ID가 “B00000K135”인 책을 고려하고 있다고 가정합니다. 우리는 이 책을 사는 고객을 찾아서 다른 책을 추천해 줄 것입니다.

i = "B00000K135"

product_names = list(X.index)
product_ID = product_names.index(i)
product_ID
60

“B00000K135” 항목을 구매하는 고객에게 추천해야 할 주요 품목입니다.

correlation_product_ID = correlation_matrix[product_ID]
correlation_product_ID.shape
Recommend = list(X.index[correlation_product_ID > 0.65])
# 고객이 이미 구매한 항목을 제거합니다.
Recommend.remove(i) 
# 추천 항목을 출력합니다.
Recommend[0:24]
['B00000J1V3', 'B00000K13L']

Task 5: 아이템 ‘B00000JSGF’ 구매 고객을 위한 추천 항목 표시하기

#yourcodehere
i = "B00000JSGF"

product_names = list(X.index)
product_ID = product_names.index(i)
product_ID
57

Task 6: 아이템 ‘B00000JDF6’ 구매 고객을 위한 추천 항목 표시하기

#yourcodehere
correlation_product_ID = correlation_matrix[product_ID]
correlation_product_ID.shape
Recommend = list(X.index[correlation_product_ID > 0.65])
# 고객이 이미 구매한 항목을 제거합니다.
Recommend.remove(i) 
# 추천 항목을 출력합니다.
Recommend[0:24]
['9888002198',
 '9984984354',
 'B000001OM4',
 'B00000J1QR',
 'B00000J434',
 'B00000J4FS',
 'B00000JDF5',
 'B00000JDF6',
 'B00000JHWX']

Conclusion

인공 지능은 다양한 현대 산업에서 문제를 해결하는 데 널리 사용됩니다. 여기, 이 노트북에서 우리는 쇼핑 습관을 기반으로 고객에게 상품을 추천함으로써 전자 상거래 산업에서 인공 지능이 어떻게 사용될 수 있는지에 대한 예를 보았습니다.

그 외 수행하기 위해 참조한 링크들..

https://zzinnam.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EC%9D%84-%EC%9C%84%ED%95%9C-20%EA%B0%9C%EC%9D%98-%EA%B0%95%EB%A0%A5%ED%95%9C-Pandas-%ED%95%A8%EC%88%98

데이터 분석을 위한 20개의 강력한 pandas 함수

마무리

  • 각 설치 문제건등으로 인해서 어쩔 수 없이 이후에 정리해서 마무리;;

  • 그래도 결과는 나왔으나 어디서 뭔가 빼먹었는지 수치가 높게 나오는 문제가 있음.

  • 겉으로는 정상작동되어보임.. 다만, 제대로 작동하는지는..(만일 문제가 있다면 수정이 필요..)

  • 이번 과제를 보면서 오히려 KMM보단 어떻게 아나콘다에서 라이브러리를 관리할까의 과제를 고민하게 되었달까.

주의사항

본 포트폴리오는 인텔 AI 저작권에 따라 그대로 사용하기에 상업적으로 사용하기 어려움을 말씀드립니다.

댓글남기기