Exemplo n.º 1
0
    def infer(raw_data, **kwargs):
        """
        :param raw_data: raw input (여기서는 문자열)을 입력받습니다
        :param kwargs:
        :return:
        """
        # dataset.py에서 작성한 preprocess 함수를 호출하여, 문자열을 벡터로 변환합니다
        dictionary = DP.Dictionary()
        data = preprocess2(raw_data, config.strmaxlen, dictionary)
        model.eval()
        model.batch_size = len(data)
        model.hidden = model.init_hidden()
        # 저장한 모델에 입력값을 넣고 prediction 결과를 리턴받습니다
        data = torch.LongTensor(np.array(data))
        if GPU_NUM:
            data = data.cuda()
        output_prediction = model(Variable(data).t())
        point = output_prediction.data.squeeze(dim=1).tolist()

        # DONOTCHANGE: They are reserved for nsml
        # 리턴 결과는 [(confidence interval, 포인트)] 의 형태로 보내야만 리더보드에 올릴 수 있습니다. 리더보드 결과에 confidence interval의 값은 영향을 미치지 않습니다
        return list(zip(np.zeros(len(point)), point))
Exemplo n.º 2
0
    args.add_argument('--embedding', type=int, default=128)
    args.add_argument('--hidden_dim', type=int, default=50)
    args.add_argument('--lr', type=float, default=0.01)
    args.add_argument('--num_layers', type=int, default=1)
    args.add_argument('--cnn', type=bool, default=False)
    args.add_argument('--dropout_rate', type=float, default=0.1)
    args.add_argument('--dr_embed', type=float, default=0.35)
    args.add_argument('--bi', type=bool, default=False)
    args.add_argument('--total_train', type=int, default=1810000)

    config = args.parse_args()

    use_gpu = GPU_NUM or torch.cuda.is_available()
    lr = float(config.lr)

    dictionary = DP.Dictionary()
    nlabel = 10
    total_train = config.total_train

    ### create model
    model = LSTMC.LSTMClassifier(embedding_dim=config.embedding,
                                 hidden_dim=config.hidden_dim,
                                 vocab_size=len(dictionary),
                                 label_size=nlabel,
                                 batch_size=config.batch,
                                 use_gpu=use_gpu,
                                 num_layers=config.num_layers,
                                 cnn=config.cnn,
                                 dropout_rate=config.dropout_rate,
                                 bi=config.bi,
                                 dr_embed=config.dr_embed)