Accessibility problems for modules mentioned in TinyML book

Hi,
I am not able to access examples given in TinyML book for training the speech recognition module from back few days till now. I wanted to know why it is so and when it will be up ?

1 Like

Hi @Rajani - Perhaps the authors Pete or @dansitu can answer about this.

I decide to go with edgeimpulse to train the speech model instead.

Sorry about the problem with the TensorFlow scripts, though I’m glad you’re able to use Edge Impulse! Which script have you had trouble accessing?

I believe is this script. But I think Pete fixed it few days ago. https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/micro/examples/micro_speech/train/train_micro_speech_model.ipynb

Thanks, great that it’s working now!

Yes , this is the link and now I am able to access it.

@dansitu
Hi,
Thanks for replying now I am able to access it but while training the speech command I am getting error in this particular section of training script -DO NOT MODIFY the following constants as they include filepaths used in this notebook and data that is shared during training and inference.
This problem is not constantly coming sometimes I am able to train the model but most of the time it gives the error given below -
"FileExistsError Traceback (most recent call last)
in ()
25 import os
26 MODELS_DIR = ‘models/’
—> 27 os.mkdir(MODELS_DIR)
28 MODEL_TF = MODELS_DIR + ‘model.pb’
29 MODEL_TFLITE = MODELS_DIR + ‘model.tflite’

FileExistsError: [Errno 17] File exists: ‘models/’"

CodeText

@coolioxlr
Thanks for your time and yes this is the script.

It looks like the script just depends on that models/ dir not existing, so if you delete it between runs you should be fine! But make sure you download the trained model files first :slight_smile:

@dansitu
I have one more doubt with micro_speech model as discuss in the TinyML book as the model is responding to all other command except “on” and “off” command. I am using arduino nano 33 board. I have made changes as discussed in the book … my changes are given below
if (found_command[0] == ‘o’ && found_command[1] == ‘n’) {
last_command_time = current_time;
digitalWrite(LEDG, HIGH); // Green for yes
}

if (found_command[0] == 'o' && found_command[1] == 'f') {
  last_command_time = current_time;
  digitalWrite(LEDR, HIGH);  // Red for no
}

And all other changes I have done as suggested in book.
Can you please suggest something regarding this issue.

It’s hard to know what the issue might be without debugging and running the code—I’d suggest adding error_reporter->Report() calls in various places so you can determine what is going on inside your program and why the conditional isn’t being triggered. Can you confirm that you updated the labels to match the “on” and “off” commands?