Векторизація обчислень для оптимізації коду на мові програмування Python

Мета. Метою цього дослідження є вивчення векторизації як інженерної техніки для покращення продуктивності та читабельності коду Python, зокрема в задачах обробки даних. Ми прагнемо продемонструвати переваги векторизації на практичних прикладах, пов'язаних з обробкою відсутніх даних. Дизайн / М...

Full description

Saved in:
Bibliographic Details
Main Authors: Олексій Земляний, Олег Байбуз
Format: Article
Language:English
Published: Oles Honchar Dnipro National University 2024-11-01
Series:Challenges and Issues of Modern Science
Subjects:
Online Access:https://cims.fti.dp.ua/j/article/view/215
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Мета. Метою цього дослідження є вивчення векторизації як інженерної техніки для покращення продуктивності та читабельності коду Python, зокрема в задачах обробки даних. Ми прагнемо продемонструвати переваги векторизації на практичних прикладах, пов'язаних з обробкою відсутніх даних. Дизайн / Метод / Підхід. Для досягнення цілей дослідження ми провели порівняльний аналіз між реалізаціями з використанням циклів та з векторизацією. Зокрема, було розроблено дві версії функції для виявлення стовпців, що містять задану кількість відсутніх значень в наборі даних. Ці реалізації були протестовані на двох реальних наборах даних. Порівнювався час виконання та читабельність коду. Результати. Результати показали, що векторизація призвела до значного покращення продуктивності, зменшивши час виконання в сотні разів порівняно з традиційними методами, заснованими на циклах. Крім того, векторизований код є більш компактним, що призводить до кращої читабельності та простоти підтримки. Теоретичне значення. Векторизація забезпечує вищий рівень абстракції для виконання операцій над структурами даних. Це дозволяє розробникам зосередитися на алгоритмічній логіці, а не на керуванні ітераційними структурами, що сприяє більш широкому розгляду питань оптимізації обчислювальної ефективності в Python. Практичне значення. Для інженерів з обробки даних та аналітиків векторизація є високоефективним рішенням для оптимізації коду на Python. Вона значно прискорює виконання завдань, що вимагають великих обсягів даних, таких як імпутування відсутніх даних, аналіз даних і машинне навчання, що робить її важливим інструментом для підвищення продуктивності в середовищах, керованих даними. Оригінальність / Цінність. Це дослідження представляє практичний підхід до оптимізації коду Python за допомогою векторизації. Воно є цінним для професіоналів, які прагнуть підвищити ефективність своїх робочих процесів. Обмеження дослідження / Майбутні дослідження. Обмеження цього дослідження полягає в тому, що воно зосереджене на одному підході - векторизації. Майбутні дослідження повинні дослідити використання векторизації разом з компіляцією Just-In-Time (JIT) за допомогою таких інструментів, як Numba, для подальшого підвищення продуктивності Python. Тип статті. Практична стаття. PURL: https://purl.org/cims/2403.017
ISSN:3083-5704