Автоматик коде. СанктПетербургский государственный
Скачать 0.58 Mb.
|
Анализ признаков новой модели корректного кодаОбученная модель корректного кода соответствует параметрам, ко- торые задают веса признакам изменения. В данной модели параметры Таблица 3: Результаты исправления ошибок признаков находятся в диапазоне (-3.0, 3.0), где положительные зна- чения соответствуют признакам, которые характеризуют правильные исправления. Далее выбираются самые значимые параметры модели корректного кода и рассматривается их изменение по мере добавления новых примеров. В ходе добавления новых примеров важные признаки исходной мо- дели не сильно изменились и сохранили относительное местоположение см. рис. 6, 7. Рис. 6: Изменение веса самых важных отрицательных признаков ис- правления по мере добавления новых примеров Новый признак вида MoveStmtRepairизначально почти никак не Рис. 7: Изменение веса самых важных положительных признаков ис- правления по мере добавления новых примеров влиял на модель (см. рис. 8), но впоследствии стал иметь большой по- ложительный вес. Скорее всего положительная оценка связана с малым количеством кандидатов данного типа. Остальные признаки уменьши- ли свои веса, в результате чего, диапазон значений параметров вида сократился. Также значимый положительный вес (0.31) приобрел при- знак первой локации, отвечающий за то, чтобы искомое изменяемое утверждение при MoveStmtRepairбыло вызовом функции. Среди новых добавленных признаков, отвечающих за второе место в программе, к выраженным отрицательным признакам можно отне- сти разыменование указателя, изменение значения указателя и вызов функции, использующей локальную переменную. К положительным признакам – наличие операции присваивания, изменения глобальной переменной и вызов функции от указателя. По мере добавления приме- ров эти положительные признаки постепенно приобретают вес. Данный процесс показан на рис. 9. При добавлении первого примера веса этих признаков близки к нулю. Данное наблюдение можно объяснить от- Рис. 8: Изменение веса признаков вида исправления по мере добавления новых примеров сутствием в начальной модели признаков, отвечающих за второе место изменения, и примерам соответствующим им. Рис. 9: Изменение весов признаков второй локации по мере добавления новых примеров |