TheFounder

TheFounder

Здесь будет интересно всем, кто увлекается нейросетями, хочет стать разработчиком, создать свой IT-стартап... Ну, или просто любит и хочет изучать код :)
На Пикабу
146 рейтинг 6 подписчиков 0 подписок 104 поста 0 в горячем
1

Representation Learning

Представьте себе, что вам нужно обучить алгоритм распознавать изображения животных. Для этого вам необходимо предоставить ему обширный набор изображений, размеченных в соответствии с классами. И здесь возникает проблема: картинки с животными, которые вы собрали, отличаются друг от друга по позам, локациям, освещению и другим факторам.

Вот и как теперь алгоритму их различать?

Для этого нужно обучить алгоритм представлять эти изображения в абстрактной форме, содержащей только ключевую информацию для распознавания животных. Этот подход известен как обучение представлений или признаков.

Обучение представлений — это метод преобразования входных данных в более абстрактное представление, содержащее только существенную информацию для решения конкретной задачи.

Чтобы лучше понять, как работает обучение представлений, рассмотрим один из самых простых и популярных методов — классификацию.

Классификация используется для разделения данных на различные категории или классы. В контексте обучения представлений она помогает обучить нейронную сеть распознавать определенные особенности в данных.

На практике это означает, что мы даем на вход нейросети много картинок животных с соответствующими метками классов. Нейросеть старается выявить определенные признаки в этих изображениях, которые помогут ей правильно классифицировать их. При этом мы учитываем только ту информацию, которая важна для распознавания животных, и игнорируем все остальное.

В итоге мы получаем обученную нейронную сеть, способную распознавать новые изображения животных и классифицировать их с высокой точностью. Этот подход может быть использован для автоматической категоризации изображений животных на сайтах или в приложениях.

A hyperparameter optimization framework – Optuna

A hyperparameter optimization framework – Optuna Программирование, IT, Удаленная работа, Карьера, Профессия, Framework, Фриланс, Программист

Из названия все ясно. Лучшая утилита для оптимизации гиперпараметров вашей модели или нет? Многие перескакивает с метода подбора параметров GridSearch/Random из scikit-learn и постепенно переходят на библиотеку Optuna со своими решениями.

Почему?

Обычный GridSearch – примитивное перебирание по сетке, где мы смотрим только на качество решаемой задачи по accuracy, cross-entropy, mse. Экспоненциальный перебор всех узлов сетки параметров зависит напрямую от подаваемых координат.

Очевидно, простой "перебор" –  подход зачастую крайне ресурсоемкий. А вот Random'изированный показывает лучший результат, так как подбирает случайные комбинации и сэмплирует результаты… Но что если строить вероятностные модели выборки гиперпараметров?

Optuna и работает по этому принципу — байесовской оптимизации GP или Tree-structured Parzen Estimator (TPE). Чем лучше TPE в сравнении с всякими серчами переборов? Он предполагает вероятностные модели и исходит из прогнозируемой эффективности модели.

Как видно, такой подход выглядит избирательнее и зачастую приводит к лучшим результатам. Особенно, в скорости: TPE работает в три раза быстрее, чем обычный сеточный перебор. В Optuna, помимо классических серчей, есть простые байесовские алгоритмы и возможность прунинга пространства гиперпараметров и даже CMA-ES, иначе генетические алгоритмы, о которых вы узнаете в конце курса. 

Какие ещё преимущества у этого фреймворка?

  • У Optuna хорошая документация. Хотя и не слишком очевидно на старте, какие алгоритмы реализованы в библиотеке.

  • Есть Define-by-run, при помощи которого можно динамически описывать пространство параметров во время работы оптимизировать.

  • Можно явно задавать максимизацию или минимизацию функции качества.

Показать полностью 1
0

Социальная сеть с ИИ вместо пользователей?

Социальная сеть с ИИ вместо пользователей? IT, Удаленная работа, Программирование, Стартап, Инновации, Карьера, Фриланс, Длиннопост

Сингапурская компания создала новую Web3.0 с NFT, где вы можете взаимодействовать не только с другими людьми, но и искусственным интеллектом.

Какие проблемы у подобного проекта?

Почему NFT зависит от рынка и будет ли соцсеть использоваться по назначению?

Приложение скачало уже более 10 млн. человек.

В России нет похожих продуктов.

Стоимость NFT неплохо обеспечивается внутренней экосистемой соцсети.

Round: $2.8m, 11 января 2024

Социальная сеть с ИИ вместо пользователей? IT, Удаленная работа, Программирование, Стартап, Инновации, Карьера, Фриланс, Длиннопост

Штаб-квартира находится в Сингапуре.

Стартап уже собрал 2.8 миллиона долларов.

CharacterX — это децентрализованная синтетическая социальная сеть, объединяющая людей и искусственный интеллект. Хотя мы бы подчеркнули. Что CharacterX — остроумный вариант NFT метавселенной. И обретет ли подобный проект популярность — большой вопрос.

Пожалуй, это самый поэтичный стартап из всех, что мы представляли... В техническом документе есть несколько интересных глав: последний вопрос человечеству, ИИ и постчеловек, синтетическая социальная сеть. Мы могли бы не тратить драгоценный объем текста на расшифровку социального посыла стартапа, но решили, что это важно.

Мы находимся на пороге постчеловеческой эпохи, когда ИИ станет важной частью нашего социального существования. Личности, любовь, мудрость, чувства и воспоминания людей и искусственных существ будут опутаны вечной синтетической социальной сетью, где ни один человек не является островом, а все мы — частью главного.

Но у таких стартапов есть ряд крупных проблем, о которых мы обязательно расскажем в векторе развития.

CharacterX сочетает в себе технологию децентрализации (ERC6551) и социальный искусственный интеллект для создания такой синтетической социальной сети и обеспечивает ее справедливость, самоуправление и устойчивость. Здесь вы можете общаться с друзьями (как ИИ, так и людьми) и создавать формы жизни без ограничений времени и пространства.

"Децентрализация" автоматически уводит нас в пространство NFT-инвестиций и криптовалют. NFT-метавселенные объединяют концепцию неповторимых токенов (NFT) с идеей виртуальных миров и метавселенных. В их основе лежит технология блокчейна, которая обеспечивает прозрачность, неподдельность и неподменяемость цифровых активов, что и обеспечивает сам рынок NFT.

Разработчики называют свою социальную сеть синтетической: можно общаться как с людьми, так и с искусственным интеллектом. Для пользователя создано около 10 миллионов персонажей от Илона Маска до психологов, консультантов, героев фильмов.

Руководство компании ставит себе цель — преодоление человеческого одиночества и налаживание социальных отношений между ИИ и человеком. ИИ использует ваши данные, чтобы верно отвечать на вопросы. 

В приложении есть своя внутриигровая валюта или попросту токены CXT (за токены приобретаются NFT-активы), которые можно собирать, взаимодействуя с персонажами (как голосом, так и текстом), за создание персонажей, приглашение друзей и просто проведения времени внутри приложения.

Как это работает

Зарегистрироваться можно на официальном сайте и скачать приложение как в Google Play, так и App Store. К сожалению, варианта русского языка к выбору не представлено.

Социальная сеть с ИИ вместо пользователей? IT, Удаленная работа, Программирование, Стартап, Инновации, Карьера, Фриланс, Длиннопост

Можно выбрать из множества персонажей и начать общение. Наш пример диалога с котом:

Социальная сеть с ИИ вместо пользователей? IT, Удаленная работа, Программирование, Стартап, Инновации, Карьера, Фриланс, Длиннопост

Также можно создавать собственных персонажей. Для этого нужно перейти на специальную страницу "центра творчества", выбрать вкладку создать персонажа, подобрать, описание, теги и вступление. Чтобы использовать расширенные функции – нужно войти на платформу "Creator" и там настроить базового персонажа, добавив голос, материалы вопросов и ответов, а также определения.

Социальная сеть с ИИ вместо пользователей? IT, Удаленная работа, Программирование, Стартап, Инновации, Карьера, Фриланс, Длиннопост

Накопление CXT-валюты происходит пассивно и активно. Под пассивным заработком предполагается накопление во время отсутствия в приложении, а вот активные баллы за время присутствия. Общий заработок рассчитывается по вот такой формуле.

За CXT можно покупать NFT и соответственно перепродавать за другие криптовалюты и, в конечном счете, зарабатывать на этом. Поэтому социальная сеть ИИ "CharacterX" может считаться подобием метавселенной.

Вектор развития и перспективы: “халявщики” и высокорисковые активы

Для начала мы разберем проблемы стартапа, которые очевидны с первого взгляда: ИИ-стартап — это NFT-метавселенная и она включает в себя все проблемы крипто-инвестиций.

С точки зрения экономики, неповторимые токены (NFT) представляют собой уникальный класс цифровых активов, которые могут быть куплены, проданы и обменены на рынке. Важно понимать, что NFT не являются традиционной валютой; они скорее представляют собой цифровые сертификаты или записи, подтверждающие владение уникальным цифровым контентом или активом.

Мы можем сравнить развитие подобного стартапа с изначальным становлением Netflix и прокатом “бесплатных” DVD дисков от партнеров, что приводило к постоянному дефициту последних и “сливу” денег – то же самое и касается NFT. Вместо адекватного продукта с интересной реализацией “соцсети” для ИИ, мы получаем обычный спекулятивный инструмент для желающих позаниматься криптой и NFT, подзаработать. Есть высокая вероятность, что сами токены не будут работать так, как задумывали создатели сервиса.

Вместо приверженности соцсети, аудитория будет лояльна к NFT как “инвестиции”.

Они не имеют реальной себестоимости, товарного вида и подкреплены исключительно спросом-предложением. А это значит, что для NFT-рынка, как и для всего рынка криптовалют свойственно состояние "медвежьего рынка". Инвесторы с учетом эффекта домино продают свои активы, вызывая волнообразное падение цен на более чем 20%.

Так, относительно недавно NFT-инвестиции во многих метавселенных значительно обвалились, чуть ли не на 90% процентов. Сами по себе крипто инвестиции относятся к высокорисковым, поэтому падение цен на конкретные NFT-объекты — нормальная и закономерная вещь. Но высокорисковость и возможная высокая “доходность” может привлекать халявщиков, которые не будут заинтересованы в развитии самой нейросети.  Чтобы этого не произошло в большом масштабе — рынок должен быть активным. Необходимо поддержание внутренней экосистемы спроса и предложения.

Социальная сеть с ИИ вместо пользователей? IT, Удаленная работа, Программирование, Стартап, Инновации, Карьера, Фриланс, Длиннопост

Кроме того, сами метавселенные обосновывают стоимость NFT (стремятся подкрепить цену) при помощи внутриигровых достижений. Условно, человек, создавший самого лучшего ИИ-персонажа может рассчитывать на повышенную стоимость своего NFT-проекта.

Число загрузок приложения CharacterX достигло 10 миллионов.

Число подписчиков в социальных сетях более 1 миллиона человек.

Цифры впечатляющие и благодаря им площадка может спокойно обеспечивать ценность NFT. Чтобы поддерживать интерес аудитории, стартап ориентируется на современные ИИ-технологии, которые только прогрессируют. В перспективе такие социальные сети могут стать только лучше, персонажи только реалистичнее, что будет поддерживать площадку, а значит и ее NFT-сообщества, а значит и финансовый статус.

Поэтому стартап осваивает три направления развития: привлечение новых пользователей (масштабирование рынка NFT), и самих NFT-сообществ, а также развитие социальной сети и возможностей ИИ при помощи достижений крупных компаний по разработке нейросетей.

Показать полностью 5
3

Фреймворк для экспериментов и исследований?

Фреймворк для экспериментов и исследований? Программирование, IT, Удаленная работа, Карьера, Инновации, Framework, Программист, Фриланс

Запутанный декларативный стиль или код, похожий на "нотации", головная боль от отладок...  А если ваша модель неожиданно выходит за рамки парадигмы работы фреймворка  — приходится прикладывать титанические усилия по переработке кода или разворачиванию парочки здоровенных костылей. И да, мы про TensorFlow.

Все из-за самого статического графа вычислений во фреймворке... Граф вычисление — это абстрактное представление алгоритма вычислений в виде, не поверите, математического графа. Где ребра — потоки данных, а узлы — операции. Узлами могут быть слоями нейронки, а ребра — потоками данных. В статическом варианте можно оптимизировать и ускорить работу вашего TPU или GPU, провести объединение или распараллеливание операций.

Удобно, конечно...

Только доступа у вас к обработке данных нет. Поэтому любые ошибки = час сеанса, пока TF не обнаружит проблемы. А крупные модели ML иногда требуют и больше времени... Это серьезный минус всех фреймворков, построенных на работе статического графа вычислений.

А теперь представьте, что фреймворк перестраивает граф перед каждым запуском. Теперь никаких проблем с отладкой, а также практически бесконечная гибкость и расширяемость.

Вот тут и мы и говорим о PyTorch. Интуитивный и похожий на Питон синтаксис, неплохая интеграция с другими библиотеками и доступ к быстрой отладке – все это про него. И это мы не упоминаем кучу модульных элементов, которые легко комбинировать, упрощенное написание собственных типов слоев. Pytorch – про эксперименты, быстрое обучение и небольшие проекты.

Приятное дополнение — широкий выбор предварительно обученных моделей.

Но если вам все же нужна оптимизация ваших вычислений... тогда стоит обратиться к конкуренту от Google.

Показать полностью 1

UCI Machine Learning Repository — огромный репозиторий для ученых?

UCI Machine Learning Repository — огромный репозиторий для ученых? Программирование, IT, Удаленная работа, Репозиторий, Программист, Профессия, Самообразование, Фриланс

Хотите классифицировать виды вин? Ну, конечно, у нас есть набор данных с информацией о химических свойствах вашего любимого напитка, и все это для того, чтобы вы могли выявить самое вкусное. Каким-то образом.

Может быть, медицинские данные или дата-сет из невербальных предпочтений туристов? Тут есть все.

Тут есть и полезная социологическая/экономическая статистика, бесполезные фотографии собачек/котиков. Нам сложно описать все многообразие дата-сетов этого репозитория — на официальном сайте больше 600 страниц.

Во многих университетских программах включают в лекции работу с этим репозиторием, так как он подходит для экспериментов и исследований с моделями машинного обучения.

Каждый набор данных в UCI Repository сопровождается подробным описанием и метаданными, которые помогают понять его структуру, содержание и цель. Наборы данных включают в себя информацию о классификации, регрессии, кластеризации, анализе временных рядов, безусловно, о задачах обработки естественного языка и многих других областях.

Сама информация внутри "наборов" не совсем современная, но для отработки учебных ML/DL моделей самое то. А еще репозиторий отлично подходит для сравнения разных алгоритмов, написанных вами и обученных на данных UCI.

Поэтому если вам вдруг будет лень составлять базу данных для работы, мы не намекаем, но…

Взглянуть на архив можно по ссылке.

Показать полностью 1
1

Математика… Она везде…

Математика… Она везде… Программирование, IT, Удаленная работа, Карьера, Профессия, Развитие, Программист, Самообразование, Математика, Учеба, Длиннопост

Как говорится: Data или ML-разработчик без базы математики, что политик без умения убеждать.

В ML и DL ключевые направления: линейная алгебра, математический анализ, статистика и, конечно же, теория вероятностей. Но на что обратить внимание в каждом разделе?

Теория вероятностей

Формулы Байеса, Пуассона, Бернулли, теоремы Лапласа, дискретные и непрерывные случайные величины, всевозможные распределения. А также база: события и их вероятности, комбинаторика.

Статистика

Нужно понимать, что из себя представляют генеральные совокупности, выборки. Необходимо уметь оценивать их параметры + знать вариационные ряды.

Следует обратить внимание на виды группировок данных, бутстрэп, дисперсионный (ANOVA) и ковариационный (ANCOVA) анализы, а еще на корреляцию и регрессию (линейная, логистическая).

Ну, и не забываем, зачастую вам придется формировать статистические гипотезы.

Линейная алгебра

В линейной алгебре следует получить базу по матричному исчислению и векторам, но и обратить внимание на линейные уравнения, матричные факторизации (LU, QR, SVD) и понятие тензоров (по желанию). И даже кривые/поверхности второго порядка из аналитической геометрии.

Матан

В математическом анализе все просто: разбирайте все до дифференциальных уравнений n-ых порядков (их решения нужны, скорее, физикам…), включая преобразование Фурье, сходимости рядов. 

И хотя простая теория множеств приводится почти во всех учебниках, но если ее нет, то следует обратить внимание и ознакомиться с ней до изучения матана в принципе.

А о том, как это все применяется в самом программировании можно почитать «Data-Driven Science and Engineering», Steven L. Brunton, J. Nathan Kutz.

Ага, на английском, но а как вы хотели?

Невредно и обратить внимание на другие разделы математики: дискретную, теорию алгоритмов, аналитическую геометрию и даже логику.

Шорт-лист учебников по математике

Математический анализ

Математический анализ, как и любой другой раздел, бывает разных уровней.

Углубленный уровень: рекомендуем учебник В. А Зорича в 2-х томах. У Зорича нет разжеванной информации по поводу содержания самих понятий, но в двух томах автор умудряется дойти до интегрального исчисления многообразий.

А вот Фихтенгольц отлично подойдет для тех, кто хочет просто и уверенно войти в матан и при этом не потерять тысячи биологических нейронов от бездушных формул.

Для начального уровня также хорошо подойдут следующие материалы (на английском): J. Stewart. Calculus. Early Transcendentals, S. P. Thompson. Calculus Made Easy.

Линейная алгебра

Тут можно посоветовать любой возможный учебник, какой понравится. Здесь не так уж и много возможностей для ухода в дебри.

Для начального уровня рекомендуем G. Strang. Introduction to Linear Algebra, S. Axler. Linear Algebra Done Right.

А для продвинутого — А. Кострикина (2 часть Введения в алгебру), П. Халмоша и его "Конечномерные векторные пространства".

А вот для обучения теории вероятностей и статистике решительно рекомендуем читать В. Веллера с его введением и М.Кельберта, Ю. Cухова для практики.

Если эти книги идут уж слишком тяжело — обратите внимание на "Элементарный курс теории вероятностей К. Л. Чжуна, Ф. АитСахлиа.

Бонус! Для математики машинного обучения и анализа данных рекомендуем: M. Deisenroth, A. Faisal, C. Ong. "Mathematics for Machine Learning", G. Strang. "Linear Algebra and Learning from Data"...

Надеемся, что "стандартные" учебники, облюбованные на разных факультетах российских вузов вы найдете сами. Мы постарались привести парочку необычных материалов.

Показать полностью 1
0

Топ 3 ошибки в карьере ML-инженера

Топ 3 ошибки в карьере ML-инженера IT, Программирование, Карьера, Профессия, Фриланс, Эффективный менеджер, Удаленная работа, Программист, Длиннопост

Забыть документацию. Навсегда

Представьте, в вашем офисе 30 сотрудников, корпящих над совместным кодом. А вы в уголке работаете над конкретной месячной задачей. Проходит ровно 30 дней. Думаете: ну вот, наконец-то я отдохну, похожу на кофе-брейки…

Нет.

Вы будете объяснять каждому индивидуально свой код, а еще к вам могут прислать целую делегацию от заказчика, ведь он поинтересуется, как же работает ваша универсальная рекомендательная система...

Поэтому пишите проектную документацию (логику работы сервиса) и техническую (для коллег). Тогда вы сэкономить килотонну времени на объяснениях.

Засиживаться в Jupyter

Да, это отличный способ, чтобы подучиться и всегда знать назначение данных, вот только черновики не превратишь в реальный сервис. Нельзя провести код ревью, версионификацию, воспроизвести наработки, переиспользовать и даже затестить.

Нужно учиться встраивать код в продакшн, чтобы обернуть в несчастный Docker и уже конвертировать в конечный ML-сервис. Заказчику нужна программа, а не черновик.

Выход? Выделяйте на проектирование не более 20% времени от всей разработки. Как можно раньше познакомьтесь с IDE, вынесите версии библиотек в requirenments.txt, разберитесь с импортами.

Забыть про A/B тесты

Тесты позволяют оценить эффективность вашей ML модели. Стоит потратить время, чтобы разрабатывать простейшие дизайны экспериментов (гипотезы, метрики, фиксации ошибок, стат.тесты и т.д.) – тогда получится оценивать реальный КПД проекта и вносить эффективные правки.

А это ведь отличная штука, повышающая вашу привлекательность на рынке труда путем прямых доказательств. Мол, смотрите, какой я выгодный. Вы мне платите $3к, а я в два раза больше денег принес...

Всего 3 ошибки, но сколько денег, а главное, времени они могут сэкономить.

Показать полностью 1
1

Видеокарты бесплатно?

Видеокарты бесплатно? Программирование, IT, Карьера, Профессия, Программист, Фриланс, Удаленная работа, Видеокарта, Эффективный менеджер, Работа

Предположим, ваша карточка совсем старая или еще хуже встроенная, а на новую отдавать условные 60-80 тысяч совсем не хочется? Тогда уж лучше воспользоваться облачными GPU. Мы составили для вас подборку сервисов, где вы сможете обучить вашу модель при помощи чужого железа.

Google.Collab

Самый популярный вариант, причем мощности предоставляют они неплохие: TPU (процессоры на тензорных ядрах) и GPU. В сервисе уже предустановлены библиотеки NumPy, Pandas, TensorFlow... А еще безусловный плюс — он совместим с Jupyter.

Правда… за предоставление приоритетного доступа к TPU и  увеличения объема памяти в два раза придется платить 10 долларов в месяц, но и бесплатных лимитов на старте вполне хватит.

Kernels

Сервис предоставляет онлайн-среду для программирования на серверах Kaggle. Можно работать в Jupyter, писать Python-скрипты. GPU бесплатно, но мощности ограничены, причем в большей мере, если сравнивать с Google.Collab. Кстати, совсем недавно Kaggle получил интеграцию с Keras.

DeepNote

Интеграция с GitHub, масштабирование вычислительных ресурсов (в зависимости от проектов сервис подбирает мощность GPU), есть свой ИИ-помощник, поддержка Jupyter. А еще платформа поддерживает не только Python, но и SQL-запросы для работы с базами данных.

Еще можем посоветовать: AWS SageMaker, GCP, Notebools, Azure Notebooks.

В любом случае, работа в облаке — наилучший вариант для тех, кто не готов ставить огромные фермы из новеньких видеокарт, а комфортно позаниматься ML/DL хочется. 1000 рублей за подписку Google.Collab точно не сравнится с покупкой с флагманской видеокартой c ценой в 80 раз больше)

Показать полностью
Отличная работа, все прочитано!