コード例 #1
0
if __name__ == '__main__':
    args = parse_args()
    args.lr = eval(args.lr)

    args.path = './data/' + args.dataset + '/'
    args.user_dataset = args.path + 'userRating'
    args.group_dataset = args.path + 'groupRating'
    args.user_in_group_path = "./data/" + args.dataset + "/groupMember.txt"

    print('args', args)
    # initial helper
    helper = Helper()

    # get the dict of users in group
    g_m_d = helper.gen_group_member_dict(args.user_in_group_path)

    # initial dataSet class
    dataset = GDataset(args.user_dataset, args.group_dataset,
                       args.num_negatives, g_m_d)

    # get group number
    num_group = max(g_m_d.keys()) + 1
    num_users, num_items = dataset.num_users, dataset.num_items
    # print('num_users',num_users)
    # build AGREE model
    agree = AGREE(num_users, num_items, num_group, args.embedding_size, g_m_d,
                  args.drop_ratio).to(device)
    # config information
    print("AGREE at embedding size %d, run Iteration:%d" %
          (args.embedding_size, args.epoch))