nnet-optimize.h File Reference

`#include "nnet3/nnet-compile.h"`

`#include "nnet3/nnet-analyze.h"`

`#include "nnet3/nnet-optimize-utils.h"`

Include dependency graph for nnet-optimize.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes | |

struct | NnetOptimizeOptions |

struct | CachingOptimizingCompilerOptions |

class | CachingOptimizingCompiler |

This class enables you to do the compilation and optimization in one call, and also ensures that if the ComputationRequest is identical to the previous one, the compilation process is not repeated. More... | |

## Namespaces | |

kaldi | |

This code computes Goodness of Pronunciation (GOP) and extracts phone-level pronunciation feature for mispronunciations detection tasks, the reference: | |

kaldi::nnet3 | |

## Functions | |

int32 | MaxOutputTimeInRequest (const ComputationRequest &request) |

void | Optimize (const NnetOptimizeOptions &config, const Nnet &nnet, int32 max_output_time_in_request, NnetComputation *computation) |

This is the top-level function for optimizing a computation. More... | |

void | LimitDerivativeTimes (const Nnet &nnet, const ComputationRequest &request, const NnetOptimizeOptions &opts, NnetComputation *computation) |

This optimization, which has no effect unless you set –min-deriv-time or –max-deriv-time, modifies the backprop operations for efficiency based on the assumption that derivatives for any Cindex with t < min_deriv_time or t > max_deriv_time are zero. More... | |

void | ConsolidateModelUpdate (const Nnet &nnet, NnetComputation *computation) |

This optimization consolidates the model-update part of backprop commands, for components in (e.g.) recurrent networks that need to have many separate backprop commands, into more efficient single commands operating on consolidated data in larger matrices. More... | |

void | ConvertAdditionToAssignment (const Nnet &nnet, NnetComputation *computation) |

This converts addition operations (things with Add in their names) to copy operations (things with Copy in their names). More... | |

void | VariableMergingOptimization (const NnetOptimizeOptions &config, const Nnet &nnet, NnetComputation *computation) |

This wraps class VariableMergingOptimizer in a simplified interface. More... | |

void | RemoveUnnecessaryZeroing (const Nnet &nnet, NnetComputation *computation) |

This optimization function removes, where possible, commands of type type kSetConst. More... | |

void | MoveSizingCommands (const Nnet &nnet, NnetComputation *computation) |

This optimization moves commands that allocate and zero matrices to as late as possible, and moves commands that deallocate matrices to as early as possible. More... | |

void | RemoveUnnecessaryAllocation (const Nnet &nnet, NnetComputation *computation) |

This optimization detects cases where we deallocate a matrix, and then later allocate another matrix of the same size; and replaces them with commands of type kAllocFromOther or kAllocFromOtherZeroed. More... | |

void | ConsolidateIoOperations (const Nnet &nnet, NnetComputation *computation) |

This optimization puts the input operations (kAcceptInput) and output operations (kProvideOutput) at the very beginning or end of segments of computation, respectively. More... | |