huggingface / deep-rl-class

This repo contains the syllabus of the Hugging Face Deep Reinforcement Learning Course.
Apache License 2.0
3.71k stars 564 forks source link

Translating to Russian #394

Open blademoon opened 10 months ago

blademoon commented 10 months ago

Hi!

Let's bring the reinforcement learning course to all the Russian-speaking community 🌏

Would you want to translate? Please follow the 🤗 TRANSLATING guide. Here is a list of the files ready for translation. Let us know in this issue if you'd like to translate any, and we'll add your name to the list.

Some notes:

Please translate using an informal tone (imagine you are talking with a friend about transformers 🤗). Please translate in a gender-neutral way. Add your translations to the folder called ru inside the source folder. Register your translation in ru/_toctree.yml; please follow the order of the English version. Once you're finished, open a pull request and tag this issue by including #issue-number in the description, where issue-number is the number of this issue. Please ping @blademoon for review.

Notebooks:

Video subtitles:

simoninithomas commented 10 months ago

Hey there👋 thanks for your work. As mentionned in Discord we don't support other languages for this course for now contrary to the transformer course.

However, what we can do is I can create a moon-ci-docs.huggingface.co link that will allow you to share to people who want to follow the course in Russian (and also see what the course looks like).

blademoon commented 10 months ago

@simoninithomas Good afternoon, Thomas. It's not a problem. I'll do it for myself.

blademoon commented 10 months ago

@simoninithomas Good afternoon Thomas If you change your mind, tag me. My translation work can be found here.

simoninithomas commented 9 months ago

Hey there 👋 thanks for your work. As I mentionned what we can do is if you open a PR on this repo is that I can generate a link so that people can read it from the website directly. But we don't plan to merge it for now 🤗 .

blademoon commented 8 months ago

@simoninithomas Hello Thomas. I've resumed work on the translation. Thanks for the openness. It's in a private repository for now. As soon as I'm done. We'll do as you suggested. Okay?

At the moment I have finalized the translation of the audio course. Now I can fully dedicate myself to translating your course.

blademoon commented 7 months ago

Good afternoon. Important note for all those who are interested in translating the course into Russian. At the moment the translation is stored in a private repository. Those who wish to join the translation - tag me in this issue.

In the first message of this issue you can track the current status of the translation process. I try to keep it up to date.

abbbe commented 6 months ago

Good afternoon. Important note for all those who are interested in translating the course into Russian. At the moment the translation is stored in a private repository. Those who wish to join the translation - tag me in this issue.

@blademoon I would like to join the cause ;)

blademoon commented 6 months ago

@abbbe Good afternoon. I will prepare an open repository containing the current state of translation and come back with feedback. A few questions: 1) Are you a native speaker of Russian?
2) Have you already participated in the translation of HuggingFace courses?

abbbe commented 6 months ago

Yes, I am a native speaker. I did not translate courses before.

By the way, I am following the course now, if you find a way to share with me the existing texts (rendered html, pdf, whatever) I could proofread them as I go along.

blademoon commented 6 months ago

My open course translation repository https://github.com/blademoon/deep-rl-class.

@abbbe Now you can create your own fork of my repo and start proofreading the material. Note, for stability of translation in case several people will translate, I have prepared a file https://github.com/blademoon/deep-rl-class/blob/main/units/ru/translation_agreement.txt.

If you have any questions, tag me.

abbbe commented 6 months ago

Thanks.@blademoon How to communicate that parts I work on? Is it a fully manual process or there some lifehacks/browser/jupyter plugins etc to speed up the translation?

blademoon commented 6 months ago

@simoninithomas Hellow Thomas. Can you move all English-language materials to the en subdirectory in the notebooks and units directories? So that the folder structure supports the multilingual format of the course (similar to other HuggingFace courses)? This would greatly simplify the work of the translation team I am coordinating.

blademoon commented 6 months ago

@abbbe You can tag me here and describe what you are doing and with what part of the course. I will repost your chosen part in the first post of this issue. For now, the central repository of the translation will be my repository.

image
abbbe commented 6 months ago

Ok, will keep you posted. It will take me a little while to proofread the part you done already.

blademoon commented 6 months ago

@abbbe All basic background information regarding the translation process will be contained in the file https://github.com/blademoon/deep-rl-class/blob/main/units/ru/translation_agreement.txt.

I will try to finalize it a bit today based on the experience of the work we have already done in the course

abbbe commented 6 months ago

@blademoon, глоссарий и его перевод - отличная идея. гпт4 предлагает "state-action values" => "значения состояния-действия", имхо вполне осмысленно.

blademoon commented 6 months ago

@abbbe Я предпочитаю Deepl. В нём можно словарь сопоставлений вбить. Но все равно нужно внимательнее быть. Иногда ересь откровенную несут - галлюцинируют.

blademoon commented 6 months ago

@abbbe Сделал https://github.com/blademoon/deep-rl-class/blob/main/units/ru/translation_agreement.txt. Если будут вопросы - пишите здесь.

blademoon commented 6 months ago

@abbbe Как успехи? Удалось разобраться в MDX? Нужно быть довольно аккуратным в выборе редактора, чтобы редактор не добавлял дополнительные символы форматирования. Томас сказал что можно будет после окончания перевода поднять отдельный сервер с переводом курса.

abbbe commented 6 months ago

@blademoon я еще не смотрел... у меня сдача проекта в среду в обед, после этого начну.

blademoon commented 6 months ago

@abbbe OK. Тегай, если что.

blademoon commented 6 months ago

@abbbe По поводу "state-action values", можешь добавить в глоссарий? Если не найдём варианта лучше, то оставим этот. Там вообще речь идёт про пару значение и соответствующее ему действие, если я правильно помню.

Пока что рекомендую вычитать уже переведенный материал, так ты сможешь войти в тему и терминологию. Могу еще книги порекомендовать. Чтобы была "опорная база". Проблема в том, что по теме RL не так много публикаций (в отличие от тог же NLP), поэтому терминология в части перевода не очень устойчива. Но помогу чем смогу.

Вообще - отлично что тоже можешь взяться за перевод)

Я пока что добиваю перевод курса по NLP. Там еще 3 части последние повисли без перевода.

abbbe commented 6 months ago

@blademoon

По поводу "state-action values", можешь добавить в глоссарий? Если не найдём варианта лучше, то оставим этот. Там вообще речь идёт про пару значение и соответствующее ему действие, если я правильно помню.

Хорошо. Я посмотрю еще по контексту как доберусь до этого термина и добавлю.

Пока что рекомендую вычитать уже переведенный материал, так ты сможешь войти в тему и терминологию. Могу еще книги порекомендовать. Чтобы была "опорная база". Проблема в том, что по теме RL не так много публикаций (в отличие от тог же NLP), поэтому терминология в части перевода не очень устойчива. Но помогу чем смогу.

Хорошо, буду обращаться. Я не совсем чистый лист в этой области, год назад довольно плотно ее изучал. Интересно как пойдет перевод, обычно читать технические тексты на русском это боль).

Вообще - отлично что тоже можешь взяться за перевод)

Попробую сделать свой скромный вклад).

Я пока что добиваю перевод курса по NLP. Там еще 3 части последние повисли без перевода.

У меня немного съехал планнинг, все еще дочищаю хвосты по работе. Конец года, напряжённое время. А сегодня надо уезжать уже. Но еще пара дней, все чуть устаканится и в отпуске точно будет время.

abbbe commented 6 months ago

@blademoon с мдх вроде все понятно, тот же макрдаун. я поставил пару плагинов в Visual Studio Code, вроде все работает, только превью глючит.

вычитываю bonusunit1, вроде норм идет пока. прочитал how-huggy-works и train.

  1. Следовательно, наша функция вознаграждения должна транслировать эту цель.

стилистически это не идеально, наверное. по-русски, скорее "отражать" или типа того. как думаешь, мне надо такими моментами заморачиваться? в принципе понятно о чем речь.

  1. там есть английский текст внутри картинок, иллюстрирующей reward function, например. и потом в цикле обучения. тоже не морочимся? можно в принципе отдельно дать пояснения как-то к диаграммам.

  2. необходимо указать сообщение о фиксации (commit message)

может просто "сообщение коммита"? в русскоязычных доках гита не переводят на русский этот термин https://git-scm.com/book/ru/v2/Основы-Git-Запись-изменений-в-репозиторий

blademoon commented 6 months ago

@abbbe

  1. Если хочешь поменять, то меняй, мне оба варианта нравятся. Но думаю мы это можем оставить на последний этап - вычитку перевода. Это когда мы проходим курс и параллельно проверяем наш перевод. Мне подход "сначала переводим и стараемся не напортачить, затем уже причёсываем" нравиться больше.

  2. Картинки мы все равно не сможем поменять. Они прикручиваются в процессе сборки файлов курса. Давай сначала переведем текст. Вот это будет куда более серьезным подспорьем.

  3. Я решил это перевести потому что не очень здорово когда у нас одни сплошные неологизмы в тексте. Я конечно не сторонник пытаться переводить то, что прям явно является неологизмом не имеющим аналогов в русском языке (например не вижу смысла переводить "tokenizer", просто образую неологизм "токенайзер" и заношу в глоссарий). Но думаю когда ты прочитаешь текст в котором одни сплошные неологизмы, то согласишься что это больше на транслитерацию похоже))) Но давай сделаем "сообщение commit" (или нужно еще подумать как это оформить). Так как тут момент довольно скользкий. Главное чтобы текст потом "читабельный" был для начинающих специалистов.

Обрати особое внимание на теорию первых двух частей. Это тебе позволит быстрее войти в тему, что упростит твою работу в дальнейшем.

В качестве начала могу предложить перевести ноутбуки для блока 1 и бонусного блока 1. У меня к сожалению времени пока не хватает. Добиваю NLP. Если возьмешься, то скажи об этом прямо. Я отмечу тебя в первом сообщении данного Issue. Чтобы у нас не возникло ситуации когда мы делаем одно и то же.

blademoon commented 6 months ago

@abbbe Заведи отдельный файл рядом с соглашением о переводе, туда записывай все моменты которые ты считаешь можно улучшить (чтобы потом не вспоминать где это). Мы обсудим и внесем коррективы на этапе проверки перевода.

Самое, на мой взгляд главное - оставаться максимально близко к оригинальной формулировке фразы, но это не означает что прямо совсем фанатично. Все же мы делаем адаптивный перевод, где это возможно.

abbbe commented 6 months ago

Если хочешь поменять, то меняй, мне оба варианта нравятся. Но думаю мы это можем оставить на последний этап - вычитку перевода. Это когда мы проходим курс и параллельно проверяем наш перевод. Мне подход "сначала переводим и стараемся не напортачить, затем уже причёсываем" нравиться больше.

Я думал я именно этим и занимаюсь - прохожу курс и параллельно вычитываю твой перевод. Я так понимаю ты имеешь в виду, что ты сам будешь вычитывать. Давай тогда я не буду тратить время на вычитку, ок?

Я решил это перевести потому что не очень здорово когда у нас одни сплошные неологизмы в тексте. ... Так как тут момент довольно скользкий. Главное чтобы текст потом "читабельный" был для начинающих специалистов.

Да, субъективные моменты. Просто конкретно здесь в случае git commit message, имхо если есть референс в виде официальной русскоязычной документации гита, можно не ломать голову. Ну да ладно, малозначительный момент.

Заведи отдельный файл рядом с соглашением о переводе, туда записывай все моменты которые ты считаешь можно улучшить (чтобы потом не вспоминать где это). Мы обсудим и внесем коррективы на этапе проверки перевода.

Думаешь стоит отдельно такой журнал вести? Я вношу коррективы в текст сразу, сделаю PR потом, какие правки тебе по душе - возьмешь.

В качестве начала могу предложить перевести ноутбуки для блока 1 и бонусного блока 1.

Хорошо, давай переведу bonus-unit1.ipynb, я все равно сейчас этим блоком занимаюсь.

blademoon commented 6 months ago

@abbbe все правильно делаешь. Лучше если ты сделаешь вычитку переведенного мной материала, а я переведенного тобой. Мы так делали при переводе курса по аудио. Так качество существенно выше. Меньше субъективного.

По корективам лучше через файл. Чтобы знать где они вносились. Когда объем перевода вырастет, ты поймёшь.

abbbe commented 6 months ago

@blademoon я по ошибке начал unit1.ipynb переводить, напиши его на меня тоже

abbbe commented 6 months ago
image

что-то я не пойму, тут в середине этого скриншота, должна быть, но пропущена карточка модели?

должно быть что-то типа

abbbe commented 6 months ago

@blademoon

перевел unit1.ipynb. вот здесь мой коммит, в моем форке твоего репо. поправил опечатку тексте и отметил отсутствующую model card словами FIXME (в русской и английской версиях).

делать PR?

был приятно удивлен качеством перевода deepl. но все равно, большое количество тупой работы по копи-пасте в deepl и обратно. есть позыв это как-то оптимизировать, пока не понял как.

blademoon commented 5 months ago

@abbbe Добрый день Александр. Поздравляю тебя с Новым 2024 годом! Желаю здоровья, удачи в делах и мирного неба!

По поводу Deepl, там под капотом сверточные сети + я его в переводе конкретно этого домена тренирую уже как почти год. Сначала он ересь выдавал, но со временем стал чаще попадать. Продукт не мой, но там явно применяется Reinforcement learning from human feedback.

У тебя есть моя почта, есть одна идея которую думаю стоит обсудить пока-что не публично. По вопросу оптимизации...

По PR я сейчас еще один блокнот закончу по NLP и посмотрю. Если есть желание, выбери и возьми что-то еще на перевод. Но перед этим черкани мне на почту.

blademoon commented 5 months ago

@abbbe Я все верно отметил?

image
abbbe commented 5 months ago

@blademoon я собирался делать bonusunit1, но еще ничего не начинал.

abbbe commented 5 months ago

У тебя есть моя почта, есть одна идея которую думаю стоит обсудить пока-что не публично. По вопросу оптимизации...

Мммм... не понял, что ты имеешь в виду под тем, что у меня есть твоя почта). Вроде гитхаб ничего не светит по умолчанию. Напиши мне на alexandre.bezroutchko@gmail.com

abbbe commented 5 months ago

И тебя с Новым Годом, кстати)).

blademoon commented 5 months ago

@abbbe Закрепил за тобой bonusunit1. Чтобы не получилось так, что делаем одно и то же.

На почту тебе написал. Пока что на вскидку - думаю перспективы есть, причем существенные у данного подхода. Есть подозрение, что (например) французская команда перевода пошла именно этим путём.

blademoon commented 5 months ago

@abbbe Добрый вечер. Подскажи, какой плагин в VSCode ты стаивл чтобы нормально отображались preview для mdx файлов?

kozhukovv commented 5 months ago

@blademoon Привет! Хотел бы присоединиться к переводу курса

abbbe commented 5 months ago

@abbbe Добрый вечер. Подскажи, какой плагин в VSCode ты стаивл чтобы нормально отображались preview для mdx файлов?

@blademoon, у меня стоят

image image

Превью работает не очень хорошо.

blademoon commented 5 months ago

@abbbe Спасибо. Уже попробовал. Действительно работает так себе к сожалению. Можешь обьяснить как у нас организованная работа @kozhukovv ? Я тут ударными темпами добиваю NLP до конца, а он блин все никак ни кончиться)))

@kozhukovv Отлично! Это прям реально здорово! Я координатор группы перевода. Сейчас немного занят доведением перевода курса NLP до конца. Как только освобожусь, возьмусь за Deep RL.

kozhukovv commented 5 months ago

@abbbe Спасибо. Уже попробовал. Действительно работает так себе к сожалению. Можешь обьяснить как у нас организованная работа @kozhukovv ? Я тут ударными темпами добиваю NLP до конца, а он блин все никак ни кончиться)))

@kozhukovv Отлично! Это прям реально здорово! Я координатор группы перевода. Сейчас немного занят доведением перевода курса NLP до конца. Как только освобожусь, возьмусь за Deep RL.

Супер! Буду ждать информации как вы работаете и приступлю.

blademoon commented 5 months ago

@kozhukovv Пока @abbbe введет тебя в курс дела, несколько важных моментов: 1) Так как Томас пока-что не планирует перевод курса на другие языки, текущий репозиторий курса с переводом располагается здесь - https://github.com/blademoon/deep-rl-class-old. Но тем не менее написал в одном из сообщений в начале, цитирую "However, what we can do is I can create a moon-ci-docs.huggingface.co link that will allow you to share to people who want to follow the course in Russian (and also see what the course looks like)." 2) Ознакомься с нашим соглашением о переводе, это поможет тебе упростить работу - https://github.com/blademoon/deep-rl-class/blob/main/units/ru/translation_agreement.txt 3) Там же в папке ru, ты найдёшь уже переведенные части - https://github.com/blademoon/deep-rl-class/tree/main/units/ru 4) Как вообще организуется весь процесс перевода можно почитать тут - https://github.com/huggingface/course?tab=readme-ov-file#translating-the-course-into-your-language

kozhukovv commented 5 months ago
  1. Так как Томас пока-что не планирует перевод курса на другие языки, текущий репозиторий курса с переводом располагается здесь - https://github.com/blademoon/deep-rl-class-old.

@blademoon Ты наверное имел ввиду https://github.com/blademoon/deep-rl-class? Впринципе я со всем ознакомился, на неделе начну переводить. Пингану сюда, какой блок взял.

Спасибо!

blademoon commented 5 months ago

@kozhukovv Да. Раньше этот репозиторий был в закрытом варианте. Так как переводил только я один.

Как определишься какую часть берешь для перевода, сообщи мне. Я отмечу в первом сообщении в данном Issue. Так мы учитываем, кто-что переводит. Чтобы не дублировать работу друг друга. Да, если не сложно, напиши мне blademoon@yandex.ru. Это Issue - основной источник информации, но резервный не помещает.

abbbe commented 5 months ago

@blademoon я даже не знаю, что я могу обьяснить @kozhukovv, вся коммуникация в этом треде...

кстати, ты не пробовал в https://simpleen.io/ ? я так понял он понимает MDX и внутри использует DeepL. не знаю, можно ли там на ходу подкручивать перевод как в самом дипле.

abbbe commented 5 months ago

@kozhukovv может быть у тебя есть какие-то конкретные вопросы?

kozhukovv commented 5 months ago

@kozhukovv может быть у тебя есть какие-то конкретные вопросы?

@abbbe Привет! Да вроде бы нет, спасибо большое

На этой неделе начну, как с рабочими моментами разберусь до конца.

blademoon commented 5 months ago

@abbbe нет https://simpleen.io/ не использовал. Вообще о нём не слышал.

@kozhukovv @abbbe Кто из вас возьмёт Unit 4. Policy Gradient with PyTorch ?

kozhukovv commented 5 months ago

@abbbe нет https://simpleen.io/ не использовал. Вообще о нём не слышал.

@kozhukovv @abbbe Кто из вас возьмёт Unit 4. Policy Gradient with PyTorch ?

@blademoon Привет, давай я возьму 4 и 8 юнит, как раз PPO сейчас на работе имплементирую.