Дисертації (СП)

Постійне посилання зібрання

У зібранні розміщено дисертації, які захищені працівниками кафедри.

Переглянути

Нові надходження

Зараз показуємо 1 - 13 з 13
  • ДокументВідкритий доступ
    Підвищення ефективності методів відновлення зображень на основі модифікованої згорткової мережі
    (КПІ ім. Ігоря Сікорського, 2026) Линовський, Андрій Олексійович; Мухін, Вадим Євгенійович
    Линовський А.О. Підвищення ефективності методів відновлення зображень на основі модифікованої згорткової мережі. - Кваліфікаційна наукова праця на правах рукопису. Дисертаційна робота на здобуття наукового ступеня доктора філософії за спеціальністю 122 «Компʼютерні науки». - Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», 2026. Об’єктом дослідження є процес шумозаглушення медичних зображень, пошкоджених імпульсним SaP-шумом. Зокрема згорткові нейронні мережі та модулі уваги. Предметом дослідження є методи й засоби нейромережевого шумозаглушення, зокрема модифікації архітектури SeConvNet, а також їхній вплив на якість відновлення (PSNR), обчислювальні витрати та стійкість до різних рівнів SaP-шуму на реальних і синтетичних даних. У першому розділі здійснено всебічний та комплексний аналіз існуючих методів відновлення зображень після шумових спотворень. Досліджено еволюцію підходів, починаючи від класичних методів обробки у просторовій області (лінійні та нелінійні фільтри, зокрема медіанна фільтрація) та методів у перетворюючій області (вейвлет-перетворення, DCT). Встановлено, що класичні просторові фільтри схильні до надмірного згладжування контурів та втрати дрібних деталей при високій щільності імпульсного шуму. Сучасні нелокальні алгоритми, такі як BM3D та NL-Means, забезпечують вищу якість та добре відновлюють повторювані текстури, однак їх використання жорстко обмежене значною обчислювальною складністю. Детально проаналізовано застосування методів машинного та глибокого навчання (CNN, RNN, GAN, дифузійні імовірнісні моделі та трансформери) для усунення шуму. Згорткові нейронні мережі (наприклад, архітектура DnCNN) продемонстрували високу ефективність для гаусівського шуму, проте їх здатність обробляти складний кластерний імпульсний шум залишається обмеженою. Особливу увагу в розділі приділено специфіці імпульсного шуму типу SaP на медичних рентгенівських зображеннях та наслідкам його появи для діагностики. У другому розділі проведено глибокий аналіз базової моделі згорткової нейронної мережі SeConvNet. Виявлено її системні обмеження під час обробки медичних рентгенівських знімків, пошкоджених великими кластерними плямами SaP-шуму. Доведено, що через локальну природу SeConv-блоків та використання цільової функції мінімізації середньоквадратичної помилки (MSE) під час навчання, мережа втрачає глобальний контекст. Для великих зашумлених зон гіпотеза математичного «усереднення» дає меншу сумарну помилку, що неминуче спричиняє залишкові артефакти, втрату різкості анатомічних контурів та деградацію локальних контрастів. Для подолання цих критичних недоліків було розроблено та теоретично обґрунтовано модифіковану архітектуру SeConvNet + CBAM. Запропоновано стратегічну інтеграцію модуля канально-просторової уваги безпосередньо після операцій залишкового додавання у згорткових секціях мережі. Канальна увага фокусується на виділенні найбільш інформативних ознак через механізми глобального усереднення та максимізації, а просторова увага детально локалізує ці важливі області на площині. Це дозволило моделі адаптивно підсилювати релевантні структурні ознаки, відрізняючи корисний медичний сигнал від шуму. У третьому розділі детально розкрито інструментальні засоби, механізми реалізації та алгоритм роботи модифікованої моделі в умовах обмежених обчислювальних ресурсів. Описано формальну математичну модель запропонованої архітектури та поетапний процес відновлення зображень, що поєднує локальні й глобальні стратегії. На першому етапі відбувається первинне локальне заповнення пошкоджених пікселів каскадом із семи селективних згорток, розмір ядра яких поступово зростає від 3x3 до 15x15 пікселів. На другому етапі отримані карти ознак проходять через глибоку згорткову підсистему із прямими шунтувальними (залишковими) зв’язками для видобутку високорівневих ознак. На третьому етапі відбувається адаптивне зважування ознак за допомогою модулів уваги CBAM. Фінальний шар генерує залишкову корекцію, яка через жорстке маскування застосовується виключно до тих пікселів, що були початково пошкоджені, залишаючи чисті ділянки незмінними. У розділі також глибоко деталізовано специфіку процесу підготовки даних та навчання моделі. Навчальна вибірка формувалася шляхом масштабування, нарізки зображень на фрагменти та інтенсивного розширення даних у 8 разів за рахунок геометричних перетворень. Навчання оптимізовано за допомогою алгоритму Adam з поступовим зменшенням швидкості навчання. Проаналізовано вплив апаратних платформ (CPU, GPU, TPU) на ефективність тренування та розглянуто методи зниження витрат оперативної пам'яті (Gradient checkpointing, змішана точність). У четвертому розділі представлено результати експериментальних досліджень та здійснено ретельний порівняльний аналіз ефективності зменшення шуму оригінальної та модифікованої моделей. Тестування проводилося на наборі медичних даних NIH Chest X-rays із моделюванням екстремального рівня синтетичного SaP-шуму. Аналіз підтвердив покращення результатів: модифікована модель SeConvNet + CBAM забезпечила систематичне зростання середнього показника PSNR на 4.7%. На особливо критичних ділянках із сильною концентрацією кластерного шуму приріст PSNR сягав 5-8%. Візуальний аналіз відновлених фрагментів довів перевагу модифікованої моделі. Запропонована архітектура значно точніше відновлювала дрібні анатомічні структури, контури ребер та судинний малюнок, успішно мінімізуючи ефект зернистості та розмиття, що були притаманні оригінальній базовій мережі. Аналіз обчислювальної ефективності підтвердив практичну придатність розробленої моделі для роботи в клінічних умовах. Збільшення кількості параметрів та часу обробки одного зображення (з 0.42 с до 0.47 с на базовому процесорі CPU) є мінімальним і повністю виправдовується суттєвим підвищенням діагностичної якості медичних знімків. Наукова новизна отриманих результатів Вперше запропоновано метод підвищення ефективності відновлення зображень, пошкоджених імпульсним шумом, який відрізняється інтеграцією механізму канально-просторової уваги (CBAM) у структуру селективної згорткової мережі після залишкових зв’язків, що дозволяє адаптивно підсилювати важливі структурні ознаки та мінімізувати артефакти згладжування при відновленні кластерних шумових плям. Запропоновано модифіковану модель нейронної мережі SeConvNet, яка відрізняється спеціальним розміщенням блоків уваги для обробки сумарного сигналу прямого поширення та корекційної гілки, що дозволяє підвищити точність відновлення дрібних анатомічних деталей (зріст PSNR до 8% на складних ділянках) при збереженні обчислювальної ефективності для використання в ресурснообмежених середовищах. Практичне значення отриманих результатів полягає в покращенні якості медичних зображень: модифікована SeConvNet + CBAM дозволяє більш акуратно відновлювати дрібні анатомічні деталі при високій щільності SaP-шуму, що підвищує інформативність знімків для попереднього аналізу і візуальної інтерпретації. Невеликі апаратні вимоги що надає можливість запускати на не вимогливих засобах: додавання CBAM незначно збільшує кількість параметрів (в середньому на 5%), тож впровадження можливе навіть у системах з обмеженими ресурсами (клінічні робочі станції), а для більш продуктивного навчання передбачено перенесення на GPU-середовища. Вперше запропоновано модифіковану архітектуру SeConvNet + CBAM, яка поєднує селективні локальні SeConv-блоки з послідовним канально-просторовим механізмом уваги (CBAM), що дозволяє адаптивно підсилювати важливі канали й локалізувати інформативні області для ефективного придушення імпульсного SaPшуму без значного зростання обчислювальних витрат. Розроблено засоби підвищення достовірності діагностичних процедур на основі стратегічної інтеграції механізму уваги CBAM після операції резидуального додавання у згорткових секціях мережі. Таке архітектурне розміщення гарантує доступ маски уваги до комбінованого представлення - сумарного сигналу початкового шляху й корекційної гілки. В результаті в критичних тестах із кластерним шумом досягнуто приросту PSNR до 8%, що забезпечує помітне покращення візуальної якості та інформаційної цінності зображень. Отримані результати демонструють можливість точного відновлення медичних зображень із мінімізацією надмірного згладжування, що дозволяє зберегти важливі анатомічні деталі. Актуальність та наукова новизна результатів дослідження повною мірою підтверджується їх апробацією та публікацією у провідних фахових виданнях. Зокрема, базові концепції та засоби покращення якості візуальних даних висвітлено у журналі «Телекомунікаційні та інформаційні технології» (2023), де основну увагу було приділено особливостям знешумлення зображень за допомогою комплексного застосування згорткових і рекурентних нейронних мереж, що дозволило закласти фундамент для ефективного виявлення та усунення артефактів. Подальший розвиток та адаптація запропонованих алгоритмічних рішень відображені у виданні «Кібербезпека: освіта, наука, техніка» (2024). А також публікація в журналі «Проблеми інформатизації та управління» (2024), яка описує найбільш глибоко оптимізований варіант системи. Інтеграція в архітектуру залишкових зв’язків (residual connections) та спеціалізованого модулю уваги (attention module) дала змогу стабілізувати процес глибокого навчання мережі, змушуючи алгоритм прицільно фокусуватися на значущих структурних елементах зображення і максимально нівелювати вплив складних шумових завад.
  • ДокументВідкритий доступ
    Метод статичного аналізу вихідного коду програм із використанням великих мовних моделей
    (КПІ ім. Ігоря Сікорського, 2026) Вохранов, Ілля Анатолійович; Булах, Богдан Вікторович
    Вохранов І. А. Метод статичного аналізу вихідного коду програм із використанням великих мовних моделей. — Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії за спеціальністю 122 — Комп'ютерні науки. — Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», Міністерство освіти і науки України, Київ, 2026. Метою дисертаційного дослідження є розробка, формалізований опис та експериментальна оцінка нейросимвольного методу статичного аналізу програмного коду з використанням великих мовних моделей, який забезпечує контрольовану поведінку LLM через незалежну символьну верифікацію генерованих тверджень, що дозволяє досягти високої повноти виявлення дефектів при збереженні точності та передбачуваності результатів. Об'єктом дослідження є процеси статичного аналізу програмного коду, спрямовані на виявлення дефектів та вразливостей. Предметом дослідження є нейросимвольні методи статичного аналізу, що поєднують семантичне розуміння великих мовних моделей з незалежною символьною верифікацією для забезпечення контрольованої та передбачуваної поведінки. У ході роботи над дисертацією було використано такі методи дослідження: аналіз та систематизація наукових джерел для визначення стану досліджень у галузі статичного аналізу коду та нейросимвольних систем; формалізація для опису архітектури та алгоритмів запропонованого методу; моделювання для побудови архітектури запропонованого методу та взаємодії його компонентів; експеримент для емпіричної оцінки ефективності методу на реальних даних; порівняльний аналіз для зіставлення результатів із існуючими підходами; абляційне дослідження для визначення внеску кожного архітектурного компоненту. Зазначені методи було обрано з огляду на мету та завдання дослідження, а також на їх придатність для вирішення проблем контрольованого використання великих мовних моделей у задачах статичного аналізу коду. У дисертації вперше запропоновано нейросимвольний метод статичного аналізу програмного коду, який відрізняється тим, що на першому етапі аналізу LLM безпосередньо генерує структуровані твердження про дефекти коду, за чим слідує етап символьного аналізу для їх верифікації, в той час, як в існуючих нейросимвольних методах статичного аналізу коду (IRIS, LLMSA, MoCQ) навпаки - символьний компонент виконує первинне виявлення або структуризацію дефектів, а нейронний компонент фільтрує чи доповнює його результати. Інвертований напрямок нейросимвольної верифікації "Neural → Symbolic" дозволяє скористатися здатністю великої мовної моделі сприймати семантику коду при одночасному жорсткому контролі згенерованих нею тверджень, що сприяє виявленню ширшого кола дефектів при мінімальних ризиках галюцинації моделі. Вперше запропоновано спосіб верифікації структурованих тверджень про дефекти коду із застосуванням символьного аналізу Explain-Verify Gate, особливість якого полягає у тому, що атрибути твердження про дефект (тип дефекту, локалізація, пропозиція мінімально задовілього виправлення та обґрунтування) визначають вибір та інтерпретацію подальших символьних перевірок (зіставлення AST-патернів, taint-аналіз, перевірка правдоподібності виправлення), що є відмінним від існуючих способів верифікації у нейросимвольних методах аналізу коду та забезпечує детермінізм верифікації за відсутності потреби повторного звернення до мовної моделі за обґрунтуванням кожного прийнятого нею рішення. Удосконалено процес прийняття рішень щодо дефектів у нейросимвольному статичному аналізі програмного коду шляхом застосування механізму Evidence-Weighted Suppression (EWS), який зважує докази з кількох незалежних джерел (інструменти статичного аналізу, AST-патерни, показник впевненості базового аналізатора), що відрізняється від процесу визначення дефектів в рамках існуючих нейросимвольних підходів, в яких відхилення результату на етапі верифікації є остаточним без урахування доказів з інших джерел. Це дозволяє збалансувати точність і повноту аналізу шляхом відновлення валідних виявлень дефектів, що відхиляються символьною верифікацією за відсутності відповідних патернів, але підтверджуються достатніми доказами з інших джерел. Розроблений метод статичного аналізу коду дає змогу виявляти додаткові дефекти, які не виявляються як інструментами на основі правил, так і безпосереднім використанням LLM. Експериментальна оцінка на 1000 зразків із набору даних PySStuBs підтвердила виявлення 247 додаткових дефектів порівняно з базовим LLM-підходом (379 проти 132) та 371 додаткового дефекту порівняно з ансамблем інструментів на основі правил (379 проти 8), що відповідає покращенню recall на 187% та F1-score на 76.4% при збереженні співставного рівня точності (~0.51). Виявлення цих додаткових дефектів на етапі статичного аналізу запобігає їх потраплянню на подальші етапи розробки, де вартість їх виправлення суттєво зростає. Результати аналізу в рамках запропонованого методу представлені структурованим описом дефекту (тип, локалізація, обґрунтування, мінімально необхідне виправлення), який завжди супроводжується результатами символьної верифікації, що скорочує час розробника на аналіз та усунення виявлених проблем та суттєво полегшує інтеграцію методу в автоматизовані процеси контролю якості коду (CI/CD, code review), де рішення про дефект має спиратися на перевірені докази, а не лише на вихід мовної моделі. Запропонований метод аналізу не потребує донавчання моделей та збору спеціалізованих датасетів, що зменшує витрати на впровадження та супровід порівняно з підходами на основі fine-tuning, які вимагають підготовки навчальних даних, обчислювальних ресурсів для тренування та повторного навчання при зміні моделі. Експериментальне застосування GPT-5.2 (RQ2) підтвердило збереження переваг запропонованого методу у порівнянні з існуючими методами статичного аналізу коду при переході на новіше покоління мовної моделі (+132% F1-score, +363% recall), що свідчить про можливість оновлення нейронного компоненту без модифікації решти складових системи, що суттєво економить витрати. Метод забезпечує можливість налаштування під різноманітні конкретні задачі аналізу без зміни загальної архітектури: тип аналізу та цільові класи дефектів визначаються у змісті запиту до нейромережевого компоненту (аналогічно до властивості customizable analysis у LLMSA), а покриття символьної верифікації розширюється додаванням нових правил, AST-патернів та taint-специфікацій для підтримки нових мов програмування та типів дефектів. Абляційне дослідження (RQ3) підтвердило стійкість архітектури до модифікацій окремих компонентів: F1-score між конфігураціями варіюється у діапазоні 0.654–0.668. Дисертація складається з п'яти розділів. У першому розділі розглянуто теоретичні основи аналізу програмного коду з використанням нейронних мереж. Проаналізовано класичні методи статичного аналізу (аналіз потоку даних, аналіз потоку управління, абстрактна інтерпретація, символьне виконання, model checking, синтаксичний аналіз та pattern matching), визначено їх переваги та фундаментальні обмеження, зокрема проблему вибуху шляхів та обмеження SMT-вирішувачів. Досліджено еволюцію нейронних методів в аналізі коду — від класичного машинного навчання через попередньо навчені моделі (CodeBERT, GraphCodeBERT) до великих мовних моделей (GPT-4, GPT-5.2). Розглянуто концепцію нейросимвольної інтеграції та типи нейросимвольних систем, що обґрунтовує необхідність гібридного підходу, який поєднує семантичне розуміння нейронних моделей з формальними гарантіями символьних методів. У другому розділі проведено аналіз сучасних досліджень у галузі статичного аналізу коду. Систематизовано існуючі нейросимвольні методи аналізу програм: IRIS (символьний → нейронний напрямок, CodeQL → LLM), LLMSA (композиційний нейросимвольний аналіз), MoCQ (ітеративне уточнення патернів). Визначено спільне обмеження існуючих методів — відсутність явного механізму незалежної верифікації тверджень LLM. Сформульовано вимоги до методу, що заповнює цю прогалину, та обґрунтовано позиціонування VERIGATE як першого методу, що реалізує напрямок Neural → Symbolic у контексті статичного аналізу коду. У третьому розділі детально описано запропонований метод VERIGATE. Представлено архітектуру чотириетапного методу: попередній скринінг (ансамбль інструментів та AST-правила), Explain (генерація структурованих тверджень LLM у форматі JSON), Verify (символьна верифікація через багатоетапне дерево рішень), фінальне рішення з механізмом Evidence-Weighted Suppression. Формалізовано процес верифікації, описано критерії прийняття та відхилення тверджень, механізм вирівнювання спанів та taint analysis. Проведено порівняння архітектурних рішень VERIGATE з існуючими нейросимвольними системами за ключовими характеристиками (напрямок взаємодії, роль LLM, роль символьної системи, пояснюваність). Описано деталі реалізації: технологічний стек, формат промпту для LLM, обробку виходу LLM. Наведено наскрізний приклад роботи VERIGATE на реальному фрагменті коду з датасету PySStuBs, що демонструє нейросимвольну взаємодію компонентів на прикладі виявлення семантичного логічного дефекту. У четвертому розділі представлено результати експериментальної оцінки. Основна оцінка (RQ1) проведена на 1 000 збалансованих зразках із датасету PySStuBs (Python Single-Statement Bugs) з використанням GPT-4. Порівняння трьох методів (VERIGATE, GPT-4 Baseline, Rule-Based) продемонструвало: покращення F1-score на 76.4% (0.612 проти 0.347) та recall на 187% (0.758 проти 0.264) порівняно з GPT-4 Baseline при порівняному precision (~0.51). Інструменти на основі правил продемонстрували дуже низьку ефективність (F1 = 0.031), що підтверджує семантичну складність дефектів у датасеті. Валідація з GPT-5.2 (RQ2, n = 500) підтвердила стабільне покращення: +132% F1-score, +363% recall, що свідчить про стійкість нейросимвольної верифікації як архітектурного принципу при розвитку мовних моделей. Абляційне дослідження (RQ3, n = 500) продемонструвало, що VERIGATE функціонує як інтегрований поетапний процес з вузьким діапазоном F1 (0.654–0.668) для всіх конфігурацій, де кожен компонент робить незалежний внесок у загальну ефективність. У п'ятому розділі досліджено перспективи розвитку та узагальнення запропонованого методу. Проаналізовано напрямки розширення на нові мови програмування, нові класи дефектів та інтеграцію з виробничими процесами розробки програмного забезпечення (CI/CD, code review, IDE). Визначено обмеження поточної реалізації та шляхи їх подолання. У дисертації запропоновано нейросимвольний метод VERIGATE для статичного аналізу програмного коду, який через використання незалежної символьної верифікації тверджень LLM дозволяє поєднати семантичне розуміння програмного коду великої мовної моделі із обґрунтуванням кожного виявлення у верифікованих властивостях програми. Основна ідея методу полягає в інверсії напрямку нейросимвольної взаємодії: замість традиційного підходу, де символьний аналіз генерує результати, а нейронна мережа їх фільтрує, у VERIGATE LLM генерує структуровані гіпотези, а символьний аналіз незалежно їх верифікує. У ході експериментальних досліджень було підтверджено ефективність запропонованого методу: покращення F1-score на 76.4% та recall на 187% порівняно з GPT-4 Baseline, стабільне покращення з GPT-5.2, а також збалансований внесок кожного архітектурного компоненту. Особистий внесок здобувача. Усі основні результати дисертаційного дослідження, представлені до захисту, одержані автором особисто. Здобувачем виконано: аналіз існуючих методів статичного аналізу коду та нейросимвольних систем; розробку нейросимвольного методу VERIGATE з механізмами Explain-Verify Gate та Evidence-Weighted Suppression; формалізацію процесу верифікації структурованих тверджень; розробку програмного прототипу; проведення експериментальної оцінки та аналіз результатів. У публікаціях у співавторстві здобувачеві належать: дослідження існуючих методів, проектування архітектури нейросимвольного методу, розробка механізмів верифікації та прийняття рішень, експериментальне підтвердження ефективності запропонованого методу. Апробація матеріалів дисертації. Основні положення та отримані наукові результати, що викладені в даній дисертації, пройшли апробацію через їх презентацію на міжнародній науковій конференції — 4th International Scientific and Practical Conference «Science and Information Technologies in the Modern World» (Афіни, Греція, 24–26 грудня 2025р.).
  • ДокументВідкритий доступ
    Оптимізація параметрів та структури нейронних мереж із застосуванням еволюційних алгоритмів
    (КПІ ім. Ігоря Сікорського, 2026) Гірянський, Богдан Петрович; Булах, Богдан Вікторович
    Гірянський Б.П. Оптимізація параметрів та структури нейронних мереж із застосуванням еволюційних алгоритмів. — Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії за спеціальністю 122 — Комп’ютерні науки. — Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», Київ, 2026. Метою дослідження є підвищення ефективності процесів оптимізації параметрів та структури нейронних мереж шляхом розробки та дослідження еволюційних методів стиснення, оптимізації гіперпараметрів та злиття моделей. Об’єктом дослідження є процеси оптимізації параметрів та структури нейронних мереж. Предметом дослідження є методи та алгоритми застосування еволюційних обчислень для структурної оптимізації, пошуку гіперпараметрів і злиття нейронних мереж. Методи дослідження. Використано: методи системного аналізу — для класифікації підходів та формулювання задач. Eволюційні алгоритми безперервної оптимізації (CMA-ES, диференціальна еволюція, генетичний алгоритм) — для пошарового розподілу розрідженості, оптимізації гіперпараметрів та злиття моделей. Методи теорії матриць (апроксимація сліду матриці Гессе, двонаправлена метрика спорідненості нейронів) — для оцінки важливості ваг та нейронів, сурогатне моделювання (Random Forest) — для оптимізації гіперпараметрів, e-жадібний багаторукий бандит — для контролю достовірності сурогату, непараметрична статистика (критерії Фрідмана, Немені, Вілкоксона, бутстрап-довірчі інтервали) — для оцінювання ефективності методів. Глибоке навчання та об'єктно-орієнтоване програмування — для реалізації прототипів. Наукова новизна одержаних результатів. Вперше запропоновано метод проріджування нейронної мережі без зміни її структури, у якому частка збережених вагових коефіцієнтів у кожному шарі визначається еволюційним пошуком. Метод відрізняється від відомих підходів із глобальним порогом або фіксованим пошаровим розподілом тим, що після проміжного проріджування повторно обчислюється значущість вагових коефіцієнтів і враховується штраф за повністю деактивовані нейрони. Це зменшує ризик руйнування критичних шляхів передавання сигналу та забезпечує меншу втрату якісних характеристик мережі при високих рівнях проріджування. Вперше запропоновано метод ущільнення розрідженої нейронної мережі, що не потребує ані перенавчання моделі, ані даних для коригування вагових коефіцієнтів. На відміну від підходів, які видаляють усі деактивовані нейрони, або застосовують низькорангову апроксимацію матриці ваг, чи потребують навчальних даних для створення спрощених моделей ШНМ, запропонований метод еволюційно визначає кількість нейронів, які доцільно зберегти в кожному шарі, та об’єднує надлишкові нейрони за спорідненістю їхніх вхідних і вихідних зв’язків. Це дає змогу отримати меншу модель із кращим співвідношенням між стисненням і збереженням якісних характеристик мережі. Вперше запропоновано метод пошуку гіперпараметрів нейронних мереж, у якому еволюційний алгоритм формує та відбирає можливі значення гіперпараметрів без повного навчання мережі для кожного можливого варіанта. Відбір здійснюється за моделлю залежності між значеннями гіперпараметрів і результатами вже виконаних навчань: допоміжна модель визначає очікуване значення цільової функції для сформованих варіантів, після чого на реальне навчання передається лише один із них. Це зменшує кількість повних циклів навчань нейронної мережі та підвищує ефективність використання обчислювального бюджету. Удосконалено метод злиття нейронних мереж у випадку, коли вихідні моделі навчені на різних підмножинах класів або даних. Метод не усереднює ваги моделей, а формує об’єднану мережу з частини нейронів першої та другої моделей. Склад цієї мережі й внесок кожної моделі для різних класів визначає генетичний алгоритм. Цільова функція враховує частку правильно розпізнаних прикладів у всій валідаційній вибірці та окремо точність для найгірше розпізнаваного класу, що зменшує ризик втрати здатності розпізнавати окремі класи та допомагає зберігати знання, набуті обома моделями. Практичне значення одержаних результатів. Метод TESA-26 дає змогу автоматично визначати максимальний ступінь стиснення нейронної мережі, за якого зберігається заданий рівень якості моделі. У порівняльному дослідженні на 6 наборах даних, 12 рівнях проріджування та 1080 експериментальних записах метод показав найкращий середній ранг Фрідмана 2,04 і статистично значущо перевершив SparseGPT, WANDA та RIA (X2 = 18,05, p < 0,0001). Метод GFCS дає змогу перетворити проріджену нейронну мережу на фізично меншу щільну архітектуру зі зменшеною кількістю нейронів і зв’язків. У проведених експериментах він забезпечив стиснення у 7,6 раза та середнє прискорення обчислень моделі у 1,42 раза зі збереженням якості на всіх 8 досліджених наборах даних. Методи SACMA-DAC та SACMA-MAB скорочують кількість повних циклів навчання нейронної мережі, необхідних для добору гіперпараметрів. У дослідженні на 43 задачах із 10 повторами вони посіли 1–2 місця серед 9 підходів за середнім рангом 2,47 і 2,95 та досягли найвищої швидкості збіжності за показником AUCC = 0,9257 і 0,9210 відповідно. Метод ENT дає змогу об’єднувати нейронні мережі, навчені на різних підмножинах класів або даних, в одну модель без повного навчання з нуля і у сценарії комплементарного злиття ENT забезпечив розпізнавання 10 з 10 класів, точність 0,749 і баланс 0,981, а після калібрації ENT-FT точність зросла до 0,917. Опис розділів дисертації. У першому розділі проаналізовано наукову літературу за п'ятьма напрямками: еволюційні алгоритми безперервної оптимізації, структурне стиснення нейронних мереж, оптимізація гіперпараметрів, злиття моделей, апаратно-незалежні метрики обчислювальної вартості. Виявлено три прогалини, що визначили напрямки дослідження. У другому розділі розроблено еволюційні методи стиснення нейронних мереж: апаратно-незалежну метрику RCU, метод неструктурованого проріджування TESA-26 з еволюційним пошаровим розподілом розрідженості і метод зворотної конверсії розрідженої мережі у компактну щільну архітектуру GFCS без використання навчальних даних. Проведено порівняння з відомими методами на різнотипних задачах класифікації. У третьому розділі досліджено застосування еволюційних алгоритмів до пошуку гіперпараметрів нейронних мереж: порівняно CMA-ES з баєсівськими оптимізаторами, досліджено проксі-оцінки та ординальне кодування, розроблено метод у двох варіаціях SACMA-DAC та SACMA-MAB для пошуку гіперпараметрів із сурогатною моделлю та додатково досліджено метод WL-CMA. У четвертому розділі досліджено застосування еволюційних алгоритмів до злиття нейронних мереж з комплементарними знаннями: проаналізовано обмеження інтерполяційних методів, розроблено метод еволюційного відбору нейронної топології (ENT), розроблено етап калібрації ENT-FT та проведено порівняльний аналіз з методами Sakana-CMA, TIES-Merging, Task Arithmetic. Особистий внесок здобувача. Усі основні результати дисертаційного дослідження, подані до захисту, одержані автором особисто. Здобувачем виконано: аналіз існуючих методів структурної оптимізації нейронних мереж, розробку методів TESA-26, GFCS, SACMA-DAC, SACMA-MAB та ENT, розробку апаратно-незалежної метрики RCU, проведення обчислювальних експериментів та статистичний аналіз результатів. У публікаціях у співавторстві здобувачеві належать: дослідження існуючих методів, проектування та реалізація запропонованих методів, проведення експериментів, статистичне оцінювання ефективності. Апробація матеріалів дисертації. Основні результати дисертаційної роботи доповідались та обговорювались на міжнародній науково-практичній конференції Science and Information Technologies in the Modern World (Афіни, Греція, 24–26 грудня 2025 р.).
  • ДокументВідкритий доступ
    Семантична структура для оркестровки та хореографії когнітивних веб-сервісів
    (КПІ ім. Ігоря Сікорського, 2025) Касьянчук, Ігор Вячеславович; Петренко, Анатолій Іванович
    Касьянчук І.В. Семантична структура для оркестровки та хореографії когнітивних веб-сервісів. – Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії з галузі знань 122 Комп’ютерні науки за спеціальністю 122 Комп’ютерні науки. – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», Київ, 2025. Дисертаційна робота присвячена розробці моделі координації когнітивних веб-сервісів, яка реалізується через семантичну структуру для їх вибору, інтеграції та автоматизації композиції. Дослідження зосереджене на вдосконаленні методів семантичного узгодження сервісів шляхом використання онтологічного підходу, адаптивного планування на основі контексту виконання запитів та інтеграції параметрів QoS для оптимізації вибору сервісів. Основна увага приділяється розширенню семантичного опису сервісів шляхом використання онтологічного підходу та доповнення логічними правилами SWRL для формалізації зв’язків між сервісами. Проведено порівняльний аналіз із альтернативними методами. Запропонований підхід демонструє покращену продуктивність, точність і масштабованість семантичної обробки у динамічних середовищах у порівнянні з традиційними методами оркестрації (наприклад, BPEL) та хореографії (WS-CDL). Дисертація відповідає науково-технічним пріоритетам Національного технічного університету України «КПІ імені Ігоря Сікорського» та спрямована на розвиток семантичних веб-технологій, когнітивних обчислень та інтелектуальної обробки запитів. Дослідження спрямоване на розробку методів і алгоритмів для підвищення продуктивності, адаптивності веб-сервісів та відповідності вимогам якості обслуговування (QoS). Результати роботи узгоджуються з напрямами розвитку сучасних інформаційних технологій, зокрема, в аспектах автоматизованого семантичного аналізу, інтеграції онтологій та розумного вибору сервісів для оптимізації процесів обробки запитів. Запропоновані рішення забезпечують ефективну інтеграцію та автоматизацію веб-сервісів через семантичну структуру, яка реалізує модель координації та композиції. Результати дослідження мають практичну цінність у контексті реалізації наукових програм із впровадження інноваційних цифрових рішень у різних галузях, оскільки проведене дослідження відповідає пріоритетам розвитку цифрової економіки, які закладені в стратегічних програмах, спрямованих на впровадження інтелектуальних систем, таких як «Інтернет речей» (IoT) та когнітивні обчислення. Метою дисертації є розробка моделі координації когнітивних веб-сервісів, яка реалізується через семантичну структуру, забезпечуючи ефективне оркестрування і хореографію сервісів у розподілених середовищах. Об’єкт дослідження – процеси опису, пошуку та інтеграції когнітивних вебсервісів у розподілених системах. Предмет дослідження – семантичні методи опису, пошуку та інтеграції когнітивних веб-сервісів, які забезпечують автоматизацію їх використання та взаємодії. Наукова новизна отриманих результатів полягає у тому, що в дисертаційній роботі: 1. Вперше запропоновано модель координації когнітивних веб-сервісів, яка забезпечує автоматизований вибір, оркестрацію та хореографію на основі семантичного опису функціональності, параметрів QoS та контексту виконання. Відмінність від існуючих підходів полягає у формалізованому описі когнітивних можливостей сервісів (наприклад, здатність до навчання, обробки природної мови, аналізу зображень), їх функціональності, вхідних/вихідних даних та обмежень, що забезпечує автоматизовану інтеграцію. 2. Модифіковано метод пошуку та вибору веб-сервісів, який базується на семантичному описі та забезпечує динамічне ранжування сервісів за їх відповідністю до контексту виконання (наприклад, час відповіді, специфіка даних, ресурси). 3. Вперше запропоновано інтеграцію когнітивних веб-сервісів на основі семантичного підходу, що дозволяє автоматизувати процес вибору, оркестрації та хореографії сервісів у динамічних середовищах, враховуючи змінність умов виконання та недоступність окремих компонентів. Отримані результати розширюють можливості когнітивних веб-сервісів та інтеграції штучного інтелекту в складні системи, підвищуючи ефективність прийняття рішень у стратегічно важливих сферах. Практичне значення отриманих результатів полягає у наступному: 1. Розроблена модель семантичної структури може бути використана для створення адаптивних і масштабованих систем у різних сферах, таких як управління ресурсами, автоматизація бізнес-процесів, інтеграція сервісів в Інтернеті речей (IoT) та смарт-середовищах. 2. Розроблений алгоритм інтелектуального пошуку та вибору когнітивних веб-сервісів може бути інтегрований у програмні платформи, що використовуються для побудови систем автоматизації, аналітики великих даних, розумних рекомендаційних систем або інтеграції сервісів у хмарних середовищах. 3. Запропоновані підходи є основою для розробки програмних продуктів, що забезпечують динамічний пошук, інтеграцію та управління когнітивними вебсервісами в системах із високими вимогами до адаптивності та швидкості реагування, таких як медицина, фінанси чи логістика. Результати проведеного дослідження були представлені та обговорені у провідних наукових виданнях, що підтверджує їхню актуальність і наукову новизну: стаття «Finding a conceptual approach to developing an architecture of general-purpose services for economic researches» опублікована в журналі Technology Audit and Production Reserves (Vol. 3 № 4(71), 2023). Наукова стаття «Модель розумної оркестрації веб-сервісів на прикладі статистичних досліджень» опублікована у Таврійському науковому віснику. Серія: Технічні науки (№ 4, 2023). Наукова стаття «Огляд хореографії веб-сервісів WSMO для виконання синхронних та асинхронних запитів» опублікована у Таврійському науковому віснику. Серія: Технічні науки (№ 2, 2024). Наукове дослідження на тему «Orchestration of service-oriented applications with reactive programming techniques» опубліковане в журналі Technology Audit and Production Reserves (Vol. 4 № 2(78), 2024). Наукова стаття «Розробка семантичної структури для композиції когнітивних веб-сервісів», опублікована у Technology Audit and Production Reserves (2025), представляє основні результати дослідження щодо автоматизації оркестрації та хореографії сервісів.
  • ДокументВідкритий доступ
    Методи та засоби прогнозування захворювань дихання та апное на основі штучного інтелекту та мікро сервісної архітектури
    (КПІ ім. Ігоря Сікорського, 2025) Болобан, Олег Анатолійович; Петренко, Анатолій Іванович
    Болобан О.А. МЕТОДИ ТА ЗАСОБИ ПРОГНОЗУВАННЯ ЗАХВОРЮВАНЬ ДИХАННЯ ТА АПНОЕ НА ОСНОВІ ШТУЧНОГО ІНТЕЛЕКТУ ТА МІКРО СЕРВІСНОЇ АРХІТЕКТУРИ. – Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії з галузі знань 122 Комп’ютерні науки за спеціальністю 122 Комп’ютерні науки. – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», Київ, 2025. Синдром обструктивного апное сну та хропіння є поширеними патологіями, що значно впливають на якість життя пацієнтів, особливо після пандемії COVID19. Розлади сну можуть спричиняти сонливість, зниження концентрації, когнітивні порушення та підвищувати ризик серцево-судинних захворювань і смертності. Однак лише 20% пацієнтів отримують вчасний діагноз, оскільки існуючі засоби діагностики є дорогими, малодоступними або не забезпечують комплексного аналізу дихальних параметрів. Більшість комерційних пристроїв обмежені лише вимірюванням рівня кисню в крові та серцевого ритму, що не дозволяє ефективно ідентифікувати дихальні патології. Дане дослідження спрямоване на розробку інтелектуальної системи моніторингу та прогнозування порушень дихання під час сну на основі штучного інтелекту. Запропонована система поєднує технології машинного навчання, нейронних мереж та методів обробки біомедичних сигналів для виявлення апное та інших дихальних розладів. Архітектура рішення базується на мікросервісному підході з використанням розподілених обчислень, а саме прикінцевих обчислень, що забезпечує ефективну обробку даних безпосередньо на пристрої та мінімізує затримки передачі. Запропонований підхід передбачає адаптивну обробку сигналів фотоплетизмограми (англ. Photoplethysmography (PPG)) та інших біомедичних показників з використанням методів фільтрації шумів, а також прогнозування стану пацієнта за допомогою моделі довга короткочасна пам'ять (англ. Long shortterm memory (LSTM)). Інтеграція сервісно-орієнтованої архітектури дозволяє масштабувати систему для подальшого розвитку, що робить її придатною для персонального та клінічного використання. Результати дослідження відповідають сучасним тенденціям розвитку цифрової медицини, сприяють впровадженню інноваційних технологій у сфері діагностики розладів сну та можуть бути використані в програмах розвитку «Інтернету медичних речей» (англ. Internet of Medical Things (IoMT)) та когнітивних обчислень. Метою дисертації є розробка моделі класифікатора апноегіпопное сну та впровадження в мікросервісну архітектуру, забезпечуючи ефективну класифікацію типу апное-гіпопное сну в реальному часі. Об’єкт дослідження – процеси збору, обробки та прогнозування респіраторних захворювань на основі біомедичних сигналів із використанням штучного інтелекту та мікро сервісної архітектури. Предмет дослідження – методи фільтрації, аналізу та прогнозування респіраторних захворювань на основі сигналів фотоплетизмографії, нейронних мережевих алгоритмів та технологій мікросервісної архітектури для забезпечення ефективного моніторингу та автоматизованої діагностики. Наукова новизна отриманих результатів полягає у тому, що в дисертаційній роботі: 1. Вперше запропоновано модель прогнозування респіраторних патологій, яка використовує сигнали фотоплетизмографії та методи глибокого навчання для оцінки стану дихальної системи. Відмінністю запропонованого підходу є застосування адаптивної моделі довгої короткочасної памʼяті, що аналізують часові ряди біомедичних сигналів та виявляють закономірності, пов’язані з апное та іншими порушеннями дихання. На відміну від традиційних методів, які базуються на простому порівнянні порогових значень кисню в крові, запропонована модель дозволяє враховувати багатофакторний аналіз змін сигналу та його динаміку, що суттєво підвищує точність виявлення патологій. 2. Модифіковано підхід до фільтрації медичних даних та реалізовано комбінований метод обробки фотоплетизмографічних сигналів. Вперше запропоновано вдосконалений підхід до фільтрації біомедичних сигналів, що включає комбіноване використання адаптивного фільтра Калмана, середньозваженого фільтра та алгоритмів машинного навчання для очищення сигналів у реальному часі. Особливістю підходу є динамічне налаштування параметрів фільтрації залежно від характеристик шуму та артефактів, що виникають під час рухової активності або зміни умов вимірювання. Проведений аналіз показав, що запропонований метод перевершує традиційні фільтри нижніх частот, верхніх частот та ковзного середнього за точністю відновлення сигналу та стабільністю його обробки у змінних умовах. Практичне значення отриманих результатів полягає у наступному: 1. Розроблена інтегрована система для відстеження та прогнозування дихальних патологій за межами медичних закладів. Запропонована система забезпечує можливість моніторингу стану дихальної системи пацієнтів у домашніх умовах, що значно покращує доступність діагностики. Використання мікросервісної архітектури дозволяє легко інтегрувати нові сенсори та моделі прогнозування, що робить систему гнучкою та масштабованою для різних груп користувачів. 2. Розроблена система моніторингу і класифікації стадій апное під час сну на основі штучного інтелетку для домашнього використання, яка дозволяє попереджати пацієнтів про ризики захворювання апное під час сну самостійно. Запропоноване рішення надає користувачам можливість безперервного моніторингу показників дихання та їх аналізу за допомогою штучного інтелекту. Система не лише відображає поточні параметри, але й проводить аналіз тенденцій та класифікує можливі стадії апное сну, що дає змогу пацієнтам своєчасно звертатися до лікаря. 3. Система підтримує прийняття діагностичних рішень шляхом автоматичної класифікації подій апное за 30-секундними вікнами сигналів фотоплетизмографії, сатурації та ЧСС, надаючи лікарю результати класифікації для аналізу, корекції та подальшого визначення необхідності стаціонарного догляду за пацієнтом. Завдяки інтеграції системи з медичними інформаційними платформами лікарі отримують можливість доступу до історії змін стану пацієнтів, що допомагає у прийнятті обґрунтованих рішень щодо діагностики та лікування. Віддалений моніторинг дозволяє зменшити навантаження на клініки та покращити якість обслуговування пацієнтів.
  • ДокументВідкритий доступ
    Модель мультиагентної системи для автоматизованої побудови словника предметної області при обробці потокових даних
    (КПІ ім. Ігоря Сікорського, 2025) Яременко, Вадим Сергійович; Рогоза, Валерій Станіславович
    Яременко В. С. Модель мультиагентної системи для автоматизованої побудови словника предметної області при обробці потокових даних. Кваліфікаційна наукова праця на правах рукопису. Дисертаційна робота на здобуття наукового ступеня доктора філософії за спеціальністю 122 «Комп’ютерні науки». – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», 2025. Метою дисертаційного дослідження є розширення функціоналу існуючих мультиагентних систем завдяки розробці моделі ефективної мультиагентної системи для обробки потокових текстових даних, яка забезпечує швидку фільтрацію, точну класифікацію та адаптивне оновлення доменних словників, використовуючи модифікований фільтр Блума, спеціалізовану нейронну мережу та колективне голосування агентів за нові словники використовуючи комбінацію методів Шульце та TF-IDF. Об’єктом дослідження є процеси обробки потокових текстових даних, що включають фільтрацію, багатокласову класифікацію та оновлення доменних словників. Предметом дослідження є методи та засоби для розробки моделі мультиагентної системи для фільтрації, багатокласової класифікації та оновлення доменних словників у контексті потокової обробки текстових даних. В першому розділі обґрунтовано актуальність дослідження в напрямках мультиагентних систем, обробки потоків текстових даних та використання методів машинного навчання, зважаючи на зростання обсягів інформації. Проведено аналіз наукових праць, визначено невирішені задачі та проблеми, а також описано необхідні експерименти. Запропоновано абстрактну модель мультиагентної системи для аналізу слабоструктурованих текстових даних. У результаті сформульовано задачу дисертації. Другий розділ присвячений розробці моделі мультиагентної системи для автоматичної класифікації вхідних текстів і побудови словника предметної області в умовах постійного надходження великого обсягу даних. У розділі розглянуто практичні аспекти проєктування мультиагентних систем для розподілених обчислень, включаючи стандарти FIPA, мову комунікації ACL, можливі стани агентів і особливості їхнього розгортання на обчислювальних вузлах. Проаналізовано існуючі програмні бібліотеки та фреймворки для створення мультиагентних систем, їхні обмеження та можливості розширення. Запропоновано підходи до організації комунікації та прийняття рішень агентами, зокрема механізм голосування для узгодження кінцевого вигляду словника, а також детально описано мультиагентні підсистеми та формати запитів для їх роботи, запропоновано адаптацію методу Шульце для роботи в розподіленому середовищі. Третій розділ присвячено вирішенню задачі багатокласової класифікації потокових текстових даних, яка є ключовою для автоматичної побудови словників предметних областей. У розділі розглянуто теоретичні основи і визначено напрямки вдосконалення існуючих моделей. Запропоновано модифікацію фільтра Блума для багатокласової класифікації, а також описано використання моделей нейронних мереж для цієї задачі. Проаналізовано можливість інтеграції цих методів у мультиагентну систему, де кожен агент виконує специфічні задачі. Також розглянуто підходи до автоматичної побудови словників, включаючи обробку текстів і їхніх класів, локальне оновлення словників агентами, створення нових агентів у разі перевантаження та узгодження змін у загальному словнику через комунікацію між агентами. Четвертий розділ присвячений практичній реалізації запропонованої моделі та методів, які є базою для практичного втілення даної моделі в середовище МАС і створено комплекс інструментальних програм, який доводить ефективність запропонованої моделі в автоматизованій побудові словників предметної області. У розділі описано процес створення та налаштування моделі мультиагентної системи, яка здійснює багатокласову фільтрацію та класифікацію текстів і формує словник у кількох ітераціях роботи системи. Реалізація включає інтеграцію модифікованого фільтра Блума, нейронних мереж, а також організацію взаємодії між агентами для ефективного оновлення словника та узгодження змін у ньому. Результати роботи системи проілюстровано прикладами ітерацій, що демонструють функціональність та продуктивність запропонованої архітектури. Наукова новизна отриманих результатів. Вперше запропоновано модель мультиагентної системи, яка поєднує модифікований фільтр Блума, нейронну мережу для класифікації текстів, мультиагентний підхід для побудови та оновлення словників і механізм голосування методом Шульце з використанням методу TF-IDF, що дозволяє автоматизувати процес створення словників предметної області в умовах потокової обробки текстових даних. Вперше запропоновано модифікацію класичного фільтра Блума, який відрізняється тим, що він забезпечує швидке виявлення релевантних текстів і виконання їх попередньої класифікації, що забезпечує значне зменшення обсягу необроблених даних на наступних етапах системи та підвищує ефективність роботи в умовах обробки потокових даних. Вперше запропоновано модифікацію методу TF-IDF в розподіленому середовищі для вирішення задачі побудови словника предметної області, яка відрізняється застосуванням адаптованого методу Шульце для використання у мультиагентних системах при голосуванні між агентами щодо оновлення доменних словників, що забезпечує ухвалення рішень на основі колективного аналізу текстових даних. Вперше запропоновано метод оптимізації параметрів налаштування фільтру Блума з використанням генетичного алгоритму для застосування у задачі багатокласової фільтрації потокових текстових даних для підвищення точності їх попередньої класифікації. Розроблено модель нейронної мережі, адаптовану для класифікації текстових даних за кількома предметними областями для заданого набору даних. Розроблено механізм динамічної адаптації системи зворотного зв'язку, який передає оновлений словник назад у фільтр Блума. Це дозволяє динамічно адаптувати систему до нових даних і підвищити точність фільтрації текстів. Такий підхід забезпечує постійну актуальність системи в умовах змінного середовища даних. Практичне значення отриманих результатів полягає у створенні ефективної моделі мультиагентної системи для обробки потокових текстових даних, яка дозволяє автоматизувати процеси фільтрації, класифікації та адаптивного оновлення доменних словників. Запропоновані підходи забезпечують високу швидкість обробки даних завдяки використанню покращеного фільтра Блума та спеціалізованої нейронної мережі, а також підвищують точність і релевантність оновлених словників завдяки колективному голосуванню агентів за методом Шульце. Запропонована модель мультиагентної системи відзначається порівняно низькими вимогами до обчислювальних ресурсів, що дозволяє її ефективно реалізовувати на доступних апаратних платформах. Використання покращеного фільтра Блума зменшує обсяг даних, що передаються на подальші етапи обробки, а розподілений характер системи забезпечує гнучкість та можливість ефективного масштабування відповідно до потреб користувача. Це рішення може бути застосоване для побудови систем моніторингу, аналізу текстових потоків, інформаційного пошуку та виявлення даних у різних доменах, зокрема в кібербезпеці, фінансових системах, соціальних мережах тощо.
  • ДокументВідкритий доступ
    Метод автоматизації рефакторингу програмного коду з використанням бази знань
    (КПІ ім. Ігоря Сікорського, 2024) Ткачук, Андрій Віталійович; Булах, Б. В.
    Ткачук. А. В. Методи автоматизації рефакторингу програмного коду з використанням бази знань. – Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії за спеціальністю 122 «Комп’ютерні науки». – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», Київ, 2024. Метою дисертаційного дослідження є розробка методу аналізу початкового коду та його подальшого автоматизованого рефакторингу, який спирається на використання бази знань про цей код. Об'єктом дисертаційного дослідження є процеси збору, представлення і обробки інформації про початковий код програмних продуктів. Предметом дисертаційного дослідження виступають методи аналізу, представлення та обробки інформації для рефакторингу початкового коду з урахуванням його семантики, які базуються на використанні формалізованих знань про код. У ході роботи над дисертацією було використано такі методи дослідження: спостереження, порівняння, аналіз, формалізація, абстрагування, моделювання, експеримент. Зазначені методи були обрані зважаючи на мету та завдання дослідження, а також на практичність їх використання при вирішенні проблем автоматизованого аналізу та рефакторингу початкового коду прикладних програм. У дисертації вперше запропоновано метод автоматизації рефакторингу програмного коду, який відрізняється від існуючих тим, що здійснює перетворення коду на рівні сутностей бази знань, створеної на основі запропонованої моделі формалізації знань про синтаксис і семантику коду, для автоматичного виявлення і виправлення розповсюджених антишаблонів програмування. Вперше запропоновано метод модифікації проміжного представлення програмного коду в процесі рефакторингу, що уможливлює виправлення нетривіальних антишаблонів, який відрізняється від існуючих тим, що застосовує механізми логічного виведення до знань про код, сформульованих з використанням описових логік і правил логічного виведення. Удосконалено модель формалізації знань про програмний код для його рефакторингу на основі онтології об’єктно-орієнтованої мови програмування, що відрізняється від існуючих тим, що представляє не лише базові відомості про синтаксис, отримані від синтаксичного аналізатора, а й семантику складних конструкцій, шаблонів та антишаблонів з можливою прив'язкою до функцій програмного продукту. Розроблений метод дозволяє перевикористовувати схему бази знань із накопиченими знаннями про шаблони та антишаблони під час аналізу та рефакторингу початкового коду різними мовами програмування, що дозволяє зменшити час та витрати на розробку систем рефакторингу, розробляючи лише частину системи, що пов'язана із перетворення початкового коду в сутності бази знань і навпаки. Запропонований підхід до формалізації знань про початковий код дозволяє отримувати метадані про зміст початкового коду, порівнювати наповнення репозиторіїв (шукати семантичні дублікати), створювати документацію про програмний продукт з допомогою вже існуючих засобів для роботи із семантичними даними, описувати шаблони і антишаблони для проведення аналізу і рефакторингу без втручання розробника. Запропоновано застосування розробленого методу для побудови програмного прототипу системи аналізу і рефакторингу початкового коду для мови програмування Swift з описом онтології мовою OWL-DL, а правил логічного виводу та запитів до онтології – мовою S(Q)WRL, що дало змогу значно пришвидшити процес здійснення рефакторингу. Таким чином досягається суттєве зменшення витрат на розробку та підтримку програмних продуктів. Дисертація складається із семи розділів. У першому розділі розглянуто автоматизовані системи рефакторингу. Дано визначення системи автоматизованого рефакторингу, порівняно такі системи за побудовою і принципом роботи, розглянуто їх переваги і недоліки. Розглянуто можливість застосування і використання семантичних підходів до вирішення задач рефакторингу. Сформульовано висновок про те, що ефективне функціонування інструментів автоматизованого рефакторингу значною мірою залежить від автоматизованого аналізу початкового коду. Аналіз дає необхідне уявлення про структуру та семантику коду, гарантуючи безпечність і послідовність рефакторингу. Зазначено, що включення семантичного розуміння в статичний аналіз коду та рефакторинг забезпечує глибоке й точне розуміння поведінки коду, що призводить до більш точних і надійних результатів. У другому розділі детально розглянуто поняття онтології та її застосування в якості основи бази знань. Дано визначення описових (дескриптивних) логік та мови OWL на їх основі, а також описано версії та профілі мови, її основні поняття та особливості, концентруючись на можливостях представлення семантики і способах логічного виведення засобами OWL. Дано визначення системи логічного виведення, розглянуто і порівняно алгоритми, що застосовуються такими системами. Розглянуто можливості доповнення виразності OWL у вигляді правил SWRL та запитів SQWRL. Було зроблено висновок, що коли необхідно проаналізувати велику кодову базу або знайти шаблони в ній, онтологія, описана в OWL, та пов'язані з нею можливості логічного виведення можуть бути надзвичайно цінними. Використання системи логічного виведення (англ. reasoner) дозволяє створити логічно узгоджені та максимально інформативні онтології, тим самим максимізуючи їх корисність у таких застосуваннях як відкриття знань, інтеграція даних та семантичний пошук. У третьому розділі досліджено можливості вбудованого рефакторингу у мові Swift. Розглянуто можливості додавання нових дій рефакторингу до мови програмування, а також оцінено можливість масштабування. Проведено оцінку отриманих результатів. У результаті експериментів було встановлено, що для додавання лише одної відносно простої дії рефакторингу необхідно написати близько 300 рядків коду. І немає причин вважати, що в інших випадках потрібно буде написати суттєво меншу кількість рядків коду. Таким чином, існує актуальна потреба в удосконаленні та автоматизації процесу розширеного рефакторингу, що дозволила б розробнику уникнути написання чималої кількості «інфраструктурного» коду, більше зосередившись на кінцевій меті рефакторингу. У четвертому розділі розглянуто застосування формалізованих знань про початковий код для здійснення рефакторингу у мові Swift. Досліджено можливість подолання існуючих перепон при додаванні нових дій рефакторингу із застосуванням формалізованих знань. Запропоновано формальне представлення початкового коду у вигляді окремої бази знань. У результаті проведеного дослідження встановлено, що використання запропонованого методу дозволяє виконувати складні завдання рефакторингу за допомогою простої вербальної формалізованої команди. У п’ятому розділі доведено, що онтології можна використовувати, щоб ефективно зберігати знання зокрема про початковий код. Розглянуто кілька підходів до перетворення кодової бази в базу знань про код як сукупність фактів про код, що спираються на онтологію. У шостому розділі проведено розширення можливостей здійснення аналізу та рефакторингу за допомогою описових правил. До пропонованої моделі додано набір правил, що описують певні дії рефакторингу, і здійснено перевірку їх застосування для доведення ефективності. У сьомому розділі описано ряд проведених експериментів із застосуванням запропонованого методу та моделі для перевірки справедливості їх теоретичних очікуваних властивостей та характеристик. Здійснено аналіз статистичних даних, отриманих шляхом опитування експертів щодо швидкодії та взаємодії і роботи із запропонованими методом і моделлю. Проведено перевірку роботи методу і моделі на різних наборах вихідних даних, а також якісне порівняння із існуючими програмними рішеннями для рефакторингу. Ці розділи разом підкреслюють практичне застосування та ефективність використання онтологій та формалізованих знань у розробці програмного забезпечення, зокрема в контексті рефакторингу та аналізу коду. Дослідження демонструє потенціал цього підходу у підвищенні ефективності процесів розробки програмного забезпечення. У дисертації запропоновано метод аналізу та рефакторингу початкового коду прикладних програм, який через використання бази знань про початковий код на основі онтології, дозволяє абстрагуватись від конкретної мови програмування в проекті і здійснювати складні маніпуляції із початковим кодом шляхом маніпуляції його семантичним представленням. Основна ідея методу полягає у роботі із представленням коду на семантичному рівні, що відрізняється від існуючих способів використанням онтології та засобів OWL/S(Q)WRL для роботи із семантикою. У ході експериментальних досліджень було доведено можливість відносно просто описувати правила рефакторингу в онтології та здійснювати аналіз і рефакторинг різної складності, а також показано зменшення витрат часу на виконання таких завдань на 36% у порівнянні із іншими підходами аналізу і рефакторингу.
  • ДокументВідкритий доступ
    Методи вирівнювання рукописного тексту на основі розпізнавання з використанням машинного навчання та структурного аналізу символів
    (КПІ ім. Ігоря Сікорського, 2024) Яковчук, Олег Костянтинович; Рогоза, Валерій Станіславович
    Яковчук О.К. Методи вирівнювання рукописного тексту на основі розпізнавання з використанням машинного навчання та структурного аналізу символів. Кваліфікаційна наукова праця на правах рукопису. Дисертаційна робота на здобуття наукового ступеня доктора філософії за спеціальністю 122 «Комп’ютерні науки». – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», 2024. Метою дисертаційного дослідження є підвищення ефективності вирішення комплексу задач, що виникають при вирівнюванні рукописного тексту. Разом із зростанням популярності рукописного введення постає завдання ефективної обробки рукописної інформації, зокрема рукописного тексту. Однією із задач є забезпечення структурної коректності та зрозумілості тексту, представленого в рукописному вигляді. Зокрема, актуальним завданням є вирішення проблеми вирівнювання рукописного тексту, при цьому зберігаючи формат, структуру рукописних елементів та їх текстовий вміст. Важливим є також збереження ідентичності та унікальності написаного тексту, що визначаються персональними особливостями написання та почерку автора. Водночас створювані рішення повинні мати змогу працювати в умовах обмеження обчислювальних ресурсів, на персональних пристроях, таких як смартфони, розумні годинники, інтерактивні дошки, монітори з рукописним введенням та інші гаджети. У даній дисертаційній роботі акцент робиться на вирішенні задачі вирівнювання рукописного тексту зі збереженням початкового стилю написання, без перетворення рукописного тексту в друковану форму. В дослідженні використовуються передові методи та технології для обробки рукописного тексту, включно з розпізнаванням та сегментацією тексту. Дослідження в напрямках обробки рукописного тексту, разом з візуальним покращенням тексту для підвищення його ясності та чіткості, має важливе значення для подальшого вдосконалення систем рукописного введення та їх використання в різних сферах, від освітнього до професійного використання. Розвиток вирівнювання рукописного тексту відкриває нові перспективи для зручної та ефективної роботи з рукописною інформацією, що стає невід’ємною частиною сучасного цифрового життя. В першому розділі дисертаційної роботи описується постановка задачі вирівнювання рукописного тексту, визначаються основні проблеми, що існують на сьогоднішній день та потребують уваги для ефективного вирішення поставлених задач. Визначається підзадача оцінки рукописного тексту на розбірливість та вирівняність, а також підзадача порівняння двох рукописних текстів для визначення якості результатів вирівнювання. Проводиться грунтовний аналіз існуючих досліджень та передових робіт як в області обробки рукописного введення, так і конкретно для задачі вирівнювання тексту, аналіз підходів до розпізнавання та сегментації рукописного тексту для визначення найбільш релевантних для використання в системі, що розроблюється в цій роботі. Розглядається загальна структура запропонованого рішення. В другому розділі представлено рішення, що пропонується використовувати в системі вирівнювання для проведення розпізнавання та сегментації рукописного введення. Досліджуються принципи роботи рекурентних нейронних мереж для задачі розпізнавання рукописного тексту. Описується ідея довгої короткочасної пам’яті, представляється архітектура мережі з використанням довгої короткочасної пам’яті, що дає змогу вирішувати відразу два завдання: сегментації та класифікації символів. Досліджується принцип нейромережевої часової класифікації. Представляється додаткова мережа для уточнення та покращення результатів сегментації символів. Представлено додаткові алгоритми для приєднання відтермінованих символів, пошуку та виправлення помилок сегментації. В третьому розділі приведено опис основної частини системи вирівнювання рукописного тексту. Представляється запропонований новий метод вирівнювання, що використовує структурний аналіз символів. Цей розділ включає в себе розгляд процесу попередньої обробки вхідних даних, представлення метрик текстового рядка, запропонованого розбиття символів на класи, виконання знаходження класів символів, обрахунку метрик всіх символів та фінальних метрик вирівняного рядка, проведення переміщення символів на знайдені відповідні позиції. Детально розглядається процес виконання кожного кроку, виконується розгляд розроблених алгоритмів та підходів, що застосовуються для структурного аналізу символів. Результатом даного розділу є спроектована та розроблена система для структурного аналізу рукописного тексту, що дозволяє виконувати поставлену задачу вирівнювання. В четвертому розділі представлені основні експерименти для аналізу якості роботи розробленої системи. Описується набір експериментальних даних та його базові характеристики. Проводиться оцінка точності системи розпізнавання. Виконуються обчислювальні експерименти, на основі яких підтверджено загальну спроможність системи успішно вирівнювати рукописний текст. Проводиться аналіз успішних прикладів роботи системи та допущених помилок при вирівнюванні, оцінка продуктивності роботи системи в середовищі з обмеженими ресурсами. Також розроблена система порівнюється з наявними підходами до поліпшення зовнішнього вигляду та вирівнювання рукописного тексту, результат підтвердив визначені переваги розробленої системи та її практичну цінність. Основним результатом цієї роботи є розроблена система вирівнювання рукописного тексту, яка базується на запропонованому методі вирівнювання рукописного тексту на основі розроблених алгоритмів розпізнавання та сегментації тексту, а також з використанням структурного аналізу символів, що враховує індивідуальні особливості почерку, зв’язне написання символів та дозволяє зберегти початковий стиль написання тексту. Розроблена система вирівнювання дає змогу розв’язувати наступні задачі по вирівнюванню текстів українською мовою: вирівнювання одного рядка рукописного тексту, вирівнювання текстів, що складаються з багатьох рядків, вирівнювання документів, що містять різні типи текстових блоків, вирівнювання текстової інформації з можливістю підтримувати різні типи контенту, такі як специфічні символи, математичні формули, адреси електронної пошти, номери телефонів і т.д. Особливістю розробленої системи є можливість до масштабування та розширення для підтримки нових мов, типів контенту, введення окремих правил для особливих задач вирівнювання. Перевагою розробленої системи є здатність вирівнювати текст з врахуванням персональних особливостей написання користувача. Розроблену систему вирівнювання тексту було успішно інтегровано в тестовий мобільний застосунок, який надає змогу користувачу вводити рукописний текст, отримувати результат розпізнавання тексту та результат вирівнювання тексту. Проведено експериментальні дослідження, що підтвердили здатність системи виконувати всі поставлені завдання. Система показала високі характеристики якості роботи та швидкодії в умовах роботи на пристроях з обмеженнями обчислювальних ресурсів. В результаті розроблена система може бути інтегрована до інших мобільних додатків для обробки та вирівнювання рукописного тексту. Підтримка роботи з українським текстом дає потенційні можливості для використання системи в різноманітних галузях нашої країни, таких як освіта, медицина, рекламний бізнес і т.д. На сьогодні існує тенденція цифровізації документообігу в різних сферах діяльності, в тому числі між державою та громадянами, де також може мати велику користь система обробки рукописного тексту для покращення візуального сприйняття, розбірливості написаного тексту, а також для зменшення загального розміру рукописного тексту, що дозволяє підвищити ефективність використання простору в текстових документах. Наукова новизна отриманих результатів. В рамках цього дослідження було: - Вперше запропоновано метод вирівнювання рукописного тексту, наукова новизна якого полягає у використанні розроблених алгоритмів розпізнавання та сегментації тексту, які базуються на теорії машинного навчання, а також у проведенні структурного аналізу символів, що враховує індивідуальні особливості почерку, зв’язне написання символів та дозволяє зберегти початковий стиль написання тексту. - Вдосконалено метод сегментації рукописного тексту, що ґрунтується на використанні легковісної рекурентної нейронної мережі та динамічного програмування, який відрізняється від існуючих застосуванням додаткових алгоритмів, які дають змогу знаходити та виправляти помилки сегментації, визначати відповідні символи для відтермінованих штрихів, що дозволяє підвищити точність маркування кожного символа. - Вперше розроблено метод вирівнювання для тексту, написаного українською мовою, наукова новизна якого полягає у використанні алгоритмів, що базуються на структурному аналізі символів, та визначаються окремо для кожного символа, а також у можливості реалізувати вирівнювання рукописних літер для різних стилів написання. Практичне значення отриманих результатів. Практичне значення результатів, отриманих у ході дисертаційного дослідження, зводиться до наступного переліку: - Розроблені метод та алгоритми впроваджено в інструментальну систему вирівнювання рукописного тексту, що дає змогу розв’язувати задачі вирівнювання одного рядка рукописного тексту та текстів, що складаються з багатьох рядків, на пристроях з обмеженнями обчислювальних ресурсів. - Розроблена система забезпечує високу точність результатів, що дозволяє використовувати її для знаходження правильних позицій всіх символів та їх коректного вирівнювання, що продемонстровано на прикладі її використання в тестовому мобільному додатку для вирівнювання рукописного тексту українською мовою. - Запропоновані та розроблені в цій роботі методи були використані при розробці комерційних проектів, зокрема в мобільному додатку для смартфонів Samsung у вигляді функції вирівнювання рукописного тексту для різних мов.
  • ДокументВідкритий доступ
    Підвищення ефективності алгоритмів нечіткого пошуку з використанням таблиці подібності символів
    (КПІ ім. Ігоря Сікорського, 2024) Клещ, Кирило Олегович; Петренко, Анатолій Іванович
    Клещ К.О. Підвищення ефективності алгоритмів нечіткого пошуку з використанням таблиці подібності символів. – Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії за спеціальністю 122 «Комп’ютерні науки». – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», 2024. Дисертаційне дослідження присвячене підвищенню швидкодії алгоритмів і розробці методу нечіткого пошуку з використанням таблиці подібності символів, для пошуку найбільш релевантних документів до пошукової фрази. В роботі створено метод нечіткого пошуку, який складається з 9 послідовних кроків та потрібен для швидкого пошуку співпадінь на великому наборі текстових даних. За допомогою цього методу була створена система нечіткого пошуку, яка дозволила вирішити задачу пошуку найрелевантніших документів до пошукової фрази з набору таких документів. Розроблений метод нечіткого пошуку комбінує переваги алгоритмів на основі детермінованих скінченних автоматів та алгоритмів на основі динамічного програмування для підрахунку відстані Дамерау-Левенштейна. Така комбінація дозволила впровадити таблицю подібності символів оптимальним чином. В рамках роботи запропоновано підхід та спосіб створення таблиці подібності символів та розроблено приклад такої таблиці для символів з англійського алфавіту, що дозволило знаходити міру подібності поміж двома символами з константною асимптотикою та перетворювати поточний символ в його базовий аналог. Для фільтрування й сортування документів було розроблено метод оцінювання відповідності текстових даних до пошукової фрази на основі метрики, яка одночасно враховує кількість знайдених і незнайдених символів та кількість знайдених і незнайдених слів. Алгоритм Дамерау-Левенштейна дозволяє знаходити відстань редагування поміж двома словами, враховуючи помилки наступних типів: заміна, видалення, додавання та транспозиція символів. В рамках роботи була запропонована модифікація цього алгоритму за допомогою використання таблиці подібності для більш точної оцінки відстані редагування між двома словами. На основі розробленого методу була створена система нечіткого пошуку, яка дозволить знаходити шукані результати швидше та підвищить релевантність отриманих результатів шляхом їхнього сортування відповідно до значень розробленої метрики подібності тестових даних. Також у роботі було досліджено, проаналізовано та надано рекомендації, яким чином можна інтегрувати особливості та потужності таблиці подібності символів з алгоритмом нечіткого пошуку Дамерау-Левенштейна. Дослідження алгоритмів нечіткого пошуку в тексті є важливою темою в галузі обробки тексту та інформаційного пошуку. Це обумовлено зростаючим обсягом текстової інформації і ймовірністю помилок через вплив людського фактору при написанні тексту та створенні текстового контенту. Нечіткий пошук використовує алгоритми для пошуку даних в тексті, які приблизно відповідають шаблону. Це досягається шляхом зіставлення та порівняння рядків або ключових слів, які можуть бути схожими між собою, але не ідентичними. У першому розділі дисертаційної роботи були розглянуті та проаналізовані різні алгоритми нечіткого пошуку. Такі як: алгоритм Дамерау-Левенштейна, алгоритм N-грам, алгоритм Джаро-Вінклера, алгоритм Bitap, звичайний алгоритм Левенштейна, алгоритм SoundE та алгоритми на основі скінченних автоматів. У ролі оптимального алгоритму пошуку відстані редагування між двома словами було обрано алгоритм Дамерау-Левенштейна, бо він дозволяє впровадити таблицю подібності оптимальним чином. Також були розглянуті алгоритми на основі скінченних автоматів, а саме: автомат на основі префіксного дерева, автомат на основі таблиці та автомат на основі хешування. Перші два виявились неефективними через певні недоліки, а останній виявився оптимальним та найбільш універсальним з точки зору швидкодії роботи та часу побудови, а також об’єму витраченої пам’яті. У другому розділі дисертаційної роботи було розроблено та покроково описано метод нечіткого пошуку, який дозволяє знаходити найрелевантніші документи до пошукової фрази. Також були розглянуті переваги та недоліки застосування таблиці подібності символів, підходи та способи її побудови. Було створено приклад таблиці подібності для символів з англійської мови за допомогою групування символів у JSON файлі. Використання таблиці подібності покращує отримані результати, особливо при використанні мов зі спеціальними символами. Це дозволяє знаходити набагато більше релевантних результатів, проте швидкодія алгоритму може зменшитись. За допомогою використання такої таблиці підвищується релевантність відповідних документів навіть при наявності орфографічних помилок, скорочень, слів-синонімів або інших форм неточностей у запиті. Підхід із використанням таблиці подібності символів може бути використаний у системах перевірки орфографії та автоматичної корекції, системах автозавершення та автодоповнення, а також у реалізації функцій з виявлення дублікатів даних та плагіату. У третьому розділі дисертаційної роботи проведено аналіз коректності результатів та ефективності алгоритмів нечіткого пошуку з використанням таблиці і без, а також алгоритму пошуку точного збігу. Було проведено перевірку всіх 4 алгоритмів нечіткого пошуку на основі скінченних автоматів на коректність роботи, а також розроблено та проаналізовано тести продуктивності для різних вхідних даних. Для перевірки коректності було розроблено програму, що використовує словник слів та порівнює редагувальну відстань, обчислену поточним рішенням, із редагувальною відстанню, обчисленою за допомогою готового бібліотечного рішення. Для перевірки продуктивності було проведено тестування, що визначає час побудови автомата та час перевірки слова для кожного з рішень. Також була реалізована система нечіткого пошуку на основі запропонованого методу та впроваджена у веб-додаток для пошуку найбільш релевантних документів. Отримані результати можуть бути корисними та використані в різних галузях, де потрібно ефективно та швидко проводити нечіткий пошук у великих обсягах даних, наприклад, при пошуку подібних документів у пошукових системах або при автокорекції помилок. В рамках роботи було: реалізовано метод нечіткого пошуку, який комбінує переваги алгоритмів на основі детермінованих скінченних автоматів та алгоритмів на основі динамічного програмування для підрахунку відстані Дамерау-Левенштейна; запропоновано технологію створення таблиці подібності символів у розроблений метод та створено приклад такої таблиці для символів з англійського алфавіту, що дозволило знаходити міру подібності двох символів із константною асимптотикою та перетворювати поточний символ в його базовий аналог; модифіковано метод оцінювання відстані редагування між двома словами за допомогою використання таблиці подібності в алгоритмі Дамерау-Левенштейна; запропоновано метод оцінювання відповідності текстових даних до пошукової фрази на основі метрики, яка одночасно враховує кількість знайдених/незнайдених слів та символів. Для реалізації декількох кроків розробленого методу було запропоновано технологію до створення таблиці подібності символів, яка дозволить враховувати можливу семантичну подібність символів в словах. Оцінюючи подібність на основі різних критеріїв, таких як: форма, контекст і фонетика, таблиця подібності символів дозволила модифікувати алгоритм нечіткого пошуку, який може ранжувати відповідні результати навіть за наявності великої кількості неспівпадінь unicode значень схожих символів. Це, в свою чергу, збільшило кількість релевантних результатів на 10 %, в залежності від довжини пошукової фрази. Також було впроваджено реалізований метод у систему для пошуку найбільш релевантних електронних листів, документів або текстів у середовищі для резервного копіювання.
  • ДокументВідкритий доступ
    Аналіз програмного коду з використанням гібридного методу пошуку та класифікації вразливостей
    (КПІ ім. Ігоря Сікорського, 2024) Куб’юк, Євгеній Юрійович; Кисельов, Геннадій Дмитрович
    Куб’юк Є.Ю. Аналіз програмного коду з використанням гібридного методу пошуку та класифікації вразливостей. - Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії за спеціальністю 122 «Комп’ютерні науки». – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», 2024. Актуальність теми. У контексті стрімкого розвитку інформаційних технологій та цифровізації суспільства, проблематика кібербезпеки набуває особливої гостроти. Згідно зі статистикою, у 2022 році кількість кібератак зросла на 42% порівняно з попереднім роком, а фінансові збитки сягнули $6 трлн. Основною причиною такої ситуації є зростання кількості вразливостей у програмному забезпеченні, які активно використовуються зловмисниками. Зокрема, у Національній базі даних вразливостей США (NVD) за 2022 було зареєстровано понад 25 000 нових вразливостей, що на 20% більше ніж у 2021. Більше 75% успішних кібератак базувалися на експлуатації вже відомих вразливостей. Це свідчить про гостру необхідність розробки ефективних заходів щодо своєчасного виявлення та усунення вразливостей у програмному коді. Одним з найбільш перспективних напрямів вирішення цієї проблеми є створення автоматизованих систем аналізу коду на основі технологій штучного інтелекту. Такі системи здатні ефективно виявляти приховані дефекти безпеки на етапах розробки ПЗ, що дозволяє знизити ризики та підвищити захищеність. Їх інтеграція у процеси розробки поліпшить дотримання практик безпечного програмування та скоротить час на тестування безпеки. Отже, створення інноваційних методів та засобів автоматизації аналізу безпеки програмного коду є вкрай актуальним завданням для підвищення рівня кіберзахисту сучасних програмних систем. Мета і завдання дослідження. Метою дисертаційного дослідження є розробка та удосконалення методів виявлення та класифікації вразливостей в програмному коді з використанням нейронних мереж та методів виявлення подібності коду. Основні завдання дослідження включають: - Дослідити методи виявлення вразливостей в програмному коді. - Дослідити ефективність методів виявлення подібності коду в задачі класифікації вразливостей. - Дослідити моделі представлення програмного коду. - Розробити метод побудови проміжного представлення програмного коду для подальшого аналізу на предмет вразливостей. - Розробити метод виявлення вразливостей на основі нейронних мереж. - Розробити метод класифікації вразливостей на основі методу виявлення подібності коду. - Виконати програмну реалізацію системи аналізу програмного коду, з використанням гібридного методу пошуку та класифікації вразливостей програмного коду. - Провести обчислювальні експерименти та оцінку розробленої системи. - Продемонструвати практичну цінність розробленої системи на прикладі впровадження в процеси життєвого циклу розробки програмного забезпечення. Об’єктом дослідження є процес пошуку та класифікації вразливостей безпеки в програмному коді. Предметом дослідження виступають методи, алгоритми та структури даних для ефективного аналізу програмного коду на предмет вразливостей безпеки. Методи дослідження. В роботі застосовуються наступні методи дослідження: абстрактно-логічний аналіз проблеми, експерименти, моделювання, аналіз даних, порівняння. Зазначені методи були обрані з огляду на поставлені мету та задачі дослідження, а також на практичність їх застосування при вирішенні проблеми автоматичного аналізу програмного коду на предмет вразливостей безпеки. Наукова новизна отриманих результатів. Вперше запропоновано гібридний метод аналізу програмного коду, що поєднує методи глибокого навчання та методи виявлення подібності коду для пошуку та класифікації вразливості в коді, який дозволяє ефективно виконувати пошук вразливостей в коді, а також класифікувати з високою точністю знайдені вразливості. Отримав подальший розвиток метод побудови проміжного представлення програмного коду у вигляді кодового гаджету, який відрізняється від існуючих методів наявністю обмеження по розміру локального контексту відносно ключової точки, що дозволило зменшити результуючий розмір кодових гаджетів та підвищити точність класифікації при подальшому аналізі нейронною мережею. Вперше запропоновано метод класифікації вразливостей в програмному коді з використанням ковзного хешування абстрактного синтаксичного дерева, який відрізняється від існуючих методів тим що використовує метод виявлення подібності коду для ефективної класифікації вразливостей без необхідності використання навчальної вибірки великого об’єму. Практичне значення отриманих результатів. Розроблений метод дозволяє знаходити вразливості в програмному коді, написаному на мові C/C++, а також класифікувати тип знайденої вразливості, що дозволяє спростити процес пріоретизації та виправлення знайдених вразливостей для розробників програмних продуктів. Технологія пошуку та класифікації вразливостей в програмному коді успішно впроваджена в процеси розробки ІТ компанії та використовується для аналізу програмних продуктів на предмет вразливостей у якості сервісу аналізу коду. Також, командний інтерфейс системи дозволяє використовувати її у якості утиліти для аналізу коду, без необхідного розгортання у вигляді сервісу, що дозволяє спеціалістам з кібербезпеки використовувати даний інструмент в якості рекомендаційної системи в рамках процесів оцінки безпеки програмного коду. Розроблений метод було протестовано на реальних проектах з відкритим вихідним кодом. Зокрема, за допомогою розробленої системи вдалося знайти вразливість в проекті з відкритим вихідним кодом - Microsoft Terminal. Публікації. За результатами дисертаційного дослідження опубліковано 5 наукових праць, з яких 4 статті у наукових фахових виданнях України (3 з яких входять до міжнародних наукометричних баз) та 1 публікація в збірнику матеріалів конференції. Результати дослідження. Розроблено програмне забезпечення системи аналізу коду, що реалізує запропонований гібридний метод. Експериментально підтверджено ефективність системи у задачах пошуку та класифікації вразливостей в програмному коді. Структура та обсяг роботи. Дисертація складається зі вступу, 4 розділів, висновків, списку використаних джерел. Повний обсяг дисертації становить 140 сторінок. Робота містить 27 рисунків та 9 таблиць. Список використаних джерел налічує 81 найменувань. Основний зміст роботи. У вступі обґрунтовано актуальність теми, сформульовано мету та завдання дослідження, визначено об'єкт, предмет та методи дослідження, розкрито наукову новизну та практичне значення отриманих результатів. У першому розділі проведено аналіз сучасного стану у сфері кібербезпеки та тенденцій зростання кількості вразливостей у програмному забезпеченні. Розглянуто ключові стандарти та методології забезпечення безпеки ПЗ, зокрема Microsoft SDL, ОWASP та ISO 27034. Проаналізовано сучасні виклики, пов’язані зі зростанням складності систем та появою нових технологій. Розглянуто існуючі стандарти та методології забезпечення безпеки ПЗ. Досліджено можливості методів штучного інтелекту, зокрема машинного навчання, для автоматизації процесів аналізу безпеки коду. Розглянуто різні архітектури нейронних мереж та їх застосування для детекції вразливостей. Проаналізовано переваги та недоліки підходів. У другому розділі сформульовано постановку задачі дослідження та побудовано її математичну модель. Формалізовано функції перетворення даних на вході та виході системи. Розглянуто різні моделі подання програмного коду та обґрунтовано доцільність використання абстрактних синтаксичних дерев. Запропоновано власний гібридний підхід аналізу коду, що поєднує переваги глибокого навчання та алгоритмів пошуку подібності. Наведено детальний опис архітектури та математичних моделей складових компонент системи, зокрема нейромережевої моделі та модуля ковзного хешування AST. У третьому розділі представлено розробку ключових модулів запропонованої системи аналізу програмного коду з використанням гібридного методу пошуку та класифікації вразливостей. Описано удосконалений метод формування проміжних представлень коду на базі кодових гаджетів та їх подальша векторизація. Наведено архітектуру та алгоритми функціонування моделі глибокого навчання на основі BLSTM та модуля ковзного хешування AST. Також деталізовано розроблений метод класифікації вразливостей на основі ковзного хешування вузлів AST та порівняння з базою еталонів. Описано процедуру формування бази знань хешів вразливого коду та метод визначення оптимального вікна хешування AST. Четвертий розділ присвячено експериментальним дослідженням розробленої системи з використанням спеціалізованих наборів даних та кодових баз реальних проектів. Представлено аналіз отриманих результатів та порівняння з існуючими аналогами за критеріями якості та продуктивності. Обґрунтовано практичну цінність системи та можливості інтеграції в процеси безперервної інтеграції та доставки ПЗ. Модель пошуку вразливостей з використанням нейронних мереж продемонструвала 94.1% точності, а модель класифікації вразливостей з використанням ковзного хешування AST для 40 класів вразливостей - 51.1% точності. Обґрунтовано можливі шляхи вдосконалення системи. Висновки. У дисертаційній роботі вирішено актуальне науковоприкладне завдання розробки методів та програмних засобів для автоматизації процесів аналізу програмного коду на предмет вразливостей безпеки: 1. Запропоновано гібридний підхід до аналізу коду на основі поєднання методів глибокого навчання та алгоритмів пошуку подібності коду. Розроблено відповідну систему, що реалізує даний підхід. 2. Розроблено метод побудови проміжного представлення програмного коду у вигляді кодового гаджету, що дозволило підвищити ефективність подальшого аналізу за допомогою нейромереж. 3. Запропоновано метод класифікації вразливостей на основі ковзного хешування AST, що демонструє переваги за швидкодією у порівнянні з існуючими RNN-моделями. 4. Експериментально підтверджено ефективність розробленої системи, зокрема 94.1% точність пошуку вразливостей та 51.1% багатокласової точності їх класифікації.
  • ДокументВідкритий доступ
    Класифікація документів на основі векторних представлень словників при обробці природної мови у малоресурсному середовищі
    (КПІ ім. Ігоря Сікорського, 2023) Шаптала, Роман Віталійович; Кисельов, Геннадій Дмитрович
    Шаптала Р.В. Класифікація документів на основі векторних представлень словників при обробці природної мови у малоресурсному середовищі. – Кваліфікаційна наукова праця на правах рукопису. Дисертація на здобуття наукового ступеня доктора філософії за спеціальністю 122 «Комп’ютерні науки». – Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського», 2023. Метою дисертаційного дослідження є розробка та вдосконалення методів класифікації документів, написаних природною мовою, у малоресурсному середовищі за допомогою побудови векторних графових представлень словників природної мови. Проблема обробки природної мови у малоресурсному середовищі є складною через брак даних, які можна використовувати для тренування сучасних алгоритмів машинного навчання. Малоресурсне середовище може бути викликано відсутністю чи дорожнечою ручної розмітки на початкових етапах побудови інформаційних систем, а також низькими популярністю та розвитком природної мови у інформаційному просторі. Типові методи обробки природної мови вимагають наявність розмітки текстів відповідно до задачі, яка розв’язується. Така розмітка часто виконується експертами у прикладній галузі або людьми з високим рівнем лінгвістичної грамотності. Анотатори, які здатні виконувати розмітку, можуть не бути доступними для великого набору проєктів через відсутність фінансування (зазвичай це тимчасова робота, яка може не виправдати операційні кошти) чи мотивації (анотування – рутинна та одноманітна робота). Зважаючи на те, що 63% контенту Інтернету написано англійською мовою, і більшість мов представлена менш ніж 1% веб-сторінок, величезна кількість мов є малоресурсними та, відповідно, менш дослідженими з точки зору підходів до обробки природних мов. Це призводить до того, що інформаційні системи, які вимушені працювати на основі малопредставлених мов, часто потерпають від низької якості, порівняно з їх англомовними аналогами. Тому, покращення вже існуючих та розробка нових методів обробки природної мови у малоресурсному середовищі є актуальною задачею. У першому розділі дисертаційної роботи проведено аналітичний огляд методів та досліджень за темою дисертації. На основі огляду було сформовано класифікацію методів обробки природної мови у малоресурсному середовищі та виділено їх основні припущення, переваги і недоліки. У ході аналізу було з'ясовано, що існуючі методи для обробки природної мови у малоресурсному середовищі вимагають додаткових даних з суміжним до прикладної області змістом, що часто є не виправданим припущенням. Тому дослідження було спрямовано на розробку нових методів з використанням мінімальної кількості сторонніх даних, а саме – лінгвістичних словників, які існують у великій кількості мов як додатковий ресурс. Використання словникової інформації не є чимось новим – їх не рідко використовують системи побудовані на правилах. Проблема таких підходів – вони явно роблять запити до словників чи онтологій (побудованих на їх основі) щодо зв'язків між сутностями у прикладних текстах. Таким чином, поєднання сучасних методів обробки природної мови та словникової інформації ускладнюється, адже перші оперують з векторними представленнями лінгвістичних сутностей, а другі – є дискретними елементами у графових структурах. Тому методи перетворення інформації, що міститься у словниках, у вектори, з якими можуть працювати новітні підходи машинного навчання у контексті обробки природної мови можуть дозволити більш ефективно розширити уявлення прикладних систем про мову, аніж явні правила пошуку у словниках. Через це було сформовано наступне наукове завдання: «Розробка методів обробки природної мови на основі векторних представлень словників у малоресурсному середовищі». У другому розділі представлено загальну методику побудови векторних представлень словників та їх поєднання з методами обробки природної мови. Проведено теоретичні дослідження щодо можливості отримання таких представлень, їх бажаних властивостей та шляхів застосування. Отримано класифікацію методів побудови векторних представлень графів, виділено їх ознаки та обмеження. До таких методів відносяться методи на основі факторизації, такі як HOPE, факторизація графу, Лапласівські проекції, GraRep, LLE; методи на основі випадкових блукань, такі як Node2Vec, DeepWalk та Walklets; методи на основі глибокого навчання, такі як SDNE, DNGR та GCN; та інші. Описано яким чином дані методи можна застосувати для моделювання словників та варіанти модифікацій алгоритмів для роботи зі словниковими даними. Також було проаналізовано та упорядковано методи злиття кількох векторних представлень для отримання фінальних векторів, які можна використовувати для різноманітних задач обробки природної мови, наприклад класифікації документів. При цьому було виділено ті, що практично застосовувати у малоресурсному середовищі з обмеженим розміром розмічених даних, а саме метод конкатенації та зваженої суми векторних представлень. Для використання даних методів у контексті злиття векторних представлень документів на основі слів та словників була запропонована модифікація даних методів через додавання етапу пошуку відповідності слів. У третьому розділі описано результати експериментальних досліджень. Для перевірки впливу різних методів побудови векторних представлень словників, а також злиття векторних представлень словників та методів обробки природної мови у малоресурсному середовищі на результати моделювання у практичному завданні, було обрано вирішення задачі класифікації документів. Експериментальні дослідження проведено у прикладній області містобудування та урбаністики, а саме класифікації петицій до Київської міської ради за напрямами, такими як транспорт, освіта, благоустрій тощо. В якості додаткової словникової інформації, на основі якої будуються векторні представлення для поєднання з типовими методами класифікації документів, було обрано словник синонімів української мови. Для розуміння методів передобробки та формулювання практичних рекомендацій при роботі з подібними даними, у цьому розділі було детально описано та проаналізовано обидва джерела інформації. Малоресурсність середовища забезпечено через два аспекти вирішуваної задачі – петиції написані українською мовою, яка входить до третього десятка найпоширеніших мов світу та має невелику кількість якісних наборів даних для покращення якості роботи моделей, а також малим розміром набору даних при високій змістовній варіативності петицій. Результати проведених досліджень показали, що векторні представлення словників на основі методів кодування вершин графів можна поєднувати з типовими векторними представленнями документів для покращення якості класифікації документів за допомогою підходів машинного навчання. Кожен крок запропонованого методу має набір параметрів та гіперпараметрів, від яких залежить результат та ефективність фінального рішення. Тому додатково наведено аналіз даних опцій, а також порівняння різних підходів до побудови представлень вершин графів у контексті словників. Для досягнення найкращих результатів пропонується використання методу на основі випадкових блукань - Node2Vec, який перетворює елементи словника у вектори за прийнятний час, не вимагає багато ресурсів та отримує вищі оцінки при подальшій класифікації документів. Для наступного кроку, а саме злиття векторних представлень документів та словникової інформації оптимальним виявився метод зваженої суми. Додатково наводяться практичні рекомендації по роботі з подібними даними, а саме особливості отримання, збереження та передобробки документів, побудови словників для кожного з методів класифікації документів, збереження та обробки словника синонімів, а також аналіз статистичної значущості результатів. Наукова новизна одержаних результатів полягає у наступному: 1. Вперше запропоновано метод класифікації документів на основі векторних представлень словників при обробці природної мови у малоресурсному середовищі, який відрізняється від методів доповнення даних, що базуються на словниках, тим що у ньому поєднуються векторні представлення документів з векторними представленнями елементів лінгвістичних словників, що дозволяє збільшити F1-міру якості класифікації документів у малоресурсному середовищі; 2. Запропоновано векторну модель слів зі словника синонімів, яка на відміну від інших будується на основі векторних представлень вузлів графу словника, що надає можливість її повторного використання в різних задачах обробки природної мови через трансферне навчання; 3. Модифіковано методи конкатенації та зваженої суми при злитті векторних представлень слів додаванням етапу пошуку відповідності слів з документу словам з словника синонімів, що дозволяє покрити відсутні у словнику словоформи без побудови моделей визначення частини мови та пошуку словоформ, що суттєво ускладнено у малоресурсних середовищах. Практичне значення одержаних результатів полягає у тому, що: 1. Розроблений метод дозволяє значно підвищити F1-міру якості систем класифікації документів у малоресурсних середовищах. Таким чином розробники даних систем можуть зменшити час та витрати на розробку, адже вища якість системи досягатиметься з меншою кількістю розмітки, розширення якої може бути не доступним, або вимагати додаткових часових чи фінансових інвестицій; 2. Розроблено векторні представлення слів у словнику синонімів української мови, які можна перевикористовувати за допомогою трансферного навчання при створенні програмних систем у інших прикладних областях; 3. Представлено набір даних для класифікації тем петицій, націлений на тестування методів обробки природної мови у малоресурсному середовищі. Документи написані українською мовою та мають вузьку урбаністичну спеціалізацію, що робить набір даних відмінним від корпусів загального призначення; 4. Запропоновано застосування розробленого методу до класифікації петицій до Київської міської ради за темами, яка дозволяє автоматично пропонувати тему петиції при ручній розмітці, що може суттєво скоротити час на їх аналіз.
  • ДокументВідкритий доступ
    Стохастична оптимізація продуктивності пакету симуляції транспорту частинок в фізиці високих енергій
    (2019) Шадура, Оксана Віталіївна; Петренко, Анатолій Іванович
  • ДокументВідкритий доступ
    Стратегії розвитку сервіс-орієнтованих систем у хмарному середовищі
    (2018) Петренко, Олексій Олексійович; Кисельов, Геннадій Дмитрович