Что такое логиты в контексте работы llm? Как они получаются? Чем определяется их размерность? Что с ними происходит дальше?
Логиты — это сырые, ненормализованные выходы нейронной сети перед тем, как к ним применяется функция активации, например, softmax. В контексте LLM, логиты представляют собой числовые значения, которые напрямую отражают уверенность модели в том, что каждый токен из её словаря является следующим в последовательности.
Как они получаются?
Логиты — это результат последнего слоя нейронной сети. После того, как входная последовательность токенов проходит через все слои LLM (включая эмбеддинги, трансформерные блоки и механизмы внимания), на выходе получается вектор. Этот вектор и есть логиты. Он является итогом всех вычислений модели.
Чем определяется их размерность?
Размерность вектора логитов определяется размером словаря (vocabulary size) модели. Если словарь модели состоит из 50 000 уникальных токенов, то вектор логитов будет иметь размерность 1×50000. Каждый элемент этого вектора соответствует одному токену из словаря, и его значение — это “сырая” оценка вероятности того, что именно этот токен будет следующим.
Что с ними происходит дальше?
После получения логитов, они обычно проходят через функцию softmax. Эта функция преобразует логиты в вероятности, то есть в значения от 0 до 1, сумма которых равна 1. Этот процесс нормализации делает логиты интерпретируемыми: чем выше значение логита, тем выше вероятность, что соответствующий токен будет выбран. Затем модель выбирает следующий токен, либо по максимальной вероятности (greedy decoding), либо с использованием более сложных методов, таких как top-k sampling или beam search, чтобы сгенерировать более разнообразный и качественный текст.