24 #ifndef ARM_COMPUTE_LSTMPARAMS_H
25 #define ARM_COMPUTE_LSTMPARAMS_H
41 : _input_to_input_weights(nullptr),
42 _recurrent_to_input_weights(nullptr),
43 _cell_to_input_weights(nullptr),
44 _input_gate_bias(nullptr),
45 _cell_to_forget_weights(nullptr),
46 _cell_to_output_weights(nullptr),
47 _projection_weights(nullptr),
48 _projection_bias(nullptr),
49 _input_layer_norm_weights(nullptr),
50 _forget_layer_norm_weights(nullptr),
51 _cell_layer_norm_weights(nullptr),
52 _output_layer_norm_weights(nullptr),
54 _projection_clip(0.0f),
55 _input_intermediate_scale(0.0f),
56 _forget_intermediate_scale(0.0f),
57 _cell_intermediate_scale(0.0f),
58 _output_intermediate_scale(0.0f),
59 _hidden_state_zero(0),
60 _hidden_state_scale(0.0f),
61 _has_peephole_opt(false),
62 _has_projection(false),
64 _use_layer_norm(false)
91 _has_cifg_opt =
false;
105 _has_projection =
true;
119 _has_peephole_opt =
true;
140 _use_layer_norm =
true;
205 return _input_to_input_weights;
210 return _recurrent_to_input_weights;
215 return _cell_to_input_weights;
220 return _input_gate_bias;
225 return _cell_to_forget_weights;
230 return _cell_to_output_weights;
235 return _projection_weights;
240 return _projection_bias;
245 return _input_layer_norm_weights;
250 return _forget_layer_norm_weights;
255 return _cell_layer_norm_weights;
260 return _output_layer_norm_weights;
270 return _projection_clip;
275 return _input_intermediate_scale;
280 return _forget_intermediate_scale;
285 return _cell_intermediate_scale;
290 return _output_intermediate_scale;
295 return _hidden_state_zero;
300 return _hidden_state_scale;
305 return _has_peephole_opt;
310 return _has_projection;
315 return _has_cifg_opt;
320 return _use_layer_norm;
324 const T *_input_to_input_weights;
325 const T *_recurrent_to_input_weights;
326 T *_cell_to_input_weights;
327 const T *_input_gate_bias;
328 T *_cell_to_forget_weights;
329 T *_cell_to_output_weights;
330 const T *_projection_weights;
331 const T *_projection_bias;
332 T *_input_layer_norm_weights;
333 T *_forget_layer_norm_weights;
334 T *_cell_layer_norm_weights;
335 T *_output_layer_norm_weights;
337 float _projection_clip;
338 float _input_intermediate_scale;
339 float _forget_intermediate_scale;
340 float _cell_intermediate_scale;
341 float _output_intermediate_scale;
342 int32_t _hidden_state_zero;
343 float _hidden_state_scale;
344 bool _has_peephole_opt;
345 bool _has_projection;
347 bool _use_layer_norm;