#javascript #tensorflow #tensorflow.js
#javascript #тензорный поток #tensorflow.js
Вопрос:
Я получаю эту ошибку как для DataSync, так и для ArraySync. Модель определена, и результат извлекается.
Выполняемый код:
const result = await faceLandmarkModel.executeAsync({
Placeholder: images_pl
});
console.log(result[0]);
const emb_values = result[0].dataSync();
Тензорный объект:
Tensor {
kept: false,
isDisposedInternal: false,
shape: Array(4),
dtype: "float32",
size: 716130,
dataId: {},
dtype: "float32",
id: 123347
isDisposedInternal: false,
kept: false
rankType: "4"
scopeId: 283898
shape: (4) [1, 365, 654, 3]
strides: (3) [716130, 1962, 3]
}
У кого-нибудь есть идеи? Любая помощь была бы очень признательна.
Комментарии:
1. Ошибка говорит о том, что результат [0] не определен. Кажется, что есть несколько строк кода между моментом, когда вы напечатали тензор, и когда вы хотите получить доступ к его значению
2. Тензор печатается перед действием
3. Возможно, вы можете добавить недостающий код к вопросу. Но в любом случае вы либо присваиваете массиву неопределенный элемент, либо удаляете из него тензор
Ответ №1:
Вы должны сначала загрузить тензор, прежде чем обращаться к массиву внутри него
result.dataSync()[0]
Ответ №2:
Тензор, полученный из модели, не был массивом, и я также использовал неправильную модель. Извините, ребята, это была не тривиальная проблема 🙂