arduino / arduino/ArduinoTensorFlowLiteTutorials

Tiny ML on Arduino: Gesture recognition tutorial results in a blank model.h

オープン
#11 コメント 6 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Jupyter Notebook
スター
270
フォーク
122
PR マージ指標
30日以内にマージされた PR はありません

説明

I attempted to run through the Tiny ML on Arduino: Gesture recognition example and it resulted in a a model.h file that is just a model array declaration.

Ex:
```
const unsigned char model[] = {
};

```

This is the example that I was following:
[https://colab.research.google.com/github/arduino/ArduinoTensorFlowLiteTutorials/blob/master/GestureToEmoji/arduino_tinyml_workshop.ipynb#scrollTo=f92-4Hjy7kA8](url)

The following Warnings were seen while running the example:
NOTE: An issue was filed with the Colab project but I do not see it listed.

Also, a gesture_model.tflite file was created and has about 145K of data.

- Setup Python Environment

```
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/v/vim/xxd_8.0.1453-1ubuntu1.1_amd64.deb 404 Not Found [IP: 91.189.88.152 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

```

- Build & Train the Model
```
Train on 12 samples, validate on 4 samples
Epoch 1/600
WARNING:tensorflow:Entity .initialize_variables at 0x7fe172912ae8> could not be transformed and will be executed as-is. Please report this to the AutoGraph team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output. Cause: module 'gast' has no attribute 'Num'
WARNING: Entity .initialize_variables at 0x7fe172912ae8> could not be transformed and will be executed as-is. Please report this to the AutoGraph team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output. Cause: module 'gast' has no attribute 'Num'
12/12 [==============================] - 1s 50ms/sample - loss: 0.3119 - mae: 0.5501 - val_loss: 0.2502 - val_mae: 0.4998
Epoch 2/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2653 - mae: 0.5116 - val_loss: 0.2498 - val_mae: 0.4994
Epoch 3/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2620 - mae: 0.5116 - val_loss: 0.2493 - val_mae: 0.4991
Epoch 4/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2628 - mae: 0.5082 - val_loss: 0.2488 - val_mae: 0.4985
Epoch 5/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2569 - mae: 0.5058 - val_loss: 0.2443 - val_mae: 0.4942
Epoch 6/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2553 - mae: 0.4992 - val_loss: 0.2579 - val_mae: 0.4993
Epoch 7/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2619 - mae: 0.5072 - val_loss: 0.2531 - val_mae: 0.4989
Epoch 8/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2576 - mae: 0.5051 - val_loss: 0.2521 - val_mae: 0.4983
Epoch 9/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2569 - mae: 0.5049 - val_loss: 0.2499 - val_mae: 0.4981
Epoch 10/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2544 - mae: 0.5036 - val_loss: 0.2491 - val_mae: 0.4979
Epoch 11/600
12/12 [==============================] - 0s 3ms/sample - loss: 0.2533 - mae: 0.5029 - val_loss: 0.2485 - val_mae: 0.4978
```

- Run with Test Data
```
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:10: MatplotlibDeprecationWarning: cycling among columns of inputs with non-matching shapes is deprecated.
# Remove the CWD from sys.path while we load stuff.
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:11: MatplotlibDeprecationWarning: cycling among columns of inputs with non-matching shapes is deprecated.
# This is added back by InteractiveShellApp.init_path()

```

- Convert the Trained Model to Tensor Flow Lite
```
WARNING:tensorflow:Entity .initialize_variables at 0x7fe16a17d598> could not be transformed and will be executed as-is. Please report this to the AutoGraph team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output. Cause: module 'gast' has no attribute 'Num'
WARNING: Entity .initialize_variables at 0x7fe16a17d598> could not be transformed and will be executed as-is. Please report this to the AutoGraph team. When filing the bug, set the verbosity to 10 (on Linux, `export AUTOGRAPH_VERBOSITY=10`) and attach the full output. Cause: module 'gast' has no attribute 'Num'
Model is 147764 bytes
```

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

リンクされている arduino_tinyml_workshop.ipynb から始め、Convert the Trained Model to TensorFlow Lite の手順と生成された model.h を比較してください。gesture_model.tflite が 147764 bytes と報告されているにもかかわらず、ノートブックが空の配列を生成する理由を確認してください。チュートリアルが Arduino の例に適した空でない model.h を生成すれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
arduino, jupyter-notebook, python, tensorflow
領域
documentation, embedded-iot, machine-learning
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
30/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。