All streams
Search
Write a publication
Pull to refresh
4
0

Пользователь

Send message
Да, если что, на гиктаймс проскакивала статья про отпугивание котов при помощи DL. Как первое приближение можете взять локализацию для тараканоловушки оттуда
Могу перестать спорить, это уже становится довольно скучно и однообразно, если честно =(
RnD дорогой не потому, что Deep learning такой плохой, а потому, что кейз «распознай таракана в темноте между кучей объектов» довольно сложен и не тривиален. Но это не самая большая проблема. Я даже думаю что некоторые успехи можно даже получить используя классические методы компьютерного зрения. Большая часть средств уйдет на сам инструмент уничтожения тараканов. Не окупится это все дело потому, что себестоимость железки будет большой, относительно классических средств. При этом физически уничтожать тараканов это не так эффективно как их травить. Т.е. мы получаем дорогое и не эффективное средство которое надо разработать, против вроде как хорошего и дешевого которое уже существует.
Не стоит сваливать на DL/CV недостатки бизнес-модели.
> Я и возражал. Deep Learning и «нейросети» не имеют никакого отношения ни к живым организмам, ни к ИИ.
Ну я этого нигде не утверждал. И это не мешает сетям показывать лучший результат во многих задачах.
Подозреваю, чтобы сделать «распознавание как у котенка» надо бы хорошо понимать как собственно оно у котенка работает. И даже после этого нет гарантии что получится нечто лучше существующих методов.

>Но опять, сделайте ловушку для тараканов, станете миллиардером
Для начала — я не специалист по Deep Learning/Computer Vision. Ну и подозреваю, что себестоимость роботизированных систем для истребления тараканов и стоимость RnD просто не позволят выйти даже в плюс, не то чтобы заработать миллиарды.

Если что — я никого не минусую.
>Все «нейросетки», которые попадались мне, удается обмануть легко
Если вы работали с компьютерным зрением, то должны понимать, что там практически нет задач которые были бы решены полностью. Всегда есть некоторый предел. Новые методы этот предел отодвигают. Для многих задач, на текущий момент самые продвинутые методы основанны на Deep Learning.
Та же фигня с распознаванием голоса.

На телефоне точно есть Machine Learning. Именно с его помощью происходит поиск лиц в кадре. В те времена когда я интересовался Computer Vision лучше всего эту задачу решали каскады. Теперь, возможно это делают сетки.
Всякие распознавалки текста с большой вероятностью используют внутри собственно сверточные сети.
Prisma — это тоже сети.
Подозреваю что можно еще много примеров найти, но мне лень.

>И ещё разок. Котенка никто не учит, что такое собака.
А какая разница как кто учит котенка? «Биологические» нейронные сети и то что мы называем Deep Learning это довольно разные вещи.
Вобще-то самое прямое. И к науке и к бизнесу. Для решения задач классификации/распознавания/etc есть огромное количество подходов разной степени паршивости. Для того, чтобы эту самую степень паршивости определить требуется некоторый объективный критерий. Один из таких критериев — точность алгоритма на известных и публично доступных датасетах (MNIST, CIFAR, ImageNet, и т.д.).
Это же вроде как autodiff либы, корректно ли будет сравнивать их с аналитическим выводом?
Ну как бы разные сетки в последние годы берут первые места в соревнованиях по распознаванию/локализации объектов
https://rodrigob.github.io/are_we_there_yet/build/classification_datasets_results.html
>При разработке API реализованы алгоритмы машинного обучения. Поэтому механизм распознавания речи самосовершенствуется в процессе работы.
Я конечно извиняюсь, но то, что при распознавании используется ML далеко не всегда означает что распознавалка прокачивается в процессе работы.
В плюсах все так же. Единственное «но» — цикл может использовать очень много переменных из текущего контекста, передавать их будет не очень удобно.
Как минимум быстрое прототипирование в области scientific computing/machine learning/data mining, благо есть целая прорва либ (scipy/sympy/sklearn/pandas/theano/tensorflow/xgboost/opencv/etc) которые так или иначе увязанны вместе при помощи NumPy
Их довольно много, на самом деле — TensorFlow/Theano/Keras(поверх предыдущих двух)/etc
Большая часть продвинутых алгоритмов оптимизации и так стараются адаптивно регулировать скорость обучения.
А что мешает просто воткнуть auto в С++ коде везде где это возможно? И не нужно писать велосипеды.
>Вычислительные задачи это один из многих классов задач — в любом случае это написание кода на максимально близкого к asm.
Не совсем. Дело в том, что между случаем когда надо написать сверхоптимизированный код и случаем когда надо как можно быстрее написать прототип алгоритма, есть огромное количество промежуточных случаев когда нужен достаточно быстрый и при этом легко расширяемый/читаемый/абстрактный код. Ведь достаточно сложные алгоритмы, как и «обычный» код, так же нужно развивать, в них нужно фиксить баги и т.д. А в делать это с кодом который сильно заоптимизирован вручную довольно трудно.
Тут то на сцену выходит С++ с его zero cost abstraction.
И оптимизациями (разворачивание циклов, инлайн? девиртуализация, RVO, etc) занимается компилятор. И весьма неплохо.
Строго говоря, еще можно добавить всякий сложный scientific computing для продакшена: компьютерное зрение, трехмерное сканирование, машинное обучение и т.д.
Ну я как бы про все это в курсе.
Еще бы добавил, что в С++ есть возможность создавать сложные value types (классы/структуры), что положительно отражается на кэше процессора.

Просто выше проскочило высказывание о том, что JIT дает более эффективный код чем статические оптимизации, и мне стало интересно.
На самом деле, очень бы хотелось увидеть, пример реальной вычислительной задачи где адекватно написанный С++ с -О2/-О3 проигрывает Java + JIT. Только задача должна быть действительно реальной, т.е. не тестирование аллокаций тысяч malloc(sizeof(int)) и тому подобное. И чтобы JIT не вырезал тестируемый код как неиспользованный.

Для ясности — я не то чтобы пытаюсь доказать что С++ быстрее Java, меня больше волнует, почему в С++ не впиливают JIT если он эффективней чем статические оптимизации.
>Скорее, в чём выражается сверхбезопасность, а не просто безопасность?
Точно =)

Т.е. сверхбезопасность заключается в запрете неявного каста из типа большей точности в тип с меньшей?

Если честно, то я думал об отлове в рантайме всяких 1.0/0.0, sqrt(-10.0) и т.д.
>сверхбезопасную среду, по памяти, по вычислениям
А в чем выражается безопасность по вычислениям?
Спасибо, потихоньку становится все интересней и интересней!

<зануда>
>— Пакетный спуск хорош для строго выпуклых функций, потому что уверенно стремится к минимуму глобальному или локальному.
У строго выпуклых функций вроде как только глобальный минимум и есть.
</зануда>

Information

Rating
Does not participate
Registered
Activity