@Sancho_Pansa

Как нужно собирать датасет для модели бинарной классификации?

Я хочу создать модель, которая бы выявляла посты из соцсетей на IT-тематику. Какой подход для этого нужно выбрать -
1) собрать как можно больше постов из соцсетей, в том числе на IT-тематику,
2) или собрать только посты на IT-тематику?

Если нужен первый подход, то в каком соотношении надо брать посты на IT-тематику и остальные?
  • Вопрос задан
  • 159 просмотров
Пригласить эксперта
Ответы на вопрос 2
Maksim_64
@Maksim_64
Data Analyst
Бинарная классификация, подразумевает два варианта пост на IT тематику (True) или (False). Соответственно, только первый вариант, если учебный дата сет не будет содержать разных постов, то обучаться будет не на чем.

Насчет пропорций, здесь интереснее. И так в реальности мы имеем куда более вероятное событие пост не IT чем IT. Но при создании модели нам нужно что бы наши пропорции были примерно равны или около того. Иначе мы будем иметь то что называется bias. У нас например в тренировочном сете значительно больше постов которые не IT и соответственно, мы уже имеем ПРЕДРАСПОЛОЖЕННОСТЬ. Что плохо. По этому изначально, для классификатора, не должно быть такого понятия, как НЕ IT пост более вероятен.

Это общее правило с которого могут быть ответвления, например, когда есть датасет в котором одного класса сильно больше делают еще одну выборку с весами (resampling), то есть выбирают не с равными вероятностями. И потом получают близкое к равное распределение.

В каких то случаях (редко) допускается и отклонения от этого правила, на уровне инженерных причин. Но стартовые позиции, как я описал выше.
Ответ написан
Комментировать
@rPman
Обязательно нужно собирать посты на ВСЕ тематики, точнее все, которые могут быть поданы на вход твоего алгоритма.

Если твоя модель не будет большой языковой, чтобы не тратить время зря, вычищай данные, например вычищай пунктуацию, чтобы после точки и запятой к примеру следовал один пробел (или вообще убери), выявляй строки кода и текста (в каком то смысле это ты и так будешь делать чтобы автоматизировать разметку большинства IT тематики, код на большинстве языков программирования формализуется очень хорошо и код для определения строки как код на языке программирования написать не сложно, хотя есть нюансы), скорее всего текст с кодом и так будет it тематикой, а значит сам код не нужно подавать в модель, но вот обрамляющий его текст лучше подать с пометкой - it.

p.s. модель llama, точнее openassistent 30b, неплохо читает новости и отвечает на вопросы, в т.ч. по категории (очень сложно составить правильный запрос), на десктопном процессоре 60 русскоязычных постов по ~7кб она читает примерно 4 часа. Так как модель прекрасно знакома с кодом, ответить на вопрос она сможет.

~/llama.cpp/main -t 4 -m /d/OpenAssistant/oasst-sft-6-llama-30b-22042023-q4_0.bin -n 64 --temp 0 -f prompt.txt
### Input:

Классификация
Как нужно собирать датасет для модели бинарной классификации?
Я хочу создать модель, которая бы выявляла посты из соцсетей на IT-тематику. Какой подход для этого нужно выбрать -
1) собрать как можно больше постов из соцсетей, в том числе на IT-тематику,
2) или собрать только посты на IT-тематику?
Если нужен первый подход, то в каком соотношении надо брать посты на IT-тематику и остальные?

### Question:

Тема этого сообщения IT или нет? ответь да или нет.

### Answer:

Да [end of text]
58 секунд
### Input:

Биолог Зоя Зорина о трактовках сознания, способности к самоузнаванию у дельфинов и экспериментах по выявлению сознания у животных
Сознание — одно из сложнейших проявлений психики человека, которое трактуют по-разному представители разных наук. До недавнего времени его рассматривали только как «высшую, свойственную лишь человеку форму отражения объективной действительности, способ его отношения к миру и самому себе… Сознание представляет собой единство психических процессов, активно участвующих в осмыслении человеком объективного мира и своего собственного бытия. Оно… неразрывно связано с языком» и «со способностью идеального воспроизведения действительности в мышлении» (БЭС, 1996). Есть и еще более отвлеченное представление о сознании как о явлении, не сводимом только к работе мозга, как о «со-знании», совместном знании нескольких индивидов. Вполне очевидно, что искать этот уровень сознания у животных не приходится, и считалось, что в процессе эволюции психики животные останавливаются на стадии интеллекта, а стадии сознания достигает только человек (Леонтьев, 1952).

### Question:

Тема этого сообщения IT или нет? ответь да или нет.

### Answer:

Нет [end of text]
119 секунд
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы