Все квизы
Численная корректность ML
Проведи ревью четырёх расчётов для Python 3.14: стабилизируй softmax, защити log loss на границах вероятности, исправь порядок операций в MSE и обработай неопределённую корреляцию постоянного признака.
Код-ревью
softmax получает непустой список конечных logits и должен вернуть конечные вероятности с суммой 1, не меняя математическое распределение. На [1000.0, 999.0] код падает с OverflowError. Как исправить вычисление для любого разброса logits?
from math import exp
def softmax(logits):
weights = [exp(value) for value in logits]
total = sum(weights)
return [weight / total for weight in weights]
print([round(value, 3) for value in softmax([1000.0, 999.0])])