Лематизація з прискоренням GPU за допомогою CUDA та RAPIDS-акселератора для Spark

Ключові слова: прискорення на GPU, CUDA, Apache Spark, прискорювач RAPIDS, лематизація, морфологічний аналіз, методи скінченних станів, обробка великих даних, паралельна обробка тексту

Анотація

Лематизація є одним з небагатьох етапів попередньої обробки в конвеєрах NLP, який все ще переважно залежить від процесора, навіть попри те, що токенізація, векторизація та виведення моделей все більше залежать від високопродуктивного виконання на GPU. Детерміновані морфологічні аналізатори на основі словників забезпечують стабільні та лінгвістично коректні результати, але їхня послідовна структура, складна логіка розгалужень та витрати на міжплатформну взаємодію суттєво обмежують продуктивність обробки у великомасштабних розподілених системах. У цій роботі запропоновано детермінований лематизатор для української мови, розроблений на GPU як користувацьке ядро CUDA та інтегрований в Apache Spark через JNI UDF з прискоренням RAPIDS. Великий морфологічний словник (VESUM/dict_uk) компілюється в компактний макет trie, оптимізований для об'єднаного проходження пам'яті та повністю паралельної обробки токенів, зберігаючи точність, усуваючи обмеження процесора та зменшуючи наскрізну затримку. Здійснюється оцінка трьох конвеєрів Spark — Python з pymorphy3, Java з Morfologik та запропонованої реалізації CUDA — на корпусах до 175,6 млн токенів. Підхід на GPU досягає 35,77 млн токенів/с, перевершуючи оптимізований базовий рівень Java на 8,8× та базовий рівень Python до 120×. Отримані результати демонструють, що класичний морфологічний аналіз, який історично розглядався як послідовний за своєю суттю, може бути перепроектований в ефективну, масштабовану та обмежену пропускною здатністю операцію на GPU, придатну для реальних робочих процесів з великими даними.

Посилання

Karttunen L. Applications of finite-state transducers in natural language processing. Implementation and Application of Automata. Berlin, Heidelberg, 2001. P. 34–46. (Lecture Notes in Computer Science; vol. 2088). URL: https://doi.org/10.1007/3-540-44674-5_2.

Korzycki M. Finite-state methodology in natural language processing. Computer Science. Kraków, 2001. Vol. 3. P. 151–162. URL: https://doi.org/10.7494/csci.2001.3.1.3594.

Baxi J., Bhatt B. Recent advancements in computational morphology: a comprehensive survey. URL: https://doi.org/10.48550/arXiv.2406.05424.

Boros T., Dumitrescu S. D., Burtica R. NLP-Cube: end-to-end raw text processing with neural networks. Proceedings of the CoNLL 2018 Shared Task: Multilingual Parsing from Raw Text to Universal Dependencies. Brussels, Belgium, 2018. P. 171–179. URL: https://doi.org/10.18653/v1/K18-2017.

A survey on Spark ecosystem for big data processing / S. Tang et al. IEEE Transactions on Knowledge and Data Engineering. 2020. P. 71–91. URL: https://doi.org/10.1109/TKDE.2020.2975652.

Опубліковано
2026-03-28
Як цитувати
Федорович , І., & Осухівська, Г. (2026). Лематизація з прискоренням GPU за допомогою CUDA та RAPIDS-акселератора для Spark. КОМП’ЮТЕРНО-ІНТЕГРОВАНІ ТЕХНОЛОГІЇ: ОСВІТА, НАУКА, ВИРОБНИЦТВО, (62), 89-98. https://doi.org/10.36910/6775-2524-0560-2026-62-10
Розділ
Інформатика та обчислювальна техніка