train_model.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:der-network 作者: soskek 项目源码 文件源码
def evaluate(dataset, model, args, n_query_data=None):
    pool, modelL = make_pool(model, args.n_pool)
    correct_per, sub_correct_per, n_choice_per = 0., 0., 0.
    sum_loss_data = xp.zeros(())

    idsL = model.make_efficient_chunk(list(six.moves.range(len(dataset))), dataset)
    all_datasL = [[dataset[idx] for idx in ids] for ids in idsL]

    # Split dataset into some part
    n_ch = len(all_datasL[0])/6+1
    for j in six.moves.range(6):
        datasL = [each_datas[j*n_ch:(j+1)*n_ch] for each_datas in all_datasL]

        for result in pool.imap_unordered(
                wrapper_solve, zip(modelL, datasL, [False]*args.n_pool)):
            sum_loss_one, n_T, n_choice, n_s = result
            sum_loss_data += sum_loss_one
            correct_per += n_T
            sub_correct_per += n_s
            n_choice_per += n_choice
    if n_query_data is None:
        n_query_data = sum([len(v_["queries"]) for v_ in dataset])

    pool.close()
    return cuda.to_cpu(sum_loss_data) / n_query_data, correct_per, n_choice_per, sub_correct_per
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号