Машинное зрение: почему вам оно, возможно, не понадобится |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2019-04-02 15:51 Машинное обучение - до сих пор хайп. Его впихивают налево и направо. Новые направления бизнеса, автоматизация, роботизация, инвестиции, бла-бла-бла. Думаете автоматизировать что-то в своём продукте? Сделать что-то новое и всем нужное? Не надо! Реальность такова, что в большинстве ситуаций вам не нужно разрабатывать такие алгоритмы. Разработка сожрёт кучу сил и средств, а результата который вы ожидаете не будет, или его можно было достичь способами сильно проще. Я бы сказал, что в моей практике 80% ситуаций когда предпринимателю приходит идея "мне нужно распознавание" - оно ему не нужно. Или, как вариант, нужно, но не надо придумывать что-то своё, надо сначала взять что-то максимально готовое, и на его основе понять нужна ли разработка. Ниже небольшой гайд, который покажет какие симптомы помогут вам понять что вам пора одуматься. Не придумывайте велосипед Посмотрите на уже готовое. Это банально, но в 90% случаев оно будет. Распознавание лиц. Распознавание номеров. Учёт автомобилей. Распознавание документов. Распознавание товаров в магазинах. Распознавание эмоций. Учёт рабочего времени, проверка безопасности. Гуглите решения. На всё есть коммерческие решения. Дорого? В большей части случаев цена обоснована. Разработки в ML дорогие (об этом ниже). Потребителей готовых платить не очень много. Если вы не гигант, то это будет ощутимо. Сначала используйте готовое. Если поймете, что для вашего случая можно разработать самим, и оно бьётся по деньгам - разработаете. Но по моему опыту где-то 40% компаний которые разрабатывают решение в продакшн запускают что-то другое/не запускают совсем. Не вкладывайте деньги в разработку до тех пор пока не попробуете использовать уже готовое. Начните с эксперимента. Системы которую вы хотите сделать нет на рынке? Это повод задуматься почему её нет. Может она принципиально нереализуема. Посмотрите пробовал ли кто-то её создать. Анонсировали два года назад, но до сих пор не продают? Это нормальная ситуация для машинного зрения. Стоимость разработки Любая задача машинного зрения - работа с сырыми, бажными, вечно меняющимися фреймворками. С большими данными. С обучающими/распознающими серверами. Это долго. Пока что реально мало людей с руками не из задницы. Я помогал нанимать/собеседовать разработчиков машинного зрения в 3-4 разных компании. Знаком с большим числом руководителей отделов машинного обучения. Наша команда разработала решения для десятка фирм. По Москве новичка в ML вы сможете нанять за 130-170т.р. Человека с каким-то опытом в 1-2 проекта, но без понимания того как решать проблемы за 180-250. Те товарищи, компетенция которых не вызывает у меня вопросов, кто выстроил несколько систем от начала до конца, либо кто выигрывал на Kaggle, либо кто руководил крупной группой разработчиков - редко хотят меньше 300т.р. И это те кто нанимается на фултайм. Если вы хотите разовую разработку - время человека выйдет дороже. Думаете вам хватит одного человека? А кто будет писать обвязки/интерфейсы/подготавливать интеграцию с системой? Цену железа включать? Оно нужно топовое.Да, есть способы оптимизировать стоимость. Но они не всегда работают и имеют свои риски. Кстати, про риски Любая ML система несёт его в себе огромное их число. Вам нужна точность работы 95%? Никто вам её не будет гарантировать. Да, скорее всего оценят порядок. Но ни один здравый разработчик не пропишет в договор высокие точности в качестве метрики приёма задачи. А кто такое скажет - не компетентен, или вас обманывает. Никто не знает как в продакшне поведёт себя какая-то система, даст она 90% или 95%. У нас бывали проекты где точность была выше и ниже того что планировали. Да и точность - это не единственный критерий. Даже если вы написали какую-то точность, система её достигает - далеко не факт, что вам её хватит. Любая система машинного зрения несёт интеграционные риски. Если на этапе "A" система генерирует 5% ошибок, а на этапе "B" - ещё 5%, это не значит, что выход "А" поданный в "B" даст вам 10%. Видел примеры когда результат мог быть и 30% ошибок. Если есть готовая система на рынке - вы хотя бы можете оценить то какие точности достижимы. Можете прикинуть сложность системы. Если вы делаете с нуля - все риски лежат на вас. И да, вернитесь к пункту про велосипед. Может такая система невозможна? Рабский труд Простите, но очень часто нанять неквалифицированного разметчика дешевле. Яндекс.Толока имеет цену рабочего часа ~100 рублей. Нанять разметчика где-нибудь в депрессивном городе в России - будет стоить ~20 тысяч рублей в месяц. Знаю фирмы которые организуют разметку данных не в России, а в ближнем зарубежье, где много русскоговорящих. Зарплата в месяц там будет ~13-15 т.р.. Сравнили стоимость с п.2? Там вам лишь аренда одного сервера в эту цену встанет. Я знаю бизнесы где машинное зрение не зашло, было дешевле держать работников. И ещё больше работающих систем, где машинное обучение это лишь способ повысить эффективность работников. Например если в 70% система правильно принимает решение, то вы повышаете эффективность работников на 50-60%. Такие точности встречаются при распознавании чеков, распознавании товаров в супермаркетах. Как я понимаю, автоматически call-центры примерно там же, хотя это не моя тематика. Если у вас поток обслуживает 50 операторов, а вы хотите сократить расходы на них - вот тут то и повод внедрить машинное обучение. Не забывайте, что без человека который размечает данные - не обойдётся ни одна система машинного обучения. Хотите разработать что-то своё? Сначала наймите оператора, оцените теоретически доступную эффективность, соберите данные для обучения. И лишь потом внедряйте машинное обучение. Где-то оно вытеснит оператора. А где-то точность ML будет ниже продуктового качества и оператора придётся оставить. Мечты о захвате рынка Вы думаете что сейчас сделаете удобное решение и захватите рынок? Все будут его использовать? Скорее всего нет. Я видел много систем машинного зрения. И, пожалуй, лишь в биометрии есть востребованность и много заказчиков. Немного есть в распознавании номеров/технических данных. Все остальные системы которые я помогал собирать - в России не нужны. Их использует лишь тот кто разработал под себя. Минимальное число интеграций по рынку. Да, можно разрабатывать для Долины/для Европы. Там такое проще прокатывает. Но есть куча других сложностей, которые я тут не рассматриваю и в которых я куда менее компетентен. Поддержка Думаете вы сделаете готовое решение и всё? Нет. Нейронные сети устаревают. То что вчера стоило X через год будет стоить X/2. Появится больше готовых решений, лучше точность.Вам придётся поддерживать свою систему и конкурировать на рынке. Без поддержки конкуренты сделают что-то лучше. Возможно наняв ту же команду которую вы уволили. Итого Несколько ситуаций когда вам нужно разработать что-то своё:
Обычно я пишу статьи на Хабре. Но в этой целевая аудитория скорее не хабр. Так что попробую тут. Если понравилось - пишите, могу в дальнейшем продолжить. Источник: vc.ru Комментарии: |
|