Использование технологий машинного обучения в аудите: примеры эффективного применения
Привет, VC! С вами DS Гершевский Егор и Горбачев Никита!
Введение в аудит и машинное обучение
Аудит является неотъемлемой частью бизнес-практики, обеспечивая независимую оценку финансовой отчетности и процессов в организации. Аудиторы полагаются на опыт и статистическую выборку для ручной проверки сотен документов и свидетельств, определения сильных сторон и углубленного анализа организационных процедур и транзакций. Однако этот ручной процесс превратил аудит в трудоемкую и ресурсоемкую деятельность.
В этом контексте машинное обучение (ML) играет все более важную роль. Машинное обучение — это ветвь искусственного интеллекта, которая помогает компьютерам “учиться” на импортируемых больших объемах данных и алгоритмов, чтобы делать прогнозы, выявлять паттерны и принимать решения без явного программирования. Оно оказывает всё больше влияния на область анализа данных и аналитики веб-сайтов, и открывает новые возможности для улучшения эффективности, точности и надежности процессов аудита. В настоящее время почти каждая крупная технологическая компания внедряет ML (машинное обучение) в область аудита. Вот, например, как ML применяется в Facebook https://www.geeksforgeeks.org/5-mind-blowing-ways-facebook-uses-machine-learning/ и Amazon https://www.geeksforgeeks.org/how-amazon-uses-machine-learning/.
Применение машинного обучения в аудите
ML может быть использован в различных аспектах аудита, включая анализ данных, обнаружение мошенничества, прогнозирование рисков и оптимизацию процессов. Алгоритмы машинного обучения могут обрабатывать и анализировать огромные объемы данных, выявлять скрытые зависимости и выделять аномалии, что помогает аудиторам принимать более обоснованные и точные решения. Далее мы рассмотрим различные типы задач машинного обучения, которые могут быть применены в аудите.
Задача классификации
В качестве примера проанализируемуем данные, взятые с сайта Kaggle. Возьмём на сайте подходящий для аудита пример, а именно Audit Data, датасет содержащий набор данных для классификации мошеннических фирм.
Так как в столбце имеются строковые значения, нужно его перекодировать.
А теперь разберём что сейчас произошло. Мы только что решили стандартную задачу классификации, обучили наши модели на исторических данных и теперь можем передавать им новые данные по фирмам, тогда наши модели предскажут, являются ли эти фирмы мошенническими. Мы использовали и сравнили несколько моделей, а именно:
· логистическая регрессия, предсказывающая вероятность принадлежности к определенному классу;
· решающие деревья, представляющие собой древовидную структуру решений, где каждый узел представляет тест на признак, а каждое ответвление соответствует возможному значению этого признака;
· случайный лес, представляющий собой несколько моделей решающих деревьев, где каждое дерево обучается на случайной предвыборке данных, а предсказание получается путем усреднения предсказаний всех деревьев;
· градиентный бустинг – ансамбль моделей, где новые модели добавляются последовательно и корректируют ошибки предыдущих моделей.
В итоге мы получили следующие показатели.
· Accuracy (точность): Это показатель, который измеряет долю правильно классифицированных образцов по отношению ко всем образцам. Формула для вычисления accuracy выглядит так: accuracy = (TP + TN) / (TP + TN + FP + FN), где TP (True Positive) – количество правильно предсказанных положительных классов, TN (True Negative) – количество правильно предсказанных отрицательных классов, FP (False Positive) – количество неправильно предсказанных положительных классов и FN (False Negative) – количество неправильно предсказанных отрицательных классов.
· Precision (точность): Это показатель, который измеряет долю правильно предсказанных положительных классов относительно всех классифицированных положительных образцов. Формула для вычисления precision выглядит так: precision = TP / (TP + FP).
· Recall (полнота): Это показатель, который измеряет долю правильно предсказанных положительных классов относительно всех фактически положительных образцов. Формула для вычисления recall выглядит так: recall = TP / (TP + FN).
· Specificity (специфичность): Это показатель, который измеряет долю правильно предсказанных отрицательных классов относительно всех фактически отрицательных образцов. Формула для вычисления specificity выглядит так: specificity = TN / (TN + FP).
· F1 score: Это гармоническое среднее между precision и recall. F1 score является показателем, который учитывает и точность, и полноту модели. Он предоставляет баланс между этими двумя метриками. F1 score вычисляется по следующей формуле: F1 score = 2 * (precision * recall) / (precision + recall).
Они являются важными для оценки производительности модели классификации и помогают понять, насколько хорошо модель справляется с предсказанием классов. В зависимости от задачи и контекста, некоторые показатели могут быть более важными, чем другие.
Представим полученные данные в виде таблицы.
Как мы можем заметить, в нашем примере модель логистической регрессии показала себя хуже, чем другие модели.
Задача регрессии
В аудите могут использоваться и другие типы задач машинного обучения. Рассмотрим задачу регрессии, её отличие от задачи классификации заключается в том, что её цель предсказать числовое значение, а не категориальное.
Итак с Kaggle возьмем датасет Salary Prediction Data, в нём содержится информация об опыте работы сотрудника и его зарплате. Обучим на его данных модель регрессии.
У модели регрессии так же свои метрики.
· Mean Squared Error, MSE (Среднеквадратичная ошибка): это наиболее распространенная метрика для задач регрессии. MSE измеряет среднюю квадратичную разницу между предсказанными значениями и фактическими значениями целевой переменной. Чем меньше значение MSE, тем лучше производительность модели.
· Mean Absolute Error, MAE (Средняя абсолютная ошибка): MAE измеряет среднюю абсолютную разницу между предсказанными значениями и фактическими значениями целевой переменной. MAE также предоставляет информацию о средней величине ошибки модели.
· Coefficient of Determination, R^2 (Коэффициент детерминации): R^2 измеряет пропорцию дисперсии зависимой переменной, которая может быть объяснена моделью. Значение R^2 находится в диапазоне от 0 до 1, где 1 означает, что модель идеально объясняет вариацию данных, а 0 означает, что модель не объясняет вариацию данных лучше, чем простое среднее значение.
В нашем случае эти значения получились следующими:
R^2 = 98.8169515729126 %
MAE = 2446.1723690465064
MSE = 3580.979237321345
Данная модель может в дальнейшем применяться для предсказания заработной платы сотрудника в зависимости от его стажа, но модель может работать и с более комплексными датасетами, содержали гораздо больше информации.
Задача кластеризации
Рассмотрим еще один тип задач машинного обучения, с которым может столкнуться аудитор, а именно задачу кластеризации, ведь может быть такое, что в работе нужно будет выявить группы, схожие по каким-либо характеристикам. Возвращаемся на Kaggle и берем датафрейм Credit Card Dataset, содержащий набор данных о кредитных картах и характеристиках клиентов, таких как пол, возраст, занятость, семейное положение и истории использования кредитной карты. Наша задача выявить группы клиентов схожего поведения и создать сегментацию на основе этих характеристик. Это может помочь аудиторам лучше понять своих клиентов и улучшить стратегии организации.
Как видно на рисунке наша модель разделила клиентов на 4 кластера. В аудите такое разделение может быть использовано для выявления необычных групп или кластеров клиентов, которые могут иметь потенциальные риски.
Использование компьютерного зрения
Компьютерное зрение открывает новые возможности для повышения точности аудиторской работы, её облегчения, а также повышения эффективности. Аудиторы используют компьютерное зрение для анализа фото, видео с камер, оно может помочь в определении типа документа, извлечении из него какой-либо информации, проверить на соответствие определенным стандартам.
Рассмотрим следующий пример: возьмем с Kaggle датасет Handwritten Signature Identification, в нём содержится набор изображений подписей, предоставленных различными людьми. Перед нами стоит задача верификации и идентификации подписей. То есть нам следует проверить является ли подпись подлинной для конкретного человека, а также нужно определить кто является автором подписи.
Загрузим данные с помощью DataGen и выполним некоторую предварительную обработку данных
Мы будем использовать модель MobileNetv3, предварительно обученную на
Начинаем обучение на 10 эпохахЭпоха (Epoch) – количество повторений циклов обучения для всей выборки данных
Визуализация потерь и точности.
Точность – процент правильных предсказаний модели.
Потери – расхождение между предсказанными и истинными значениями.
На данных графиках мы можем видеть, как изменяется точность и потери в зависимости от количества эпох, на их основании можно сделать вывод, что после обучения на 8 эпохах наша модель работает с максимальной точностью и минимальными потерями. Протестируем модель на случайном изображении из тестового набора.
Результат:
В итоге наша модель определила чья это подпись, что наглядно демонстрирует как компьютерное зрение может применяться в аудите.
Преимущества и риски, связанные с машинным обучением
Применение машинного обучения в аудите может иметь следующие преимущества:
+ Автоматизация и повышение эффективности: машинное обучение позволяет автоматизировать рутинные задачи аудита, такие как анализ больших объемов данных, обнаружение аномалий и классификация транзакций. Это может значительно ускорить процесс аудита и освободить аудиторов от монотонных задач.
+ Улучшение точности и качества: машинное обучение позволяет анализировать данные с точностью и скоростью, недоступными для человека. Алгоритмы машинного обучения могут обнаруживать скрытые закономерности и зависимости в данных, что способствует выявлению потенциальных ошибок, мошенничества и неправильных действий.
+ Улучшенное прогнозирование и предсказание: машинное обучение может помочь в прогнозировании будущих тенденций, рисков и результатов аудита на основе исторических данных и моделей. Это позволяет аудиторам принимать основанные на данных решения и предупреждать о потенциальных проблемах или рисках заранее.
Тем не менее, применение машинного обучения в аудите также сопряжено с некоторыми рисками:
- Неправильные результаты: некорректное обучение моделей машинного обучения или использование неподходящих алгоритмов может привести к неверным результатам и выводам. Неправильные предсказания или классификация могут повлечь за собой неправильные решения и потенциальные упущения в аудите.
- Неадекватные данные: качество и надежность результатов машинного обучения зависит от доступности и качества данных. Недостаточные или искаженные данные могут привести к неправильным выводам и искажению результатов анализа.
- Сложность интерпретации: некоторые модели машинного обучения, такие как нейронные сети или ансамбли моделей, могут быть сложными для интерпретации и объяснения результатов. Это может создать трудности в объяснении выводов аудиторской работы и прозрачности процесса.
- Зависимость от технической экспертизы: применение машинного обучения требует наличия специалистов по данным и машинному обучению в аудиторских командах. Недостаток необходимых знаний и навыков может ограничить возможности использования машинного обучения в аудите.
В целом, применение машинного обучения в аудите может представлять значительные преимущества, но требует осторожного подхода, правильного подбора моделей и алгоритмов, а также надлежащего учета рисков и нюансов, связанных с данными и интерпретацией результатов.
Итог
Подытожить можно так: ML – довольно перспективное направление, которое может значительно улучшить эффективность и точность аудиторской работы, но важно подходить к использованию ML с осторожностью, учитывая особенности каждой конкретной ситуации.