
Перетворення Qwen3-1.7B на однопрохідну модель рішень з каліброваними ймовірностями
Практичний посібник показує, як обмежити вивід мовної моделі наперед визначеними відповідями, потім оцінити її на CommonsenseQA та скоригувати завищені оцінки впевненості за допомогою масштабування температури.
Обмежене декодування зазвичай перетворює мовну модель на рушій рішень, який за один прохід обирає з фіксованих варіантів замість вільної генерації токен за токеном. Підхід, показаний на Qwen/Qwen3-1.7B, звужує словник до кількох дозволених токенів, щоб модель видала лише одну з наперед визначених відповідей.
Як працює однопрохідний трюк
Стандартні моделі рішень System one видають відповіді з каліброваними ймовірностями для кожної дозволеної відповіді. Коли загальну мовну модель просять вивести JSON за допомогою Structured Output, їй одночасно доводиться робити прохід для кожного згенерованого токена; у наведеному прикладі фінальному виводу знадобилося 11 проходів. Модель рішень, як-от Jev, звужує набір фіксованих варіантів, приховує решту словника та з першого проходу зчитує відповідь із найвищою ймовірністю. Це не гарантує правильну відповідь, а грубі токенні ймовірності можуть відображати впевненість наступного токена, а не справжню ймовірність того, що відповідь правильна.
Результати CommonsenseQA та надмірна впевненість
На випадковому тестовому прикладі CommonsenseQA модель 1.7B правильно відповіла на 725 з 1221 запитання, що точність 0,5938 з макро F1 0,5844. Швидке файнтюнінгу на наборі даних підняло це з 1221 до 762, тобто точність 0,6241 і макро F1 0,6234. Проблема виявилася у неоднозначних запитаннях. Коли запитали, де найімовірніше знайти кажана або бейсбольну биту, варіантами: печера, бейсбольний матч, інші, зоопарк і магазин спортивного інвентарю, модель обрала печеру з ймовірністю 0,9978, хоча явної відповіді не існувало. Оцінка за бінами підтвердила надмірну впевненість: у біні впевненості від 0,90 до 1,00, де було 809 прикладів, точність становила лише 0,7009, тоді як у біні від 0,80 до 0,90 з 121 прикладом вона впала до 0,4711.
Калібрування масштабуванням температури
Щоб узгодити впевненість із точністю, автор застосував масштабування температури та підіграв параметр температури під точність моделі градієнтним спуском. Підігнане значення становило 3,797280788421631. Після масштабування впевненість, розподілена за бінами, набагато ближче наблизилася до точності: верхній бін показав впевненість 0,9333 порівняно з точністю 0,9541, а середні біни були в межах кількох відсоткових пунктів від виміряної точності. Автор опублікував репозиторій GitHub зі скриптами для збирання набору даних, оцінювання, файнтюнінгу та калібрування моделі і закликає всіх спробувати цей робочий процес і на більших моделях.
Джерела: nishtahir.com
SiTech — веброзробка з підтримкою AI
Створюємо швидкі та сучасні сайти й інтегруємо AI у бізнес-процеси. Маєте проєкт чи запитання? Із задоволенням допоможемо.