LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
train_params.h
Go to the documentation of this file.
1// Copyright 2021 CEA LIST
2// SPDX-FileCopyrightText: 2022 CEA LIST <gael.de-chalendar@cea.fr>
3//
4// SPDX-License-Identifier: MIT
5
6#ifndef DEEPLIMA_LIBS_TASKS_COMMON_TRAIN_PARAMS_H
7#define DEEPLIMA_LIBS_TASKS_COMMON_TRAIN_PARAMS_H
8
9#include <string>
10#include <boost/filesystem.hpp>
11
12#include "conllu/treebank.h"
13
14namespace deeplima
15{
16namespace train
17{
18
20{
21 std::string m_output_format;
23 std::string m_input_model_name; // pretrained model
24 std::string m_train_set_fn;
25 std::string m_dev_set_fn;
26 std::map<std::string, std::string> m_tags;
27
28 std::string m_device_string; // goes directly into Device struct constuctor
29
34
36
39 size_t m_batch_size; // sequences per iteration
40
41 std::string m_optimizers;
42
43 train_params_t(std::string device_string="cpu",
44 float learning_rate=0.001,
45 float weight_decay=0.00001,
46 float beta_one=0.9,
47 float beta_two=0.999,
48 size_t max_epochs=100,
49 size_t max_epochs_without_improvement=10,
50 size_t batch_size=4,
51 float input_dropout=0.3)
52 : m_output_format("txt"),
53 m_device_string(device_string),
54 m_learning_rate(learning_rate),
55 m_weight_decay(weight_decay),
56 m_beta_one(beta_one),
57 m_beta_two(beta_two),
58 m_input_dropout_prob(input_dropout),
59 m_max_epochs(max_epochs),
60 m_max_epochs_without_improvement(max_epochs_without_improvement),
61 m_batch_size(batch_size),
62 m_optimizers("adam") {}
63
64 virtual const std::string& get_train_set_fn() const
65 {
66 return m_train_set_fn;
67 }
68
69 virtual const std::string& get_dev_set_fn() const
70 {
71 return m_dev_set_fn;
72 }
73
74 virtual void guess_data_sets(const std::string& ud_path, const std::string& corpus);
75};
76
77} // namespace train
78} // namespace deeplima
79
80#endif
virtual void guess_data_sets(const std::string &ud_path, const std::string &corpus)
std::map< std::string, std::string > m_tags
virtual const std::string & get_dev_set_fn() const
virtual const std::string & get_train_set_fn() const
train_params_t(std::string device_string="cpu", float learning_rate=0.001, float weight_decay=0.00001, float beta_one=0.9, float beta_two=0.999, size_t max_epochs=100, size_t max_epochs_without_improvement=10, size_t batch_size=4, float input_dropout=0.3)