Я видел как олимпиадников с хорошим кодом, так и олимпиадников с катастрофически плохим (хоть и работающим). Всё же знать алгоритмы и уметь их быстро программировать маловато.
В учебниках приводят в качестве примера опыты МакКаллока и Питтса, которые подтолкнули к первым моделям, но это больше полувека назад было. (Кстати, модель эта, как потом оказалось, была слишком упрощённой и нейроны вообще не так работают.)
Сейчас нейронные сети нейронными просто по традиции называют. Для решения практических задач отдельные нейронные не моделируют.
В общем, там биологических идей практически и нет.
Насчёт учебников. Если эти учебники вышли до 2012 года, то можно их не читать. Если после, то очень осторожно. В этой отрасли даже прошлогодние статьи считаются устаревшими.
Формально, компания, в которой я работаю, — это не буква фаанг, но и далеко не «Рога и копыта». Значительная часть наших инженеров в фаанге работала. Так что мой и их опыт всё же релевантен. Про задачи в гугле тоже в курсе, не так уж и часто там приходится хитрые алгоритмы писать руками. Либо вам очень повезло с задачами.
но взято изначально от биологических оригинальных нейросетей - и это факт
Точно так же можно сказать, что оригинальная идея самолёта позаимствована у птиц. Но устроен же он совершенно иначе.
Матаппарат свёртков не отрицаю, но думаю что он не является запретом или табу для поиска альтернативных и эффективных решений.
Свёртки (кстати, в единственном числе это всё же свёртка, а не свёрток) — это только один из элементов свёрточной сети. Табу действительно нет. Есть очень успешные модели на базе трансформеров.
Идеи нет в них, взяты от биологических оригиналов.
Зрение устроено совершенно иначе. Каких-то биологических аналогов у современных моделей нет. Насчёт того, что в них нет идеи — это очень сильное утверждение.
С одной стороны приятно видеть, что 9 моих советов попали в список, а с другой начал задумываться, что в моей карьере пошло не так, что эти ситуации так легко возникают в памяти. :)
И что? Цель — передать порядок числа, показать, что оно очень большое. Точное значение никакого интереса не представляет и на дальнейшие рассуждения никак не влияет.
Заметьте, что речь идёт о порядке, а не о значении. Это разные вещи. Так что ошибка именно около процента, а не в 64 раза.
Аналогия со сдачей неуместна, так как там как раз нужна точность.
Если мы говорим о числах, представимых с помощью 506 и 500 бит, то она большая, но это не значит, что 506 и 500 сильно отличаются.
Не очень понял, почему вы вычитаете одно из другого. Тут уместнее деление. Правда, разница в 6 двоичных порядков уже не так смотрится, как ворох цифр. :)
Впрочем, к тому времени из организации уже ушли двое сооснователей: Илон Маск и Андрей Карпаты (в 2017-м). Первый сослался на конфликт интересов в связи с разработкой автопилота Tesla
Поговаривают, что Маск хотел заправлять всей компанией, но ему отказали, после чего он ушёл.
Ка́рпати. Хоть Андрей и из Словакии, у него довольно распространённая венгерская фамилия, которую носит много известных людей (см., например, Википедию). На русском она обычно записывается с и на конце.
Ну хоть не Карпатый, как иногда пишут, и то ладно.
Можно и другие распределения брать, не только нормальное. Просто с нормальным часто проще теоретические выкладки делать.
Но это если бы мы знали бы правильный ответ (мусор или нет). Но мы его не знаем для изображения от сети A. Тогда как быть?
Идея GAN в том, что это будет работать даже если мы не знаем.
То, что вы описали похоже на обучение с помощью классификатора. Как будто у нас есть классификатор цифра/мусор, и мы используем его, чтоб научиться генерировать только цифры. Но такой подход на практике работать не будет (но зато он хорошо работает для получения психоделических картинок).
GAN же устроен совсем иначе.
Дискриминатор не говорит, мусор получился или нет. У нас есть настоящие картинки с цифрами и то, что выдал генератор. Задача дискриминатора — сказать, где настоящее, а где сгенерированное. В 4 пункте мы точно знаем правильный ответ, так как выход генератора — это сгенерированная картинка по определению.
В итоге получается борьба. Функции потерь устроены так, что дискриминатор пытается различать, а генератор пытается сделать свой выход неотличимым. Цели противоположные.
Тут есть интересный момент. При обучении GAN мы не хотим, чтобы какая-то из сторон победила. Если победит дискриминатор, то есть он идеально отличает сгенерированные картинки от настоящих, то это значит, что мы плохо генерируем. Если победит генератор, то есть дискриминатор всегда говорит, что картинки настоящие, то толку от такого дискриминатора нету обучение не идёт. Поэтому стараются сделать так, чтобы они какое-то время соревновались на равных.
Два притёртых плоскость не дадут, нужно три. Собственно на этом основано шабрение методом трёх плит.
Насчёт льда не уверен, что его легко сделать плоским плоский. Замерзание происходит неравномерно.
Нитка же не очень практична. Она ровная, пока её не трогаешь.
Ну и тут идея не в том, чтоб получить прямую, а чтоб преобразовывать движение, что важно для механизмов.
Я видел как олимпиадников с хорошим кодом, так и олимпиадников с катастрофически плохим (хоть и работающим). Всё же знать алгоритмы и уметь их быстро программировать маловато.
Вы несколько раз ссылались на учебники. Можете назвать их, пожалуйста?
В учебниках приводят в качестве примера опыты МакКаллока и Питтса, которые подтолкнули к первым моделям, но это больше полувека назад было. (Кстати, модель эта, как потом оказалось, была слишком упрощённой и нейроны вообще не так работают.)
Сейчас нейронные сети нейронными просто по традиции называют. Для решения практических задач отдельные нейронные не моделируют.
В общем, там биологических идей практически и нет.
Насчёт учебников. Если эти учебники вышли до 2012 года, то можно их не читать. Если после, то очень осторожно. В этой отрасли даже прошлогодние статьи считаются устаревшими.
Формально, компания, в которой я работаю, — это не буква фаанг, но и далеко не «Рога и копыта». Значительная часть наших инженеров в фаанге работала. Так что мой и их опыт всё же релевантен. Про задачи в гугле тоже в курсе, не так уж и часто там приходится хитрые алгоритмы писать руками. Либо вам очень повезло с задачами.
Мой опыт показывает, что подходящих кандидатов меньше. И есть риск оттолкнуть кого-то, кто нам нужен.
Точно так же можно сказать, что оригинальная идея самолёта позаимствована у птиц. Но устроен же он совершенно иначе.
Свёртки (кстати, в единственном числе это всё же свёртка, а не свёрток) — это только один из элементов свёрточной сети. Табу действительно нет. Есть очень успешные модели на базе трансформеров.
Зрение устроено совершенно иначе. Каких-то биологических аналогов у современных моделей нет. Насчёт того, что в них нет идеи — это очень сильное утверждение.
А как работает всё это? А то кроме рекламы особо информации и нет.
С одной стороны приятно видеть, что 9 моих советов попали в список, а с другой начал задумываться, что в моей карьере пошло не так, что эти ситуации так легко возникают в памяти. :)
Милтон-Кинс всё же.
35 минут от вокзала Юстон в центре Лондона до Блетчли. Ну и потом два квартала пройти. :)
Много раз там был и ещё поеду. Рядом с Блетчли-парком отличный музей вычислительной техники.
И что? Цель — передать порядок числа, показать, что оно очень большое. Точное значение никакого интереса не представляет и на дальнейшие рассуждения никак не влияет.
Заметьте, что речь идёт о порядке, а не о значении. Это разные вещи. Так что ошибка именно около процента, а не в 64 раза.
Аналогия со сдачей неуместна, так как там как раз нужна точность.
Если мы говорим о числах, представимых с помощью 506 и 500 бит, то она большая, но это не значит, что 506 и 500 сильно отличаются.
Не очень понял, почему вы вычитаете одно из другого. Тут уместнее деление. Правда, разница в 6 двоичных порядков уже не так смотрится, как ворох цифр. :)
506 отличается от 500 всего на 1,2 %, так что вполне себе около. :)
Ну хоть не «куски мяса». :)
Поговаривают, что Маск хотел заправлять всей компанией, но ему отказали, после чего он ушёл.
Ка́рпати. Хоть Андрей и из Словакии, у него довольно распространённая венгерская фамилия, которую носит много известных людей (см., например, Википедию). На русском она обычно записывается с и на конце.
Ну хоть не Карпатый, как иногда пишут, и то ладно.
Вполне. llama.cpp бодро работает на CPU.
Можно и другие распределения брать, не только нормальное. Просто с нормальным часто проще теоретические выкладки делать.
Идея GAN в том, что это будет работать даже если мы не знаем.
То, что вы описали похоже на обучение с помощью классификатора. Как будто у нас есть классификатор цифра/мусор, и мы используем его, чтоб научиться генерировать только цифры. Но такой подход на практике работать не будет (но зато он хорошо работает для получения психоделических картинок).
GAN же устроен совсем иначе.
Дискриминатор не говорит, мусор получился или нет. У нас есть настоящие картинки с цифрами и то, что выдал генератор. Задача дискриминатора — сказать, где настоящее, а где сгенерированное. В 4 пункте мы точно знаем правильный ответ, так как выход генератора — это сгенерированная картинка по определению.
В итоге получается борьба. Функции потерь устроены так, что дискриминатор пытается различать, а генератор пытается сделать свой выход неотличимым. Цели противоположные.
Тут есть интересный момент. При обучении GAN мы не хотим, чтобы какая-то из сторон победила. Если победит дискриминатор, то есть он идеально отличает сгенерированные картинки от настоящих, то это значит, что мы плохо генерируем. Если победит генератор, то есть дискриминатор всегда говорит, что картинки настоящие, то толку от такого дискриминатора нету обучение не идёт. Поэтому стараются сделать так, чтобы они какое-то время соревновались на равных.