Обнаружение ошибок в процессе производства программного обеспечения с использованием ML / AI - PullRequest
0 голосов
/ 09 ноября 2019

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

Поскольку у меня много шагов и много приложений, я хотел бы применить AI / ML, чтобы выяснить, на каком этапе может произойти сбой приложения. Таким образом, у меня есть функции (шаги) и метки (результат [PASS]/ FAIL]) для каждого APP, в отличие от контролируемого обучения, в котором известны только функции.

Например, APP должны пройти 6 шагов от шага A1 до A6. Эти шаги имеют значение критерия по умолчанию (например, «1»), которое соответствует значению приложения (отличному от «1»). Эти значения являются категориальными. Если на определенном шаге значение APP не равно «1», результатом будет FAIL, как показано ниже.

APP     A1  A2  A3  A4  A5  A6  Result
ID_1    1   1   1   1   1   1   PASS
ID_2    1   1   1   1   1   1   PASS
ID_3    1   1   1   0   0   0   FAIL
ID_4    1   1   1   2   1   1   FAIL
ID_5    1   1   1   1   1   1   PASS
ID_6    1   1   1   1   1   1   PASS
ID_7    1   Q   1   1   1   1   FAIL
ID_8    1   1   0   1   1   1   FAIL
ID_9    1   1   1   1   A   3   FAIL
ID_10   1   1   1   1   1   1   PASS
ID_11   1   1   1   1   1   1   PASS

Я буду благодарен, если смогу получить ответ на мои вопросы.

  1. Какую технику следует использовать? Это контролируемое, неконтролируемое обучение или другое?
  2. Если ответ Супервизированный, что, если контрольный пример APP является новым и не включен в набор данных обучения (например, ID_12)? Как можно обнаружить ошибку в этом случае?
...