Лого на 91. НЕГ „Проф. Константин Гълъбов“

Избираем модул · Урок 1

Откъде идват данните в една организация

Базата от данни, логовете и файловете като източник за модел. Оперативни срещу аналитични данни и защо заявката е първата стъпка от всеки AI проект.

Тази година започваме от другия край

В 11. клас наборите бяха готови — load_iris, load_digits, — с чисти колони и попълнени етикети. В реална организация такова нещо не съществува. Данните живеят в база, създадена за съвсем друга цел: да обслужва ежедневната работа.

оперативна БДпоръчки, ученици, плащаниялоговекой какво е натисналфайлове и документиPDF, снимки, отчетивъншни услугиAPI, публични наборизаявка+ почистваненаборX и y
Първата стъпка на всеки проект е заявка, а не модел.

Оперативни срещу аналитични данни

Оперативни (OLTP)Аналитични (OLAP)
Целда работи системата днесда се разбере какво се е случило
Форманормализирани таблицишироки таблици с готови признаци
Заявкималки и честитежки и редки
Примерзапиши поръчкасреден оборот по месеци и градове
Кой ги пипаприложениетоанализатори и модели

Моделът иска втория вид, а разполагаме с първия. Пътят между тях е SQL — съединения, групиране и агрегации, които сте учили в модули 3 и 4. Оттам и днешният извод: за AI проект SQL е също толкова важен, колкото Python.

Не пускайте тежки заявки върху жива база

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

Един ред на пример

Каквато и да е задачата, наборът трябва да стигне до познатата форма от урок 3 в 11. клас: един ред = един пример, колони = признаци, една колона = етикет. Въпросът, който решава всичко, е какво точно е един пример.

Единица на анализа

Обектът, за който правим предсказание: един клиент, една поръчка, един ден, един ученик, едно съобщение. Различният избор дава напълно различен набор от една и съща база.

  • Ще напусне ли клиентът → един ред на клиент, признаци обобщени от всичките му поръчки.
  • Ще бъде ли върната поръчката → един ред на поръчка.
  • Колко ще продадем утре → един ред на ден.

Логовете — най-подценяваният източник

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

Внимание със сроковете

Логовете съдържат лични данни (кой, кога, откъде) и се пазят ограничено време. Проверявайте какво изобщо имате право да използвате — подробно в урок 6.

Първите въпроси към данните

  1. Какъв е периодът — от кога до кога има записи и има ли празнини?
  2. Колко реда има и колко от тях са годни?
  3. Има ли етикет изобщо, или трябва да се създаде?
  4. Кой е записал тези данни и с каква цел — оттам идват изкривяванията.
  5. Има ли промяна в системата по средата (нова версия, нови категории), която прави старите данни несравними?

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