Яндекс, видимо, действительно такую фичу не предоставляет, но есть сторонние ресурсы, которые по ссылке на Я.видео (нати можно по кнопке Поделиться) могут выдать ссылку на скачивание. Savefrom, например.
Так фишка-то как раз в том, что не надо обладать доменной экспертизой для придумывания фичей — сеть сама выучит. Да, нужно как-то подобрать архитектуру, но на сей счёт я ничего сказать не могу, кажется, экспертом в области для этого быть не очень надо. Опять же, свёрточные сети так хорошо работают на картинках из-за их непрерывной природы: 2 пикселя в рзных частях изображения, скорее всего, никак не связаны между собою.
Использование машины опорных векторов на выходе я ничуть не удивительно. Кто-то оставляет простой softmax, кто-то ставит ещё 2-3 слоя полносвязной сети, а можно поставить softmax, обучить сеть и заменить выход на лес случайных деревьев.
Тут основная часть сети учит лишь выделение фичей из входов, поэтому и на другие входы (достаточно похожие, MNIST на ImageNet'е не поможет) её можно перенести.
Насчёт проектов соглашусь, а вот образовательные программы, как мне кажется, от отъезда инженеров не сколлапсируют. Они не так сильно зависят от самих разработчиков (скорее от спонсорской помощи и курировании лабораторий и уч. процесса), хотя возможностей для практики у студентов будет сильно меньше, да.
Ну закрытие офиса JB ничего особо означать не будет — они никак не привязаны к Рунету и могут продавать свои продукты остальному миру (ещё и за доллары). Яндекс же сильно зависит от российского IT сегмента, да и прибыль у него, скорее всего, в рублях. Так что я даже не знаю, насколько катастрофичными должны быть события в РФ, чтобы Я перенёс разработчиков в другую страну.
А случайное число от 0 до 1 я могу сгенерировать ещё быстрее. Почему в оценке, полученной от классификатора будет больше смысла, чем в этом случайном числе? Как я уже говорил, эксперимент нужно проводить аккуратно.
Кажется все началось с того как вы мне пытались поведать, что задача нахождения близких веток решается дипленингом… Но потом признали что это нее так.
Да, а в процессе обсуждения Вами был сделан ряд высказываний, которые мы сейчас и обсуждаем. Свой промах я признал ещё восьмью комментариями выше.
Много флуда, но не слова дела
Количество цитирований в моих ответах сокращается, значит, вопросы проясняются и процесс медленно, но верно сходится.
Каким рассуждениям? Я пока преимущественно Ваши ошибки исправляю.
Если Вам интересны реальные примеры Deep Learning'а, с которого я начал, то то же распознавание номеров домов в Google Street View (и я так и не получил никаких убедительных аргументов в пользу простоты этой задачи, кроме странного аргумента про размерность входа. Вариативность-то высока) Или, вот, детектирование пешеходов, например.
А не хотите ничего делать. Рукописные цифры. Написанные вашей рукой.
Я считаю, что нужно сначала думать, а потом делать. Так вот, подумаем же: зачем мне это делать? Зачем мне тратить кучу времени на создание базы собственных символов, их оцифровку, сегментацию и конвертацию в подходящий формат для получения заведомо нерепрезентативной оценки точности классификатора? А ведь для сравнения точности классификатора с человеческой мне потребуется «контрольный» человек, заведомо незнакомый с моим почерком. Проведение хорошего эксперимента не так просто, как кажется.
И сразу к вопросу, где вы такое говорили:
Вы продолжаете путать кванторы всеобщности и существования. Каким-то образом Вы сделали вывод
— «Вот конкретная задача, в которой роботы алгоритмы уже победили» влечёт «алгоритмы работают лучше человека».
Якобы из существования задачи, на которой алгоритмы работают лучше, следует то, что они будут работать лучше и на всех других задах, т.е. как будто для любой задачи существует алгоритм, решающий её лучше человека (И сразу пытаетесь опровергнуть это, предложив мне другую задачу про распознавание букв в тексте, про которую я ни слова не говорил).
Я так понимаю, что с первым пунктом моего второго комментария этой ветки, гласящим о том, что SVM не имеет отношения к Deep Learning'у и проигрывает алгоритмам последнего, мы разобрались?
MNIST нормальные конференции уже лет 5 как не принимают как тему докладов
Что значит, «не принимают как тему докладов»? Как можно принять датасет как тему доклада? На конференциях, если что, рассказывают про новые модели, которые тестируются на нескольких датасетах. Ну и какие конференции тогда нормальные на ваш взгляд? Вот MS ставит ICML сразу после NIPS'а, а, согласно вышеприведённой мною ссылке, SotA на MNIST'е был представлен именно там и даже не в прошлом десятилетии, а всего год над.
Задачка по которой KNN выдаёт 99% нерепрезентативна.
Какой KNN? На упомянутой выше странице ЛеКуна чистые ближайшие соседи (без предобработки) имеют самое лучшее 2.83% ошибки. Все остальные методы содержат какой-то feature engineering.
сделайте программу, распознающую рукописный текст через MNIST
Вы специально не видите разницы между распознаванием текста и цифр?
И посмотрите, насколько ваш тезис «алгоритмы работают лучше человека» работает.
Где я такое высказывал? Покажите, пожалуйста. Кажется, Вы путаете кванторы существования и всеобщности.
Времени разбираться нет, но судить и высказывать мнение на хабре опираясь на синтетическую задачку не имеющую к реальности никакого отношения очень хочется…
Кого судить? За что судить?
Все мои высказывания подтверждены ссылками. А вот Вы пока делаете ничем не подкреплённые заявления, перескакивая с одной темы на другую (Сначала SVM был Deep Learning'ом, потом он получил SotA на MNIST'е, а теперь MNIST стал никуда негодным датасетом). При этом мне приходится читать Вам текст из Ваших же ссылок, которые ни в коем разе не являются аргументами в Вашу пользу (Deep Learning SVM в гугле мне выдал обычную глубокую сеть с дополнительным слоем на конце, по ссылке на videolectures обсуждается какая-то модификация, SotA на MNIST'е ни разу не у SVM'а, а у ConvNet'ов).
А это страничка создателей MNIST с теми алгоритмами, которые они верифицировали. Топовые — SVM.
Как Вы топовость измеряете? В самом низу таблички я вижу, что у комитета из 35 сверточных сетей ошибка всего 0.23. Какой из приведённых там SVM'ом работает лучше?
Я могу и 100% написать алгоритм)
И статью, которую примут на топовую конференцию, напишете? Ну, приступайте тогда.
В MNIST всего 17 типов символов получается после автоматической группировки.
Какой группировки? По какому критерию? Почему Вы решили, что этот критерий адекватен? Не так давно я моделировал MNIST как смесь распределений – так там и 100 компонент можно было найти. А уж с точки зрения вложенного в цифру смысла там вообще всего 11 вариантов, вот только не найти его.
Я надеюсь вы понимаете, почему это не аргумент?
В задачке Вашей разбираться у меня, к сожалению, сейчас времени нет, но мой аргумент в пользу того, что алгоритмы могут работать лучше человека, вполне годится. Доказательство путём предъявления контр-примера называется.
Выглядит интересно, спасибо, посмотрю. Тем не менее, это какое-то расширение SVM'а, а не тот, что всюду используется.
MNIST и любая задача выделения цифр? 10 ситуаций + 1 ситуация на ложняки.
Следуя этой логике, в Вашем случае ситуаций всего 2: ветки накладываются на провода или нет. Тут ведь такое дело, что одна и та же цифра может быть написана несколькими различными способами. Даже при маленьком числе классов вариативность может быть очень велика.
А наилучшую точность на MNIST даёт SVM.
Ссылка? Мне гугл на запрос mnist sota выдаёт эту страничку, где сплошь нейросети.
Но только MNIST не имеет с реальными задачами ну вот вооооообще ничего общего.
А какая разница, имеет или нет? Вот конкретная задача, в которой роботы алгоритмы уже победили. Скоро и ImageNet подтянется.
Тут вопрос не том, искусственен ли датасет, а в том, может ли машина решать задачи зрения лучше человека. И лично я не вижу никаких преград этому, лишь вопрос времени и развития науки и техники.
Вы мне самому предлагаете найти статью, в которой SVM бы назывался Deep Learning'ом? Первые 3 результата моей выдачи рассказывают о том, как некий Yichuan Tang взял глубокую (свёрточную?) сеть и добавил ещё один слой в виде SVM'а. А если бы он добавил поверх логистическую регрессию, наивного байеса и методы ближайших соседей, они бы тоже Deep Learning'ом стали?
Приведите пример задачи плана «определить ветки, расположенные близко к проводам» решённые через свёрточные сети.
Я компьютерным зрением не занимаюсь и за литературой не слежу, но мне кажется, что использовать ConvNet'ы здесь — overkill. Просто потому что здесь не выполняется базовая гипотеза Deep Learning'а: нет иерархичности признаков. Мотоциклы состоят из корпуса, колёс и руля, которые, в свою очередь, дальше раскладываются вплоть до каких-то комбинаций контуров. У вас же есть только провод и ветки сами по себе; ни из чего они не состоят, поэтому и толку от глубоких сетей нет. С другой стороны, в Вашей задаче понятнее, как её решать (в отличие от мотоциклов): найти провода и проследить их по всей картинке на предмет пересечения с ветками. Понятно, что дьявол в деталях и как найти провода, так и ветки задача нетривиальная, но тут уж нужно думать (например, провода не висят в воздухе сами по себе, они цепляются к чему-нибудь. Вот это что-то можно и искать. Ветки обычно имеют либо сильно нерегулярную структуру, либо покрыты обильной зеленью).
Но это очень простая задача с очень низкой размерностью
Что Вы понимаете под размерностью? Вариативность у этих картинок очень высокая (посмотреть хотя бы на примеры из самой статьи). Кажется, различных вариантов написания номера будет даже больше, чем возможных конфигураций деревьев и проводов (особенно в случае аэросьёмки).
Имея задачу где входных ситуаций не 33 и не 150
А в какой задаче, решаемой машинным обучением, входных ситуаций 33 или 150 или, пусть даже, меньше 1 000 000?
ML-алгоритмы не работают лучше, чем человек с визуальными данными
Это почему? Вот, на MNIST'е эти алгоритмы уже обходят человека по точности.
Нет, deep learning это ни в коем разе не про большую размерность (входа). И уж тем более SVM не имеет к нему отношения (хотя где-то проскакивала статья о «глубоких» ядрах, но я её не читал).
Ключевой характеристикой DL являются глубокие (в смысле количества слоёв) нейросети (а в случае с convnet'ами, даже не нейронные, а свёрточные), а фишкой является то, что такая сеть сама выучит все эти SIFT'ы и HoG'и.
То, о чём Вы говорите — классический подход к задаче компьютерного зрения. Однако, state-of-the-art давно перешёл от hand-engineered признаков к свёрточным сетям.
Однако, тут следует оговориться о решаемой задаче. Если детектировать нужно всего один заранее известный объект, то действительно есть смысл придумать хитрых фичей, собрать кучу данных и обучить тот же SVM. Однако, если стоит задача решить ImageNet, то, как показывают события последних лет, далеко с таким подходом не уехать.
Ну и я не знаю, можно ли обскакать в первом случае придуманные фичи, если использовать предобученную свёрточную сеть.
Что Вы понимаете под видеоаналитикой? Вы же наверняка слышали про Deep Learning — кажется, современный CV движется в сторону feature-engineering-free подхода.
Ну а в этом самом диплёрнинге и дата биг, и вычисления очень тяжелые.
в самом деле, описывать возможное, мыслимое макрособытие как определяемое единственным числом (его вероятностью) в то время, как оно вызывается причинами — как-то глупо
Почему глупо? А описывать его десятью числами лучше? А 101000000 числами?
Если Вы вдруг считаете, что чем больше чисел, тем лучше, то спешу напомнить о том, что счётное объединение счётных множеств счётно, т.е. 101000 чисел имеют ту же выразительную мощность, что и одно число.
Конечно, всё хорошо в мире математики, где есть бесконечности и даже континуум, но с модельной точки зрения Ваш аргумент неубедителен.
Ну свёрточные сети — это практически стандарт в сегодняшних исследованиях на тему Computer Vision. Наборы данных, скорее всего, публично доступные (какие ещё могут взять учёные из Стенфорда?), которых наверняка не так уж и много.
NYT называет эти группы независимыми. Ну и, кажется, в случае кооперации было бы логично включить Andrej Karpathy в список соавторов.
Использование машины опорных векторов на выходе я ничуть не удивительно. Кто-то оставляет простой softmax, кто-то ставит ещё 2-3 слоя полносвязной сети, а можно поставить softmax, обучить сеть и заменить выход на лес случайных деревьев.
Тут основная часть сети учит лишь выделение фичей из входов, поэтому и на другие входы (достаточно похожие, MNIST на ImageNet'е не поможет) её можно перенести.
Да, а в процессе обсуждения Вами был сделан ряд высказываний, которые мы сейчас и обсуждаем. Свой промах я признал ещё восьмью комментариями выше.
Количество цитирований в моих ответах сокращается, значит, вопросы проясняются и процесс медленно, но верно сходится.
Если Вам интересны реальные примеры Deep Learning'а, с которого я начал, то то же распознавание номеров домов в Google Street View (и я так и не получил никаких убедительных аргументов в пользу простоты этой задачи, кроме странного аргумента про размерность входа. Вариативность-то высока) Или, вот, детектирование пешеходов, например.
Я считаю, что нужно сначала думать, а потом делать. Так вот, подумаем же: зачем мне это делать? Зачем мне тратить кучу времени на создание базы собственных символов, их оцифровку, сегментацию и конвертацию в подходящий формат для получения заведомо нерепрезентативной оценки точности классификатора? А ведь для сравнения точности классификатора с человеческой мне потребуется «контрольный» человек, заведомо незнакомый с моим почерком. Проведение хорошего эксперимента не так просто, как кажется.
Вы продолжаете путать кванторы всеобщности и существования. Каким-то образом Вы сделали вывод
— «Вот конкретная задача, в которой
роботыалгоритмы уже победили» влечёт «алгоритмы работают лучше человека».Якобы из существования задачи, на которой алгоритмы работают лучше, следует то, что они будут работать лучше и на всех других задах, т.е. как будто для любой задачи существует алгоритм, решающий её лучше человека (И сразу пытаетесь опровергнуть это, предложив мне другую задачу про распознавание букв в тексте, про которую я ни слова не говорил).
Что значит, «не принимают как тему докладов»? Как можно принять датасет как тему доклада? На конференциях, если что, рассказывают про новые модели, которые тестируются на нескольких датасетах. Ну и какие конференции тогда нормальные на ваш взгляд? Вот MS ставит ICML сразу после NIPS'а, а, согласно вышеприведённой мною ссылке, SotA на MNIST'е был представлен именно там и даже не в прошлом десятилетии, а всего год над.
Какой KNN? На упомянутой выше странице ЛеКуна чистые ближайшие соседи (без предобработки) имеют самое лучшее 2.83% ошибки. Все остальные методы содержат какой-то feature engineering.
Как бы то ни было, ImageNet, кажется, уже не за горами.
Вы специально не видите разницы между распознаванием текста и цифр?
Где я такое высказывал? Покажите, пожалуйста. Кажется, Вы путаете кванторы существования и всеобщности.
Кого судить? За что судить?
Все мои высказывания подтверждены ссылками. А вот Вы пока делаете ничем не подкреплённые заявления, перескакивая с одной темы на другую (Сначала SVM был Deep Learning'ом, потом он получил SotA на MNIST'е, а теперь MNIST стал никуда негодным датасетом). При этом мне приходится читать Вам текст из Ваших же ссылок, которые ни в коем разе не являются аргументами в Вашу пользу (Deep Learning SVM в гугле мне выдал обычную глубокую сеть с дополнительным слоем на конце, по ссылке на videolectures обсуждается какая-то модификация, SotA на MNIST'е ни разу не у SVM'а, а у ConvNet'ов).
И статью, которую примут на топовую конференцию, напишете? Ну, приступайте тогда.
Какой группировки? По какому критерию? Почему Вы решили, что этот критерий адекватен? Не так давно я моделировал MNIST как смесь распределений – так там и 100 компонент можно было найти. А уж с точки зрения вложенного в цифру смысла там вообще всего 11 вариантов, вот только не найти его.
В задачке Вашей разбираться у меня, к сожалению, сейчас времени нет, но мой аргумент в пользу того, что алгоритмы могут работать лучше человека, вполне годится. Доказательство путём предъявления контр-примера называется.
Выглядит интересно, спасибо, посмотрю. Тем не менее, это какое-то расширение SVM'а, а не тот, что всюду используется.
Следуя этой логике, в Вашем случае ситуаций всего 2: ветки накладываются на провода или нет. Тут ведь такое дело, что одна и та же цифра может быть написана несколькими различными способами. Даже при маленьком числе классов вариативность может быть очень велика.
Ссылка? Мне гугл на запрос mnist sota выдаёт эту страничку, где сплошь нейросети.
А какая разница, имеет или нет? Вот конкретная задача, в которой
роботыалгоритмы уже победили. Скоро и ImageNet подтянется.Тут вопрос не том, искусственен ли датасет, а в том, может ли машина решать задачи зрения лучше человека. И лично я не вижу никаких преград этому, лишь вопрос времени и развития науки и техники.
Я компьютерным зрением не занимаюсь и за литературой не слежу, но мне кажется, что использовать ConvNet'ы здесь — overkill. Просто потому что здесь не выполняется базовая гипотеза Deep Learning'а: нет иерархичности признаков. Мотоциклы состоят из корпуса, колёс и руля, которые, в свою очередь, дальше раскладываются вплоть до каких-то комбинаций контуров. У вас же есть только провод и ветки сами по себе; ни из чего они не состоят, поэтому и толку от глубоких сетей нет. С другой стороны, в Вашей задаче понятнее, как её решать (в отличие от мотоциклов): найти провода и проследить их по всей картинке на предмет пересечения с ветками. Понятно, что дьявол в деталях и как найти провода, так и ветки задача нетривиальная, но тут уж нужно думать (например, провода не висят в воздухе сами по себе, они цепляются к чему-нибудь. Вот это что-то можно и искать. Ветки обычно имеют либо сильно нерегулярную структуру, либо покрыты обильной зеленью).
Что Вы понимаете под размерностью? Вариативность у этих картинок очень высокая (посмотреть хотя бы на примеры из самой статьи). Кажется, различных вариантов написания номера будет даже больше, чем возможных конфигураций деревьев и проводов (особенно в случае аэросьёмки).
А в какой задаче, решаемой машинным обучением, входных ситуаций 33 или 150 или, пусть даже, меньше 1 000 000?
Это почему? Вот, на MNIST'е эти алгоритмы уже обходят человека по точности.
Ключевой характеристикой DL являются глубокие (в смысле количества слоёв) нейросети (а в случае с convnet'ами, даже не нейронные, а свёрточные), а фишкой является то, что такая сеть сама выучит все эти SIFT'ы и HoG'и.
То, о чём Вы говорите — классический подход к задаче компьютерного зрения. Однако, state-of-the-art давно перешёл от hand-engineered признаков к свёрточным сетям.
Однако, тут следует оговориться о решаемой задаче. Если детектировать нужно всего один заранее известный объект, то действительно есть смысл придумать хитрых фичей, собрать кучу данных и обучить тот же SVM. Однако, если стоит задача решить ImageNet, то, как показывают события последних лет, далеко с таким подходом не уехать.
Ну и я не знаю, можно ли обскакать в первом случае придуманные фичи, если использовать предобученную свёрточную сеть.
Ну а в этом самом диплёрнинге и дата биг, и вычисления очень тяжелые.
Если Вы вдруг считаете, что чем больше чисел, тем лучше, то спешу напомнить о том, что счётное объединение счётных множеств счётно, т.е. 101000 чисел имеют ту же выразительную мощность, что и одно число.
Конечно, всё хорошо в мире математики, где есть бесконечности и даже континуум, но с модельной точки зрения Ваш аргумент неубедителен.
NYT называет эти группы независимыми. Ну и, кажется, в случае кооперации было бы логично включить Andrej Karpathy в список соавторов.