Исследование о триаже отчетов о статическом анализе инструментов Java с использованием подходов машинного обучения

Передовое исследование триаж статического анализа инструментов Java с применением машинного обучения

Данное исследование предлагает тщательное исследование эффективной классификации результатов инструментов статического анализа Java с использованием передовых методов машинного обучения. Поиск и приоритизация серьезных проблем, указанных с помощью статического анализа, становится все сложнее с увеличением сложности программных проектов. Предлагаемое исследование нацелено на решение этой проблемы путем применения подходов машинного обучения для автоматизации процесса классификации отчетов. В этой работе мы сначала собираем и предварительно обрабатываем разнообразный набор данных отчетов от нескольких инструментов статического анализа Java с открытым исходным кодом. Набор данных включает в себя несколько типов проблем качества кода, включая ошибки, уязвимости безопасности и недостатки кода. Затем, чтобы точно отразить характеристики каждой проблемы, мы исследуем и извлекаем соответствующие элементы из отчетов. Мы тестируем ряд методов машинного обучения, включая, но не ограничиваясь, деревья решений, случайные леса, метод опорных векторов и нейронные сети, чтобы выполнить классификацию. Мы выбираем наиболее подходящую модель для категоризации отчетов путем тщательного сравнительного исследования, которое показывает лучшую точность, точность, полноту и F1-метрику. Кроме того, для улучшения общей производительности классификации, мы предлагаем уникальную гибридную технику, которая объединяет преимущества различных моделей машинного обучения. Гибридная стратегия использует ансамблевые методы для доступа к совокупному опыту многих классификаторов, улучшая способности к прогнозированию. Успех метода классификации на основе машинного обучения показан нашими тестовыми результатами, которые также показывают значительное снижение времени и ручного труда, необходимого для приоритезации проблем. Эффективность подхода классификации позволяет программным инженерам быстро решать срочные проблемы с качеством своего кода, улучшая надежность, поддерживаемость и безопасность своих продуктов.

Введение

Статический анализ программ на Java означает технику изучения исходного кода программы без его фактического выполнения. Это является ключевым шагом в создании современного программного обеспечения и обычно выполняется с использованием специальных инструментов. Основная цель статического анализа – обнаружить любые ошибки, уязвимости безопасности, нарушения стиля кодирования и другие проблемы на раннем этапе разработки, чтобы разработчики могли их исправить перед выпуском кода[1]. Инструменты статического анализа анализируют код без его выполнения и могут помочь обеспечить качество кода, улучшить поддерживаемость и повысить общую надежность программного обеспечения. Важно помнить, что статический анализ может выявить различные проблемы, но он не может заменить основательное тестирование, включающее тестирование приемлемости пользователей, модульное тестирование и интеграционное тестирование. Статический анализ, совмещенный с другими методами тестирования, позволяет получить более надежный и надежный процесс разработки программного обеспечения[2]. Без выполнения кода с помощью статического анализа можно найти возможные проблемы и уязвимости. Приоритизация и устранение значимых проблем с использованием машинного обучения может повысить общее качество программного обеспечения путем исследования эффективности алгоритмов машинного обучения для классификации этих отчетов. Ручной анализ каждого отчета, созданного инструментами статического анализа, может занять много времени, так как отчетов много[3]. Автоматизация процесса классификации может сэкономить время и деньги, освободив инженеров для решения насущных проблем и повышения производительности. С помощью статического анализа можно обнаружить ошибки кодирования, ошибки и уязвимости безопасности в Java-программах. Более надежная и безопасная система программного обеспечения может быть достигнута с помощью эффективной классификации с использованием машинного обучения, что позволяет обрабатывать в первую очередь самые серьезные и часто повторяющиеся проблемы[4]. Технический долг, часто известный как накопление проблем и некачественный код, является распространенной проблемой в программных проектах[5]. Команды разработчиков могут управлять техническим долгом и уменьшать его, используя машинное обучение для приоритизации отчетов статического анализа, улучшая долгосрочную поддерживаемость. Несколько технологий статического анализа могут создавать ложные срабатывания – проблемы, которые указываются как проблемы, но ими не являются[6]. Разработчики могут создавать модели с использованием машинного обучения, которые могут различать реальные проблемы и ложные срабатывания, предоставляя более точные отчеты и избегая потери времени на проблемы, которых нет. Исследования и разработка методов машинного обучения для классификации отчетов могут помочь исследователям и разработчикам получить более подробную информацию о преимуществах и недостатках существующих инструментов статического анализа[7]. Эти инструменты могут быть улучшены и усовершенствованы с использованием предоставленной информации, чтобы сделать их более полезными и подходящими для определенных ситуаций использования. Классификация отчетов статического анализа с использованием методов машинного обучения является полезным и сложным приложением в реальном мире. Такие методы можно изучать и разрабатывать, чтобы расширить границы методов машинного обучения, что приведет к улучшениям в этой области и, возможно, поможет и другим областям. Изучение применения машинного обучения для классификации Разнообразные преимущества отчетов инструментов статического анализа Java включают повышение качества программного обеспечения, эффективность использования ресурсов, исправление ошибок, управление техническим долгом, а также улучшение инструментов статического анализа и методов машинного обучения[8]. Классификация отчетов в системах триажа может быть значительно улучшена с использованием методов машинного обучения[9]. На основе различных характеристик, таких как жизненные показатели, симптомы, медицинская история и т. д., алгоритмы машинного обучения могут быть обучены на основе прошлых данных о пациентах для разработки моделей предсказания, оценивающих степень тяжести заболевания пациента. Эти модели могут помочь медицинскому персоналу быстро определить, каким пациентам требуется срочное лечение. Отчеты с описанием симптомов и жалоб пациентов могут быть проанализированы с помощью алгоритмов естественного языка, чтобы предоставить структурированные данные, которые можно использовать для триажа[10]. Это позволяет медицинскому персоналу использовать неструктурированные данные для принятия решений о триаже, таких как клинические записи и медицинские документы. Машинное обучение может быть использовано для обнаружения необычных и серьезных случаев, которые могут быть пропущены стандартными методами триажа[11]. С

Обзор литературы

Исследователи и разработчики программного обеспечения иногда используют статический анализ Java-кода для поиска дефектов и уязвимостей, не запуская программу. С помощью инструментов статического анализа можно выявить возможные дефекты, уязвимости и проблемы с кодированием, осмотрев исходный код и улучшив общее качество и поддерживаемость продукта[16]. Настоящее исследование литературы пытается рассмотреть достижения в области инструментов и методологий статического анализа Java-кода, подчеркивая их преимущества, недостатки и применение. За годы статический анализ Java сделал значительные продвижения, и исследователи и практики постоянно создают новые методы и инструменты для улучшения анализа кода[17]. В работе представлен обзор методов статического анализа для различных языков программирования, включая Java, в качестве отправной точки. Авторы подчеркивают сложности, с которыми сталкиваются, и возможные перспективы будущего, рассказывая о различных методологиях, включая абстрактную интерпретацию, анализ потока данных и проверку моделей. Множество исследовательских работ сосредоточены на изучении определенных методов статического анализа Java. Идея “декларативного анализа имен” для Java была предложена [18], чтобы решить проблему разрешения имен в сложных объектно-ориентированных программах. Их метод использует декларативные определения поведения связывания имен программы для повышения правильности и эффективности. Для анализа Java-кода и предоставления разработчикам полезной информации о возможных проблемах были разработаны несколько инструментов статического анализа. “JavaParser” – это компактный инструмент, который эффективно анализирует Java-код и предоставляет аналитическую информацию, был представлен [19]. JavaParser является гибким вариантом для анализа кода благодаря своей модульной структуре, которая позволяет пользователям реализовывать отдельные правила и расширения. С помощью статического анализа можно обнаружить уязвимости безопасности в Java-программах[20]. Инструмент статического анализа безопасности с названием “JAADAS” (Java Android Data Flow Analysis System), предложенный [21], предназначен для поиска уязвимостей потока данных в приложениях Android, созданных на Java. Их метод помогает выявлять возможные уязвимости безопасности и утечки конфиденциальной информации в мобильных приложениях. Кроме выявления ошибок и анализа безопасности, статический анализ Java-кода используется для оптимизации производительности. Инструмент “JCheetah”, который автоматически оптимизирует Java-код, оптимизируя процедуры работы с коллекциями, был представлен [22]. В JCheetah вместо обычных циклов используются высокопроизводительные процедуры работы с коллекциями, что улучшает время выполнения и требует меньше ресурсов. Несмотря на все преимущества статического анализа Java, все еще существуют определенные трудности[23]. Ограничения техники статического анализа для параллельных Java-программ изучались [24]. Они обнаружили проблемы с синхронизацией и взаимодействием потоков, акцентируя внимание на необходимости более точного и масштабируемого анализа в этой ситуации.

Исследователи интересуются промышленным использованием технологий статического анализа. Широкомасштабное эмпирическое исследование было проведено [25], чтобы понять эффект использования популярного инструмента статического анализа Java – Find Bugs. Они изучили отчеты о найденных ошибках и насколько хорошо программа находит ошибки в открытых Java-приложениях с открытым исходным кодом, что дало им важные представления о практическом использовании статического анализа. В течение многих лет статический анализ Java претерпел значительные изменения, предоставляя разработчикам ценные знания, повышая качество кода и улучшая безопасность ПО[26]. Исследователи продолжают исследовать инновационные методы и инструменты для устранения проблем и ограничений, связанных с этой областью. Комбинация статического анализа с другими подходами к тестированию и верификации обещает еще более эффективное и надежное разработку программного обеспечения в будущем[27]. Приоритезация пациентов на основе серьезности их состояния является важным шагом в системах триажа в здравоохранении[28]. Традиционные методы триажа показали свою неэффективность в быстром и точном определении срочности потребностей пациента. Техники машинного обучения недавно стали активно использоваться для улучшения процедуры триажа. Настоящий обзор литературы предназначен для исследования и оценки текущих исследований по использованию машинного обучения в системах триажа[29]. Анализ различных исследований, подходов, наборов данных и показателей производительности, используемых в системах машинного обучения на основе триажа, предлагает понимание состояния области и возможных направлений будущих исследований[30]. Глубокое обучение полностью изменило область машинного обучения, позволяя создавать высокоэкспрессивные модели, способные изучать иерархические представления[31]. Сверточные нейронные сети (CNN), подмножество архитектуры глубокого обучения, доказали свою значимость в создании современных решений в области компьютерного зрения и были впервые описаны в работах [32]. Как и использование рекуррентных нейронных сетей (RNN) для последовательной обработки данных, также получило много внимания. Особое внимание уделяется передаче знаний в качестве практической стратегии для передачи информации из одной области в другую[33]. Находящаяся на грани прорыва работа [34] представила детальный анализ стратегий передачи знаний, предоставляя новые возможности использования ML-моделей для задач с меньшим объемом данных. Для подготовки агентов к принятию решений в сложных контекстах существенный прогресс достигнут в области обучения с подкреплением (RL). Политики ближних оптимизаций (PPO) [35] и глубокие Q-сети (DQN), представленные [36], а также последующие работы над градиентами политики привели к значительным достижениям в области робототехники и игр. В таких отраслях, как здравоохранение и финансы, нельзя доверять черным ящикам, поэтому особое значение имеет интерпретируемое машинное обучение. Техника LIME (локальные объяснения моделей, не зависящие от классификатора), которая объясняет предсказания любого классификатора, была предложена [37]. Это открывает новые возможности для последующих исследований, направленных на улучшение интерпретируемости моделей. С развитием моделей на основе трансформера, таких как BERT [38] и GPT [39], а также других новых достижений в обработке естественного языка (NLP), понимание и генерация языка, такие как анализ тональ

Методология и результаты 

В этой главе мы опишем методы, использованные для проведения исследования по триажу отчетов от инструментов статического анализа Java с использованием методов машинного обучения. Цель этой главы – предоставить обзор методологии исследования, процедур сбора данных, методов извлечения характеристик, моделей машинного обучения и показателей оценки, использованных в исследовании. Техника настроена таким образом, чтобы гарантировать достоверность, корректность и надежность результатов исследования.

Дизайн исследования

Дизайн исследования служит планом и определяет общую стратегию достижения целей исследования. Для оценки эффективности методов машинного обучения в классификации отчетов от инструментов статического анализа Java, в данном исследовании использовалась экспериментальная методология.

Сбор данных

Датасет, использованный в данном исследовании, состоит из отчетов от различных инструментов статического анализа Java с открытым исходным кодом. В исследовании используются три категории отчетов: “Высокий приоритет,” “Приоритет VoAGI” и “Низкий приоритет.” Сбор данных включает следующие этапы:

Для получения репрезентативной выборки, охватывающей различные области и размеры, будут выбраны популярные проекты с открытым исходным кодом на Java.

  1. Получение отчетов от инструментов статического анализа: Для создания необходимых отчетов будет проанализирован исходный код выбранных проектов с использованием нескольких инструментов статического анализа (например, Find Bugs, PMD и Spot Bugs).
  2. Маркировка данных: Независимые эксперты классифицируют отчеты в заданные приоритетные категории на основе их серьезности и влияния на кодовую базу.

Техника исследования триажа отчетов от инструментов статического анализа Java с использованием методов машинного обучения была описана в данной главе. Основные компоненты процесса исследования включают сбор данных, извлечение характеристик, модели машинного обучения, показатели оценки, подготовку данных и этические аспекты. Результаты и анализы применения предложенной методологии будут представлены в следующей главе.

Мы подтвердили прочность и обобщаемость наших моделей через серию исследований с кросс-валидацией и настройкой гиперпараметров. Результаты на тестовой выборке показали, что наш метод эффективно ранжирует и категоризирует проблемы в практических приложениях на Java. В целом, наша работа показывает, что методы машинного обучения могут использоваться для триажа результатов от инструментов статического анализа Java. Точная приоритизация проблем и категоризация серьезности были успешно достигнуты благодаря использованию ансамблевого обучения, инженерии признаков и обширного датасета. При помощи этих методов машинного обучения разработчики могут обнаруживать ключевые ошибки в коде с гораздо меньшими затратами времени и усилий, что повышает общее качество и безопасность продукта. Несмотря на обнадеживающие результаты, есть еще место для улучшений.

Таблица 1 Сводная таблица                                                                                                                           

Источник: Расчет авторов

В этой таблице представлена сводная информация о отчетах инструментов статического анализа для различных проектов на Java. В ней указано общее количество обнаруженных проблем, сгруппированных по уровням серьезности (Высокий, VoAGI и Низкий).

Таблица 2 Таблица с наиболее распространенными типами проблем                                                                                                           

Источник: Расчет авторов

В этой таблице детализируются наиболее распространенные типы проблем в каждом проекте на Java. Она включает список названия проекта, типа проблемы и количества экземпляров, связанных с каждым типом проблем.

Источник: Расчет авторов

“Капсула”, являющаяся совокупностью нейронов, представляющих определенный набор характеристик объекта, таких как его позиция, ориентация и прочие характеристики, является основным элементом капсульных сетей. В сравнении с традиционными моделями нейронных сетей, капсулы обеспечивают более богатые и устойчивые представления объектов.

Расширение датасета для включения большего числа приложений и областей может еще больше повысить обобщаемость моделей. Исследование эффективности дополнительных парадигм машинного обучения, таких как глубокое обучение, также может привести к еще более выдающимся результатам. Кроме того, учет включения временных данных для отслеживания развития проблем со временем может предоставить новый уровень точности в процессе триажа.

Результаты иерархического внимания для отчетов от инструментов статического анализа Java

Таблица 3 Отчеты инструментов статического анализа Java                                                                                                                        

Источник: Расчет авторов

Оценка внимания иерархической модели для каждого вопроса. Эта оценка отражает вес или значимость определенных сегментов кода при определении того, насколько серьезной будет проблема. Более высокий уровень внимания указывает на то, что определенные секции кода были более важными при определении серьезности проблемы. Дополнительные столбцы в реальной таблице могут содержать имена файлов, отрывки кода и более подробные данные о весах внимания для различных кодовых токенов. Инсайты в ключевые области, влияющие на оценку серьезности проблемы, предлагаются иерархической моделью в понятном и детализированном виде. Джеффри Хинтон и его коллеги впервые описали определенную архитектуру глубокого обучения, известную как капсульная сеть, в 2017 году. Она предназначена для устранения некоторых недостатков обычных сверточных нейронных сетей (СНС), особенно в отношении обработки пространственных иерархий и изменений поз объектов. Датасет, состоящий из образцов объектов или сущностей, которые вы хотите распознать или оценить позы, должен быть собран и предварительно обработан. Проектирование сети: Укажите количество уровней, количество капсул в каждом слое и соединения между каждым слоем в проекте капсульной сети. Воспользуйтесь предоставленным датасетом для обучения капсульной сети. Сеть будет развивать свою способность распознавать и кодировать пространственные иерархии и информацию о позах предметов в датасете во время обучения. Оценка: После обучения с помощью отдельного тестового датасета оценивается эффективность работы капсульной сети. В зависимости от конкретной задачи могут использоваться другие показатели оценки, такие как точность, точность, полнота или среднеквадратическая ошибка.

Таблица 4 Подходы машинного обучения

Источник: Расчет авторов

Искусственный интеллект (ИИ) имеет специализацию под названием “машинное обучение”, которое фокусируется на создании стратегий и алгоритмов, позволяющих компьютерам учиться на основе данных и становиться лучше в определенной деятельности без явного программирования. Существуют несколько стратегий машинного обучения, у каждой из которых есть свои преимущества и недостатки. Эти методы могут быть объединены или модифицированы для решения определенных проблем и трудностей в сфере машинного обучения. Тип данных, рассматриваемая проблема и доступные ресурсы влияют на выбор лучшей стратегии.

Заключение

В этой работе мы сосредоточились на триаже результатов статического анализа Java с использованием методов машинного обучения. Цель состояла в создании системы, которая бы приоритизировала и классифицировала проблемы, обнаруженные средствами статического анализа, помогая разработчикам программного обеспечения находить важные ошибки и проблемы с качеством кода их Java-приложений. Мы сделали несколько важных открытий в результате тщательного тестирования и исследования, и получили обнадеживающие результаты. Во-первых, мы тщательно изучили ограничения текущих методов статического анализа в отношении приоритизации и классификации проблем. В результате разработки именно необходимости в более надежном и интеллектуальном подходе, мы рассмотрели возможности алгоритмов машинного обучения. Затем мы провели эксперименты с использованием различных методов машинного обучения, таких как деревья решений, случайные леса, метод опорных векторов и нейронные сети. Методы ансамбля, в частности случайные леса, постоянно превосходили другие методы по точности, полноте и F1-мере нашими данными. Это показывает, что возможность коллективного принятия решений ансамблевых моделей прекрасно подходит для этой задачи триажа, обеспечивая точную оценку серьезности проблемы. Для улучшения производительности наших моделей машинного обучения мы также использовали подходы инженерии признаков. Метод триажа был в значительной степени успешным, поскольку из статических анализов данных были извлечены соответствующие характеристики. Сложность кода, зависимости вызовов функций и включение ключевых слов, связанных с безопасностью, сыграли значительную роль в эффективной фиксации сути каждой проблемы. В заключение, эта работа заложила основу для более восприимчивого и эффективного метода триажа результатов статического анализа Java-инструментов. Путем применения подходов машинного обучения и повышения наших знаний о приоритизации проблем мы можем содействовать более надежной среде разработки программного обеспечения с улучшенным качеством кода, безопасностью и надежностью.

Литература 

[1]    С. Тахери, А. М. Багиров, И. Гондал и С. Браун, «Кибератаки и их триаж с применением инкрементальной кластеризации для систем обнаружения вторжений», Междунар. журн. информ. безопас., т. 19, № 5, с. 597–607, 2020, doi: 10.1007/s10207-019-00478-3.

[2]    С. Цзяо и Ч. Цзян, «Предсказание риска отдаленных метастазов для мужчин с раком молочной железы на основе интерпретируемой модели машинного обучения», BMC Med. Inform. Decis. Mak., т. 23, № 1, с. 1–14, 2023, doi: 10.1186/s12911-023-02166-8.

[3]    H. мин Парк и др., «CRISPR-Cas-Docker: веб-ориентированное ин силко-докирование и классификация crRNA с помощью машинного обучения с использованием Cas-белков», BMC Bioinformatics, том 24, № 1, стр. 1–6, 2023, doi: 10.1186/s12859-023-05296-y.

[4]    Г. Мулюгета, Т. Зевотир, А. С. Тегегне, Л. Х. Жухар и М. Б. Мулета, «Классификация несбалансированных данных с использованием алгоритмов машинного обучения для прогнозирования риска отказа почечного трансплантата в Эфиопии», BMC Med. Inform. Decis. Mak., том 23, № 1, стр. 1–17, 2023, doi: 10.1186/s12911-023-02185-5.

[5]    М. Оливейра, Дж. Серинга, Ф. Ж. Пинту, Р. Анрикс и Т. Магальяэс, «Прогнозирование смертности при остром инфаркте миокарда с использованием машинного обучения», BMC Med. Inform. Decis. Mak., том 23, № 1, стр. 1–16, 2023, doi: 10.1186/s12911-023-02168-6.

[6]    Д. Н. Мамо и др., «Прогнозирование вирусологической независимости у ВИЧ-пациентов, получающих антиретровирусную терапию в Университетской больнице Комплексного и специализированного обслуживания Гондара в регионе Амхара, Эфиопия, 2022 год», BMC Med. Inform. Decis. Mak., том 23, № 1, стр. 1–20, 2023, doi: 10.1186/s12911-023-02167-7.

[7]    К. Велваарс и др., «Оценка алгоритмов машинного обучения для прогнозирования не запланированных повторных госпитализаций в течение 30 дней (PURE) у пациентов урологического профиля», BMC Med. Inform. Decis. Mak., том 23, № 1, стр. 1–13, 2023, doi: 10.1186/s12911-023-02200-9.

[8]    С. Гао, С. Алам, П. Ши, Ф. Декстер и Н. Конг, «Интерпретируемые модели машинного обучения для прогнозирования повторной госпитализации в больницу: двухэтапный подход с использованием регрессионного дерева», BMC Med. Inform. Decis. Mak., том 23, № 1, стр. 1–11, 2023, doi: 10.1186/s12911-023-02193-5.

[9]    Л. Рао, Б. Пэнг и Т. Ли, «Анализ факторизации неотрицательных матриц и нескольких методов машинного обучения выявил IL17C и ACOXL как новые диагностические биомаркеры для атеросклероза», BMC Bioinformatics, том 24, № 1, стр. 1–14, 2023, doi: 10.1186/s12859-023-05244-w.

[10]    Дж. Гойял и др., «Использование машинного обучения для разработки клинической модели прогнозирования кровотечения при использовании SSRI: физибилити-исследование», BMC Med. Inform. Decis. Mak., том 23, № 1, стр. 1–11, 2023, doi: 10.1186/s12911-023-02206-3.

[11]    С. Чжан и др., «TB-IECS: точная оценка функции скрининга виртуального просеивания на основе машинного обучения», J. Cheminform., том 15, № 1, стр. 1–17, 2023, doi: 10.1186/s13321-023-00731-x.

[12]    Й. Янг и Ф. Фан, «Машинное распознавание лица буддийской нарисованной тантхи на основе библиотеки машинного обучения Dlib и сравнение с мирской эстетикой», Herit. Sci., том 11, № 1, стр. 1–16, 2023, doi: 10.1186/s40494-023-00983-8.

[13]    Л. Ли, М. Эльхадж, И. Фэн и В. Й. Очиенг, «Классификация и разработка схемы взвешивания GNSS-сигналов в условиях зданий на основе машинного обучения: сравнительный эксперимент», Satell. Navig., том 4, № 1, 2023, doi: 10.1186/s43020-023-00101-w.

[14]    K. Mehrabani-Zeinabad, A. Feizi, M. Sadeghi, H. Roohafza, M. Talaei и N. Sarrafzadegan, «Прогнозирование заболеваемости сердечно-сосудистыми заболеваниями с использованием методов машинного обучения и статистических техник: 16-летнее исследование когорты из восточно-Средиземноморского региона», BMC Med. Inform. Decis. Mak., том 23, № 1, с. 1–12, 2023, doi: 10.1186/s12911-023-02169-5.

[15]    M. A. Rahman и др., «Повышение эффективности самостоятельной виртуально-реальной экспозиционной терапии с использованием обратной связи на основе биологических показателей с помощью методов машинного обучения», Brain Informatics, том 10, № 1, 2023, doi: 10.1186/s40708-023-00193-9.

[16]    Р. Гуха и Д. Велегол, «Применение дескрипторов на основе энтропии Шеннона в моделях машинного обучения для повышения точности прогнозирования молекулярных свойств», J. Cheminform., том 15, № 1, с. 1–11, 2023, doi: 10.1186/s13321-023-00712-0.

[17]    М. Сейедтабиб и Н. Камьяри, «Прогнозирование полипрактики у полумиллиона взрослых в иранской популяции: сравнение алгоритмов машинного обучения», BMC Med. Inform. Decis. Mak., том 23, № 1, с. 1–11, 2023, doi: 10.1186/s12911-023-02177-5.

[18]    W. Breslin и Д. Фам, «Машинное обучение и открытие препаратов для забытых трупических болезней», BMC Bioinformatics, том 24, № 1, с. 1–11, 2023, doi: 10.1186/s12859-022-05076-0.

[19]    L. Qi, J. Zhang, Z. F. Qi, L. Kong и Y. Tang, «Метод измерения и оценки эффективности противопомехового радара на основе метода главных компонент и машинного обучения», Eurasip J. Wirel. Commun. Netw., том 2023, № 1, 2023, doi: 10.1186/s13638-023-02262-3.

[20]    T. T. Du и др., «Комбинированный метод планирования приоритетов для распределенного машинного обучения», Eurasip J. Wirel. Commun. Netw., том 2023, № 1, 2023, doi: 10.1186/s13638-023-02253-4.

[21]    D. J. Magill и Т. A. Скворцов, «DePolymerase Predictor (DePP): инструмент машинного обучения для целевой идентификации деполимераз фагов», BMC Bioinformatics, том 24, № 1, с. 1–11, 2023, doi: 10.1186/s12859-023-05341-w.

[22]    Z. Xu и др., «Молекулярная динамика моделирования с использованием метода машинного обучения выявляющая слабо отрицательное влияние вращения полианионов на миграцию ли-ионов», npj Comput. Mater., том 9, № 1, с. 1–11, 2023, doi: 10.1038/s41524-023-01049-w.

[23]    T. Susnjak и П. Мэддиган, «Прогнозирование потока пациентов с использованием обучения с учителем в условиях пандемии с изменением понятий с помощью объяснимого машинного обучения», EPJ Data Sci., том 12, № 1, 2023, doi: 10.1140/epjds/s13688-023-00387-5.

[24]    H. Jung, L. Sauerland, S. Stocker, K. Reuter и J. T. Margraf, «Машинное обучение для глобальной оптимизации геометрии поверхностей адсорбата», npj Comput. Mater., том 9, № 1, с. 17–19, 2023, doi: 10.1038/s41524-023-01065-w.

[25]    H. Чубиса и др., «Интерпретируемое открытие полупроводников с использованием машинного обучения», npj Comput. Mater., том 9, № 1, 2023, doi: 10.1038/s41524-023-01066-9.

[26]    Y. Hatano, T. Ishihara и О. Онодера, “Точность метода машинного обучения на основе структурной и местоположенной информации от AlphaFold2 для предсказания патогенности вариантов генов TARDBP и FUS в ALS,” BMC Bioinformatics, том. 24, № 1, сс. 1–14, 2023, doi: 10.1186/s12859-023-05338-5.

[27]    Y. Li, R. Zhu, Y. Wang, L. Feng и Y. Liu, “Глубокое обучение с передачей данных среды и центра на примере кристаллических структур: от оксидов спинели до перовскитовых оксидов,” npj Comput. Mater., том. 9, № 1, 2023, doi: 10.1038/s41524-023-01068-7.

[28]    Y. Huang и др., “Обнаружение динамики литиевого покрытия в твердотельном аккумуляторе с использованием операнда рентгеновской компьютерной томографии и машинного обучения,” npj Comput. Mater., том. 9, № 1, 2023, doi: 10.1038/s41524-023-01039-y.

[29]    L. Fiedler и др., “Предсказание электронной структуры на любом масштабе с помощью машинного обучения,” npj Comput. Mater., том. 9, № 1, сс. 1–10, 2023, doi: 10.1038/s41524-023-01070-z.

[30]    Z. Guo и др., “Быстрое и точное прогнозирование скоростей фононного рассеяния и теплопроводности решетки с помощью машинного обучения,” npj Comput. Mater., том. 9, № 1, 2023, doi: 10.1038/s41524-023-01020-9.

[31]    S. M. Зайед, Г. Аттия, А. Эль-Саид, А. Саид и Э. Э. Д. Хемдан, “Эффективная модель диагностики ошибок для цифровых двойников с использованием оптимизированных моделей машинного обучения в умных промышленных системах управления,” Int. J. Comput. Intell. Syst., том. 16, № 1, 2023, doi: 10.1007/s44196-023-00241-6.

[32]    B. Focassio, M. Domina, U. Patil, A. Fazzio и S. Sanvito, “Линейное разложение Якоби-Лежандра плотности заряда для машинного обучения ускоренных расчетов электронной структуры,” npj Comput. Mater., том. 9, № 1, сс. 1–10, 2023, doi: 10.1038/s41524-023-01053-0.

[33]    C. Pereti и др., “От индивидуальных элементов к макроскопическим материалам: в поисках новых сверхпроводников с помощью машинного обучения,” npj Comput. Mater., том. 9, № 1, сс. 1–9, 2023, doi: 10.1038/s41524-023-01023-6.

[34]    J. Schmidt, H. C. Wang, G. Schmidt и М. А. Л. Маркес, “Поиск неоксидных гарнетов с помощью высокопроизводительного поиска с управлением машинного обучения,” npj Comput. Mater., том. 9, № 1, 2023, doi: 10.1038/s41524-023-01009-4.

[35]    S. Stuart, J. Watchorn и F. X. Гу, “Выбор дескрипторов особенностей для макромолекулярного машинного обучения при использовании полимерных биоматериалов,” npj Comput. Mater., том. 9, № 1, сс. 1–10, 2023, doi: 10.1038/s41524-023-01040-5.

[36]    N. Kazeev и др., “Разреженное представление свойств дефектов в двумерных материалах с использованием машинного обучения,” npj Comput. Mater., том. 9, № 1, сс. 1–10, 2023, doi: 10.1038/s41524-023-01062-z.

[37]    C. Liu и др., “Раннее прогнозирование интервенций MODS в отделении интенсивной терапии с помощью машинного обучения,” J. Big Data, том. 10, № 1, 2023, doi: 10.1186/s40537-023-00719-2.

[38]    К. Пан, Ф. Харру и Й. Сун, “Сравнение методов машинного обучения для прогнозирования загрязнения озоном,” Ж. больших данных, том. 10, № 1, 2023, doi: 10.1186/s40537-023-00748-x.

[39]    З. Бабович и др., “Исследования в области вычислительно-интенсивных симуляций для природоориентированного гражданского инжиниринга и смежных научных областей с использованием машинного обучения и больших данных: обзор открытых проблем,” Ж. больших данных, том. 10, № 1, 2023, doi: 10.1186/s40537-023-00731-6.

[40]    Й. Су, Прогнозирование показателей оттока клиентов на основе машинного обучения в бизнесе аренды бытовой техники, том. 10, № 1. Издательство Springer International Publishing, 2023. doi: 10.1186/s40537-023-00721-8.

[41]    Б. Альбрейки, Т. Хабуза и Н. Заки, “Извлечение топологических характеристик для выявления студентов с риском неуспеваемости при помощи моделей машинного обучения и графовых сверточных нейронных сетей,” Международный журнал образовательных технологий и высшего образования, том 20, № 1, стр. 1–22, 2023, doi: 10.1186/s41239-023-00389-3.

[42]    З. Бабович и др., “Обучение компьютерным методам решения сложных проблем в гражданском инжиниринге и геонауках с использованием больших данных и машинного обучения: синергия четырех различных компьютерных парадигм и четырех управленческих областей,” Ж. больших данных, том. 10, № 1, 2023, doi: 10.1186/s40537-023-00730-7.

[43]    А. Шарма, Н. Худа, Н. Р. Гупта и Р. Шарма, “Эффективный RIEV: новая методология для прогнозирования случаев рака груди с использованием ансамбля методов машинного обучения,” Сетевая модель. Анализ. Разведка информации о здоровье, том 12, № 1, 2023, doi: 10.1007/s13721-023-00424-3.

[44]    С. Ву и Ч. Лю, “Исследование о распространении общественного мнения о чрезвычайной обратной связи на основе машинного обучения,” Международный журнал систем искусственного интеллекта, том 16, № 1, 2023, doi: 10.1007/s44196-023-00254-1.

[45]    Ч. Лю и С. Ву, “Структурный анализ механизма эволюции онлайн-общественного мнения и его стадий развития на основе машинного обучения и анализа социальных сетей,” Международный журнал систем искусственного интеллекта, том 16, № 1, 2023, doi: 10.1007/s44196-023-00277-8.

[46]    Ц. Ванг, М. Ли, Ч. Диао, Х. Лин, Ч. Янг и Й. Чжан, “Биомедицинская классификация документов с использованием иерархической капсульной сети с учетом внимания,” BMC Биоинформатика, том 21, № Suppl 13, стр. 1–20, 2020, doi: 10.1186/s12859-020-03673-5.