Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NotImplementError: Graph op LSTM has no backend implementation on target platform TargetPlatform.UNSPECIFIED #67

Closed
Menace-Dragon opened this issue Apr 19, 2022 · 6 comments

Comments

@Menace-Dragon
Copy link

emmmm,我又又来了...(不要嫌弃我hhh)有个NotImplementError,似乎是暂时还不支持LSTM算子吗?

@ZhangZhiPku
Copy link
Collaborator

这玩意你是怎么想到要去量化它的...只有tensorRT支持吧...

@Menace-Dragon
Copy link
Author

呃呃,,,好吧...

@ZhangZhiPku
Copy link
Collaborator

ZhangZhiPku commented Apr 19, 2022

LSTM是个很复杂的算子,里面有多次矩阵乘法以及一堆激活函数,还有mul, add等等算子——请不要忽视这些,在不同的后端上LSTM的量化和所需的量化参数可以是截然不同的,你必须要知道你的后端如何计算这个算子才能够给出正确的量化参数(我猜你并不知道)。

不过有些时候你得网络里虽然有这个LSTM,但你并不希望它被量化,那这个时候你只需要在PPQ的后端执行库里添加一下LSTM的执行函数就行了,PPQ的调度器和Quantizer都不会尝试量化这个算子。

@Menace-Dragon
Copy link
Author

好的,明白勒,感谢😵

@ZhangZhiPku
Copy link
Collaborator

在即将发布的ppq 0.6.4版本中我们支持了gru的fp32执行,以及gru的算子拆解,你可以瞅一眼看看它的复杂程度...

@Menace-Dragon
Copy link
Author

听着就很恐怖......近些天我也了解了LSTM内部实现,确实太复杂了,看得眼花

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants