Тайните на науката за данните

Ръководство за работа с липсващи стойности в Data Science

Кога да използвате импутация и интерполация

Липсващите стойности са ахилесовата пета за специалиста по данни. Ако не се третира правилно, целият анализ ще бъде безполезен и ще предостави подвеждащи резултати, които потенциално биха могли да навредят на заинтересованите страни в бизнеса.

Типове липсващи данни:

D.B Rubin (1976) класифицира проблемите с липсващи данни в три категории. В неговата теория всяка точка от данни има известна вероятност да липсва. Процесът, който управлява тези вероятности, се нарича „механизъм за липсващи данни“ или „механизъм за реакция“. Моделът за процеса се нарича „модел на липсващи данни“ или „модел на отговор“.

Разграничението на Rubin определя условията, при които методът за обработка на липсващи данни може да предостави валидни статистически заключения.

  • Липсва напълно на случаен принцип (MCAR)

Ако вероятността да липсват е една и съща за всички случаи, тогава се казва, че данните липсват напълно на случаен принцип (MCAR). Това на практика означава, че причините за липсващите данни не са свързани с данните. Безопасно е да пренебрегнете много от сложностите, които възникват поради липсващите данни, с изключение на очевидната загуба на информация. Повечето прости корекции работят само при ограничителното и често нереалистично предположение за MCAR.

Пример: Оценете брутния годишен доход на домакинство в рамките на определена популация, който получавате чрез въпросници. В случая на MCAR липсата е напълно случайна, сякаш някои въпросници са били изгубени по погрешка.

Произволно липсващи (MAR)

Ако вероятността за липса е една и съща само в рамките на групи, определени от наблюдаваните данни, тогава данните липсват на случаен принцип (MAR). Той е по-общ и по-реалистичен от MCAR. Съвременните методи за липсващи данни обикновено започват от допускането на MAR.

Пример: Да предположим, че липсва информация за доходите на домакинството. В случая на MAR липсата е произволна в рамките на подгрупи от други наблюдавани променливи. Например, да предположим, че също сте събрали данни за професията на всеки субект във въпросника и заключите, че мениджърите, ВИП лицата и т.н. е по-вероятно да не споделят доходите си, тогава в рамките на подгрупите на професията липсата е случайна.

  • Не липсва на случаен принцип (NMAR)

Ако нито MCAR, нито MAR са валидни, тогава говорим за неслучайно липсване (MNAR). В литературата може да се намери и терминът NMAR (неслучайно липсва) за същото понятие. MNAR означава, че вероятността от липса варира по причини, които не са ни известни. MNAR включва възможността скалата да генерира повече липсващи стойности за по-тежките обекти (както по-горе), ситуация, която може да бъде трудна за разпознаване и справяне. Пример за MNAR в изследването на общественото мнение възниква, ако тези с по-слаби мнения отговарят по-рядко. MNAR е най-сложният случай. Стратегиите за работа с MNAR са да се намерят повече данни за причините за липсата или да се извършат анализи „какво ако“, за да се види колко чувствителни са резултатите при различни сценарии.

Пример: В случай на MNAR, когато причината за липсата зависи от самите липсващи стойности. Да предположим например, че хората не искат да споделят доходите си, тъй като са по-малко и се срамуват от това.

Начини за обработка на липсващи стойности

Когато става въпрос за обработка на липсващи стойности, можете да изберете лесния или професионалния начин.

Лесният начин:

  • Игнориране на кортежи с липсващи стойности:Този подход е подходящ само когато наборът от данни е доста голям и в един кортеж липсват множество стойности.

Опция е само ако кортежите, съдържащи липсващи стойности, са около 2% или по-малко. Работи с MCAR.

  • Изтриване на липсващи стойности:Идеално само ако можете да си позволите да загубите малко данни.

Опция е само ако броят на липсващите стойности е 2% от целия набор от данни или по-малко. Не използвайте това като първи подход.

  • Оставете го на алгоритъма: Някои алгоритми могат да вземат предвид липсващите стойности и да научат най-добрите стойности на импутация за липсващите данни въз основа на намаляването на загубите при обучение (т.е. XGBoost). Някои други имат опцията просто да ги игнорират (т.е. LightGBM — use_missing=false). Други алгоритми обаче извеждат грешка относно липсващите стойности (т.е. Scikit learn — LinearRegression).

Предлага се само ако липсващите стойности са около 5% или по-малко. Работи с MCAR.

Професионалният начин:

Недостатъкът на изпускането на липсващи стойности е, че губите целия ред само за няколкото липсващи стойности. Това са много ценни данни. Така че вместо да изпускате липсващите стойности или дори да ги игнорирате в случай на кортежи, опитайте да попълните липсващите стойности с добре изчислена оценка. Професионалистите използват два основни метода за изчисляване на липсващи стойности. Те са импутация и интерполация.

Вменяване

Средната стойност или медианата на другите променливи в набор от данни. Връзката между данните не трябва да е линейна.

Видове импутация

Забележка: Вграденият набор от данни MTcars се използва за демонстриране на всеки метод.

Лесни импутации

Средно/медианно импутиране, известно още като импутиране на постоянни стойности

Изчислете средната стойност на наблюдаваните стойности за променливата за всички индивиди, които не липсват. Има предимството да поддържа същата средна стойност и същите размери на извадката.

Предимства:

  • Бързо и лесно
  • Идеален за малки набори от числени данни

Недостатъци:

  • Не отчита корелациите между характеристиките. Работи само на ниво колона.
  • Ще даде лоши резултати за кодирани категорични характеристики (НЕ го използвайте за категориални характеристики).
  • Не много точно.
  • Не отчита несигурността в импутациите.

Най-често (стойности) импутиране

Най-честоедруга статистическа стратегия за приписване на липсващи стойности и работи с категорични характеристики (низове или числени представяния), като заменя липсващите данни с най-честите стойности във всяка колона.

Предимства:

  • Работи добре с категорични характеристики.

Недостатъци:

  • Той също така не взема предвид корелациите между характеристиките.
  • Може да въведе пристрастие в данните.

Нулеви импутации

Той замества липсващите стойности с нула или всяка постоянна стойност, която посочите.

Идеален за случаите, когато нулевата стойност не добавя стойност към вашия анализ, но изисква цяло число, за да се получат резултати.

Междинни импутации

Вменяване на гореща колода

Произволно избрана стойност от индивид в извадката, който има подобни стойности на други променливи. С други думи, намерете всички извадкови субекти, които са сходни по други променливи, след което произволно изберете една от техните стойности на липсващата променлива.

За добър резултат винаги променяйте стойността за „начални стойности“ на нещо различно от 0.

Предимства:

  • Ограничен само до възможни стойности
  • Случайният компонент добавя известна променливост. Това е важно за точни стандартни грешки.

Cold Deck импутация

Систематично избрана стойност от индивид, който има подобни стойности на други променливи. Това е подобно на Hot Deck в повечето отношения, но премахва произволната вариация. Просто сменете

Като поддържаме „първоначалните стойности“ на 5, ние избягваме произволността.

Регресионно импутиране

Прогнозната стойност, получена чрез регресия на липсващата променлива върху други променливи. Така че вместо просто да вземете средната стойност, вие вземате предвидената стойност въз основа на други променливи. Това запазва връзките между променливите, включени в модела на импутиране, но не и променливостта около прогнозираните стойности.

Импутиране на стохастична регресия

Прогнозната стойност от регресия плюс произволна остатъчна стойност. Това има всички предимства на регресионното импутиране, но добавя предимствата на произволния компонент.

Импутация с помощта на k-NN:

Най-близките съседи k е алгоритъм, който се използва за проста класификация. Алгоритъмът използва „сходство на характеристиките“, за да предвиди стойностите на всички нови точки от данни. Това може да бъде много полезно при правене на прогнози за липсващите стойности чрез намиране на най-близките съседи на k до наблюдението с липсващи данни и след това импутирането им въз основа на нелипсващите стойности в околността.

Процесът е както следва: Основна средна стойност -› KDTree -› изчисляване на най-близките съседи (NN) -› Претеглена средна стойност.

Плюсове:

  • Може да бъде много по-точен от средната стойност, медианата или най-честите методи за условно изчисляване (зависи от набора от данни).

Недостатъци:

  • Изчислително скъпо. KNN работи, като съхранява целия набор от данни за обучение в паметта.
  • K-NN е доста чувствителен към отклонения в данните.

Импутиране с помощта на многовариантно импутиране чрез верижно уравнение (MICE)

Този тип импутиране работи чрез попълване на липсващите данни многократно. Множеството импутации (MI) са много по-добри от еднократно импутиране, тъй като измерва несигурността на липсващите стойности по по-добър начин. Подходът на верижните уравнения също е много гъвкав и може да обработва различни променливи от различни типове данни (т.е. непрекъснати или двоични), както и сложности като граници или модели на пропускане на анкети.

Кога да използвате импутация или интерполация:

Импутация: Когато ви е необходима средна стойност или медиана на набор от стойности.

Например: Ако има липсващи стойности в набор от данни от оценки, получени от учениците, можете да примените липсващите стойности със средната стойност на оценките на другите ученици.

Интерполация: Когато имате точки от данни с линейна зависимост.

Напр.: Диаграма на растежа на здраво дете. Детето ще расте по-високо с всяка изминала година, докато навърши 16 години. Всички липсващи стойности по тази диаграма на растеж ще бъдат част от права линия, така че липсващите стойности могат да бъдат интерполирани.

Свържете се с мен:

Facebook, Twitter, Quora, Youtube и Linkedin. #AI