PROBLEMS IN PROGRAMMING
Not a member yet
761 research outputs found
Sort by
Метод виявлення політичної пропаганди в інтернет-контенті нейромережевими засобами обробки природної мови
The automation of propaganda detection processes in textual Internet content using natura l language processing is extremely relevant in modern conditions and can provide fast and well-timed targeted detection of hostile manipulative influence in largescale amounts of Internet content. The paper proposes a method of automated propaganda detection that operates in the Ukrainian language. The method for detecting political propaganda in Internet content using neural network natural language processing tools is intended to identify and analyze potentially propagandistic or manipulative content spread on the Internet. The input data of the method is an ensemble of trained models of recurrent neural networks with tokenizers and a text message for analysis. The output data are the level and percentage of propaganda presence for each neural network model of ensemble and in general. To examine the effectiveness of developed method for detecting political propaganda in textual Internet content using natural language processing, which includes the ensemble use of recurrent neural network models of the BiLSTM and GRU architectures, a software implementation of the method was created using Python. The software implementation allows training neural network models and using them to detect political propaganda in textual Internet content. The training data set in Ukrainian was prepared. The test training of an ensemble of classifiers based on the BiLSTM and GRU neural network architectures was conducted. The proposed approach is capable of detecting political propaganda by an ensemble of RNN models with Acuracy 0.97, Precision 0.973, Recall 0.981, and F1 0.976 in the discrete approach (bagging), and Acuracy 0.95, Precision 0.977, Recall 0.987, and F1 0.981 in the binary approach (stacking). The developed method has a limitation: it works with text posts from 200 to 6300 characters long. For shorter and longer texts, performance degradation is observed.Prombles in programming 2024; 2-3: 288-295Автоматизація процесів виявлення пропаганди в текстовому інтернет-контенті засобами обробки природної мови є надзвичайно актуальною в сучасних умовах і здатна забезпечити швидке і своєчасне цільове виявлення ворожого маніпулятивного впливу в масштабних обсягах інтернет-контенту. В статті запропоновано метод автоматизованого виявлення пропаганди, який працює з українською мовою. Метод виявлення політичної пропаганди в інтернет-контенті нейромережевими засобами обробки природної мови призначений для виявлення та аналізу потенційно пропагандистського або маніпулятивного контенту, що поширюється в мережі Інтернет. Вхідними даними методу є ансамбль навчених моделей рекурентних нейронних мереж з токенізаторами і текстовий допис для аналізу. Вихідними даними є рівень і відсоткова оцінка наявності пропаганди як за кожною нейромережевою моделлю ансамбля, так і узагальнено. Для дослідження ефективності розробленого методу виявлення політичної пропаганди в текстовому інтернет-контенті засобами обробки природної мови, що містить ансамблеве використання рекурентних нейромережевих моделей архітектур BiLSTM та GRU, було створено програмну реалізацію методу засобами мови Python. Програмна реалізація дозволяє здійснювати навчання моделей нейронних мереж та використовувати їх для виявлення політичної пропаганди в текстовому інтернетконтенті. Виконано підготовку навчального україномовного набору даних. Проведено тестове навчання ансамблю класифікаторів із нейромережевих архітектур BiLSTM та GRU. Запропонований підхід, здатний визначати політичну пропаганду ансамблем моделей RNN з показниками Acuracy 0.97, Precision 0.973, Recall 0.981 і F1 0.976 за дискретного підходу (беггінг), та Acuracy 0.95, Precision 0.977, Recall 0.987 та F1 0.981 при бінарному підході (стекінг). Розроблений метод має обмеження: працює з текстовими дописами довжиною від 200 до 6300 символів. Для коротших та довших текстів спостерігається погіршення продуктивності.Prombles in programming 2024; 2-3: 288-29
Нейро-символьний підхід у дослідженні біологічних процесів та систем
The current state and prospects for the application of neural network technology and systems built based on neural networks for studying biological systems and processes (in particular, the processes of virus-cell interaction) were considered in the article. In particular, the concept of the neuro-symbolic approach, which combines the use of neural networks and algebraic modelling, was described. The use of an algebraic approach in combination with neural networks allows us to obtain an effective formal proof of biological objects' properties (for example, cells' and viruses' properties) or processes, as well as to search for objects or the necessary values of their parameters that correspond to the specified properties. One of the experiments that we consider is applying the proposed approach to modelling and studying the process of programmed cell death (apoptosis) caused by certain types of viruses and considering the possibility of using the obtained results in medical practice (particularly in the treatment of oncological diseases). The main task of such experiments is to analyze and identify the properties of viruses capable of triggering tumour cell apoptosis and, in fact, to determine the possibility of reaching the final stage of this process under the given parameters of the virus and the cell.Prombles in programming 2024; 2-3: 271-279У статті розглядається сучасний стан та перспективи застосування технології нейронних мереж та побудованих на їхній базі систем для дослідження біологічних процесів та систем, зокрема, процесів вірус-клітинної взаємодії. Зокрема, авторами розглянуто поняття нейро-символьного підходу, як такого, що поєднує використання нейронних мереж та алгебраїчного моделювання. Застосування алгебраїчного підходу у поєднанні з нейронними мережами дозволяє виконати ефективне формальне доведення певних властивостей об’єктів (наприклад, властивостей клітин та вірусів) або процесів, а також реалізувати пошук об’єктів чи необхідних значень їхніх параметрів, які відповідають заданим властивостям. Одним із експериментів, що розглядається, є застосування запропонованого підходу до моделювання та дослідження процесу програмованої загибелі клітини (апоптозу), викликаного певними видами вірусів, та можливості використання отриманих результатів у медичній практиці (зокрема, в лікуванні онкологічних захворювань). Основним завданням таких експериментів є аналіз та виявлення властивостей вірусів здатних запускати процес апоптозу пухлинної клітини, та, власне, визначення можливості досягнення кінцевої стадії цього процесу за заданих параметрів вірусу та клітини.Prombles in programming 2024; 2-3: 271-279
Метод управління виконанням задач багатопотокової програми за заданим графом залежностей
Performance is one of the main non-functional requirements for software. As a result of the increase in the number of cores in central processing units in recent decades, the use of multithreading technology has become a primary means of improving software performance. This study analyzes the problems that arise from developing multithreaded programs and ways to address them. A method for managing the execution of tasks in a multithreaded program based on a given dependency graph is proposed and its implementation in the C++ language is demonstrated. Its aim is to reduce the resource intensity of software development and increase its reliability by addressing problems typical of developing multithreaded programs. The results of experimental research on a test set of tasks are provided, demonstrating increased performance through the use of the proposed method.Prombles in programming 2024; 2-3: 239-246Швидкодія є однією з головних нефункціональних вимог до розробки програмного забезпечення. Як наслідок збільшення кількості ядер центральних процесорів протягом останніх десятиліть, використання технології багатопотоковості стало основним засобом підвищення швидкодії програмного забезпечення. У даному дослідженні аналізуються проблеми, які виникають в результаті розробки багатопотокових програм, та способи їх вирішення. Запропоновано метод управління виконанням задач багатопотокової програми за заданим графом залежностей та розглянута його реалізація мовою C++. Його метою є зменшення ресурсоємності розробки програмного забезпечення та збільшення його надійності шляхом вирішення проблем, характерних для багатопотокових програм. Наведено результати експерименального дослідження на тестовому наборі задач, що доводять збільшення швидкодії за рахунок використання запропонованого методу.Prombles in programming 2024; 2-3: 239-246
Трансформація управління: створення масштабованих та адаптованих децентралізованих мереж на основі evm-сумісного блокчейну
This article explores scalable and adaptable governance through decentralized networks, enabling collective decision-making and evolution without necessitating a complete system overhaul when original functionalities become obsolete. It delves into the utilization of interconnected Smart Contracts on the EVM-based blockchain to resolve foundational governance issues. However, the principal advantages are compromised if the system requires continual redeployment to adapt to environmental changes. We introduce a solution that combines a role-based access system and a modular system contracts architecture to enhance the system's scalability and adaptability. This approach allows for modifications and scaling at any time through community proposals and voting, catering to the specific needs of its members and eliminating the need for manual configuration by a centralized entity for new modules or functionalities. Members can propose configuration parameters for a new module, and with community majority approval, the system can adapt and scale, safeguarding the interests of its members, provided there is cooperation within the majority of the community.Prombles in programming 2024; 2-3: 351-358 Ця стаття досліджує масштабоване та адаптивне управління через децентралізовані мережі, що уможливлює колективне прийняття рішень та еволюцію без необхідності в повному перебудовані системи, коли первинні функціональні можливості стають застарілими. Розглядається використання взаємопов'язаних Смарт-контрактів на блокчейні, базованому на EVM для вирішення фундаментальних проблем управління. Проте, основні переваги компрометуються, якщо система потребує постійного перевидання для адаптації до змін у середовищі. Ми представляємо рішення, яке поєднує систему доступу на основі ролей та архітектуру системи модульних контрактів для підвищення масштабованості та адаптивності системи. Цей підхід дозволяє вносити зміни та масштабувати систему у будь-який час через спільні пропозиції та голосування спільноти. Водночас існує можливість врахування конкретних потреб учасників і уникнення необхідності вручну конфігурувати нові модулі або функціональні можливості централізованою сутністю. Учасники можуть пропонувати параметри конфігурації для нового модуля і за підтримки більшості у спільноті адаптувати систему та здійснювати масштабування, захищаючи інтереси своїх учасників за умови співпраці більшості у спільноті. Prombles in programming 2024; 2-3: 351-35
Класифікація низькочастотних сигналів за допомогою методів кластеризаці
The article considers the problem of low frequency signal classification, as sound or vibration pattern footprints may describe types of objects very well. In cases of a priori absence of object signal pattern information, the unsupervised learning methods based on clustering looks good enough for classification, and outperform neural net-based methods in case of limited power envelope. We have used big real-world sound and vibration data set to check several clustering methods (K-Means, OPTICS) for classification without any a priori data and have got good enough results. The article considers data set preparations including primary signal processing and the parameters to select appropriate clustering algorithms, which depends on input data shape. There are several examples of data classification, also cascaded methods for data set improvement are considered. Finally, we provide a good and practical guide for exploring low frequency signals using clustering methods, which can be used for real world observations and analysis for open space and inside buildings.Prombles in programming 2024; 1: 48-56У статті розглянуто методи класифікації сигналів звукового та інфразвукового діапазону за допомогою алгоритмів кластеризації у випадках, якщо присутня лише загальна апріорна інформація, наприклад, невідомі типі об’єктів, які генерують відповідні сигнали. Розглянуто підготовку даних звукового діапазону, особливості первинної обробки набору даних, параметри вибору алгоритму залежно від особливостей набору даних. Подано приклади кластеризації набору даних за допомогою алгоритму OPTICS, описано можливості каскадної обробки набору даних.Prombles in programming 2024; 1: 48-5
Розумний чат-бот для оцінки емоційного забарвлення повідомлення та відповідної відповіді
A recurrent neural network model, a database designed for neural network training, and a software tool for interacting with a bot have all been created. A large dataset (50 thousand comments) containing different reviews and sentiments was collected and annotated to successfully train and validate the model. It was also translated into Ukrainian language with the help of an automatic translator. The architecture of the neural network model underwent optimization to enhance classification outcomes. Furthermore, work was conducted on enhancing the user interface. The developed application was tested, and the results were demonstrated. The resulting model demonstrated accuracy 85% in determining sentiments. The implemented application has got basic design (which can be customized) and some settings for chatbot. Further improvement of the model’s classification quality can be achieved by collecting a larger and better organised dataset or by researching other RNN architectures.Problems in programming 2024; 1: 23-29Створено рекурентну модель нейронної мережі, базу даних, призначену для навчання нейронної мережі, програмний інструмент, що її реалізує, для взаємодії з ботом. Для успішного навчання та перевірки моделі було зібрано та анотовано великий набір даних, 50 тисяч коментарів, що містять різні відгуки та думки. Його перекладено українською мовою за допомогою автоматичного перекладача. Архітектура моделі нейронної мережі була оптимізована для покращення результатів класифікації. Крім того, була проведена робота над вдосконаленням інтерфейсу користувача. Розроблений додаток протестовано, результати продемонстровано. Отримана модель продемонструвала точність 85% у визначенні настроїв. Реалізована програма має базовий дизайн, який можна налаштувати, а також деякі налаштування для чат-бота. Подальшого покращення якості класифікації моделі можна досягти шляхом збору більшого та краще організованого набору даних або шляхом дослідження інших архітектур RNN.Problems in programming 2024; 1: 23-2
Зворотний синтез природно-мовних висловлювань на основі їх онтологічного представлення з використанням великої мовної моделі
The presented article introduces a novel solution that uses a specially developed structured prompt for a large language model (Chat GPT). A series of experiments were carried out on synthesizing natural language phrases based on their ontological representations. These ontological representations were automatically constructed from sentences of scientific and technical texts using previously developed software tools. Such representations contain entities found in the text and typed semantic relationships between them, which can be realised in the phrases of the analysed text. The system of relationships, specified by a set of concepts, is linked with the entity of the related part of the sentence, which in turn can be a simple sentence or part of a complex sentence. The structured prompt for the large language model includes explanations of the semantic relationships between concepts in the context of sentence synthesis from ontological representation, as well as a set of pairs of concepts connected by semantic relationships, which serve as materia l for sentence creation. The synthesised natural language sentences were compared with the originals using the cosine similarity measure across different vectorisation methods. The obtained similarity scores ranged from 0.8193 to 0.9722 according to the xx_ent_wiki_sm model, although stylistic distortions of the generated sentences were observed in some cases. The research presented in this work has practical significance for the development of dialogue information systems that combine the ontological approach with the use of large language models.Prombles in programming 2024; 2-3: 359-368 Стаття презентує нове рішення, що полягає у використанні спеціально розробленої структурованої інструкції-підказки для великої мовної моделі (Chat GPT). Було проведено серію експериментів із синтезу природномовних висловлювань на основі онтологічних представлень, автоматично побудованих на основі речень науково-технічного тексту за допомогою раніше розроблених програмних засобів. Ці представлення містять сутності, знайдені у тексті, та типізовані семантичні зв’язки між ними, які можуть реалізовуватися у фразах аналізованого тексту. Система зв’язків, конкретизованих набором понять, поєднується із сутністю зв’язаної частини речення, яка, своєю чергою, може бути простим реченням або частиною складного речення. Структурована інструкція-підказка для великої мовної моделі містить роз’яснення семантичних відношень між поняттями у контексті синтезу речень із онтологічного представлення, а також набір пар понять, поєднаних семантичними зв’язками, що слугують матеріалом для створення речення. Синтезовані у такий спосіб природномовні речення порівнювалися з оригіналами за показником косинусної близькості за умов різних методів векторизації, зокрема xx_ent_wiki_sm, uk_core_news_lg та tf-idf. Отримані показники близькості сягали 0,8193 – 0,9722 за моделлю xx_ent_wiki_sm, хоча у деяких випадках спостерігалося стилістичне викривлення отриманих речень. Дослідження має практичне значення для розробки діалогових інформаційних систем, що поєднують онтологічний підхід із використанням великих мовних моделей.Prombles in programming 2024; 2-3: 359-366
Система розпізнавання обличчя людини у відеопотоці
In the work, an analysis of detection methods and faces in the video stream and their effectiveness in real time was carried out. Modern algorithms and pre-trained models have been found to be able to recognize faces with high accuracy, but their significant drawback is, in particular, vulnerability to attacks using fake faces. Therefore, the work also analyzed approaches to detecting living faces and the possibility of their implementation in the system. Using an object-oriented approach, a tool for face capture, receiving a video stream from various sources, detecting unknown and previously captured faces in a video stream, and recognizing live faces was designed and developed. The system has been adapted to work in real time using the GPU. The work improved the architecture of a convolutional neural network for recognizing living faces with the creation of a dataset from a combination of own footage and open datasets. Also, a user interface for the face recognition system was developed. The work improved identification procedures and simplified detection of persons on video for employees of the security department of enterprises by implementing liveness detection face recognition methods. As a result of the research, a system was designed, which is intended for detection, recognition and detection of living faces in a video stream. After analyzing the known successful software products, niches that need a new solution were identified. Based on them, functional and non-functional requirements were developed. The process of recognizing faces in the video stream has been modified by implementing our own Liveness Detection model.Prombles in programming 2024; 2-3: 296-304В роботі було проведено аналіз методів виявлення обличчя у відеопотоці та їхньої ефективності в реальному часі. Було з’ясовано, що сучасні алгоритми та попередньо натреновані моделі дозволяють з високою точністю розпізнавати обличчя, однак значним їхнім недоліком є, зокрема, вразливість до атак із використанням фальшивих облич. Тому було проведено також аналіз підходів до виявлення живих облич і можливості їхньої імплементації в системі. За допомогою об’єктно-орієнтованого підходу було спроєктовано та розроблено засіб для захоплення обличчя, отримання відеопотоку з різних джерел, виявлення невідомих та раніше захоплених облич у відеопотоці, розпізнавання живих облич. Система була адаптована для роботи в реальному часі із використанням GPU. В роботі було вдосконалено архітектуру конволюційної нейронної мережі для розпізнавання живих облич із створенням датасету із комбінації власних футажів та відкритих датасетів. Також розроблено користувацький інтерфейс для системи розпізнавання облич. У роботі покращено процедури ідентифікації та спрощення виявлення осіб на відео для працівників відділу безпеки підприємств шляхом впровадження методів розпізнавання із живих облич (liveness detection). Результатом дослідження було спроєктовано систему, призначену для виявлення, розпізнавання та виявлення живих облич у відеопотоці. Проаналізувавши відомі успішні програмні продукти, було виділено ніші, які потребують представлення нового рішення. На їх основі було розроблено функціональні та нефункціональні вимоги. Процес розпізнавання облич у відеопотоці було модифіковано шляхом впровадження власної моделі Liveness Detection.Prombles in programming 2024; 2-3: 296-30
Модель екосистеми "Кафедра"
An ecosystem model is proposed, which describes the main objects and their functions in such medium of a higher educational institution as a department. The main object of research in such models are conditions of the successful development and functioning of the department. In particular, the methods of planning an equal educational load for teachers, together with the employees of the university department and the management of the faculty are considered. The main actors in the ecosystem are teachers (called servers), who teach the courses. The proposed model makes it possible to simplify the drawing up of the schedule, to quickly respond to force majeure circumstances, necessary exchange of the teacher, etc. The properties of ecosystem models are verified by automata-network methods. Such ecosystem can be generalized and expanded by adding models of the faculty, university, and Ministry in order to control the work of the faculty, university, and ministry, the effectiveness of their functioning.Prombles in programming 2024; 2-3: 418-425Пропонується модель екосистеми, в якій описані основні об’єкти та їхні функції у такому середовищі вищого навчального закладу як кафедра. Основним об’єктом дослідження в такій моделі є умови успішного розвитку та функціонування кафедри. Зокрема розглядаються способи планування рівномірного навчального навантаження на викладачів, взаємодія працівників кафедри між собою і керівництвом факультету. Основними діючими особами в екосистемі є викладачі (названі серверами), які викладають відповідні курси. Пропонована модель дозволяє спростити складання розкладу, оперативно реагувати на форс-мажорні обставини, необхідні заміни викладача тощо. Властивості моделі екосистеми досліджуються автоматно-мережевими методами. Така екосистема може узагальнюватися та розширюватися шляхом надбудови моделі факультету, університету, міністерства з метою контролю роботи факультету, університету, міністерства та ефективності їхнього функціонування.Prombles in programming 2024; 2-3: 418-425
Архітектурні метрики: огляд потенціалу для покращення програмного забезпечення
Software development hinges on well-crafted architecture, a foundational phase that influences the entire system. This study investigates using architectural design metrics, which quantify various aspects of architecture. We conducted a systematic mapping study, analysing existing literature to understand how these metrics are currently employed. Our findings reveal a limited yet promising landscape. Metrics exist to assess design stability, understandability, modularity, and security. Notably, several studies explore gauging the "option-generation ability" of an architecture and its potential to generate different design choices. However, a gap exists in directly using these metrics for fault prediction. Existing research primarily focuses on the "reverse" effect, where metrics from later development stages (like code) are used to identify architectural issues. Overall, this study highlights the underutilised potential of architectural design metrics. While current research demonstrates the effectiveness of a relatively simple set of metrics for various purposes, further exploration is warranted. Future efforts should delve into data accumulation and investigate models for using these metrics for predictive purposes, ultimately enhancing software quality and development processes.Problems in programming 2024; 2-3: 99-106Розроблення програмного забезпечення залежить від добре продуманої архітектури, яка впливає на всю систему. У цьому дослідженні розглядається використання метрик архітектурного проєктування, які кількісно оцінюють різні аспекти архітектури. Ми провели систематичне картографічне дослідження, проаналізувавши існуючу літературу, щоб зрозуміти, як ці метрики використовуються зараз. Наші висновки показують обмежений, але багатообіцяючий ландшафт. Існують метрики для оцінки стабільності, зрозумілості, модульності та безпеки проєкту. Зокрема, кілька досліджень вивчають вимірювання «здатності генерувати варіанти» архітектури та її потенціалу генерувати різні проєктні варіанти. Однак існує прогалина у безпосередньому використанні цих метрик для прогнозування несправностей. Існуючі дослідження зосереджені переважно на «зворотному» ефекті, коли метрики з більш пізніх етапів розроблення (наприклад, характеристики коду) використовуються для виявлення архітектурних проблем. Загалом, це дослідження підкреслює недостатньо використаний потенціал метрик архітектурного проєктування. Хоча поточні дослідження демонструють ефективність відносно простого набору метрик для різних цілей, подальші дослідження є виправданими. Майбутні зусилля повинні бути спрямовані на накопичення даних і дослідження моделей для використання цих метрик з метою прогнозування, що в результаті підвищить якість програмного забезпечення та покращить процеси розробки.Problems in programming 2024; 2-3: 99-106