Keyword Spotting Hardware

Hello! this is Ahmad Naeem, I am very new here so please pardon me if my quesiton has already been answered.

I am working on a project which requires to identify and perform certain action when a particular keyword is spotted. Total number of keywords that I need to identify are 190 which I know is a very huge number.

I am at very early stage of the project trying to discover proper hardware for it. What should I do?

1- Should I go to the heterogenous computing where some keywords will be detected by one controller and other by the other controller due to the memory constraints?

2- Or should I go to the SBC and develop my application on platform like Raspberry Pi?

I want to use Edge Impulse for my project, help in this regard is greatly appreciated.

Thanks in advance


What type of project (industrial, thesis, …)?

The number of keywords is large, so that it would be a challenge. Of course, it depends on the accuracy you like to target.

I suggest exploring transfer learning and using the Edge Impulse Python SDK with TensorFlow and Keras for the design of the model. Once you have a model, you can profile and explore which is the best target device for your application.


1 Like

Thanks @Joeri for your reply, we are creating a commercial device so we can say it is a industrial project and as per requirements we need accuracy of 98 percent outside of the cabin and 94 percent inside the cabin (any information about cabin is classified I can’t share).
I understood your point, now after profiling if I land on the target device that is not supported by Edge Impulse what would be roadmap then?


Once you have a model, you can generate it to a generic C++ library using ei.deploy that can be used as starting point for your firmware application integration on an own board.

I suggest getting in contact with Louis Moreau @louis. He can bring you on the right track.


It is really helpful for me, thanks again.
I will try to get in touch with @louis