Как стать автором
Обновить
0.5

TensorFlow *

открытая библиотека для машинного обучения

Сначала показывать
Порог рейтинга
Уровень сложности

Multiple Instance Learning (MIL) для классификации наборов гистологических изображений со светлоклеточным раком почки

Время на прочтение5 мин
Количество просмотров1.4K

С учётом актуальности Multiple Instance Learning (далее: MIL) и, в частности, наличия преимуществ данного метода для анализа гистологических изображений, решил попробовать обучить модели с целью классификации наборов данных, на те, которые содержат только нормальные ткани и те, в которых встречаются изображения со светлоклеточным раком почки.

Читать далее

Конвертация нейросети из PyTorch в Tensorflow

Время на прочтение12 мин
Количество просмотров4.8K

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

Читать далее

Ищем скрытые смыслы. Графовые нейронные сети на основе Spektral

Время на прочтение5 мин
Количество просмотров4.6K

Развитие методов глубокого машинного обучения привело к росту популярности нейронных сетей в задачах распознавания образов, машинного перевода, генерации изображений и текстов и многих других. С 2009 года нейронные сети попытались применить напрямую в задачах обработки графов (к которым могут относиться системы веб-страниц, связанных ссылками, словари с определенными отношениями между словами, граф социальных связей и другие) и среди возможных задач можно определить поиск кластеров узлов, создание новых графов на основе имеющейся информации о структуре графа, расширение графа и предсказание новых связей и другие. Сейчас выделяют несколько типов нейронных сетей на основе графов - сверточные графовые сети (Convolutional Graph Network), графовые изоморные сети (Graph Isomorphism Network) и многие другие и они часто используются для анализа цитирования статей, исследования текста (представление предложения как графа с указанием типов отношений между словами), изучения взаимосвязанных структур (например, исследования белковых молекул, в частности сеть Alphafold использует модель GNN) и т.д. В статье мы рассмотрим некоторые общие вопросы создания и обучения графовых сетей на основе библиотеки Python Spektral.

Читать далее

4х повышение разрешения изображения с использованием ESRGAN

Время на прочтение2 мин
Количество просмотров12K

4х повышение разрешения изображения с использованием ESRGAN

В данной статье разобрано применение предобученной нейронной сети ESRGAN для увеличения разрешения изображения в четыре раза c использованием tensorflow hub.

Читать далее

Введение в автоэнкодеры

Время на прочтение8 мин
Количество просмотров9.9K

Чем больше данных, тем лучше, но слишком большое число признаков может оказаться неэффективным в плане повышения интерпретируемости или производительности. Материалом о возможном решении от доктора Роберта Кюблера делимся к старту флагманского курса по Data Science.

Читать далее

Коллапсирующие CNN: аппроксимация, имитация и щепотка спектральной магии

Время на прочтение14 мин
Количество просмотров5.1K

Можно ли ускорить обученную сверточную нейросеть? Можно ли заметно сократить ее веса, не снижая точности? Можно ли найти и «обезвредить» узкие места в модели, препятствующие достижению максимальной точности? Можно ли радикально изменить архитектуру готовой сетки, не прибегая к обучению с нуля?

А вот и посмотрим

Подгон под MNIST-овский датасет

Время на прочтение7 мин
Количество просмотров9.8K

В интернете можно найти 1000 и 1 статью по тренингу мнистовского датасета для распознавания рукописных чисел. Однако когда дело доходит до практики и начинаешь распознавать собственные картинки, то модель справляется плохо или не справляется вовсе. Преобразуем произвольное изображение числа под MNIST-овский датасет.

Читать далее

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

Время на прочтение5 мин
Количество просмотров3.6K

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

1)    Получение полнослайдовых изображений (WSI) – подготовка датасета.

2)    Аннотация изображений

3)    Получение готового датасета (Train, Validation и Test)

4)    Выбор и тренировка моделей

5)    Тестирование моделей

Читать далее

Распределённое глубокое обучение: параллелизм моделей и данных в TensorFlow

Время на прочтение12 мин
Количество просмотров7.7K

Значительное количество задач, предусматривающих обучение глубоких нейронных сетей, можно решить на отдельном компьютере, обладающем единственным, сравнительно мощным и быстрым GPU. Но бывает так, что нужно что-то помощнее. Например — данные могут просто не поместиться в память, доступную на отдельной машине. Или окажется, что имеющееся «железо» просто не «потянет» некую задачу. В результате может возникнуть необходимость в горизонтальном масштабировании вычислительных мощностей.

«Горизонтальное масштабирование» — это когда в компьютер добавляют дополнительные GPU, или когда используют несколько машин, входящих в состав кластера. При таком подходе нужен какой-то способ эффективного распределения задач обучения моделей по имеющимся системам. В теории всё просто, но в реальной жизни это — задача нетривиальная. На самом деле — существует несколько стратегий организации распределённого обучения. Выбор конкретной стратегии сильно зависит от конкретной задачи, от данных и от модели.

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

Эта публикация входит в серию материалов о глубоком обучении. В предыдущих статьях шла речь о создании собственного цикла обучения для задачи по сегментации изображений с помощью U-net. Мы развернули модель в Google Cloud для того чтобы получить возможность удалённого запуска обучения. Здесь я буду использовать тот же код.

Читать далее

Нейронная сеть считает лес кругляк и распознает автомобильные номера. Как это сделано?

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров17K

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

Необходимая подготовка читателя — должно быть общее представление о компьютерном зрении (computer vision) и нейронных сетях. Здесь не будет описаний, что такое сверточная нейронная сеть и т.п., статей по таким основам найдете много на хабре (вот хорошая Глубокое обучение для новичков: распознаем изображения с помощью сверточных сетей). В то же время, совсем новички могут получить представление, какие знания и компетенции нужны для решения подобных задач.

Читать далее

Перенос нейронной сети из PyTorch на Google Coral

Время на прочтение13 мин
Количество просмотров4.6K

Всем привет! Меня зовут Антон Расковалов и мы с командой  отдела перспективных исследований «Криптонит» решили проверить, можно ли использовать Google Coral в решении наших задач. Приобретённым опытом делюсь в статье ниже.

Санкции вынуждают пересматривать подходы к организации ИТ-инфраструктуры, в том числе — искать альтернативу облачным ИИ-платформам. Одним из вариантов является использование специализированных ускорителей с нейропроцессорами, которые физически находятся на стороне клиента. Даже на фоне санкционного давления их можно купить на AliExpress и оплатить банковской картой, выпущенной на территории России.

Данная статья посвящена переносу нейронных сетей написанных на одном из самых популярных фрэймворков, PyTorch, на Google.Coral, один из самых "производительных ускорителей"

Читать далее

Передаём GPU-буферы напрямую в TensorFlow Lite

Время на прочтение7 мин
Количество просмотров3.6K

Привет, Хабр! Меня зовут Олег, я работаю с машинным обучением в VK Видео, внедряю нейросети в Клипы ВКонтакте для создания эффектов дополненной реальности. В статье расскажу, как запустить TensorFlow Lite сетку с передачей GPU-буферов — как входного, так и выходного. Этот подход помогает сэкономить на пересылке данных между CPU- и GPU- памятью, когда данные уже находятся в GPU-памяти и модель применяется с помощью GPU-делегата TensorFlow Lite. 

Весь процесс покажу на примере реализации для Android, код можно найти в моём GitHub-репозитории.

Читать далее

Сказки от TENSORFLOW и LSTM

Время на прочтение8 мин
Количество просмотров3.9K

Представляем разбор применения алгоритмов машинного обучения с использованием технологий LSTM для создания текстов.

В итоге должен получиться генератор более-менее осмысленного текста. Способы создания текстов на специальную, определенную пользователем, тему затронуты не будут – но в целом, текст будет создан в том стиле, в котором написана «обучающая выборка».

Кстати об обучающей выборке: в качестве оной будут использованы народные сказки братьев Гримм. Эти тексты будут обработаны, разбиты на биграммы уровня символов, из которых будет составлен словарь из уникальных биграмм.

Читать далее

Ближайшие события

Анализ стадий волейбольной игры с помощью искуственного интеллекта

Время на прочтение2 мин
Количество просмотров3.9K

Распознаем стадии волебольной игры на основе детектора игроков.

Читать далее

Cимбиоз цифр и искусства (часть 2)

Время на прочтение6 мин
Количество просмотров1.2K

В продолжении поста о создании алгоритма распознавания картин художников, хочу поделиться одной мыслью. Искусственный Интеллект как я его всегда представлял, являлся неким разумом, рациональной машиной по разрешению заданных вопросов и задач, заданных человеком. Будь то скрипт с исходными данными, или же голосовой помощник, он готов дешифровать и анализировать входящую информацию и выдавать ответ, даже если он в принципе неверный. Просто статистически данный ответ являлся наиболее верным за определённый отрезок времени (массив данных). Т.е. в большинстве алгоритмов главенствует системный подход к обработке данных (по аналогии, по логике, по большинству совпадений и т.д.). Как-бы я обрадовался если увидел где-нибудь "нелогичный" нерациональный ИИ-помощник, который выдавал странный, но главное правильный вариант из множества возможных, так сказать, попадал бы в "яблочко". К примеру, хотел бы я посмотреть вечером фильм,но, и чтобы этот фильм мне точно понравился бы. Задаю вопрос онлайн-помощнику, и что он выдаёт? Он выдаёт то, что смотрели и лайкали множество людей до этого, или он выдаёт высокорейтинговое кино определённого жанра, который я задал, но не имеющего ничего общего с тем, что мне действительно по душе. Я, конечно, знаю, какие фильмы мне пришлись "по душе". Лезу в поисковик, и набираю фильм наподобие... или фильмы похожие на... после чего вижу три-четыре портала с бесконечными списками фильмов. Вхожу и обнаруживаю, что эти фильмы, во первых далеки друг от друга по своей сути, и во вторых они может мне и понравились бы мне, но с совсем другой стороны, как будто я увидел их случайно щёлкая пультом ТВ и решил остановиться на них.

Далее: Тест модели распознавания искусства

5% из 666 репозиториев Python содержат ошибки из-за запятых (в том числе Tensorflow, PyTorch, Sentry и V8)

Время на прочтение3 мин
Количество просмотров5.9K
Мы выяснили, что в 5% из 666 исследованных нами репозиториев Python с открытым исходным кодом на GitHub есть три бага, вызванных ошибочным использованием запятых.

Слишком мало запятых


Случайно пропущенная запятая в строке списка/кортежа/множества, приводящая к ненужной конкатенации строк.

Читать дальше →

Го: Дообучаем модель

Время на прочтение6 мин
Количество просмотров2.5K
What will we do with a drunken sailor,
What will we do with a drunken sailor,
What will we do with a drunken sailor,
Early in the morning?

Drunken Sailor


В прошлый раз мы остановились на том, что модели на основе свёрточных нейросетей, вполне способны подсказывать интересные и неочевидные ходы и, таким образом, могут использоваться как основа для построения бота для игры Го. Напомню, что источником модели послужила вот эта замечательная книга. Для того чтобы двигаться дальше: дообучать модель, просто с ней экспериментировать или вообще полностью переделать и обучить с нуля, требовались вычислительные ресурсы. И они появились…
Читать дальше →

Digital art и искусственный интеллект — симбиоз цифр и искусства

Время на прочтение5 мин
Количество просмотров3.6K

В качестве предисловия оговорюсь, что на Хабре я впервые, решил представить свою дебют на этой платформе, так сказать. Речь здесь не пойдёт о рисовании картин с использованием AI и графических паттернов. Скорее наоборот, превращение классического изобразительного исксства в многочисленную последовательность нейронных сетей в итоговым кодом в заключительном виде. Расскажу предысторию. В начале этого года, случайным образом, попало в моё поле зрения одно заманчивое словосочетание - digital art. И так как я в теме crypto уже давненько, я не смел не поинтересоваться, каким образом искусство (будь то живопись или музыка) коррелирует с криптой, и как это происходит (и для чего))) на просторах блокчейна. В итоге ознакомления с этой идеей, и не только идеей, но и инфраструктурой NFT (Non-Fungible-Token, невзаимозаменяемый цифровой актив), я с радостью обнаружил что уже хочу создать что-то подобное, но в своём, авторском исполнении. Парой слов опишу, что зверёк по имени НФТ это хэшированное изображение в любом формате,  записанное в сети блокчейн в формате, являющегося аналогом ERC-721 в сети Ethereum (для тех кто ещё не в курсе темы). Задуманному быть конечно, но сказать легко, а вот сделать - труднее. Особенно, когда делаешь что-то впервые. Начал я с изучения подобных платформ на просторах всемирной паутины, начиная с крупнейших маркетплейсов opensea.io, makersplace.com,  и не очень крупных, pixeos.art, ghostmarket.io и много много других.

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

Читать далее: критерии распознавания арта

Нейродайджест: главное из области машинного обучения за декабрь 2021

Время на прочтение4 мин
Количество просмотров4.6K

Генерация 3D-моделей из текстового описания и видеозаписей, сделанных на обыкновенный смартфон, конкурент DALL-E, ускоренная GAN-инверсия и многое другое в подборке материалов за декабрь, а также небольшие новости о будущем дайджеста.

Перейти к обзору

Нейродайджест: главное из области машинного обучения за ноябрь 2021

Время на прочтение3 мин
Количество просмотров4.2K

Генерация видео из текста от Microsoft, новые редакторы изображений от NVIDIA и Adobe, высококачественные NeRF-модели и многое другое в ноябрьской подборке.

Перейти к обзору