da5h1/mongpt

Инструкционная языковая модель для монгольского языка.

0

stars

22

commits

Python

primary language

Jul 17, 2024

updated

README

mongpt

Инструкционная языковая модель для монгольского языка.

В рамках данного проекта монгольская языковая модель была обучена на наборе переведенных инструкций. В качестве базовой модели использовалась mGPT-1.3B-mongol. В качестве датасета с инструкциями я использовал databricks-dolly-15k. Этот датасет был переведен на монгольский язык с помощью трех моделей-автопереводчиков. Я отбирал те переводы, которые достаточно похожи друг на друга.

Для оптимизации расхода памяти я использовал mixed-presicion. Модель обучалась в течении 15 эпох на видеокарте NVIDIA A100, размер батча - 4, количество батчей - 1882. Тренировочный датасет содержит 7527 примеров, валидационный - 396. В качестве метрики обучения был использован BERTScore, в качестве модели BERT - мультиязычная xlm-roberta-large, эмбеддинги были взяты с 17-го слоя.

Ниже вы можете видеть метрику обучения каждую эпоху.

image

Также я провел подбор параметров генерации на валидационном датасете. Я случайно подбирал параметры в некоторых дискретных границах, пока мне не удалось максимизировать значение метрики. Ниже вы можете видеть оптимальную конфигурацию параметров.

min new tokens - 2

no repeat ngram size - 0

do sample - False

top k - 5

top p - 0.5

Также были проведены эксперименты с обучением с подводкой. Я явно указал модели следующую инструкцию на монгольском языке: "Напиши ответ для задания. Используй грамотный монгольский язык. Представь, что ты монгольский писатель Сэнгийн Эрдэнэ. Используй кириллицу."

Такой метод не привел к существенному увеличению метрики.

На тестовой выборке модель выдала значение 0.85 BERTScore.

Ниже вы можете видеть примеры ответов модели и их перевод, полученный с помощью автопереводчика.


PROMPT: Дараах спортын аль нь олимпийн спорт вэ? Карате, снукэр, жүдо, тай бокс, хөлбөмбөг, сагсан бөмбөг.

TRUE: Карате, грек-рим, бокс, хөлбөмбөг, сагсан бөмбөг нь олимпийн спортын төрөл юм.

PRED: , хөлбөмбөг, бейсбол нь улс орны спортын төрөл бөгөөд Үндэсний олимпийн хорооноос бүрдсэн зарим спортын төрөл нь карате, снукэр, жүдо юм.

PROMPT: Which of the following sports is an Olympic sport? Karate, snooker, judo, Thai boxing, football, basketball.

TRUE: Karate, Greco-Roman, boxing, football, and basketball are Olympic sports.

PRED: , football and baseball are the country's sports, and some of the sports covered by the National Olympic Committee are karate, snooker, and judo.


PROMPT: Би өөрийн API-ийн хугацааг багасгах ямар арга хэмжээ авч болох вэ?

TRUE: API- ийн хугацааг багасгахын тулд та бүх мэдээллийн санг хадгалах, сүлжээний хүсэлтийг багасгах, эсвэл серверийн хувилбарын тоог нэмэгдүүлэх зэрэг арга хэмжээг авч болно.

PRED: өөрчилж болох хугацааг багасгах олон арга байдаг. API-ийн хэрэглэгчдийн эрэлт, хэрэглэгчийн үнэлгээг өөрчлөх, тэднийг шинэчлэн мэдүүлэх, бусад хэрэглэгчдийн үйлчилгээг хэрэглээний хэрэглээний хэрэгсэл болгон ашиглах зорилгоор ашигладаг.

PROMPT: What steps can I take to reduce the runtime of my API?

TRUE: To reduce API latency, you can take steps to store all databases, reduce network requests, or increase the number of server instances.

PRED: There are many ways to reduce the time that can be changed. The API is used to modify user requests, user ratings, update them, and use the services of other users as a means of application.


PROMPT: Баскетболын хурдан завсарлага гэж юу вэ?

TRUE: Баскетболын хурдан хагарал (fast break) нь бөмбөгтэй баг бөмбөгийг дамжуулах эсвэл бөмбөгийг хурдан гүйлгэж, хамгаалалтын баг нь хэвийн байрлалд орохоос өмнө бөмбөгийг хурдан олж авах зорилгоор талбайд тоглох явдал юм.

PRED: хурдан завсарлага гэдэг бол тоглогч хүн, багтаа барьж байгаа тоглогч руу явахын тулд хурдан завсарлага хийх юм.

PROMPT: What is a basketball fast break?

TRUE: A basketball fast break is when the team with the ball passes the ball or runs the ball quickly down the court to get the ball quickly before the defensive team can get into position.

PRED: a fast break is when a player makes a quick break to go to a player who is holding the ball.

Contributors

da5h1

22 commits

da5h1/mongpt

Инструкционная языковая модель для монгольского языка.

0

stars

22

commits

Python

primary language

Jul 17, 2024

updated

README

mongpt

Инструкционная языковая модель для монгольского языка.

В рамках данного проекта монгольская языковая модель была обучена на наборе переведенных инструкций. В качестве базовой модели использовалась mGPT-1.3B-mongol. В качестве датасета с инструкциями я использовал databricks-dolly-15k. Этот датасет был переведен на монгольский язык с помощью трех моделей-автопереводчиков. Я отбирал те переводы, которые достаточно похожи друг на друга.

Для оптимизации расхода памяти я использовал mixed-presicion. Модель обучалась в течении 15 эпох на видеокарте NVIDIA A100, размер батча - 4, количество батчей - 1882. Тренировочный датасет содержит 7527 примеров, валидационный - 396. В качестве метрики обучения был использован BERTScore, в качестве модели BERT - мультиязычная xlm-roberta-large, эмбеддинги были взяты с 17-го слоя.

Ниже вы можете видеть метрику обучения каждую эпоху.

image

Также я провел подбор параметров генерации на валидационном датасете. Я случайно подбирал параметры в некоторых дискретных границах, пока мне не удалось максимизировать значение метрики. Ниже вы можете видеть оптимальную конфигурацию параметров.

min new tokens - 2

no repeat ngram size - 0

do sample - False

top k - 5

top p - 0.5

Также были проведены эксперименты с обучением с подводкой. Я явно указал модели следующую инструкцию на монгольском языке: "Напиши ответ для задания. Используй грамотный монгольский язык. Представь, что ты монгольский писатель Сэнгийн Эрдэнэ. Используй кириллицу."

Такой метод не привел к существенному увеличению метрики.

На тестовой выборке модель выдала значение 0.85 BERTScore.

Ниже вы можете видеть примеры ответов модели и их перевод, полученный с помощью автопереводчика.


PROMPT: Дараах спортын аль нь олимпийн спорт вэ? Карате, снукэр, жүдо, тай бокс, хөлбөмбөг, сагсан бөмбөг.

TRUE: Карате, грек-рим, бокс, хөлбөмбөг, сагсан бөмбөг нь олимпийн спортын төрөл юм.

PRED: , хөлбөмбөг, бейсбол нь улс орны спортын төрөл бөгөөд Үндэсний олимпийн хорооноос бүрдсэн зарим спортын төрөл нь карате, снукэр, жүдо юм.

PROMPT: Which of the following sports is an Olympic sport? Karate, snooker, judo, Thai boxing, football, basketball.

TRUE: Karate, Greco-Roman, boxing, football, and basketball are Olympic sports.

PRED: , football and baseball are the country's sports, and some of the sports covered by the National Olympic Committee are karate, snooker, and judo.


PROMPT: Би өөрийн API-ийн хугацааг багасгах ямар арга хэмжээ авч болох вэ?

TRUE: API- ийн хугацааг багасгахын тулд та бүх мэдээллийн санг хадгалах, сүлжээний хүсэлтийг багасгах, эсвэл серверийн хувилбарын тоог нэмэгдүүлэх зэрэг арга хэмжээг авч болно.

PRED: өөрчилж болох хугацааг багасгах олон арга байдаг. API-ийн хэрэглэгчдийн эрэлт, хэрэглэгчийн үнэлгээг өөрчлөх, тэднийг шинэчлэн мэдүүлэх, бусад хэрэглэгчдийн үйлчилгээг хэрэглээний хэрэглээний хэрэгсэл болгон ашиглах зорилгоор ашигладаг.

PROMPT: What steps can I take to reduce the runtime of my API?

TRUE: To reduce API latency, you can take steps to store all databases, reduce network requests, or increase the number of server instances.

PRED: There are many ways to reduce the time that can be changed. The API is used to modify user requests, user ratings, update them, and use the services of other users as a means of application.


PROMPT: Баскетболын хурдан завсарлага гэж юу вэ?

TRUE: Баскетболын хурдан хагарал (fast break) нь бөмбөгтэй баг бөмбөгийг дамжуулах эсвэл бөмбөгийг хурдан гүйлгэж, хамгаалалтын баг нь хэвийн байрлалд орохоос өмнө бөмбөгийг хурдан олж авах зорилгоор талбайд тоглох явдал юм.

PRED: хурдан завсарлага гэдэг бол тоглогч хүн, багтаа барьж байгаа тоглогч руу явахын тулд хурдан завсарлага хийх юм.

PROMPT: What is a basketball fast break?

TRUE: A basketball fast break is when the team with the ball passes the ball or runs the ball quickly down the court to get the ball quickly before the defensive team can get into position.

PRED: a fast break is when a player makes a quick break to go to a player who is holding the ball.

Contributors

da5h1

22 commits

Languages

Python

98.6%

Shell

1.4%