Comments 25
На WWDC были озвучены впечатляющие показатели Create ML и Core ML 2 на примере приложения Memrise. Если раньше на обучение одной модели с использованием 20 тысяч изображений требовалось 24 часа, то Create ML сокращает это время до 48 минут на MacBook Pro и до 18 минут — на iMac Pro. Размер обученной модели уменьшился с 90MB до 3MB.
Можно, пожалуйста, описание эксперимента? Какие модели и сеттинги обучения сравнивались? Описанные цифры звучат фантастически.
Почему стандартная вещь, которую все и так делают, подаётся как какая-то невероятная киллер фича CreateML?
Киллер-фича это или нет — вопрос в сторону Apple :)
Плюс в том, что они вшили много предобученных моделей в систему, которые можно частично реиспользовать, не поставляя с приложением все 200–300МБ. Для мобильных устройств и подгрузки на ходу это довольно актуально.
MobileNet-ы весят по 20 Мб. Прунинг есть, опять же. Квантификация. Всё же лучше, чем заниматься deep learning на внутреннем фреймворке от Apple.
Инфраструктура глубокого обучения движется в сторону того, что на embedded девайсах и на мобильных всё делается на TF, а при серверной разработке — на TF/Keras или PyTorch. Но нет, Apple пытается перетянуть на себя одеяло.
Киллер-фича это или нет — вопрос в сторону Apple :)
Ну вообще это вопрос в сторону автора, который с восторгом пишет про сокращение времени на обучение с 24 часов на 48 минут.
Несомненно это расширит сферу применений, а вот полезные они будут или нет, покажет время.
Вы говорите, что Эппл зря выкатила собственную реализацию машинного обучения в прошлом году, вместо того, чтобы остановиться на гугловской, которую Гугл тоже выкатил в прошлом году?
в прошлом году
CreateML вышел в июне 2018. Tensorflow for mobile появился несколько лет назад. У вас проблемы с таймлайнами.
вместо того, чтобы остановиться на гугловской
Ну, если бы Apple развивали CoreML как обёртку над нормальными ML-фреймворками, а не выдумывали очередное «машинное обучение через GUI мышкой», то это было бы лучше и для ML инженеров, и для юзеров, которые бы получали потенциально более качественные алгоритмы, но, очевидно, для Apple это хуже.
Apple зря хвастаются «прорывными» достижениями
В каком месте они хвастаются и вообще где написано что-то про «прорывность» достижений?
они являются абсолютными аутсайдерами
А юзабельный Face ID на кастомном нейронном сопроцессоре они, тем не менее, первыми запилили...
CoreML вышел в июне 2017-го, TF Mobile — в феврале 2017-го.
нормальными ML-фреймворками
В чем «ненормальность» эппловского фреймворка? Алгоритмы обучения нейронных сетей не Гугл изобрёл, если что.
машинное обучение через GUI мышкой
В MATLAB машинное обучение аналогично выглядит, даже аналог playgrounds есть. Просто Гуглу, как обычно, лень допиливать свои инструменты, поэтому в туториалах по TF юзается консолька и brew. Логично, что Apple запилила свой фреймворк с нормальной интеграцией в свои инструменты.
В каком месте они хвастаются и вообще где написано что-то про «прорывность» достижений?
В том отрывке статьи, к которому я изначально прикопался, и в демо на WWDC собственно.
CoreML вышел в июне 2017-го, TF Mobile — в феврале 2017-го.
Сейчас бы называть CoreML фреймворком машинного обучения…
А юзабельный Face ID на кастомном нейронном сопроцессоре они, тем не менее, первыми запилили...
Breaking news! Apple представили первую в мире идентификацию лица!
Ох, стоп. Они же всего лишь навсего стали первыми, кто смог достаточно хорошо распиарить эту фичу и имели свои телефоны, в которые это можно было засунуть.
А так face recognition в том или ином виде был раньше и у Samsung, и у Microsoft.
В чем «ненормальность» эппловского фреймворка? Алгоритмы обучения нейронных сетей не Гугл изобрёл, если что.
В том, что это high-level blackbox фреймворк, который позволяет делать очень ограниченный набор вещей и работает только для нескольких стандартных задач. Сделать на нём что-то кастомное — задача для любителей жёстких извращений.
Также этот фреймворк не является кроссплатформенным. Т.е. если у вас веб, iOS и Android-приложения, то вам придется делать ML-часть отдельно, что не особо логично. И в конце концов он на свифте, который является мягко говоря не самым подходящим языком для ML (для начала потому что большинство дата саентистов его не знают).
В MATLAB машинное обучение аналогично выглядит
Во-первых, лол, нет. Во-вторых, никто сейчас Matlab-ом не пользуется.
Просто Гуглу, как обычно, лень допиливать свои инструменты, поэтому в туториалах по TF юзается консолька и brew.
Не поверите, в реальности юзается не «консолька», а Python, и не потому, что «Гуглу лень допиливать инструменты», а потому что для чего-то большего, чем «Ну вот стандартная архитектура с выходным слоем под классификацию, вот папка картинок — обучайся», нужно реально кодить, а не в менюшке выбирать аугментацию из чекбокса.
Ох, стоп. Они же всего лишь навсего стали первыми, кто смог достаточно хорошо распиарить эту фичу
лицорука.
заслуга эппла в том, что была бесшовная миграция с touchid -> faceid. и банковские апп спокойно используют его для подтверждения операций. А на ведре и винде и face recognition только и служит для анлока девайса.
прям смешно стало за пользователя самсунга.
И где в статье говорится про прорывность достижений? В статье говорится про прорывность для данного конкретного фреймворка. Кстати интересно бы сравнить его с питонскими — что-то мне подсказывает, что нативный Swift в сравнении с ними вполне может быть прорывным по скорости.
face recognition в том или ином виде был раньше и у Samsung, и у Microsoft
В том или ином виде face recognition был ещё до появления MS и Samsung. Apple сделали из него юзабельный продукт, а не маркетинговый buzzword.
Сделать на нём что-то кастомное — задача для любителей жёстких извращений
Между Create ML и гугловским ML Kit существенных различий не обнаружено так-то.
если у вас веб, iOS и Android-приложения, то вам придется делать ML-часть отдельно
Традиционная дилемма "сделать медленно и криво, но кроссплатформенно" или "сделать быстро и красиво, но под конкретную платформу".
лол, нет
Сильный аргумент, нечего сказать даже.
никто сейчас Matlab-ом не пользуется
MATLAB в топ-10 PYPL, в топ-15 TIOBE — нормально пользуются, особенно в США и Европе. На аутсорсе Python с его тулзами более популярен — из-за дороговизны MATLAB и наличия дешевых code monkey, времени которых не жалко.
нужно реально кодить
Удобные инструменты для создания базовых вещей никак не мешают кодить. Разработка превращается в треш, если для того, чтобы поставить тулзу, тебе нужно тащить левую приблуду вместо штатных средств разработки.
Кстати интересно бы сравнить его с питонскими — что-то мне подсказывает, что нативный Swift в сравнении с ними вполне может быть прорывным по скорости.
Ну, так-то что свифт что питон являются только обертками для кода на нормальном языке, мерять скорость интеропа с плюсам — такая себе прорывность.
И да, эпплу бы сначала язык стабилизировать, а уж потом использовать его для «новых и революционных» ML библиотек. Но яблоку это нафиг не надо, яблоку надо намертво заковать разработчика в кандалы своих проприетарных тулзов, как и в случае с тем же xcode.
en.wikipedia.org/wiki/David_Abrahams_(computer_programmer)
Возможно, что Swift будет улучшенной версией C++
яблоку надо намертво заковать разработчика в кандалы своих проприетарных тулзов
Да пользуйтесь любыми колхозными «свободными» тулзами, кто вам мешает. Только опенсоурс-сообщество ниасилило даже годную среду разработки на свет произвести, не говоря уже обо всем остальном, потому как его участникам больше нравится проповедовать высокие идеалы в комментах, чем кодить. А потому имеем, что имеем: хочешь нормально работать и ценишь своё время — юзай проприеритарщину, хочешь ковырять консоль, конфы и исходники вместо выходных с друзьями или с семьёй — юзать опенсорс.
1) CreateML — набор тулзов для обучения на десктопе, а TFM/TFL — работать с моделями на мобилке. — это разные вещи. CoreML как раз и появился раньше TFM\TLM в iOS из коробки.
2) «если бы Apple развивали CoreML как обёртку над нормальными ML-фреймворками» — Apple использует Turi, разработчиков которых они купили несколько лет назад, афаик Turi появилась раньше ТФ.
Отсюда вопрос — сфигали ТФ единственное правильные тулзы для МЛ-ДЛ?
Отсюда вопрос — сфигали ТФ единственное правильные тулзы для МЛ-ДЛ?
Разумеется ТФ не единственная правильная тула для ML/DL. Есть же еще PyTorch, CNTK, Caffe, LightGBM, CatBoost, XGBoost, libSVM и великое множество других нормальных библиотек.
Их отличительной особенностью является то что они открытые, расширяемые, кроссплатформенные и не пытаются замкнуть пользователя в своей экосистеме и ограничить создание моделей до «press X to train model».
2) кроссплатформеность — это сказка в пользу бедных. или как пишет Стивен Синофски — если вы используете кроссплатформенность, значит вы решаете свои проблемы, а не проблемы пользователя.
Эппловое решение хорошо тем, что на эппловом устройстве оно будет работать эффективнее, чем фигзнаеткак оптимизированный тензорфлоу.
и будет смешно смотреть, если тензорфлоу аппы будут сваливаться на CPU вместо GPU на каких нить сяоми с МТК.
Почему стандартная вещь, которую все и так делают, подаётся как какая-то невероятная киллер фича CreateML?
Потому что это политика Apple, они всегда так делают :)
И да, мне показалось или вы утверждаете что у того же гугла в проде не используется ML пайплайны на их же тулах?
Инструменты Apple для машинного обучения