Розроблення програмно-алгоритмічного забезпечення розпаралелення процесу навчання штучних нейронних мереж з використанням технологій CUDA

Автор(и)

  • Ярослав Іванович Соколовський Національний університет «Львівська політехніка», Україна https://orcid.org/0000-0003-4866-2575
  • Денис Андрійович Манохін Львівський національний університет ім. Івана Франка, Україна https://orcid.org/0000-0002-8590-7626
  • Ярослав Олександрович Каплунський Національний лісотехнічний університет України, Україна https://orcid.org/0000-0002-7550-8357
  • Ольга Володимирівна Мокрицька Національний лісотехнічний університет України, Україна https://orcid.org/0000-0002-2887-9585

DOI:

https://doi.org/10.15587/2706-5448.2021.239784

Ключові слова:

програмне забезпечення, штучні нейронні мережі, Python, PyTorch framework, CUDA, модифікована архітектура U-Net

Анотація

Об’єктом дослідження є розпаралелення процесу навчання штучних нейронних мереж для автоматизації процедури аналізу медичних зображень за допомогою мови програмування Python, фреймворку PyTorch та технології Compute Unified Device Architecture (CUDA). Робота цього фреймворку базується на моделі Define-by-Run. Проведено аналіз наявних хмарних технологій для реалізації завдання та аналіз алгоритмів навчання штучних нейронних мереж. Було використано модифіковану архітектуру U-Net з бібліотеки MedicalTorch. Метою її застосування була необхідність інформаційної системи в мережі, що може ефективно навчатись при невеликих наборах даних. Оскільки в області медицини одним з найбільш проблемних місць є наявність великих датасетів, що пов’язано з вимогами до конфіденційності даних такого характеру. Отримана інформаційна система здатна реалізувати поставлені перед нею задачі, містить максимально зрозумілий інтерфейс користувача та весь необхідний комплекс інструментів для спрощення та автоматизації процесу візуалізації та аналізу даних. Здійснено порівняння ефективності тренування нейронних мереж за допомогою центрального процесора (CPU) та за допомогою графічного процесора (GPU) з використанням технологій CUDA. В ході дослідження використовувалися хмарні технології. Серед хмарних сервісів було розглянуто Google Colab та Microsoft Azure. Спершу було використано Colab для побудови прототипу. Тому для ефективного навчання готової архітектури штучної нейронної мережі використовувався сервіс Azure. Проведено виміри з використанням хмарних технологій в обох сервісах. Для навчання моделі використовувався оптимізатор Adam. Також було проведено виміри тривалості навчання за допомогою CPU, щоб оцінити пришвидшення від використання технологій CUDA. Було реалізовано оцінку отриманого пришвидшення завдяки використанню обчислень на GPU та хмарних технологій. Також було проведено виміри тривалості навчання за допомогою CPU, щоб оцінити пришвидшення від використання технологій CUDA. Розроблена під час досліджень модель показала задовільні результати за метриками Джаккара та Дайса у вирішенні поставленої задачі. Ключовим чинником успішності цього дослідження були сервіси хмарних обчислень.

Біографії авторів

Ярослав Іванович Соколовський, Національний університет «Львівська політехніка»

Доктор технічних наук, професор

Кафедра систем автоматизованого проектування

Денис Андрійович Манохін, Львівський національний університет ім. Івана Франка

Кафедра інформаційних систем

Ярослав Олександрович Каплунський, Національний лісотехнічний університет України

Аспірант

Кафедра інформаційних технологій

Ольга Володимирівна Мокрицька, Національний лісотехнічний університет України

Кандидат технічних наук, доцент,

Кафедра інформаційних технологій

Посилання

  1. Sokolovskyy, Y. I., Shymanskyi, V. M., Mokrytska, O. V., Kharko, Y. V. (2019). Neural network model for identification of material creep curves using CUDA technologies. Ukrainian Journal of Information Technology, 1 (1), 11–16. doi: http://doi.org/10.23939/ujit2019.01.011
  2. Manokhin, D. (2021) Prohramno alhorytmichne zabezpechennia rozparalelennia protsesu navchannia shtuchnykh neironnykh merezh z vykorystanniam tekhnolohii CUDA. Mizhnarodna studentska naukova konferentsiia z pytan prykladnoi matematyky ta kompiuternykh nauk (MSNKPMK-2021). Lviv. Available at: https://ami.lnu.edu.ua/wp-content/uploads/2021/05/Ministerstvo-osvity-i-nauky-Ukrainy.docx
  3. Ambros, R., Waltham, R. et. al. (2021). Godfrey Hounsfield. Available at: https://radiopaedia.org/articles/godfrey-hounsfield?lang=us
  4. Bell, D. J., Mirjan, Pr., Nadrljanski, M. et. al. (2021). Computed tomography. Available at: https://radiopaedia.org/articles/computed-tomography
  5. Bell, D. J., Greenway, K. et. al. (2021). Hounsfield unit. Available at: https://radiopaedia.org/articles/hounsfield-unit
  6. Goodfellow, I., Bengio, Yo., Courville, A. (2016). Deep Learning. MIT Press, 781.
  7. Ciresan, D. C., Gambardella, L. M., Giusti, A. (2012). Deep neural networks segment neuronal membranes in electron microscopy images. NIPS, 2852–2860.
  8. Ronnenbergerm, O., Fischerm, P., Broxm, T. (2015). U-Net: Convolutional Networks for Biomedical Image Segmentation. Medical Image Computing and Computer-Assisted Intervention (MICCAI). Springer, LNCS, 9351, 234–241. doi: http://doi.org/10.1007/978-3-319-24574-4_28
  9. Chilamkurthy, S., Ghosh, R., Tanamala, S., Biviji, M., Campeau, N. G., Venugopal, V. K., Warier, P. (2018). Development and validation of deep learning algorithms for detection of critical findings in head CT scans. arXiv preprint. Available at: https://arxiv.org/abs/1803.05854
  10. RSNA Intracranial Hemorrhage Detection (2019). Radiological Society of North Ameriaca. Available at: https://www.kaggle.com/c/rsna-intracranial-hemorrhage-detection/overview
  11. Hssayeni, M. D., Croock, M. S., Salman, A. D., Al-khafaji Hassan Falah, Yahya, Z. A., Ghoraani, B. (2020). Intracranial Hemorrhage Segmentation Using a Deep Convolutional Model. Data, 5 (1), 14. doi: http://doi.org/10.3390/data5010014
  12. Goldberger, A. L., Amaral, L. A., Glass, L., Hausdorff, J. M., Ivanov, P. C., Mark, R. G. et. al. (2000). PhysioBank, PhysioToolkit, and PhysioNet: components of a new research resource for complex physiologic signals. Circulation, 101 (23), E215–E220. doi: http://doi.org/10.1161/01.cir.101.23.e215
  13. Perone, C. S., Cclauss, Saravia, E., Ballester, P. L., Tare, M. (2018). Perone/medicaltorch: Release v0.2 (v0.2). doi: https://doi.org/10.5281/zenodo.1495335
  14. Hssayeni, M. (2020). Computed Tomography Images for Intracranial Hemorrhage Detection and Segmentation. PhysioNet. 1.3.1. doi: https://doi.org/10.13026/4nae-zg36
  15. Tokui, S., Oono, K. (2015). Chainer: a Next-Generation Open Source Framework for Deep Learning. Available at: http://learningsys.org/papers/LearningSys_2015_paper_33.pdf
  16. Hu, W., Miyato, T., Tokui, S., Matsumoto, E., Sugiyama, M.. (2017). Learning Discrete Representations via Information Maximizing Self-Augmented Training. Proceedings of the 34th International Conference on Machine Learning Proceedings of Machine Learning Research, 70, 1558–1567. Available at: https://proceedings.mlr.press/v70/hu17b.html
  17. PyTorch Documentation (2021) Available at: https://pytorch.org/docs/stable/index.html
  18. Colaboratory Frequently Asked Questions (2021). Available at: https://research.google.com/colaboratory/faq.html
  19. How Azure Machine Learning works: Architecture and concepts (2020). Available at: https://docs.microsoft.com/en-us/azure/machine-learning/concept-azure-machine-learning-architecture

##submission.downloads##

Опубліковано

2021-09-23

Як цитувати

Соколовський, Я. І., Манохін, Д. А., Каплунський, Я. О., & Мокрицька, О. В. (2021). Розроблення програмно-алгоритмічного забезпечення розпаралелення процесу навчання штучних нейронних мереж з використанням технологій CUDA. Technology Audit and Production Reserves, 5(2(61), 21–25. https://doi.org/10.15587/2706-5448.2021.239784

Номер

Розділ

Системи та процеси керування: Оригінальне дослідження