Semantic Entropy
Узнай, как семантическая энтропия измеряет неопределённость смысла ответов большой языковой модели, различает противоречивые ответы и помогает безопаснее оценивать ИИ и обнаруживать галлюцинации.
Семантическая энтропия измеряет, насколько генеративная модель ИИ не уверена в смысле своего ответа. Вместо того чтобы считать каждый вариант формулировки отдельным результатом, она объединяет семантически эквивалентные ответы и измеряет, насколько широко распределена вероятность между получившимися значениями. Если повторные ответы выражают одну и ту же идею, семантическая энтропия низкая. Если они поддерживают несколько противоречащих друг другу идей, она высокая — это указывает на то, что модель может не знать правильный ответ.
Эта мера особенно актуальна для большой языковой модели (LLM) или другой системы, генерирующей текст в свободной форме, где один и тот же смысл можно выразить множеством разных последовательностей слов.
Как работает семантическая энтропия#
Энтропия — это общая мера неопределённости в вероятностном распределении: она низкая, когда вероятность сосредоточена на одном исходе, и высокая, когда правдоподобными остаются несколько исходов. Определение энтропии NIST задаёт лежащее в основе понятие теории информации. (csrc.nist.gov)
Рабочий процесс вычисления семантической энтропии обычно состоит из четырёх этапов:
- С помощью сэмплирования сгенерировать несколько ответов на один и тот же запрос.
- Сгруппировать ответы, передающие один и тот же смысл.
- Оценить вероятность каждого смысла по его частоте или вероятности генерации.
- Вычислить энтропию для этих семантических групп.
Например, «Париж», «Ответ — Париж» и «Столица Франции — Париж» относятся к одной смысловой группе. «Лион» относится к другой. Лексическая энтропия может преувеличить неопределённость, считая все четыре строки разными, тогда как семантическая энтропия распознаёт, что первые три означают одно и то же.
На этапе группировки могут использоваться человеческая оценка, текстовая импликация или числовые эмбеддинги в сочетании с мерой сходства, например косинусным сходством scikit-learn.
from collections import Counter
from scipy.stats import entropy
# Equivalent answers have already been assigned the same meaning label.
meaning_labels = [
"Paris",
"Paris",
"Paris",
"Lyon",
"Unknown",
]
counts = Counter(meaning_labels)
probabilities = [count / len(meaning_labels) for count in counts.values()]
score = entropy(probabilities, base=2)
print(f"Semantic entropy: {score:.3f} bits")В этом упрощённом примере используется документированная функция энтропии SciPy. В промышленной системе семантическую группировку нужно тщательно проверять, поскольку неверная группировка может исказить итоговую оценку.
Связанные понятия и ключевые различия#
Семантическая энтропия относится к более широкой области количественной оценки неопределённости, но рассматривает неопределённость в значениях, а не только в метках, токенах или числовых предсказаниях.
- Энтропия токенов измеряет неопределённость следующего токена или полной последовательности токенов. Она может оценивать безобидные различия в формулировках как высокую неопределённость.
- Самосогласованность проверяет, дают ли повторные генерации совместимые ответы. Семантическая энтропия развивает эту идею, представляя относительное распределение различных значений.
- Уверенность обычно представляет собой оценку, присвоенную одному предсказанию. Семантическая энтропия вместо этого сравнивает несколько возможных генераций. Ни то ни другое не следует автоматически трактовать как калиброванную вероятность: калибровку нужно оценивать по наблюдаемым результатам. (scikit-learn.org)
- Галлюцинация в LLM — это ошибка, при которой сгенерированный контент оказывается ложным, не подкреплённым фактами или вводящим в заблуждение. Семантическая энтропия — это предупреждающий сигнал, а не сама ошибка. Высокая энтропия может указывать на противоречивые ответы, тогда как низкая не доказывает правильность: модель может последовательно повторять одно и то же ложное утверждение. Поэтому галлюцинации могут оставаться уверенными и внутренне согласованными. (openai.com)
- Семантическая сегментация присваивает класс каждому пикселю изображения. Несмотря на общее слово «семантическая», это задача компьютерного зрения, не связанная с энтропией сгенерированных значений.
Примеры применения в реальных условиях#
Ассистенты для ответов на вопросы: ассистент службы поддержки может сгенерировать несколько вариантов ответа перед отправкой. Если варианты расходятся в том, покрывает ли гарантия случайные повреждения, высокая семантическая энтропия может стать сигналом для поиска по документам, уточнения или проверки человеком. В сочетании с генерацией с дополненной выборкой (RAG) такой подход снижает вероятность того, что клиент получит неподтверждённое утверждение о правилах.
Поддержка принятия решений на основе визуального и языкового ввода: визуально-языковая модель (VLM) может в нескольких генерациях описывать промышленное изображение как «поверхностную коррозию», «остатки масла» или «обычное изменение цвета». Высокая семантическая энтропия указывает на существенные расхождения, которые могут привести к неверному решению о техническом обслуживании. Вместо того чтобы считать одно беглое описание окончательным, система может направить изображение инспектору.
Практическое применение и ограничения#
Семантическую энтропию следует считать одним из компонентов конвейера оценки на основе рисков. Командам нужно проверять, действительно ли более высокие оценки соответствуют большему числу ошибок в их предметной области, выбирать пороговые значения с учётом последствий ошибок и сохранять возможность воздержаться от ответа или передать случай на проверку человеку. В базовом документе системы управления рисками ИИ NIST подчёркивается важность измерения неопределённости и связи результатов оценки с постоянным мониторингом рисков. (airc.nist.gov)
Этот метод лучше всего подходит для генерации ответов в свободной форме. Структурированные предсказания компьютерного зрения требуют других методов оценки: режим валидации Ultralytics измеряет качество на размеченных данных, а семантическая энтропия может оценивать любое текстовое пояснение, добавленное мультимодальным компонентом.
Командам, отвечающим за промышленную эксплуатацию, также следует отслеживать распределения оценок, категории сбоев, задержку и изменения входных данных. В рекомендациях Google по мониторингу промышленных систем машинного обучения предлагается вести журналы и настраивать оповещения об изменении распределения предсказаний и снижении качества. Мониторинг развёртывания на платформе Ultralytics может поддерживать более широкий рабочий процесс аннотирования, обучения, развёртывания и мониторинга моделей компьютерного зрения. Семантическая энтропия помогает выявлять неуверенные случаи в рамках этого процесса, но проверка фактов и тестирование на репрезентативных данных по-прежнему необходимы.









