Open
Description
If compared with the expected result from wasmedge, got a different result when running a tflite_birds_v1_image with iwasm.
The expected result:
'1.) [166](198)Aix galericulata',
'2.) [158](2)Coccothraustes coccothraustes',
'3.) [34](1)Gallus gallus domesticus',
'4.) [778](1)Sitta europaea',
'5.) [819](1)Anas platyrhynchos'
WAMR result:
'1.) [526](136)Cathartes burrovianus',
'2.) [482](128)Turdus plumbeus',
'3.) [590](128)Anous stolidus',
'4.) [614](128)Buteogallus anthracinus',
'5.) [826](128)Anas clypeata'
@tonibofarull Would mind taking a look at it? Even debugging suggestions are helpful.
Log:
$ pwd
somewhere/WasmEdge-WASINN-examples/tflite-birds_v1-image
$ somewhere/wasm-micro-runtime/product-mini/platforms/linux/build/iwasm --native-lib=somewhere/wasm-micro-runtime/product-mini/platforms/linux/build/libwasi-nn-tflite.so --map-dir=.:. ./wasmedge-wasinn-example-tflite-bird-image.wasm ./lite-model_aiy_vision_classifier_birds_V1_3.tflite bird.jpg
Read graph weights, size in bytes: 3561598
[wasi_nn.c:194 DEBUG] Running wasi_nn_load [encoding=4, target=0]...
[wasi_nn_app_native.c:54 DEBUG] Graph builder array contains 1 elements
[wasi_nn_app_native.c:90 DEBUG] Graph builder 0 contains 3561598 elements
[wasi_nn.c:82 DEBUG] Initializing wasi-nn context
[wasi_nn_tensorflowlite.cpp:446 DEBUG] Initializing models.
[wasi_nn_tensorflowlite.cpp:451 DEBUG] Initializing interpreters.
[wasi_nn.c:136 DEBUG] Returning ctx
[wasi_nn.c:225 DEBUG] wasi_nn_load finished with status 0 [graph=0]
[wasi_nn.c:277 DEBUG] Running wasi_nn_init_execution_context [graph=0]...
[wasi_nn.c:136 DEBUG] Returning ctx
INFO: Initialized TensorFlow Lite runtime.
[wasi_nn_tensorflowlite.cpp:278 WARNING] Default encoding is CPU.
[wasi_nn.c:298 DEBUG] wasi_nn_init_execution_context finished with status 0 [ctx=0]
Loaded graph into wasi-nn with ID: Graph#0
Read input tensor, size in bytes: 150528
[wasi_nn.c:308 DEBUG] Running wasi_nn_set_input [ctx=0, index=0]...
[wasi_nn.c:136 DEBUG] Returning ctx
[wasi_nn_app_native.c:166 DEBUG] Converting tensor_wasm to tensor
[wasi_nn_app_native.c:158 DEBUG] Number of dimensions: 4
[wasi_nn_app_native.c:186 DEBUG] Dimension 0: 1
[wasi_nn_app_native.c:186 DEBUG] Dimension 1: 224
[wasi_nn_app_native.c:186 DEBUG] Dimension 2: 224
[wasi_nn_app_native.c:186 DEBUG] Dimension 3: 3
[wasi_nn_app_native.c:188 DEBUG] Tensor type: 2
[wasi_nn_app_native.c:189 DEBUG] Total number of elements: 150528
[wasi_nn_tensorflowlite.cpp:296 DEBUG] Number of tensors (1)
[wasi_nn_tensorflowlite.cpp:343 DEBUG] input tensor: (scale, offset) = (0.007812, 128.000000)
[wasi_nn.c:334 DEBUG] wasi_nn_set_input finished with status 0
[wasi_nn.c:341 DEBUG] Running wasi_nn_compute [ctx=0]...
[wasi_nn.c:136 DEBUG] Returning ctx
[wasi_nn.c:355 DEBUG] wasi_nn_compute finished with status 0
[wasi_nn.c:371 DEBUG] Running wasi_nn_get_output [ctx=0, index=0]...
[wasi_nn.c:136 DEBUG] Returning ctx
[wasi_nn_tensorflowlite.cpp:381 DEBUG] Number of tensors (1)
[wasi_nn_tensorflowlite.cpp:424 DEBUG] output tensor: (scale, offset) = (0.003906, 0.000000)
[wasi_nn.c:399 DEBUG] wasi_nn_get_output finished with status 0 [data_size=965]
1.) [526](136)Cathartes burrovianus
2.) [482](128)Turdus plumbeus
3.) [590](128)Anous stolidus
4.) [614](128)Buteogallus anthracinus
5.) [826](128)Anas clypeata
[wasi_nn.c:463 DEBUG] --|> deinit_native_lib
[wasi_nn.c:148 DEBUG] Freeing wasi-nn
[wasi_nn.c:149 DEBUG] -> is_model_loaded: 1
[wasi_nn.c:150 DEBUG] -> current_encoding: 4
[wasi_nn_tensorflowlite.cpp:475 DEBUG] Freeing memory.
[wasi_nn_tensorflowlite.cpp:513 DEBUG] Memory free'd.