# Why the DPRNN and DPGRU layers are not registered in the ModuleValidator

**URL:** <https://discuss.pytorch.org/t/why-the-dprnn-and-dpgru-layers-are-not-registered-in-the-modulevalidator/160138>\
**Category:** Opacus\
**Created:** [August 26, 2022, 6:55pm UTC](https://discuss.pytorch.org/t/why-the-dprnn-and-dpgru-layers-are-not-registered-in-the-modulevalidator/160138 "2022-08-26T18:55:12Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![xichens](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/xichens/32/40417_2.png) [@xichens](https://discuss.pytorch.org/u/xichens)\
**Post date:** [August 26, 2022, 6:55pm UTC](https://discuss.pytorch.org/t/why-the-dprnn-and-dpgru-layers-are-not-registered-in-the-modulevalidator/160138/1 "2022-08-26T18:55:12Z")

</div>

I see the drop-in replacements DPRNN, DPGRU for the corresponding PyTorch modules are defined in the same file as the DPLSTM, but currently only the DPLSTM is registered in the `ModuleValidator`, not the other two. So `ModuleValidator.fix` does not attempt to replace the RNN or GRU in the model. Is there a particular reason for this?

---

<div class="post-metadata">

**Author:** ![ffuuugor](https://discuss.pytorch.org/user_avatar/discuss.pytorch.org/ffuuugor/32/39394_2.png) [@ffuuugor](https://discuss.pytorch.org/u/ffuuugor)\
**Post date:** [August 30, 2022, 12:40pm UTC](https://discuss.pytorch.org/t/why-the-dprnn-and-dpgru-layers-are-not-registered-in-the-modulevalidator/160138/2 "2022-08-30T12:40:38Z")

</div>

Good question - looks more like oversight on our side than anything else.

But with the recent [changes](https://github.com/pytorch/opacus/pull/445) it’s likely we don’t need these drop-in replacements at all and will gradually remove them altogether
