"admin/index.html" did not exist on "c4683d7f49f75124c3d0a38b274a6ccf75980ddf"
Newer
Older
#ifndef TRAINER__H
#define TRAINER__H
#include "ReadingMachine.hpp"
#include "ConfigDataset.hpp"
#include "SubConfig.hpp"
class Trainer
{
private :
using Dataset = ConfigDataset;
using DataLoader = std::unique_ptr<torch::data::StatelessDataLoader<torch::data::datasets::MapDataset<Dataset, torch::data::transforms::Stack<torch::data::Example<> > >, torch::data::samplers::RandomSampler>, std::default_delete<torch::data::StatelessDataLoader<torch::data::datasets::MapDataset<Dataset, torch::data::transforms::Stack<torch::data::Example<> > >, torch::data::samplers::RandomSampler> > >;
private :
DataLoader devDataLoader{nullptr};
Franck Dary
committed
std::unique_ptr<torch::optim::Adam> optimizer;
int batchSize{64};
private :
void extractExamples(SubConfig & config, bool debug, std::vector<torch::Tensor> & contexts, std::vector<torch::Tensor> & classes);
float processDataset(DataLoader & loader, bool train, bool printAdvancement);
void createDevDataset(SubConfig & goldConfig, bool debug);
float evalOnDev(bool printAdvancement);