Data Science: 5 въпроса, които ни вълнуват
Може да ви прозвучи странно, но същността на Data Science се състои в точно 5 основни въпроса и техните отговори. Ето и въпросите:
- Дали дадено нещо е "А" или "Б";
- Дали дадено нещо е странно;
- Въпроси с количествен характер;
- Как е организирано дадено нещо;
- Какво да правите сега;
Разбира се, не трябва да разбираме тези въпроси буквално. Те по-скоро обобщават и извеждат принципи в компютърните науки. Отговорът на всеки един от тези въпроси представлява отделен набор/"семейство" от алгоритми.
1. Дали дадено нещо е "А" или "Б"?
Зад този привидно странен въпрос всъщност стои един от основополагащите принципи - този на двата (или повече) отговора. Наборът от алгоритми, които решават даден проблем чрез избиране измежду два отговора се наричат two class classification. Ето два примера за логическа конструкция, базирана на принципа "А" или "Б"?":
- Въпрос: Тази гума ще издържи ли следващите 1 000 км? Възможни отговори: "Да" или "Не".
- Въпрос: Кое би довело до увеличаване на броя клиенти? Възможни отговори: "Ваучер за 5$" или "25% отстъпка"?
Разбира се, въпросът може да има повече от два отговора. В този случай вече говорим за multiclass classification и броят на възможните отговорите варира от три до плюс безкрайност. При мултиклас класифициране системата избира най-вероятния отговор.
2. "Дали дадено нещо е странно" или алгоритми за засичане на аномалии.
Следващият принцип, който ще изведем чрез въпрос, се състои в това дали дадено нещо е странно, дали е изключение или е част от тенденция. Или казано накратко "Това странно ли е?". На този въпрос се отговаря с набор от алгоритми, наречени "anomaly detection". Тяхната работа е да изследват даден проблем за тенденция и изключения от тази тенденция (аномалии). Пример от ежедневието: ако имате кредитна карта, с която да извършвате разплащания при покупки в магазини, компанията-собственик на кредитната карта анализира вашите покупателни навици /стоки, магазини и т.н./ и могат да използват анализираната информация, за да ви предпазят от измама (като например да ви извести, ако извършвате покупка от магазин, от който обичайно не пазарувате или се извършва закупуване на стока с доста висока цена).
Друг пример - ако автомобилът ви е с манометър може в определен момент да си зададете въпроса: "Този уред дали измерва точно?". Ако пък сърфирате по-често из интернет може би бихте искали да знаете дали дадено изскачащо съобщение е безопасно за вас. В този случай алгоритъма за засичане на аномалия ще маркира неочакваните или необичайни събития или поведение, а също така може и да ви даде идеи къде да погледнете за даден проблем.
3. Въпроси с количествен характер.
Посредством алгоритми компютърът може да предвиди отговора на въпроси от типа на "Колко" т.е. въпроси с количествен характер. Наборът алгоритми, които извършват това действие се наричат регресионни, а метода - регресия.
4. Как е организирано дадено нещо?
Последните два въпроса са малко по-сложни. Нека започнем с въпроса "Как е организирано дадено нещо?". Понякога искате да разберете структурата на даден набор от данни - как те са организирани, по какъв начин, какъв шаблон следват и т.н. Има редица начини да разкриете структурата на дадена база данни. Един от най-популярните подходи за тази цел е т.нар. "clustering". При този подход се извършва разделяне и обособяване на данните в групи (clumps), което групиране цели по-лесна интерпретация. Clustering подхода не цели да ви даде директен правилен отговор, а по-скоро да ви помогне да извършите анализ на определен тип данни, например:
- Кой тип зрители какви типове филми харесват?
- Кои модели принтери имат сходни проблеми и дефекти?
Както виждате това са проблеми, които нямат даден правилен отговор по подразбиране. Разбирайки как данните са организирани, вие можете да разбирате (и дори предвиждате) поведения или събития.
5. "Какво да правя сега?" - употреба на reinforcement learning алгоритми
И последния въпрос - "Какво да правя сега?". Тук също става въпрос за отделен набор/семейство алгоритми, които се наричат "reinforcement learning". Те са вдъхновени от научни изследвания върху мозъците на плъхове и хора и по-специално как те реагират на наказание и възнаграждение. Тези алгоритми "учат" от изходите на база резултата решават какво да бъде следващото им действие.
Обикновено метода на "reinforcement learning" е добър за автоматизирани системи, които трябва да извършват множество малки решения, без човешка намеса в този процес. Специфичното при принципа на този метод е, че той винаги отговаря на даден проблем с въпрос, който касае действия, които трябва да се предприемат - обикновено от машина или робот. Примери:
- "Ако аз съм система за температурен контрол на къща: Да настроя температурата или да я оставя както е?";
- "Ако аз съм автономен автомобил: На жълта светлина (при светофар) да натисна спирачката или да ускоря?";
От тези два примерни въпроса можем да направим извод, че при reinforcement learning подхода системата събира данни в процеса на работа, обработва ги и предприема най-вероятното решение.
Ако искате да научите повече за Data Science, можете да запишете за предстоящия курс oт ТУК, но побързайте - остават само 4 дни до старта!
- Дали дадено нещо е "А" или "Б";
- Дали дадено нещо е странно;
- Въпроси с количествен характер;
- Как е организирано дадено нещо;
- Какво да правите сега;
Разбира се, не трябва да разбираме тези въпроси буквално. Те по-скоро обобщават и извеждат принципи в компютърните науки. Отговорът на всеки един от тези въпроси представлява отделен набор/"семейство" от алгоритми.
1. Дали дадено нещо е "А" или "Б"?
Зад този привидно странен въпрос всъщност стои един от основополагащите принципи - този на двата (или повече) отговора. Наборът от алгоритми, които решават даден проблем чрез избиране измежду два отговора се наричат two class classification. Ето два примера за логическа конструкция, базирана на принципа "А" или "Б"?":
- Въпрос: Тази гума ще издържи ли следващите 1 000 км? Възможни отговори: "Да" или "Не".
- Въпрос: Кое би довело до увеличаване на броя клиенти? Възможни отговори: "Ваучер за 5$" или "25% отстъпка"?
Разбира се, въпросът може да има повече от два отговора. В този случай вече говорим за multiclass classification и броят на възможните отговорите варира от три до плюс безкрайност. При мултиклас класифициране системата избира най-вероятния отговор.
2. "Дали дадено нещо е странно" или алгоритми за засичане на аномалии.
Следващият принцип, който ще изведем чрез въпрос, се състои в това дали дадено нещо е странно, дали е изключение или е част от тенденция. Или казано накратко "Това странно ли е?". На този въпрос се отговаря с набор от алгоритми, наречени "anomaly detection". Тяхната работа е да изследват даден проблем за тенденция и изключения от тази тенденция (аномалии). Пример от ежедневието: ако имате кредитна карта, с която да извършвате разплащания при покупки в магазини, компанията-собственик на кредитната карта анализира вашите покупателни навици /стоки, магазини и т.н./ и могат да използват анализираната информация, за да ви предпазят от измама (като например да ви извести, ако извършвате покупка от магазин, от който обичайно не пазарувате или се извършва закупуване на стока с доста висока цена).
Друг пример - ако автомобилът ви е с манометър може в определен момент да си зададете въпроса: "Този уред дали измерва точно?". Ако пък сърфирате по-често из интернет може би бихте искали да знаете дали дадено изскачащо съобщение е безопасно за вас. В този случай алгоритъма за засичане на аномалия ще маркира неочакваните или необичайни събития или поведение, а също така може и да ви даде идеи къде да погледнете за даден проблем.
3. Въпроси с количествен характер.
Посредством алгоритми компютърът може да предвиди отговора на въпроси от типа на "Колко" т.е. въпроси с количествен характер. Наборът алгоритми, които извършват това действие се наричат регресионни, а метода - регресия.
4. Как е организирано дадено нещо?
Последните два въпроса са малко по-сложни. Нека започнем с въпроса "Как е организирано дадено нещо?". Понякога искате да разберете структурата на даден набор от данни - как те са организирани, по какъв начин, какъв шаблон следват и т.н. Има редица начини да разкриете структурата на дадена база данни. Един от най-популярните подходи за тази цел е т.нар. "clustering". При този подход се извършва разделяне и обособяване на данните в групи (clumps), което групиране цели по-лесна интерпретация. Clustering подхода не цели да ви даде директен правилен отговор, а по-скоро да ви помогне да извършите анализ на определен тип данни, например:
- Кой тип зрители какви типове филми харесват?
- Кои модели принтери имат сходни проблеми и дефекти?
Както виждате това са проблеми, които нямат даден правилен отговор по подразбиране. Разбирайки как данните са организирани, вие можете да разбирате (и дори предвиждате) поведения или събития.
5. "Какво да правя сега?" - употреба на reinforcement learning алгоритми
И последния въпрос - "Какво да правя сега?". Тук също става въпрос за отделен набор/семейство алгоритми, които се наричат "reinforcement learning". Те са вдъхновени от научни изследвания върху мозъците на плъхове и хора и по-специално как те реагират на наказание и възнаграждение. Тези алгоритми "учат" от изходите на база резултата решават какво да бъде следващото им действие.
Обикновено метода на "reinforcement learning" е добър за автоматизирани системи, които трябва да извършват множество малки решения, без човешка намеса в този процес. Специфичното при принципа на този метод е, че той винаги отговаря на даден проблем с въпрос, който касае действия, които трябва да се предприемат - обикновено от машина или робот. Примери:
- "Ако аз съм система за температурен контрол на къща: Да настроя температурата или да я оставя както е?";
- "Ако аз съм автономен автомобил: На жълта светлина (при светофар) да натисна спирачката или да ускоря?";
От тези два примерни въпроса можем да направим извод, че при reinforcement learning подхода системата събира данни в процеса на работа, обработва ги и предприема най-вероятното решение.
Ако искате да научите повече за Data Science, можете да запишете за предстоящия курс oт ТУК, но побързайте - остават само 4 дни до старта!