print(arg)
        best = list(arg[1:].astype(np.float))
        w.append(best)

    for i in tqdm(range(1,11)):
        if mode == "offline":

            CBF_ALBUM = sps.load_npz(mode+"/offline-cbf_item_album-cat"+str(i)+".npz")
            CBF_ARTISTA = sps.load_npz(mode+"/offline-cbf_item_artist-cat"+str(i)+".npz")
            NLP = norm_max_row(sps.load_npz(mode + "/nlp_eurm_offline_bm25-cat" + str(1) + ".npz"))
            RP3BETA = sps.load_npz(mode+"/offline-rp3beta-cat"+str(i)+".npz")
            CF_USER = sps.load_npz(mode + "/cfu_eurm-cat"+str(i)+".npz")
            SLIM = sps.load_npz(mode +"/slim_bpr_completo_test1-cat"+str(i)+".npz")
            CBF_USER_ARTIST = sps.load_npz(mode +"/eurm_cbfu_artists_offline-cat"+str(i)+".npz")


        matrix = [CBF_ALBUM, CBF_ARTISTA, NLP, RP3BETA, CF_USER, SLIM, CBF_USER_ARTIST]

        we = w[i-1]

        res.append(ensembler(matrix, we, normalization_type="lele"))

    ret = sps.vstack(res).tocsr()
    if mode == "offline":
        ev.evaluate(eurm_to_recommendation_list(ret), "best_test", verbose=True)

#    sps.save_npz("ensemble_per_cat_"+mode+"_new_data_28_maggio.npz", ret)
    if mode == "online":
        sb = Submitter(dr)
        sb.submit(recommendation_list=eurm_to_recommendation_list_submission(ret), name="best_test", track="main", verify=True, gzipped=False)
예제 #2
0
        urm = dr.get_urm()
        pid = dr.get_test_pids()

        #Fitting data
        rec.fit(urm, pid)

        #Computing similarity/model
        rec.compute_model(top_k=knn,
                          sm_type=sm.TVERSKY,
                          shrink=200,
                          alpha=0.1,
                          beta=1,
                          binary=True,
                          verbose=True)

        #Computing ratings
        rec.compute_rating(top_k=topk, verbose=True, small=True)

        #submission and saving
        sps.save_npz(complete_name + ".npz", rec.eurm)
        sb = Submitter(dr)
        sb.submit(recommendation_list=eurm_to_recommendation_list_submission(
            rec.eurm),
                  name=complete_name,
                  track="main",
                  verify=True,
                  gzipped=True)

    else:
        print("invalid mode.")
예제 #3
0
        user_profile_batch = slim.URM_train[pids_converted]
        eurm = dot_product(user_profile_batch, slim.W_sparse, k=500).tocsr()
        recommendation_list = eurm_to_recommendation_list(eurm)

        # calculating eurm, evaluation, save
        user_profile_batch = slim.URM_train[pids_converted]
        eurm = dot_product(user_profile_batch, slim.W_sparse, k=500).tocsr()
        recommendation_list = eurm_to_recommendation_list(eurm)

        sps.save_npz(ROOT_DIR + "/results/" + complete_name + ".npz",
                     eurm,
                     compressed=False)

        sb = Submitter(dr)
        sb.submit(
            recommendation_list=eurm_to_recommendation_list_submission(eurm),
            name=name,
            track="main",
            verify=True,
            gzipped=False)

    else:
        print("invalid mode.")

    # ev.evaluate(recommendation_list=recommendation_list,
    #              name="slim ")

    # except Exception as e:
    #     bot.error("Exception "+str(e))
    #
    # bot.end()