Время прочтения: 2 мин.
Разметка датасета — дорогостоящий процесс, требующий ручного труда. Суть разметки заключается в проставлении признаков (категорий, классов) напротив каждой строки датасета.
Пример, есть датасет чатов:
- Сообщение | класс (позитивный, негативный, нейтральный)
- «Привет как дела?» | ?
- «Это лучшая машина на которой я ездил» | ?
- «Дела нормально.» | ?
- «Эта деталь сгнила!» | ?
Наша задача символы вопросов заменить на классы, которым, по нашему мнению, соответствуют высказывание – «позитивный», «негативный» или «нейтральный».
Для решения поставленной задачи существует очень удобная надстройка для jupyter notebook – PIGEON. Ссылка на git репозиторий автора разработки.
Итак, к делу:
!pip install pigeon-jupyter
import pandas as pd
from pigeon import annotate
annotations = annotate(
examples = [ 'Привет как дела?'
, 'Это лучшая машина на которой я ездил.'
, 'Дела нормально.'
, 'Эта деталь сгнила!'],
options=['позитивный', 'негативный','нейтральный']
)
Функций annotate библиотеки pigeon возвращает список кортежей, первый элемент кортежа является нашим X второй Y, который мы выбрали с помощью кнопок надстройки:
annotations
pd.DataFrame(annotations, columns=['Сообщение(x)','класс(y)'])
Это очень удобный и быстрый способ для разметки данных и подготовки валидационных выборок.
Результат можно представить в pandas.DataFrame и сохранить в csv/xls файл для дальнейшего использования.
Если вы знаете другие инструменты или методы разметки, просим поделиться в комментариях.
Ссылка на пример статьи в colab