19 #ifndef TESSERACT_LSTM_PLUMBING_H_
20 #define TESSERACT_LSTM_PLUMBING_H_
40 return stack_[0]->InputShape();
42 std::string
spec()
const override {
43 return "Sub-classes of Plumbing must implement spec()!";
68 int RemapOutputs(
int old_no,
const std::vector<int> &code_map)
override;
102 const std::vector<Network *> &
stack()
const {
107 void EnumerateLayers(
const std::string *prefix, std::vector<std::string> &layers)
const;
128 *lr_ptr = learning_rate;
142 void Update(
float learning_rate,
float momentum,
float adam_beta,
int num_samples)
override;
const std::string & name() const
std::string spec() const override
void SetEnableTraining(TrainingState state) override
bool DeSerialize(TFile *fp) override
void CacheXScaleFactor(int factor) override
int XScaleFactor() const override
float LayerLearningRate(const char *id)
void ConvertToInt() override
TESS_API void EnumerateLayers(const std::string *prefix, std::vector< std::string > &layers) const
bool SetupNeedsBackprop(bool needs_backprop) override
StaticShape InputShape() const override
const std::vector< Network * > & stack() const
int InitWeights(float range, TRand *randomizer) override
void SetRandomizer(TRand *randomizer) override
virtual void AddToStack(Network *network)
Plumbing(const std::string &name)
int RemapOutputs(int old_no, const std::vector< int > &code_map) override
TESS_API float * LayerLearningRatePtr(const char *id)
void SetNetworkFlags(uint32_t flags) override
void DebugWeights() override
std::vector< Network * > stack_
void SetLayerLearningRate(const char *id, float learning_rate)
void ScaleLayerLearningRate(const char *id, double factor)
void CountAlternators(const Network &other, TFloat *same, TFloat *changed) const override
TESS_API Network * GetLayer(const char *id) const
bool Serialize(TFile *fp) const override
std::vector< float > learning_rates_
bool IsPlumbingType() const override
void Update(float learning_rate, float momentum, float adam_beta, int num_samples) override