Прогнозуйте найкращий час дзвінка


10

У мене є набір даних, що включає набір клієнтів у різних містах Каліфорнії, час виклику для кожного клієнта та стан виклику (Правда, якщо клієнт відповідає на дзвінок, і Неправильно, якщо клієнт не відповідає).

Я повинен знайти відповідний час дзвінків для майбутніх клієнтів таким, щоб ймовірність відповісти на дзвінок висока. Отже, яка найкраща стратегія цієї проблеми? Чи слід розглядати це як проблему класифікації, які години (0,1,2, ... 23) є класами? Чи слід розглядати це як регресійне завдання, час якого є суцільною змінною? Як я можу переконатися, що ймовірність відповіді на дзвінок буде високою?

Будь-яка допомога буде вдячна. Також було б чудово, якби ви скерували мене до подібних проблем.

Нижче наведено короткий знімок даних.


Шон Оуен, як пішло завдання? Зараз я намагаюся вирішити подібне питання і хотів би почути ваш досвід - не так багато ресурсів для цієї теми в Інтернеті. Спасибі заздалегідь!
Домініка

Відповіді:


5

Насправді у вас можуть виникнути проблеми, якщо моделювати це як проблему регресії без відповідного перетворення. Наприклад, ми знаємо, що більшість дзвінків, ймовірно, відповідають у денний час, а менше - у нічний час та вранці. Лінійна регресія матиме труднощі, оскільки зв'язок, ймовірно, криволінійний, а не лінійний. З цієї ж причини трактувати це як завдання класифікації з логістичною регресією також було б проблематично.

Як пропонують інші респонденти, перекласифікація даних у часові періоди допоможе, і я б запропонував спершу спробувати щось на кшталт дерева рішень чи випадкового лісу.

Зважаючи на все, це може бути випадком простої описової статистики. Якщо ви плануєте пропорцію відповідей на дзвінки за часом доби (розділене на місто чи будь-яку іншу демографічну групу), чи є чіткий найкращий час? Якщо так, навіщо ускладнювати речі з моделлю?


1

Ви можете спробувати наступне:

  1. Розділіть день на різні частини - рано-вранці, вранці, полудні, вдень, ввечері, пізно ввечері, вночі тощо.
  2. Призначте часові межі кожній частині дня, наприклад, полудень може бути від 12 до 13 години.
  3. Створіть 3 нові ярлики - «частина дня, щоб зателефонувати замовнику», для кожного позитивного випадку (статус виклику = вірно) присвоїти йому відповідну мітку (вранці / полудні / вечорі). Ці ярлики будуть у форматі, який закодований у гарячій формі, наприклад, preference_morning = 0/1, предпочитайте_день, віддайте перевагу_вечір тощо.
  4. Побудуйте 3 моделі, щоб передбачити, чи ведучий віддає перевагу ранній / полудень / або вечірній час дня, щоб дзвінок був успішним.

Крім того, я рекомендую додавати додаткові функції, такі як професія, стать та ін., Оскільки функції, перелічені в таблиці (місто тощо), занадто неоднозначні і не дають багато інформації для розрізнення серед клієнтів.

ВИДАЛЕНО за пропозицією в коментарях:

При використанні моделі кожен потенційний клієнт класифікується як prefers_morning = так / ні, prefers_noon = так / ні та prefers_evening = так / ні. Залежно від часу доби, наприклад, зранку, агент (або програмне забезпечення) кол-центру може забрати та виклики телефонів, класифіковані в ранковому наборі налаштувань. Коли настає полудень, програмне забезпечення для дзвінків підбирається із списку бажаних опівдні тощо.


@ sandeep-s-sandhu Це простий спосіб перетворення проблеми в проблему класифікації науки. Але здається, що такий підхід може мати деякі недоліки: 1. Інформація про етикетки включає лише позитивний випадок, втрата інформації негативного випадку 2. Клієнт може мати лише одну з етикетки. На практиці у замовника може бути більше однієї етикетки (тобто я вважаю за краще, щоб люди дзвонили мені пізно ввечері чи вночі.) Як ти гадаєш?
nkhuyu

@nkhuyu, 1) ярлик також включає негативний регістр. Я думаю, ви неправильно зрозуміли твердження "Створіть нову мітку -" частина дня, щоб зателефонувати замовнику ", для кожного позитивного випадку (статус виклику = вірно)". Цей крок має на меті створити додаткову мітку, оригінальна мітка того, чи був виклик успішним чи ні, залишається таким, який є. 2) Так, ви праві, відредагували відповідь, щоб це відобразити.
Сандіп С. Сандху

@ sandeep-s-sabdhu Дякую за відповідь. Так, я це неправильно зрозумів. ДОБРЕ. Тоді у вас будуть дві мітки (статус дзвінка, ваша нова мітка). Тоді як можна вирішити цю проблему? Це не звичайна проблема класифікації.
nkhuyu

@nkhuyu, дякую, що зауважив це, я зараз відредагував та уточнив це на кроці №4. Кожна з трьох моделей дасть набір потенційних клієнтів, які будуть вибирати дзвінок у той конкретний час доби, колл-центр використовує це для визначення пріоритетності своїх дзвінків.
Сандіп С. Сандху

1
Крок 1 супроводжується кроком 3, і я запропонував їм створити відповідні мітки для тренувань. Основний запит був - "я повинен знайти відповідний час дзвінка ...". Залежить ОП вирішити, чи повинні вони бути вранці / полудні / ввечері чи більш деталізованими, наприклад, за годиною.
Сандіп С. Сандху

0

Я б застосував логістичну регресію - вам знадобиться зразок, де вони не взяли. Тоді я б ставився до години як до сезонного регресора манекенів (23 години - як фіктивних змінних, і дозволити одному перетікати на перехоплення).

Якщо ви не трактуєте це як сезонного регресора манекена, вам доведеться здійснити якусь трансформацію, оскільки відносини не будуть лінійними.

Хтось раніше пропонував замінити середину дня та ін. Як категоричну змінну. Це погана ідея, оскільки у вас є деталі, і ви там втрачаєте деталі. Це матиме аналогічний ефект із використанням оптимального бінінгу, щоб зробити взаємозв'язок лінійним, але я все одно не думаю, що це спрацює. Спробуйте сезонні регресивні манекени.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.