20#ifndef TESSERACT_LSTM_PLUMBING_H_
21#define TESSERACT_LSTM_PLUMBING_H_
39 return "Sub-classes of Plumbing must implement spec()!";
62 int RemapOutputs(
int old_no,
const std::vector<int>& code_map)
override;
126 void Update(
float learning_rate,
float momentum,
float adam_beta,
127 int num_samples)
override;
132 double* changed)
const override;
const STRING & name() const
PointerVector< Network > stack_
void SetEnableTraining(TrainingState state) override
bool DeSerialize(TFile *fp) override
void CacheXScaleFactor(int factor) override
int XScaleFactor() const override
void ConvertToInt() override
~Plumbing() override=default
const PointerVector< Network > & stack() const
STRING spec() const override
bool SetupNeedsBackprop(bool needs_backprop) override
StaticShape InputShape() const override
int InitWeights(float range, TRand *randomizer) override
void SetRandomizer(TRand *randomizer) override
virtual void AddToStack(Network *network)
float * LayerLearningRatePtr(const char *id) const
GenericVector< float > learning_rates_
float LayerLearningRate(const char *id) const
void EnumerateLayers(const STRING *prefix, GenericVector< STRING > *layers) const
int RemapOutputs(int old_no, const std::vector< int > &code_map) override
void SetNetworkFlags(uint32_t flags) override
void CountAlternators(const Network &other, double *same, double *changed) const override
void DebugWeights() override
void ScaleLayerLearningRate(const char *id, double factor)
Network * GetLayer(const char *id) const
bool Serialize(TFile *fp) const override
bool IsPlumbingType() const override
void Update(float learning_rate, float momentum, float adam_beta, int num_samples) override