Тензорный поток в iOS Swift:проблема двоичной классификации

#ios #swift #tensorflow-lite

Вопрос:

У меня возникли некоторые проблемы при получении вывода в модели TensorFlow(tflite).

Это мой вклад:

  let inputInfo:[Float32]  : [-1.0291401 ,  1.6121695 ,  0.58366895, -0.25974554,  2.6633718 ,
                                  0.39398468,  1.2648116 , -1.0617405 ,  1.0997621 , -0.01813432,
                                 -0.02543107,  1.9113901 ,  0.30188444,  0.3199759 ,  0.07759953,
                                  0.23082322,  2.0959156 , -0.42658705,  0.08775132,  3.4258583 ,
                                 -1.0573974 ,  0.7249298 , -1.1119401 , -0.72663903, -0.74873704,
                                 -0.387724  , -0.14288527, -0.39554232, -0.10774904, -0.0911286 ,
                                  0.40389383, -0.169619  , -1.1736624 ]

 let inputData = Data(bytes: amp;inputInfo, count: inputInfo.count * MemoryLayout<Float32>.stride)
 print(inputData)
 try interpreter?.copy(inputData, toInputAt: 0)
 

После передачи этого массива типа Float32 в качестве входных данных я получаю результат ниже на выходе:

Выход:

Тензорфлоулит.Тензор(имя: «Идентичность», тип данных: TensorFlowLite.Тензор.Тип данных.float32, форма: TensorFlowLite.Тензор.Форма(ранг: 2, размеры: [1, 1]), данные: 4 байта, параметры квантования: ноль)

Для получения ожидаемого выходного результата я использую этот код:

 let outputTensor = try self.interpreter?.output(at: 0)
let finalOutput = [Float32](unsafeData: outputTensor!.data)
 print(finalOutput)
 4.6533377e 33
 

Здесь ожидаемый результат должен составлять несколько чисел от 0 до 1(например,0,8, 0,9), но мой конечный результат выходит за рамки ожидаемого результата.
Я застрял здесь,пожалуйста, помогите.