問題タブ [mobilenet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
926 参照

python - tflite オブジェクト検出モデルを使用して結果を推測できません

モデルを再トレーニングすることで、ssd_mobilenet_v3 モデルを .tflite に正常に変換しました。(以前は coco データセットでトレーニング済み)

ただし、オブジェクト検出にこのモデルを使用して、次のコードを使用して単一の画像で推論を実行します。

次のエラーが表示されます。

エラーと可能な解決策を親切に説明してください。

テンソルフロー バージョン: 1.1.4

OS: Ubuntu 18.04

パイソン: 3.7

PS: 分類子モデル (inception_v2) を tflite に変換し、上記のコード ("interpreter = tf.lite.Interpreter(model_path)") をエラーなしで使用しました!

0 投票する
0 に答える
176 参照

python - Lucid は MobileNet V3 Squeeze/Excite ブロックを視覚化できますか

提供された MobileNet V3 定義 (小さい) を使用して多数のグラフをトレーニングしましたが、視覚化を生成するために (tensorflow) Lucid を実行すると、Lucid はエラーで失敗します。Squeeze/Excite ブロックを除外するように定義を変更すると、ビジュアライゼーションが生成されます。

Tensorflow 1.14 と Lucid がインストールされている状態で、トレーニング済みの MobileNet V3 グラフ ファイル「Small dm=0.75 (float)」をここからダウンロードしました ( https://github.com/tensorflow/models/tree/master/research/slim/nets/mobilenet )、ファイルを「D:/temp」に抽出し、次のコードを実行しました。

かなりの量のスタック トレースがありますが、主なエラーは次のとおりです。

次に、「mobilenet_v3.py」の V3_SMALL_MINIMALISTIC 定義を使用して (新しい機能エクストラクタを登録)、テスト モデルをトレーニングしてみました。これは本質的に同じモデルですが、「squeeze_excite」の挿入はありません (ただし、hard_swish アクティベーション関数も元に戻しました)。

上記のコードは新しいモデルで問題なく実行され、画像がレンダリングされました。

これにより、問題は「squeeze_excite」の実装 (slim/nets/mobilenet/conv_blocks.py 内) にあると思われます。

しかし、私は問題をさらに診断することはできませんでした: それは Lucid なのか、Squeeze/Excite ブロックなのか、TensorFlow なのか、それとも単なる世界の事実なのか?

0 投票する
1 に答える
601 参照

tensorflow - TFLite 量子化モデルのパラメーターを使用した計算操作

hereから取得した量子化された Mobilenetv2 モデルを使用して、ハードウェアに画像分類を実装しようとしています。そのためには、まず推論プロセスを最初から最後まで再現して、データに対して実行される計算/操作を確実に理解する必要があります。

最初のターゲットはConv 関数です。それがどのように計算されているかを見ることができますが、この関数に渡されるいくつかの引数があり、それらがどのように生成されるかを知りたいです: output_offset, output_multiplier,output_shift, output_activation_min, output_activation_max. これらのパラメーターでConv()関数を呼び出す前の関数が見つかりません。これにより、これらの引数がどのように生成されるかについての洞察が得られることを願っています。ソースコードの正しい行を教えてもらえますか?

ソースコードのもう 1 つのギャップは、interpter.invoke ()関数にあります。次に何が起こるかを追跡して確認したいのですが、 invoke()関数を実装するソースコードが見つかりません。助けていただければ幸いです。