не думал, что когда нибудь это скажу.....но, Браво!!!! отличное подача материала, хорошее построение нс, а главное понимание того,что делаете....Браво!!!!
@selfedu_rus4 жыл бұрын
Спасибо! ))
@СергейЮров-б6е Жыл бұрын
Круто! У меня при первой попытке сеть угадала слово в слово. А потом уже пошло свободное творчество. Но для такой простой сети это правда очень крутой результат! Я удивлен)
@alicenNorwood3 жыл бұрын
утренние мысли в понедельник подняться это твой ятосте !
@alexandersavitski28312 жыл бұрын
Автор зайка, просто лучший курс по нс
@igorvozjen91703 жыл бұрын
Да, неожиданно хороший результат, спасибо за видео
@maksymburakovml65674 жыл бұрын
Спасибо большое
@gdarkestx47084 жыл бұрын
Very nice!
@dmitrymitrofanov39204 жыл бұрын
super!!!!!
@Дизельэлектроника2 жыл бұрын
Здравствуйте и большое спасибо за ваши уроки. Напишите пожалуйста а как в этом уроке можно увидеть когда наступает переобучение нейронной сети, ведь выборки валидации у нас нет и соответственно val_loss у нас не показывается? П.С. Повторил вашу Н.С. по прогнозированию следующего слова, только я сделал больше количество предложений и соответственно увеличилось количество слов, и теперь меня мучает вопрос как проконтролировать что б Н.С. не переобучалась.(Просто 'Validation split= 0.2' добавить?)
@dubinin_s4 жыл бұрын
Спасибо за видео. У Вас в коде inp_chars = 6, а в комментариях Вы говорите по трем символам предсказываем четвертый, я же правильно понимаю, что все же по шести символам предсказываем седьмой? И еще вопрос. Я не понял как сеть поняла какой длинной должна быть спрогнозированная фраза?
@selfedu_rus4 жыл бұрын
Да, совершенно верно, по переменной inp_chars определяем число предыдущих символов, по которым строим прогноз. Далее, сеть рекуррентно (по порядку) прогоняет эти символы через себя и на выходе формирует один прогнозируемый символ, т.е. она формирует только один прогноз. Если хотим построить несколько прогонозов, то опять нужно взять inp_chars предыдущих символов для прогнозирования очередного. И так далее.
@boost_45610 ай бұрын
Подскажите, пожалуйста. Вы в одном уроке разбиваете текст на буквы, в другом - на слова. Но я слышал что наиболее эффективным является разбиение на токены, то есть части слов. Правда ли это и как разбить текст но токены с помощью Tokenizer?
@VenatoresnamIgnotis3 жыл бұрын
Отличное видео, здесь понятно, как формируется выходной вектор, размерность входного соответствует выходному . А как задается соответствие если например нам нужно разделить два класса: мужчин и женщин? На вход мы подаем фотографию размера N x N например и соответственно выходов сети у нас будет N x N, а выхода всего два, и как понять что при максимальном значении на первом выходном нейроне будет определяться класс мужчин, а на втором - женщин, а не наоборот? Это вопрос скорее не по этому видео, а в общем. Правильно ли я понимаю, что для этого когда мы формируем обучающую последовательность данных, в качестве ответной реакции на фотографию мужчины мы должны создать вектор [1, 0] если хотим, чтобы реакция на мужчину была на первом нейроне?
@Sergey-cz7ym Жыл бұрын
для чего мы удаляли первый пустой символ и знаки препинания? с ними тоже все нормально работает. А если добавить количесво нейронов и количество эпох то вообще сказка получается, совсем чуток не хватет что бы можно было поболтать с НС :). только не понятно почему так долго подбирается следующий символ, казалось это должно происходить быстро, но если поставить длинну ответа в 300 символов например то ждать надо довольно долго.
@Ярослав-е4й9щ Жыл бұрын
Здравствуйте, отличный урок! Скажите, пожалуйста, где можно найти файл с обучающей выборкой?
@user-mu5cj4hv9l Жыл бұрын
Здравствуй, да вроде в начале он сказал, что это обычный текст, может говорил откуда, из книги, стиха и тд. Точнее там были короткие высказывания. Думаю, будет не сложно найти, я пока сейчас не собираюсь делать программу, а чуть попозже. Могу скинуть тебе, напиши как с тобой связаться или просто тут ссылку могу оставить.
@Ярослав-е4й9щ Жыл бұрын
@@user-mu5cj4hv9l Доброго времени суток, спасибо большое за ответ! Я уже разобрался, файл находится на сайте(ссылка в описании, где lesson 21) в самом низу
@ИванГусаров-ж8юАй бұрын
@@Ярослав-е4й9щДобрый день, а вы бы не могли скинуть данный сайт. У меня почему то ютуб не разворачивает полностью ссылку, оставляя её обрезанной. Спасибо
@abenderbey4 жыл бұрын
У меня идея! Надо обучить ее на тексте гороскопа и печатать предсказания!
@selfedu_rus4 жыл бұрын
Хорошая идея )) Только лучше здесь использовать анализ текста по словам + генерация выходного текста (также по словам или выбирать заранее заданные варианты).
@abenderbey4 жыл бұрын
@@selfedu_rus Оказывается уже есть реализации, причем на русском языке, на книгах Пелевина. Поржал от души когда почитал)
@lubal3044 жыл бұрын
@@selfedu_rus Привет. Я изучаю именно RNN, остальные нейросети усвоила по туториалам на других каналах. Ищя видео про RNN, я случайно набрела на твой канал, и хочу выразить тебе огромную благодарность. Ты делаешь великое дело) Но у меня есть вопросик. 11:25 Ты используешь many to one, тогда почему у тебя на выходе RNN слоя 3 нейрона? Должен же быть один.
@selfedu_rus4 жыл бұрын
@@lubal304 Спасибо. На рисунке вычислительный граф представлен - это не три слоя нейронов, а один рекуррентный развернутый во времени :)
@darkwingduck31523 жыл бұрын
*Раскрыл бизнес всех астрологов*
@osvab0002 жыл бұрын
Лайк, а в каком формате обучающая выборка. Делаю на colab, выдает ошибку: 'utf-8' codec can't decode byte 0xc8 in position 0: invalid continuation byte
@selfedu_rus2 жыл бұрын
вроде, я все в utf8 делал, но, как вариант может windows-1251
@densaface2 жыл бұрын
Пробел, я так понимаю, потому не поставлен перед если, потому что перед ним всегда запятая, а она удалена из выборки
@Harimaauu2 жыл бұрын
Запятая удалена, но пробел между словами остаётся, поэтому нет
@yanavin29642 жыл бұрын
я начал учить питон чтобы потом перейти на нейронку или ИИ скажите плз будет ли это актуально через 5-10 лет и какие перспективы у всего этого что можно будет делать с помощью этого?
@selfedu_rus2 жыл бұрын
Думаю через 5-10 лет все еще актуально будет, но это мое личное мнение
@franzditr65124 жыл бұрын
))) научите ее в футбол играть, забавно было бы посмотреть.
@selfedu_rus4 жыл бұрын
Это уже другая технология - обучение с подкреплением )
@Kopasuy9 ай бұрын
Хотел сделать токенайзер 256 скалярных значений, он жрет 2 гига оперативы
@mielierz2 жыл бұрын
А что за первый невидимый символ '\ufeff'?
@selfedu_rus2 жыл бұрын
появляется при кодировке UTF-8
@mielierz2 жыл бұрын
@@selfedu_rus как я могу проверить его наличие?
@selfedu_rus2 жыл бұрын
@@mielierz if str[i] == '\ufeff'
@phizruk_2730 Жыл бұрын
Был бы гитхаб 👉👈
@fewra6002 жыл бұрын
У меня почему-то tokenizer букву ё не определяет
@selfedu_rus2 жыл бұрын
да, ее отдельно надо прописать в фильтре
@alexdaniel763 ай бұрын
Так работает "Т9" ? 😀
@noviebelki3 ай бұрын
Почти. Он прогнозирует не букву, а слово
@ПавлоКабай3 жыл бұрын
утреннртентелинеи,в ензн внткео ет н вна ео првнеоею ен / вот получ результат при вероятности 90 проц.Где здесь смисл,
@DubrovinAlexander2 жыл бұрын
У меня тоже результат плохой
@JugaBugaS232 ай бұрын
сделай обучающую выборку больше
@mikhalpalych3 жыл бұрын
Хочу добавить, что токенайзер раздает индексы символам по частоте их встречаемости в тексте
@mikhalpalych3 жыл бұрын
А, полную хрень написал, неважно, но короче, значение у каждого ключа(символа, в нашем случае) - это частота появления этого ключа. 6 утра, чета поплыл, просто. Прошу прощения, если это имелось ввиду в ролике, мозг с трудом переваривает информацию
@mikhalpalych3 жыл бұрын
И еще, можете, пожалуйста, объяснить, что происходит в этой строчке: X = np.array( [data [i:i + inp_chars, : ] for i in range(n)] ) Не понимаю синтаксис в квадратных скобках, где срез в конце, то что [i:i+inp_chars, :]
@selfedu_rus3 жыл бұрын
@@mikhalpalych здесь выделяются One-Hot векторы последних inp_chars символов в диапазоне [i; i+inp_chars)