НачатьНачать бесплатно

Проверка соотношения мошеннических и легитимных транзакций

В этой главе вы будете работать с файлом creditcard_sampledata.csv — набором данных о транзакциях по кредитным картам. Мошеннические операции, к счастью, составляют ничтожно малую долю от общего числа транзакций.

Однако алгоритмы машинного обучения, как правило, работают лучше всего тогда, когда классы в наборе данных представлены примерно в равных пропорциях. Если случаев мошенничества мало, то и данных для обучения распознаванию таких случаев почти нет. Эта проблема называется дисбалансом классов и является одним из главных препятствий при обнаружении мошенничества.

Давайте изучим этот набор данных и рассмотрим проблему дисбаланса классов на практике.

Это упражнение является частью курса

Обнаружение мошенничества на Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте pandas под псевдонимом pd и загрузите данные о транзакциях по кредитным картам в переменную df. Это уже сделано за вас.
  • Используйте .info(), чтобы вывести информацию о df.
  • Используйте .value_counts(), чтобы получить количество мошеннических и легитимных транзакций в столбце 'Class'. Сохраните результат в переменную occ.
  • Вычислите долю мошеннических транзакций относительно общего числа транзакций в наборе данных.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Import pandas and read csv
import pandas as pd
df = pd.read_csv("creditcard_data.csv")

# Explore the features available in your dataframe
print(df.____)

# Count the occurrences of fraud and no fraud and print them
occ = df['____'].____()
print(occ)

# Print the ratio of fraud cases
print(occ / ____)
Редактировать и запускать код