How to get data on how fast the wake word detection on Amazon Alexa/Google Home is?
I am building a wake word(ww) detector using Tensorflow's Simple audio recognition tutorial. The model generated takes approximately 5 seconds to detect if the input audio file is a wake word or not. It has to be sped up.
I want to know if there is any way to obtain metrics/data on how long Alexa/Google Home take to detect their ww. There doesn't seem to be any documentation as such out there. Does anyone have this measure already so that I know how much more faster my own detector can perform?
See also questions close to this topic

How to optimize this function calculating the categorical crossentropy of two numpy arrays
I want to calculate the categorical crossentropy of two numpy arrays. Both arrays have the same length.
y_true
contains around 10000 2D arrays, which are the labelsy_pred
contains 10000 2D arrays, which are my predictions
The result should be a 1D numpy array which contains all the categorical crossentropy values for the arrays. The formular is:
Here x_true is the ith element of one true vector and x_pred is the ith element of the prediction vector.
My implementation looks like this, but it is very slow. The reshaping is done to convert the 2D arrays to 1D arrays to simple iterate over them.
def categorical_cross_entropy(y_true, y_pred): losses = np.zeros(len(y_true)) for i in range(len(y_true)): single_sequence = y_true[i].reshape(y_true.shape[1]*y_true.shape[2]) single_pred = y_pred[i].reshape(y_pred.shape[1]*y_pred.shape[2]) sum = 0 for j in range(len(single_sequence)): log = math.log(single_pred[j]) sum = sum + single_sequence[j] * log sum = sum * (1) losses[i] = sum return losses
A conversion to tensors is not possible, since
tf.constant(y_pred)
fails in aMemoryError
, because every 2D array iny_true
andy_pred
has roughly the dimensions 190 x 190. So any ideas? 
Is it possible to force Tensorflow to generate orthogonal matrix?
I'm using Tensorflow to generate a transformation matrix for a set of input vectors (X) to target vectors (Y). To minimize the error between the transformed input and the target vector samples I'm using a gradient descent algorithm. Later on I want to use the generated matrix to transform vectors coming from the same source as the training input vectors so that they look like the corresponding target vectors. Linear regression, pretty much, but with 3dimensional targets.
I can assume that the input and target vectors are in cartesian space. Thus, the transformation matrix should consist of a rotation and a translation. I'm working solely with unit vectors, so I can also safely assume that there's no translation, only rotation.
So, in order to get a valid rotation matrix that I can turn into a rotation quaternion I understand that I have to make sure the matrix is orthogonal.
Thus, the question is, is it possible to give Tensorflow some kind of constraint so that the matrix it tries to converge to is guaranteed to be orthogonal? Can be a parameter, a mathematical constraint, a specific optimizer, whatever. I just need to make sure the algorithm converges to a valid rotation matrix.

Segmentation Fault with Keras Conv3D
I keep getting a segmentation fault with Conv3D when I run the cluster ( single node of 48 cores, 96GB ram) My model is as follows.
model = Sequential() model.add(Conv3D(64, (3, 3, 3), padding='same', activation='relu', name='block1_conv1', input_shape=(7, 160, 320, 1))) model.add(Conv3D(64, (3, 3, 3), padding='same', activation='relu', name='block1_conv2')) model.add(MaxPooling3D((2, 2, 2), strides=(2, 2, 2))) model.add(Conv3D(128, (3, 3, 3), padding='same', activation='relu', name='block2_conv1')) model.add(Conv3D(128, (3, 3, 3), padding='same', activation='relu', name='block2_conv2')) model.add(MaxPooling3D((2, 2, 2), strides=(2, 2, 2))) model.add(Conv3D(256, (3, 3, 3), padding='same', activation='relu', name='block3_conv1')) model.add(Conv3D(256, (3, 3, 3), padding='same', activation='relu', name='block3_conv2')) model.add(GlobalMaxPool3D()) # model.add(Flatten()) model.add(Dense(4096, activation='relu', name='final_fully_connected_1')) model.add(Dropout(0.5)) model.add(Dense(4096, activation='relu', name='final_fully_connected_2')) model.add(Dropout(0.5)) model.add(Dense(1, activation='relu', name='Predictions')) sgd = optimizers.SGD(lr=0.00001) model.compile(loss='mean_squared_error', optimizer=sgd, metrics=['accuracy'])
Interestingly it runs on the laptop but very slowly when I use a batch size of 1.

Matlab code fof hiding coefficients of image in audio
For the purpose of audio steganography,I need to hide transformed coefficients of image in specific bits of audio.can anyone help,i have transforms image using shear let transform and i need these coefficients to be hidden in audio bits?

Increasing Label Error Rate (Edit Distance) and Plateauing Loss 2
My question is a sequel to this: Increasing Label Error Rate (Edit Distance) and Plateauing Loss? I'm watching exactly what Harry said in his comment: "Does the output first show random strings and then, after plateauing, always show the empty string?" With what it can be connected and how to deal with it?

How to match times in audio to text
I have a bunch of audio files and the text that corresponds to the speech in the audio files. I need to be able find the specific times in the audio where each word starts. I trying to use the C# SpeechRecognizer library but I can't find a way to get time data for the words it recognizes. Is it possible with this library? Is there a different tool/library that can do this?

how to query data on partition key and sort key using dynamodb
I am trying to create a skill that can pull and recall data from dynamodb using alexa.
I have defined my table as follows:
let handleCinemaIntent = (context, callback) => { let params = { TableName: "dataset", Key: { name: 'taken' }
My table columns are name, year, description and sales
with my current setup my skill will only recall the defined parameter correctly, if i search for another name it will again read the year of the defined parameter.
I have setup my table to have a sort key.
Can anyone help to make this find the corresponding year correctly?

How to prompt a list of items to my alexa skill user, out of which he can choose one and proceed further
The list will be fetched from an external web service. I'm using Java for the handler services which is hosted on my own cloud space.
To be clear this will be the scenario  Alexa to user  'What do you want to eat?' User  'Fruit' Alexa  'Here is the list of fruits available, Apples, mangoes, oranges....'
Any ideas around on how to implement this?

Custom Alexa skills to control sensors
Is it possible to make custom Alexa skills to control commands like enabling/disabling sensors or getting sensor statuses?
We are making an IoT smart home device that has sensors to measure proximity, light, temperature, moisture, motion.

Display content on top of the cast home screen
I was wondering if it is possible to create and display content with the cast sdk but on top of the standard cast home screen. For example, I would like to display a popup for a second but continue to display the nice backgrounds exposed by Chromecast. I haven't seen anything on the doc but recently, google has shown an example where you can ask the meteo to your google home and the result is displayed in foreground of the cast home screen. Thanks

DialogFlow Webhook API V2  How to get Authorized User's accessToken?
In my DialogFlow V1 Webhook, I used to get the user's access token like this (node.js):
exports.voxGoogleHomeWebhook = functions.https.onRequest((req, res) => { const app = new WebhookClient({request: req, response: res}); var accessToken = app.getUser().accessToken
This does not work in DialogFlow V2.
getUser()
is not available on instance of WebhookClient.I can not find in their documentation, how to get the accessToken of the Logged In user: https://dialogflow.com/docs/fulfillment
I tried getting app.session, but that's just the unique session string Identifier of the user's session. It's not their access token.
How can I get the accessToken in V2?

Google Home  How to get Unique id for our custom analytics report
We are creating a custom analytics report. We need to check new user and returning user count. Currently Google Home provides a userId, but the problem is if user is not using it for more than 30 days it will delete the userId. so we need a unique deviceId. Is there any chance to get unique deviceId.