Software Defect Prediction using Autoencoder Transformer Model
Barma, Hariharan, Arvapalli
An AI-ML-powered quality engineering approach uses AI-ML to enhance software quality assessments by predicting defects. Existing ML models struggle with noisy data types, imbalances, pattern recognition, feature extraction, and generalization. To address these challenges, we develop a new model, Adaptive Differential Evolution (ADE) based Quantum Variational Autoencoder-Transformer (QVAET) Model (ADE-QVAET). ADE combines with QVAET to obtain high-dimensional latent features and maintain sequential dependencies, resulting in enhanced defect prediction accuracy. ADE optimization enhances model convergence and predictive performance. ADE-QVAET integrates AI-ML techniques such as tuning hyperparameters for scalable and accurate software defect prediction, representing an AI-ML-driven technology for quality engineering. During training with a 90% training percentage, ADE-QVAET achieves high accuracy, precision, recall, and F1-score of 98.08%, 92.45%, 94.67%, and 98.12%, respectively, when compared to the Differential Evolution (DE) ML model.
academic
Предсказание дефектов программного обеспечения с использованием модели Autoencoder Transformer
В данной работе предложен метод инженерии качества на основе AI-ML, который повышает оценку качества программного обеспечения путём предсказания дефектов. Для решения проблем существующих моделей машинного обучения при работе с зашумленными данными, дисбалансом данных, распознаванием образов, извлечением признаков и обобщением разработана модель квантового вариационного автокодировщика-Transformer (QVAET) на основе адаптивной дифференциальной эволюции (ADE) — модель ADE-QVAET. Данная модель объединяет оптимизацию ADE и архитектуру QVAET для захвата высокомерных скрытых признаков и сохранения последовательных зависимостей, что повышает точность предсказания дефектов. При соотношении обучения 90% модель ADE-QVAET достигла точности 98,08%, полноты 92,45%, чувствительности 94,67% и F1-оценки 98,12%.
Высокая стоимость тестирования программного обеспечения: Тестирование ПО в корпоративной среде сталкивается с проблемами сложных данных и бизнес-требований, инженеры качества тратят 30-40% времени на ручное выполнение тестов
Недостаточная профилактика дефектов: Традиционные методы тестирования полагаются на обнаружение ошибок после завершения разработки, игнорируя потенциальные сбои, которые можно предотвратить раньше
Недостаточная точность моделей: Существующие технологии AI-ML предсказывают дефекты с точностью ниже 80%
Изолированные знания: Исторические знания о тестировании ограничены индивидуальным опытом, а не являются организационным активом
В сложных корпоративных системах, таких как облачные вычисления, микросервисы, IoT и реализация AI, сложная бизнес-логика и технологические зависимости создают экспоненциальную сложность, с которой традиционные методы сталкиваются с ограничениями, включая галлюцинации, недостаточное контекстное генерирование и потерю критических бизнес-отношений в процессе поиска.
Предложена модель ADE-QVAET: Впервые объединены адаптивная дифференциальная эволюция, квантовый вариационный автокодировщик и архитектура Transformer в единую структуру
Разработана структура предварительной обработки ANRA: Структура адаптивного снижения шума и расширения данных, улучшающая качество данных и баланс классов
Реализована динамическая оптимизация гиперпараметров: Алгоритм ADE динамически настраивает коэффициент масштабирования и коэффициент кроссовера на основе эволюционной производительности кандидатов
Достигнуто значительное повышение производительности: Точность повышена на 7,73%, полнота повышена на 18,63% по сравнению с традиционной моделью DE
Входные данные: Набор данных для предсказания дефектов ПО, содержащий статические атрибуты кода, индекс поддерживаемости, циклическую сложность, количество строк кода, характеристики текучести кода и т.д.
Выходные данные: Результат бинарной классификации (модуль с дефектом/модуль без дефекта)
Цель: Максимизировать точность, полноту, чувствительность и F1-оценку предсказания дефектов
Входной набор данных: D = {x₁, x₂, ..., xₙ}
Предварительно обработанные данные: D' = ANRA(D)
Структура ANRA балансирует экземпляры с дефектами и без дефектов путём снижения шума, удаления избыточной информации и генерирования синтетических данных.
По сравнению с традиционным VAE, QVAE использует принципы квантовых вычислений для извлечения более богатых высокомерных скрытых признаков, способных захватывать сложные образы, которые трудно выявить классическими методами.
Операция мутации: v_{i,g+1} = x_{r1,g} + F × (x_{r2,g} - x_{r3,g})
Операция кроссовера: u_{j,i,g+1} = {v_{j,i,g+1} if rand(0,1) ≤ CR, x_{j,i,g} otherwise}
Операция отбора: x_{i,g+1} = u_{i,g+1} if f(u_{i,g+1}) ≤ f(x_{i,g})
ADE динамически настраивает F (коэффициент масштабирования) и CR (коэффициент кроссовера) на основе эволюции популяции, достигая баланса между исследованием и использованием.
Целевая функция: θ* = argmin f(θ), где θ включает ключевые гиперпараметры, такие как скорость обучения, коэффициент регуляризации, количество слоёв и т.д.
Источник данных: Набор данных Kaggle для предсказания дефектов программного обеспечения
Признаки: Количество строк кода (LOC), циклическая сложность, глубина дерева наследования (DIT), связанность между объектами (CBO) и другие структурные элементы
Метки: Бинарная классификация (дефект=1, без дефекта=0)
Вызовы: Проблема дисбаланса классов, низкая частота появления модулей с дефектами
Традиционные методы машинного обучения: Khalid и др. использовали кластеризацию K-means для улучшения предсказания дефектов, но с большими вычислительными затратами
Оптимизация эволюционными алгоритмами: Tang и др. предложили алгоритм AVSSA для работы с дисбалансированными данными, но с высокой сложностью интеграции
Методы глубокого обучения: Khleel и др. объединили CNN и GRU, требующие значительных вычислений и генерирования синтетических данных
Методы отбора признаков: Mehmood и др. разработали методы ML на основе отбора признаков, но с риском потери информации
Высокая инновационность методологии: Впервые объединены квантовые вычисления, вариационный автокодировщик, Transformer и адаптивный эволюционный алгоритм
Полный экспериментальный дизайн: Комплексные сравнительные эксперименты с несколькими эпохами и базовыми методами
Значительное повышение производительности: Явное улучшение по всем ключевым метрикам
Практическая прикладная ценность: Исследование из промышленности (Apple) с потенциалом практического развёртывания
Статья ссылается на 21 соответствующий источник, включая:
Методы машинного обучения для предсказания дефектов ПО
Применение эволюционных алгоритмов в программной инженерии
Технологии квантового машинного обучения
Применение глубокого обучения в анализе кода
Общая оценка: Это статья с высокой технологической инновационностью, которая успешно интегрирует несколько передовых технологий для решения проблемы предсказания дефектов программного обеспечения. Хотя в теоретическом анализе и полноте проверки есть место для улучшения, её практическая ценность и повышение производительности весьма значительны, что имеет важное значение для продвижения применения AI в инженерии качества программного обеспечения.