Код Junior Инференс и генерация обновлено

Top-k с перенормировкой

Условие

Напишите top_k_probs(probs, k): оставьте k самых вероятных токенов (при равенстве выигрывает меньший индекс), остальным поставьте 0, оставшиеся перенормируйте, чтобы сумма была 1. Верните список той же длины, значения округлите до 4 знаков. Если k >= len(probs), просто перенормируйте все.

Примеры

top_k_probs([0.5, 0.3, 0.15, 0.05], 2) // [0.625, 0.375, 0, 0]
top_k_probs([0.5, 0.3, 0.15, 0.05], 1) // [1, 0, 0, 0]
top_k_probs([0.1, 0.2, 0.7], 5) // [0.1, 0.2, 0.7]

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме