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

Change model and data for new LSTM layer test #2 #1218

Merged
merged 3 commits into from
Nov 20, 2024

Conversation

Abdurrahheem
Copy link
Contributor

This PR updates test data generation model and data for #26391 since the test was written inccorrect and did not comply with the ONNX specificaiton. Main LSTM output Y should be of dimention 4 as opposed to 3 and of the following form

Y - [seq_length, num_directions, batch_size, hidden_size]

@Abdurrahheem Abdurrahheem self-assigned this Nov 12, 2024
@asmorkalov asmorkalov merged commit 0e3b933 into opencv:5.x Nov 20, 2024
asmorkalov pushed a commit to opencv/opencv that referenced this pull request Nov 20, 2024
…-latest

LSTM layer for new graph engine. #26391

Merge with extra: opencv/opencv_extra#1218

This PR updates/creates LSTM layer compatible with new graph engine. It is based on previous LSTM implementation with some modification on how initializers blobs are processed.

Note: Following tests are currently are disabled 


Two following two tests are disbled since ONNNRuntime does not support `layout=1` attiribute inference. See a detailed issue #26456 on this.
- `LSTM_layout_seq` 
- `LSTM_layout_batch`

Following test fails with the new engine as it is not able to deal with shapes of the form [?, C, H, W]
- `LSTM_Activations`

Works:
- [x] One directional case any batch type 
 - [x] Fix directional case when batch size large than 1
 - [x] Add peepholes attribute

TODO with the next PRs:
 - [ ] Activation support

Note: 
  

> Currently `LSTM_layout_seq`, `LSTM_layout_batch` are disabled as the tests are incorrect. They do not comply with the ONNX standard. Particularly test outputs are of incorrect dimensionality. They produce 3-dimentinal output instead of 4-dimentional. 

------

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
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

Successfully merging this pull request may close these issues.

2 participants