urm_col = sps.csc_matrix(urm) top_p = np.zeros(urm.shape[1]) rec = [] eurm1 = sps.lil_matrix(urm.shape) eurm2 = sps.lil_matrix(urm.shape) print(eurm1.shape) pids = dr.get_test_pids(cat=2) pids_all = dr.get_test_pids() # TopPop Album # ucm_album = dr.get_ucm_albums().tocsc() # album_dic = dr.get_track_to_album_dict() # TopPop Artist ucm_album = dr.get_ucm_albums().tocsc() artists_dic = dr.get_track_to_artist_dict() album_to_tracks = load_obj(name="album_tracks_dict_offline", path=ROOT_DIR + "/boosts/") tracks_to_album = load_obj(name="artist_tracks_dict_offline", path=ROOT_DIR + "/boosts/") for row in tqdm(pids, desc="part1"): track_ind = urm.indices[urm.indptr[row]:urm.indptr[row + 1]][0] # TopPop Album album = artists_dic[track_ind] playlists = ucm_album.indices[ucm_album.indptr[album]:ucm_album. indptr[album + 1]] top = urm[playlists].sum(axis=0).A1.astype(np.int32)
from utils.post_processing import * from personal.Tommaso.NLP.NLP import NLP from utils.definitions import * # Datareader dr = Datareader(mode='online', only_load=True) #ev = Evaluator(dr) # Dataframe with interactions df_train = dr.get_df_train_interactions() df_test = dr.get_df_test_interactions() df = pd.concat([df_train, df_test], axis=0, join='outer') playlists = df['pid'].as_matrix() tracks = df['tid'].as_matrix() dictionary = dr.get_track_to_artist_dict() pids = list(dr.get_train_pids()) + list(dr.get_test_pids()) # URM urm = dr.get_urm() urm = urm[pids] print(urm.shape) print('artists...') artists = [dictionary[t] for t in tracks] print('ucm...') ucm = sparse.csr_matrix((np.ones(len(playlists)), (playlists, artists)), shape=(1049361, len(dr.get_artists()))) ucm = ucm.tocsr()