Хочу разобраться в нейросетях, глубоком обучении и тд. Причём хочется разобраться и в математике на необходимом уровне. Поэтому ищу книги. Помимо прочего хочется не просто изучать API библиотек, по крайней мере на текущем этапе, а самому написать реализацию нейронов и на ней реализовать какие-нибудь современные алгоритмы глубокого обучения. Честно говоря не уверен, возможно ли это. Давным давно читал книги по нейросетям, там вроде всё было довольно просто — сигналы на вход, какая-то функция в нейроне с коэффициентами, сигналы на выход, что-то на паскале писал. Но не знаю, насколько сейчас это всё похоже на то, что раньше было.
Или не выпендриваться и использовать готовые реализации, т.к. написать свою нереально? Если что, своё писать планирую исключительно для закрепления знаний, а не для практического применения.
Здравствуйте, vsb, Вы писали:
vsb>Хочу разобраться в нейросетях, глубоком обучении и тд. Причём хочется разобраться и в математике на необходимом уровне. Поэтому ищу книги. Помимо прочего хочется не просто изучать API библиотек, по крайней мере на текущем этапе, а самому написать реализацию нейронов и на ней реализовать какие-нибудь современные алгоритмы глубокого обучения. Честно говоря не уверен, возможно ли это. Давным давно читал книги по нейросетям, там вроде всё было довольно просто — сигналы на вход, какая-то функция в нейроне с коэффициентами, сигналы на выход, что-то на паскале писал. Но не знаю, насколько сейчас это всё похоже на то, что раньше было.
А курсы пойдут? Вот этот вот очень хорош для освежения в памяти математики, хотя я в МЛ решил и не идти в итоге.
Здравствуйте, kaa.python, Вы писали:
KP>А курсы пойдут? Вот этот вот очень хорош для освежения в памяти математики, хотя я в МЛ решил и не идти в итоге.
Дорогая эта курсера, блин, 50 баксов в месяц жаба душит.
Здравствуйте, vsb, Вы писали:
vsb>Дорогая эта курсера, блин, 50 баксов в месяц жаба душит.
В целом я с тобой согласен, просто, обычно, за подобные прихоти в самообразовании работодатель платит. Ну и у тебя же это в худшем случае 2 часа работы
vsb:
vsb>https://www.pyimagesearch.com/2018/03/05/7-best-deep-learning-books-reading-right-now/ тут список хороших книг вроде бы. Планирую начать с "Goodfellow, Bengio, and Courville’s Deep Learning text". Насколько это правильно с учётом того, что я хочу?
Гудфеллоу есть на русском, отличная книга.
Еще могу посоветовать "Николенко и др. — глубокое обучение", там тоже много математики, есть философия, есть программирование, есть примеры генерёнки.
С этих двух можно начинать.
Других подобных книг не встречал, в основном попадается чисто программёжка.
vsb>Или не выпендриваться и использовать готовые реализации, т.к. написать свою нереально? Если что, своё писать планирую исключительно для закрепления знаний, а не для практического применения.
"Шолле — Глубокое обучение на Python" там больше по использованию высокоуровневой библиотеки Keras от ее автора.
Tensorflow — это всего лишь библиотека по работе с многомерными матрицами + оптимизация (поиск минимумов). Keras больше работает в терминах архитектуры нейросетей.
Переписать tensorflow или torch на коленке нереально, они большие, целую ночь компилируются. Написать свой Keras думаю возможно. Перов, автор DeepFaceLab написал свой мини-Keras, под названем leras.
Как-то так...
Здравствуйте, vsb, Вы писали:
KP>>А курсы пойдут? Вот этот вот очень хорош для освежения в памяти математики, хотя я в МЛ решил и не идти в итоге.
vsb>Дорогая эта курсера, блин, 50 баксов в месяц жаба душит.
Капец, 50 баксов на собственное образование жалко?
Кстати после этого вот этот курс хорош (бесплатный, MIT). Но то что в предыдущем лучше таки знать (или повторить, по крайней мере, если давно из вуза выпустился) перед тем как проходить этот
Здравствуйте, vsb, Вы писали:
vsb>Хочу разобраться в нейросетях, глубоком обучении и тд. Причём хочется разобраться и в математике на необходимом уровне. Поэтому ищу книги.
Там выше советовали курсеру. Она вроде платная только если тебе нужны корочки, задания, фидбек от препода.
А если желание сильно, то смотреть там бесплатно.
Плюс, учти, что про всю эту математику на ютубе просто мегатонны видео.
А на всяких торрентах всем известных можно слить с платных курсов и по математике, и по НС и по чему угодно в целом.
vsb>Или не выпендриваться и использовать готовые реализации, т.к. написать свою нереально? Если что, своё писать планирую исключительно для закрепления знаний, а не для практического применения.
Тут сложно дать совет, потому что ты пишешь "Хочу разобраться в нейросетях, глубоком обучении и тд.", но не пишешь для чего.
Если просто тебя прет от разберательства как оно устроено — это одно. Тогда путь выбранный тобой (математика, ручная реализация и т.д.) норм.
Но есил цели другие, например найти работу в области МЛ или фрилансить и зарабатывать деньги, то надо забить на математику (пока) и погрузиться как раз в практическое применение библиотек.
И под капот заглядывать тогда, когда уже поймешь как машина реагирует на руль, тормоза, дерганье всяких рычагов.
И кстати этот подход (когда начинают с прикладных библиотек) имеет право быть и когда тебе просто интересно разобраться в устройстве мат.аппарата. Некоторым людям куда интересней\легче постигать математику когда ты уже знаешь где она применяется и для чего, но еще не знаешь как.
А когда сходу ты н е знаешь ни про где, ни про зачеми ни про как, инфы может быть так много, что, учитывая ее сложность, можно забросить не дойдя до сути.
Если что ниразу не спец в МЛ. Но мне кажется что замени в вышенаписанном мл и математику на условный 1С и бухгалтерию и мало что поменяется в сути.
Здравствуйте, susumanin, Вы писали:
vsb>>Хочу разобраться в нейросетях, глубоком обучении и тд. Причём хочется разобраться и в математике на необходимом уровне. Поэтому ищу книги.
S>Там выше советовали курсеру. Она вроде платная только если тебе нужны корочки, задания, фидбек от препода. S>А если желание сильно, то смотреть там бесплатно. S>Плюс, учти, что про всю эту математику на ютубе просто мегатонны видео. S>А на всяких торрентах всем известных можно слить с платных курсов и по математике, и по НС и по чему угодно в целом.
Тут еще вопрос мотивации. Когда регулярные курсы с домашними заданиями, которые надо сдать к определенной дате, отношение все же другое.
Здравствуйте, bnk, Вы писали:
bnk>Тут еще вопрос мотивации. Когда регулярные курсы с домашними заданиями, которые надо сдать к определенной дате, отношение все же другое.
Не всем так, мне вот точно не добавляет ничего. Среди знакомых есть такие же.
С возрастом стал наоборот думать, что если мне хочется заплатить на курс понадеявшись на дополнительный мотивационный пинок, то что-то я делаю не так и точно оно того не стоит.
Здравствуйте, susumanin, Вы писали:
S>С возрастом стал наоборот думать, что если мне хочется заплатить на курс понадеявшись на дополнительный мотивационный пинок, то что-то я делаю не так и точно оно того не стоит.
Здравствуйте, bnk, Вы писали:
S>>С возрастом стал наоборот думать, что если мне хочется заплатить на курс понадеявшись на дополнительный мотивационный пинок, то что-то я делаю не так и точно оно того не стоит. bnk>Это в тебе лень говорит, наверное
Я согласен, что деньги мотивации не добавляют. У нас такая специальность, что материала вполне достаточно для самостоятельного освоения.
Я согласен заплатить за школу вождения и обучение дайвингу. Но тут всё зависит исключительно от мотивации. Есть мотивация — можно разобраться самому и бесплатно примерно за такое же время, что и за деньги с преподом.
На трубе полно видосиков как люди на питоне с нуля пишут нейронки, попутно
объясняя свои шаги. Могу посоветовать МИТ'овску программу по статистике и ds -- MIT SDS micromasters.
4 курса -- два теоритических, два практических -- по статистике и ml.
Правда, каждый 300$, но оно того стоит.
Зарегистрироваться в слаке на ods.ai. Там вся движуха в этом направлении, порядка 50т. человек уже.
Он не бесплатный, 300$. Бесплатно там, кажется,только один экзамен. Может даже лабы не доступны
в бесплатной версии, уже не вспомню. Но тут имеет смысл брать всю программу, а не отдельные курсы.
Здравствуйте, Nuzhny, Вы писали:
N>Я согласен, что деньги мотивации не добавляют. У нас такая специальность, что материала вполне достаточно для самостоятельного освоения. N>Я согласен заплатить за школу вождения и обучение дайвингу. Но тут всё зависит исключительно от мотивации. Есть мотивация — можно разобраться самому и бесплатно примерно за такое же время, что и за деньги с преподом.
Не соглашусь. Вот я начал читать книгу Николенко где-то летом 2018 года, сидишь читаешь, попадается,
например, термин правдоподобие -- он его не очень чтобы объясняет, книга о другом все же --
лезу в вики читать, попутно там грузят другими (базовыми) вещами. Там можно с концами потеряться.
Где-то в этом же время начался МИТ'овский по теор. веру. Решил взять, потом они объявили, что
делают целую программу (micromasters), аналогичную своей оффлайн. Решил уже продолжить и взять статистику.
Вот после этих двух курсов первые страниц 30-40 (а может и все 70) просто пролистал, ибо уже все это знал.
Т.е. меня деньги мотивируют, потому что хороший и качественный материал доступен только за деньги.
Бесплатно можно увязнуть. Все-таки на первых шагах надо, чтобы кто-то за руку водил, показывал и объяснял.
Это существенно экономит время. Т.е. потерять в деньгах, чтобы выиграть во времени.
А дальше уже сам.
Здравствуйте, Bill Baklushi, Вы писали:
BB>vsb:
vsb>>https://www.pyimagesearch.com/2018/03/05/7-best-deep-learning-books-reading-right-now/ тут список хороших книг вроде бы. Планирую начать с "Goodfellow, Bengio, and Courville’s Deep Learning text". Насколько это правильно с учётом того, что я хочу? BB>Гудфеллоу есть на русском, отличная книга. BB>Еще могу посоветовать "Николенко и др. — глубокое обучение", там тоже много математики, есть философия, есть программирование, есть примеры генерёнки. BB>С этих двух можно начинать. BB>Других подобных книг не встречал, в основном попадается чисто программёжка.
Объясните, пожалуйста, что такое Keras и зачем он нужен, если есть pytorch и tf? Регулярно встречаю обсуждение, код,
где используется и то и то (Keras+pt\tf). Что в этой библиотеке такого важного\нужного, чего нет ни в tf, ни в pt?
Sharov:
S>Объясните, пожалуйста, что такое Keras и зачем он нужен, если есть pytorch и tf? Регулярно встречаю обсуждение, код, S>где используется и то и то (Keras+pt\tf). Что в этой библиотеке такого важного\нужного, чего нет ни в tf, ни в pt?
Keras — более высокоуровневая библиотека, работает поверх "pt\tf". Можно без Кераса, только код будет больше и менее нагляден.
В Keras можно задавать разные типы слоев, использовать готовые блоки CNN, RNN и пр.
На голом тензорфлоу можно делать классическое машинное обучение без нейросетей (т.е. подбор выделенных вручную параметров модели).
Здравствуйте, Bill Baklushi, Вы писали:
BB>Keras — более высокоуровневая библиотека, работает поверх "pt\tf". Можно без Кераса, только код будет больше и менее нагляден. BB>В Keras можно задавать разные типы слоев, использовать готовые блоки CNN, RNN и пр. BB>На голом тензорфлоу можно делать классическое машинное обучение без нейросетей (т.е. подбор выделенных вручную параметров модели).
Ты забыл добавить, что начиная с TF 2.0, Керас стал неотъемлемой частью tf.
Здравствуйте, Sharov, Вы писали:
S>Т.е. меня деньги мотивируют, потому что хороший и качественный материал доступен только за деньги. S>Бесплатно можно увязнуть. Все-таки на первых шагах надо, чтобы кто-то за руку водил, показывал и объяснял. S>Это существенно экономит время. Т.е. потерять в деньгах, чтобы выиграть во времени. S>А дальше уже сам.
Это индивидуально. Меня ломает заниматься по программе, а больше нравится брать интересную задачу/проблему и разбираться. Прошёл всего одни курсы на udacity, начинал многие, но было скучно. Платные и того хуже: мне скучно, учить дальше не хочу, а, типа, приходится — "деньги-то уплочены". Короче, пришёлся я учёба и, больше нравится самому то, что интересно и полезно выбирать.
Здравствуйте, vsb, Вы писали:
vsb>Хочу разобраться в нейросетях, глубоком обучении и тд. Причём хочется разобраться и в математике на необходимом уровне. Поэтому ищу книги. Помимо прочего хочется не просто изучать API библиотек, по крайней мере на текущем этапе, а самому написать реализацию нейронов и на ней реализовать какие-нибудь современные алгоритмы глубокого обучения. Честно говоря не уверен, возможно ли это. Давным давно читал книги по нейросетям, там вроде всё было довольно просто — сигналы на вход, какая-то функция в нейроне с коэффициентами, сигналы на выход, что-то на паскале писал. Но не знаю, насколько сейчас это всё похоже на то, что раньше было.
vsb>Английский язык не проблема.
vsb>https://www.pyimagesearch.com/2018/03/05/7-best-deep-learning-books-reading-right-now/ тут список хороших книг вроде бы. Планирую начать с "Goodfellow, Bengio, and Courville’s Deep Learning text". Насколько это правильно с учётом того, что я хочу?
vsb>Или не выпендриваться и использовать готовые реализации, т.к. написать свою нереально? Если что, своё писать планирую исключительно для закрепления знаний, а не для практического применения.
Реально, но не нужно. В гугле и мордокниге работает толпа программистов и они толпой всё одно напишут и быстрее и лучше тебя.
Второе. Стандартная нейросетка — это ориентированный граф с небольшим количеством стандартных функций, для которых легко считается производная — реализация градиентного спуска для поимка минимума.
Третье. Книжку можешь брать любую, но не сильно старую, тебе нужно глубокие сверточные — с ними все просто. В любой объяснений будет достаточно.
Четвертое. Нарисовать сетку с нуля — это шаманство и куча экспериментов (обучаются долго, посему нужно серьезное железо — стада Тесл, например).
Фактически, уже есть штук 20 работающих сеток для классификации, причем и обученных на больших типичных датасетах (имеджнет и мскоко). Дальше берут одну из них, отрезают несколько последних слоев и подставляют туда другие слои для своей задачи. Доубучают их.
Ну а на вопрос, сколько и каких слоев и для какой задачи нужно никто не знет и теории для этого не существует.
Математики особо не нужно. Достаточно понимать, что есть матрицы, типичные операции с ними, свертки и понимать, что такое градиентный спуск. Из языка программирования достаточно питона — более того, остальные тебе не понадобятся и даже мешать будут.
Здравствуйте, vsb, Вы писали:
vsb>Хочу разобраться в нейросетях, глубоком обучении и тд. Причём хочется разобраться и в математике на необходимом уровне. Поэтому ищу книги. Помимо прочего хочется не просто изучать API библиотек, по крайней мере на текущем этапе, а самому написать реализацию нейронов и на ней реализовать какие-нибудь современные алгоритмы глубокого обучения. Честно говоря не уверен, возможно ли это. Давным давно читал книги по нейросетям, там вроде всё было довольно просто — сигналы на вход, какая-то функция в нейроне с коэффициентами, сигналы на выход, что-то на паскале писал. Но не знаю, насколько сейчас это всё похоже на то, что раньше было.
Отличная книга, но довольно сухая и сложная. Я ее сам от корки до корки не читал. Время от времени читаю нужные мне разделы. Я бы начал с этой онлайн книжки Neural Networks and Deep Learning — Michael Nielson.
vsb>Или не выпендриваться и использовать готовые реализации, т.к. написать свою нереально? Если что, своё писать планирую исключительно для закрепления знаний, а не для практического применения.
Я сам по возможности всегда стараюсь руками написать, чтобы более глубже понять и чтобы оно надолго осталось в памяти.