Проверки качества данных и сводная статистика

Мониторинг машинного обучения на Python

Hakim Elakhrass

Co-founder and CEO of NannyML

Что такое проверки качества данных и сводная статистика?

На изображении показан рабочий процесс мониторинга с выделенным шагом проверки качества данных и сводной статистики в автоматизированном анализе первопричин.

  • Обнаружение пропущенных значений
  • Обнаружение неизвестных значений
  • Сумма, среднее, стандартное отклонение, медиана и количество строк
Мониторинг машинного обучения на Python

Обнаружение пропущенных значений

  • Уменьшение числа наблюдений в чанке
  • Потеря ценной информации
  • Ошибочные интерпретации и решения
# Instantiate the missing values calculator module
ms_calc = nannyml.MissingValuesCalculator(column_names=["Age"], normalize=True)

# Fit the calculator on the reference set
ms_calc.fit(reference)

# Calculate the rate of the missing values on the analysis set
ms_results = ms_calc.calculate(analysis)
ms_results.plot()
Мониторинг машинного обучения на Python

График пропущенных значений

График показывает результаты анализа пропущенных значений при параметре normalize, равном True и False.

Мониторинг машинного обучения на Python

Обнаружение неизвестных значений

  • Значения категориального признака, отсутствующие в референсном периоде
  • Рост числа неизвестных значений может снизить уверенность модели в отдельных областях
# Instantiate the unseen values calculator module
us_calc = nannyml.UnseenValuesCalculator(column_names=["Cabin"], normalize=False)
# Fit, calculate and plot the rate of the unseen values
us_calc.fit(reference)
us_results = us_calc.calculate(analysis)
us_results.plot()

На изображении показан график неизвестных значений с изменениями их количества.

Мониторинг машинного обучения на Python

Сводная статистика

  • Сумма: полезна для финансовых данных — позволяет рассчитать выручку или прибыль за период.
  • Среднее и стандартное отклонение: помогают при проверке дрейфа данных и объяснимости модели.
  • Медиана: устойчива к выбросам — удобна для признаков с большим числом экстремальных значений.
  • Количество строк: позволяет убедиться, что в каждом чанке достаточно данных.
sum_calc = nannyml.SummaryStatsSumCalculator(column_names=selected_columns)
avg_calc = nannyml.SummaryStatsAvgCalculator(column_names=selected_columns)
std_calc = nannyml.SummaryStatsStdCalculator(column_names=selected_columns)
med_calc = nannyml.SummaryStatsMedianCalculator(column_names=selected_columns)
rows_calc = nannyml.SummaryStatsRowCountCalculator(column_names=selected_columns)
Мониторинг машинного обучения на Python

Давайте потренируемся!

Мониторинг машинного обучения на Python

Preparing Video For Download...