Telegram Group & Telegram Channel
#statistics

Ловушка фиктивных переменных.

Давайте вспомним, что такое фиктивная переменная (dummy variable)? Вещь простая, но очень надежная. Предположим, у нас есть персонажи из анекдота - русский, немец и американец. Как нам закодировать их, если у нас есть некоторые табличные данные? Есть разные варианты, конечно. Но самый простой - это объявить 1 для наличия категориального признака и 0 для его отсутствия.

Но тут нас и поджидает ловушка джокера фиктивных переменных. Если мы закодируем каждый из признаков 1 или 0 (то есть, создадим 3 столбца), то получим чистую мультиколлинеарность. А как мы знаем, иметь ее в данных - это дело нехорошее.

Посмотрим на примере. Предположим, у нас есть немножечко данных такого вида:
alcogol | nation
0.5 | русский
0.3 | немец
0.1 | американец
0.7 | русский
0.1 | немец
0.2 | американец

Если закодируем переменную nation тремя столбцами, то получим такой вид:
1 | 0 | 0
0 | 1 | 0
0 | 0 | 1
1 | 0 | 0
0 | 1 | 0
0 | 0 | 1

А это значит, что у нас сумма этих столбцов всегда будет равна единице. Упс, получаем чистую мультиколлинеарность.
Потому что, если мы будем именовать значения в столбцах за Ai, Bi, Ci, то легко выразим, например, Ci в виде: Ci = 1 - Ai - Bi.

И что же делать?
Все просто - вместо k столбцов под каждую категорию, мы сделаем k-1 столбцов. Проблема решена.
Например, в нашем примере получим, что 0 и 0 для русского и немца означают американца (а все оттого, что у нас всего 3 категории, так что не являясь немцем или русским, человеку остается только быть американцем).

В принципе, это не особо большая проблема для всех сколько-нибудь адекватных статистических пакетов. Но если вы решите самостоятельно делать перевод категориальных значений в фиктивные переменные, помните о такой вот загвоздке.



group-telegram.com/artificial_stupid/331
Create:
Last Update:

#statistics

Ловушка фиктивных переменных.

Давайте вспомним, что такое фиктивная переменная (dummy variable)? Вещь простая, но очень надежная. Предположим, у нас есть персонажи из анекдота - русский, немец и американец. Как нам закодировать их, если у нас есть некоторые табличные данные? Есть разные варианты, конечно. Но самый простой - это объявить 1 для наличия категориального признака и 0 для его отсутствия.

Но тут нас и поджидает ловушка джокера фиктивных переменных. Если мы закодируем каждый из признаков 1 или 0 (то есть, создадим 3 столбца), то получим чистую мультиколлинеарность. А как мы знаем, иметь ее в данных - это дело нехорошее.

Посмотрим на примере. Предположим, у нас есть немножечко данных такого вида:
alcogol | nation
0.5 | русский
0.3 | немец
0.1 | американец
0.7 | русский
0.1 | немец
0.2 | американец

Если закодируем переменную nation тремя столбцами, то получим такой вид:
1 | 0 | 0
0 | 1 | 0
0 | 0 | 1
1 | 0 | 0
0 | 1 | 0
0 | 0 | 1

А это значит, что у нас сумма этих столбцов всегда будет равна единице. Упс, получаем чистую мультиколлинеарность.
Потому что, если мы будем именовать значения в столбцах за Ai, Bi, Ci, то легко выразим, например, Ci в виде: Ci = 1 - Ai - Bi.

И что же делать?
Все просто - вместо k столбцов под каждую категорию, мы сделаем k-1 столбцов. Проблема решена.
Например, в нашем примере получим, что 0 и 0 для русского и немца означают американца (а все оттого, что у нас всего 3 категории, так что не являясь немцем или русским, человеку остается только быть американцем).

В принципе, это не особо большая проблема для всех сколько-нибудь адекватных статистических пакетов. Но если вы решите самостоятельно делать перевод категориальных значений в фиктивные переменные, помните о такой вот загвоздке.

BY Artificial stupidity


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/artificial_stupid/331

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

"Russians are really disconnected from the reality of what happening to their country," Andrey said. "So Telegram has become essential for understanding what's going on to the Russian-speaking world." A Russian Telegram channel with over 700,000 followers is spreading disinformation about Russia's invasion of Ukraine under the guise of providing "objective information" and fact-checking fake news. Its influence extends beyond the platform, with major Russian publications, government officials, and journalists citing the page's posts. "Someone posing as a Ukrainian citizen just joins the chat and starts spreading misinformation, or gathers data, like the location of shelters," Tsekhanovska said, noting how false messages have urged Ukrainians to turn off their phones at a specific time of night, citing cybersafety. But because group chats and the channel features are not end-to-end encrypted, Galperin said user privacy is potentially under threat. At the start of 2018, the company attempted to launch an Initial Coin Offering (ICO) which would enable it to enable payments (and earn the cash that comes from doing so). The initial signals were promising, especially given Telegram’s user base is already fairly crypto-savvy. It raised an initial tranche of cash – worth more than a billion dollars – to help develop the coin before opening sales to the public. Unfortunately, third-party sales of coins bought in those initial fundraising rounds raised the ire of the SEC, which brought the hammer down on the whole operation. In 2020, officials ordered Telegram to pay a fine of $18.5 million and hand back much of the cash that it had raised.
from us


Telegram Artificial stupidity
FROM American