The article has been automatically translated into English by Google Translate from Russian and has not been edited.

В Google высоко оценили: российский студент создал нейросеть, способную обнаружить рак

Ивану 21 год, он занимается разработками в области машинного обучения для роботов Promobot. Ваня вместе с командой создал нейросеть, которая определяет вероятность раковой опухоли. Работа вошла в 1% лучших на соревновании Google, рассказывает TJournal.

Фото: Depositphotos

С чего все началось

Я начал заниматься машинным обучением ещё 3 года назад, но серьёзно изучать глубокие нейронные сети стал не так давно — меньше года назад. Сейчас я работаю над обработкой естественного языка для сервисных роботов Promobot. «Естественный язык» — это речь человека, которую робот, стоя, например, в банке — должен обработать и оказать правильную услугу.

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

Буквально за два месяца я прошёл четыре больших курса по машинному обучению. Все курсы бесплатные, только за один я заплатил $45 (вообще-то это цена одного месяца курса, но я успел пройти всю программу за этот месяц).

  • Специализация от Эндрю Ына по глубокому обучению из 5 курсов (платно)
  • Курс от Стэнфорда по компьютерному зрению (бесплатно)
  • Курс от Стэнфорда по обработке естественного языка (бесплатно)
  • Fast AI (бесплатно)

Конечно, это нездоровый темп. По-хорошему, такой объём информации проходят гораздо дольше, но я занимался по 12-14 часов в день под кофе, зелёным чаем и всем, что только мог найти.

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

Что за соревнование

Kaggle — это платформа международных соревнований по машинному обучению. В каждом соревновании участвуют тысячи исследователей — вместе с нами соревновались 1157 команд из США, Германии, Китая, Кореи — со всего мира.

Платформа предоставляет данные. В нашем случае это снимки лимфоузлов: 220 тысяч снимков для тренировки и 57 тысяч — для тестирования модели. Это снимки реальных пациентов, переданные для исследования (снимки анонимные — личные данные пациентов не разглашаются). Такой набор данных называют dataset, и они бывают разные: могут состоять из снимков, видеофрагментов, текстов, или записей речи людей, как в моём случае в Promobot. (Объём тоже может быть разным: я работал и с тысячей данных, и с 10 миллионами).

Задача простая: определить по снимку — есть у пациента рак или нет.

Как мы это сделали?

С помощью нейросети.

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

Чтобы научить чему-то нейросеть, нужно найти закономерность.

Например, работая с речью людей, нейросеть должна найти связь между репликами людей и услугой — допустим, окном в МФЦ. Представьте: человек подходит к роботу и говорит: «Мне нужно оформить загран». Не «заграничный паспорт», а именно «загран». В системе госуслуг нет «заграна», но нейросеть должна понять, в какое окно отправить клиента.

В случае изображений: чем отличаются снимки, на которых есть рак, от тех, на которых его нет?

Для этого изображение нужно перевести в данные. Здесь начинается интересное.

1. Любое изображение состоит из пикселей. Пиксели делятся на три канала: R (red), G (green) и B (blue)

Если вы хоть раз в жизни открывали фотошоп или любую подобную программу, вы должны это знать.

У каждого канала есть значение. Это число — просто количество красного/зеленого/синего в каждом конкретном пикселе.

Представим, что у нас черно-белое изображение — в этом случае каждый пиксель кодируется одним числом.

2. Берем небольшую область изображения

Например, 5 на 5 пикселей. У каждого есть своё значение, помните?

«Обычная» нейросеть перемножает значения всех пикселей со всеми значениями нейронов из следующего слоя. Этот процесс повторяется для всех слоев. Звучит сложно. К тому же это долго, объёмно и недостаточно точно.

Мы используем свёрточные нейронные сети, главная идея которых — свёртка. Суть в том, что каждый фрагмент изображения отдельно умножается на какое-то число (матрицу свёртки). Результат суммируется и записывается в итоговое изображение — в том же самом месте, в том же фрагменте.

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

Каждое значение из этого квадратика умножается на какое-то число (например, на 3), а потом суммируется. Затем смещаем его — и считаем значения уже в другом. Затем снова смещаем — и так до тех пор, пока не обработаем всё.

И эта операция проходит для каждого канала — красного, зеленого и синего (ведь у каждого пикселя есть три значения).

4. Получается небольшой кубик

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

Фото: скриншот исследования

А теперь представьте количество значений и расчётов для такого изображения:

Фото: скриншот исследования

А теперь представьте, что оно выглядит вот так:

Фото: скриншот исследования

А теперь представьте, что таких изображений — 220 000.

5. В конце нейросеть выдаёт одно значение, которое говорит: есть рак или нет. Побеждает тот, чья нейросеть была точнее других.

Я работал в команде: двое из Германии, один индиец из Англии и я, Ваня из России. Мы нашлись прямо на форуме соревнования. Я был самым младшим в команде: мне 21, индийцу — около 25 (и у него есть PhD в квантовой информатике), обоим немцам — в районе 35-ти.

Результат

В соревновании участвовали 1157 команд. Мы вошли в 1% лучших

Сложно сказать, чем именно мы были лучше других. Команды публикуют свои решения добровольно, и обычно этим занимаются только топовые команды (если у тебя плохое решение, то и нет смысла его публиковать — логика такая).

Большую роль играет везение (да-да, везение в разработке нейронных сетей). Дело в том, что тренировка нейронной сети — это недетерминированный процесс. То есть каждый раз, когда ты его запускаешь, у тебя получается новая сеть. Тебе может повезти, а может не повезти — сеть сработает чуть лучших или чуть хуже — такое бывает.

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

P.S. Затем мы взяли идеи, которые использовали на соревновании, собрали всё в одну статью и подали её на международную конференцию по машинному зрению CVPR — одну из самых топовых в мире.

Работа прошла проверку экспертов, и мы (а точнее всего один участник команды) представили её в Калифорнии. Лучшей работа не стала — победила команда из Google.

Читайте также на ForumDaily:

Диагноз по фото: как американская нейросеть распознает генетические болезни

Основанный украинцем стартап признан одним из самых быстрорастущих в США: история успеха Стаха Возняка

Какой онлайн-переводчик работает лучше

Как программист из Сан-Франциско достиг 12 нереальных целей

Уважаемые читатели ForumDaily!

Спасибо, что остаетесь с нами и доверяете! За последние четыре года мы получили массу благодарных отзывов от читателей, которым наши материалы помогли устроить жизнь после переезда в США, получить работу или образование, найти жилье или устроить ребенка в садик. Мы рады, что помогаем вам в период иммиграции, который может быть довольно сложным.

Сейчас мы хотим попросить ВАС о поддержке. Качественная журналистика достаточнo затратная. После резкого сокращения рекламных поступлений от Facebook, наши доходы не покрывают расходы на содержание редакции, что ставит под угрозу беспрерывную работу сайта. Мы не вводим платную подписку, как это делают многие американские СМИ, и предоставляем доступ ко всем нашим материалам бесплатно, поскольку понимаем, насколько важно для русскоязычных иммигрантов получать проверенную информацию на родном языке. $5, $10, $20 — любая сумма, которой вы сможете поделиться с нами, поможет выжить сайту, а значит, мы сможем и дальше предоставлять полезную информацию тысячам иммигрантов. Поддержите качественную журналистику! Мы верим в силу наших читателей!

Всегда ваш, ForumDaily!

Хотите больше важных и интересных новостей о жизни в США и иммиграции в Америку? Подписывайтесь на нашу страницу в Facebook. Выбирайте опцию «Приоритет в показе» —  и читайте нас первыми. И не забудьте подписаться на ForumDaily Woman — там вас ждет масса позитивной информации. 

Разное рак ученый Google Наши люди

НОВОСТИ ОТ Woman.ForumDaily.com



 
1080 запросов за 2,201 секунд.