Size: a a a

Natural Language Processing

2021 August 17

RV

Roman V in Natural Language Processing
я сейчас возможно буду глупости говорить, дайте знать плиз если так. Где можно почитать про контекстуализацию больших языковых моделей вроде гпт3? Допустим есть такая модель обученная на огромном корпусе, имеющая представление о русском языке как таковом. Скажем, я хочу на основе этой модели сделать чатбота, который будет дообучен на данных из конкретного чатика, чтобы усвоить местный сленг, локальные мемы етц. Это решаемая задача вообще? Как можно доучивая такую мощную модель заставить ее обращать больше внимания на гораздо более мелкий по сравнению с оригинальным корпус с интересующей спецификой?
источник

PV

Peter Vanin in Natural Language Processing
Насколько на правах мимокрокодила могу судить проблема в основном в мощностях обучения моделей такого размера, но если железо есть, то множество мелких косячков которые в соло зализывать трудоемко
источник

DD

David Dale in Natural Language Processing
Переориентация на более маленький корпус происходит автоматически при дообучении на этом корпусе - в этом же и есть смысл дообучения. Тут важно скорее наоборот, не переобучиться под собственный корпус, чтобы большая модель продолжала нормально работать на диалогах, которых в этом маленьком корпусе нет. Отрегулировать степень переобучения проще всего, проверяя, как работает модель раз в K эпох обучения (просто разговаривая с ней).

В этом блокноте есть минималистичный пример дообучения маленькой русской болталки, основанной на T5,  на выгрузке чата разработчиков Яндекс.Алисы.
Можно этот код взять за основу, но подставить вместо маленькой болталки модели GPT от Сбера, у которых фантазии побольше.
источник

RV

Roman V in Natural Language Processing
спасибо большое!
источник

МЕ

Максим Ермаков... in Natural Language Processing
Коллеги, доброго дня!
Подскажите пожалуйста, какую функцию выполяет следующий кусочек сниппета из https://huggingface.co/cointegrated/LaBSE-en-ru ? :
embeddings = model_output.pooler_output
embeddings = torch.nn.functional.normalize(embeddings)
источник

DD

David Dale in Natural Language Processing
Первая строчка берёт эмбеддинг CLS токена; в LaBSE это и есть вектор предложения.
Вторая проецирует его на единичную сферу, т.е. приводит длину вектора к единице. После этого преобразования косинусное сходство векторов равно просто их скалярному произведению, и это удобно
источник

МЕ

Максим Ермаков... in Natural Language Processing
А, теперь понятно, для чего это! Спасибо большое! 🙏
источник

AO

Alex Orgish in Natural Language Processing
Подскажите пожалуйста, для задачи few shot learning для GPT3-моделей (https://huggingface.co/blog/few-shot-learning-gpt-neo-and-inference-api#what-is-few-shot-learning) нужно ли указывать спец токен для разделителя => (sep_token?). Насколько я понял, для ### указывается eos_token. 

И может есть готовые best practice для формирования few shot запросов. 
источник
2021 August 18

AC

Alexander C in Natural Language Processing
Если кто-то только начинает заниматься NLP возможно будет полезен доклад у нас (@sberloga ):

👨‍🔬 Фарид Хафизов :  "Введение в ворд2век"
⌚️ Четверг 19 августа, 17.00 по Москве
источник

N

Nîthïsh Thatîkonda... in Natural Language Processing
источник

N

Nîthïsh Thatîkonda... in Natural Language Processing
Can anyone tell this?
источник

A

Anton in Natural Language Processing
Наткнулся на интересную библиотеку https://github.com/fhamborg/Giveme5W1H
Может кто-то встречал такое в свежем исполнении?

Extraction of the journalistic five W and one H questions (5W1H) from news articles: who did what, when, where, why, and how?
источник

BS

Bogdan Salyp in Natural Language Processing
Кто-нибудь может пожалуйста подсказать, как выставить длину генерации при обучении в T5? Я использую Seq2SeqTrainer с DataCollatorForSeq2Seq (max_length в нем пробовал, не помогает)

На скриншоте print из compute_metrics, target - текст из датасета нормальной длины, а нейронка выдает слишком короткий prediction (ну и потом, при использовании уже обученной модели видно, что она не умеет заканчивать предложения)
источник

BS

Bogdan Salyp in Natural Language Processing
В T5 не нашел глобального max_length, но есть для конкретных тасок. Но почему-то даже с префиксом “summarize: ” длина генерации при обучении не становится 300
источник

VF

Vadim Fomin in Natural Language Processing
По идее можно прямо при генерации в метод generate передавать параметр max_length
источник

A

Anton in Natural Language Processing
смотри через model.configs.max_length
источник

K

Kutuz4 in Natural Language Processing
Кстати, а кто-то изучал материалы, связанные с YATI?
источник

BS

Bogdan Salyp in Natural Language Processing
Да, в генерации можно, но мне при обучении надо
источник

BS

Bogdan Salyp in Natural Language Processing
Хм, настолько просто? Сейчас чекну
источник

VF

Vadim Fomin in Natural Language Processing
Мне кажется, что при обучении эта хрень не используется вообще
источник