Недавно я прошел курс по управлению продуктами AI/ML. Это было мое второе официальное свидание с интересным миром искусственного интеллекта и машинного обучения. Учитывая текущую ситуацию с пандемией Covid-19 и ее разрушительное воздействие на общественное здоровье, а также то, что я сам вылечился от Covid-19, создание решения на основе ИИ, которое могло бы помочь врачам быстро выявлять случаи легочной инфекции, просто взглянув на рентгеновское изображение легкого, казалось быть довольно интересным и привлекательным проектом. Реальным примером такой технологии является https://qure.ai, и я должен сказать, что они отлично справляются со своей задачей. При правильных постановках задач, данных и моделях машинного обучения возможности безграничны.

Цель нижеследующей статьи — просто мотивировать других любопытных людей. Это не исчерпывающая заметка для более глубокого понимания AI & ML и науки о данных, возможно, она даже не поверхностна! Коллеги по обучению нано-степени AI Product Manager от Udacity могут рассматривать это как шпаргалку для заданий ;)

Подходит ли AI/ML для вашего случая использования?
Прежде чем переходить к техническим и операционным деталям, самым первым шагом любого проекта AI ML является целостный взгляд на проблему, а затем решение, действительно ли проблема подходит для решения. решается AI ML. Имеет ли смысл задействовать ресурсы и время? Полностью ли мы понимаем проблему и знаем, как мы будем использовать решение? Мы делаем проект только потому, что AI & ML — это новое модное слово?

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

Очистка, сортировка и комментирование данных. Сделайте его пригодным для использования!
В нашем макете проекта маркировки данных мы использовали платформу создания и маркировки данных «Appen» для создания задания маркировки данных. Цель состояла в том, чтобы создать упражнение по маркировке данных вместе с необходимыми инструкциями, чтобы получить точную маркировку от участников опроса/операторов ввода данных. Внедряйте методы для обеспечения правильности данных. Часто проводите перекрестное тестирование с людьми, вводящими данные.
Помните, что системы искусственного интеллекта хороши настолько, насколько хороши данные, которые мы передаем для их обучения. Мы должны приложить дополнительные усилия, чтобы избежать какой-либо предвзятости в предоставляемых нами данных.

Выберите правильную модель машинного обучения на платформе Google Cloud Platform (GCP)
В этом упражнении мы использовали готовое AutoML Vision от Google. Да, кодирование не требуется! просто импортируйте свои классифицированные и помеченные данные, введите желаемые значения обучения, и все готово.

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

Импорт данных

Как видите, я уже сделал ZIP-архив необходимого набора данных на своем рабочем столе, который мне просто нужно импортировать. Вам нужно будет создать облачную корзину для хранения ваших данных (иначе вы не получите папку для хранения ваших данных, когда справа появится кнопка «Выбрать папку»).

Обучите свою модель

А вот и самая интересная часть облачной платформы Google AutoML. Вам не нужно писать всю кодовую базу для обучения вашей модели, есть доступные механизмы машинного обучения, которые могут удовлетворить ваши потребности. Вам просто нужно выбрать тот, который подходит для вашего варианта использования, и запустить задание. Вы сожжете кредит GCP, вы получите бесплатный кредит GCP на сумму 300 долларов США на 90 дней, когда вы впервые присоединитесь к GCP. Вам может быть интересно, почему я сохранил несбалансированный набор данных? На самом деле, когда я думал написать блог на эту тему, я работал над заданием, которое требует от нас оценки и объяснения различных сценариев игры с данными. Например. Чистый, но несбалансированный, грязный, но сбалансированный и т. д.
* GCP = облачная платформа Google.

Оценить

Вы можете увеличивать/уменьшать пороговое значение вашей модели, чтобы достичь более высокой точности или более высокого отзыва, в зависимости от вашего варианта использования. Идеальной ситуацией было бы иметь максимально возможное из обоих. Здесь я избавлю вас от жаргонизмов, но если вам интересно, вы можете ознакомиться с бесплатным руководством для начинающих по AutoML. https://cloud.google.com/vision/automl/docs/beginners-guide

Развернуть и протестировать

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

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

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

Если вы заинтересованы в создании собственной модели машинного обучения, здесь вы можете получить такой набор данных:
https://www.kaggle.com/paultimothymooney/chest-xray-pneumonia
https://www.kaggle.com/pranavraikokte/covid19-image-dataset
https://bimcv.cipf.es/bimcv-projects/bimcv-covid19/

Дополнительная литература и ресурсы:
https://www.udacity.com/course/ai-product-manager-nanodegree--nd088
https://arxiv.org/pdf/1803.05854. pdf
https://cloud.google.com/vision/automl/docs/beginners-guide
https://towardsdatascience.com/understanding-confusion-matrix-a9ad42dcfd62

Приложение 1: Хотя этот блог все еще находится в режиме черновика, я узнал, что C.A.I.R. (подпадает под DRDO) выпустила собственный инструмент на основе искусственного интеллекта для обнаружения Covid-19!
https://economictimes.indiatimes.com/news/india/drdo-develops-ai-tool-for-covid-detection-in-chest-x-rays/articleshow/82456580.cms