В Python
Возьмите мои целочисленные логиты -> вызвать целочисленную реализацию softmax на языке Python -> получить результат (python_integer_prediction_probabilities).
В C (с использованием CMSIS-NN)
Возьмите те же целочисленные логиты -> вызовите реализацию C softmax для моих логитов -> получите результат (CMSIS_NN_prediction_probabilities)
Пример модульного теста будет:
Этот пример ввода:
Код: Выделить всё
const int8_t softmax_input[10] = {101, 49, 6, -34, -75, -79, -38, 120, -55, 115};
Код: Выделить всё
const int8_t softmax_output_ref[10] = {-57, -70, -79, -86, -92, -94, -88, -54, -91, -56};
Наконец, я сравниваю эти два результата, чтобы увидеть, достаточно ли они близки. Основная проблема, с которой я столкнулся, заключается в том, что я предполагал, что будет информация о том, как реализовать функцию softmax с использованием Python, которая принимает целочисленные входные данные, но я не могу ничего найти в Интернете. Есть ли у кого-нибудь идеи, как реализовать это в Python, или знает ресурсы, которые я мог бы использовать, чтобы понять это? спасибо.
Подробнее здесь: https://stackoverflow.com/questions/792 ... eger-input
Мобильная версия