Единици
1. Вовед во вештачката интелигенција во науката за податоци и аналитика: Работен тек, улоги, граници, валидација и етика 2. Собирање податоци и разбирање на изворите: шема, земање примероци, квалитет и свесност за истекување 3. Чистење и претходна обработка на податоци: Недостасува вредност, оддалеченост и конверзија на типови 4. Истражувачка анализа на податоци (EDA): дистрибуции, врски и првични сознанија 5. Инженерство на карактеристики: генерирање варијанти, кодирање, скалирање и избегнување истекување 6. Изградба на модел: дефиниција на проблем, избор на алгоритам и поделба на обука/тест 7. Евалуација на моделот: метрика, вкрстена валидација и екстремно учење 8. Визуелизација и раскажување приказни: точна графика, искрена графика 9. Генерирање кодови: Анализа со помош на AI со Python (панди) и SQL 10. Протекување податоци и репродуктивност: Тивки катастрофи и дисциплина 11. Фондација MLOps, етика, приватност и одговорна анализа
Единица 2 / 11

Собирање податоци и разбирање на изворите: шема, земање примероци, квалитет и свесност за истекување

Добивки:

  • Способност да се препознаат различни извори на податоци (база на податоци, API, датотека, веб-стружење) и стапици на секој и правилно да се разбере шемата
  • Способност да се изврши повторливо земање примероци со проценка дали примерокот ја претставува популацијата и пристрасноста за селекција
  • Способност да се елиминира истекувањето на податоци во фазата на собирање и да се запазат правните/етичките граници со поставување на прашањето „Дали ќе го имам во моментот на предвидување“ во секоја колона?

Секоја анализа е добра како и квалитетот на податоците што ги собирате. Дури и најнапредниот модел во светот ќе произведе несигурни резултати ако работи со податоци што се собрани погрешно, пристрасно земени примероци или содржат информации за иднината. Во компјутерската наука, овој принцип е сумиран како „ѓубре внатре, ѓубре надвор“ (ѓубре внатре, ѓубре надвор). Во оваа единица, ќе ја покриеме фазата на собирање податоци: разбирање на изворот, земање примероци, поставување прашања за квалитет и предупредување за ризикот од истекување на податоци од првиот ден. Вештачката интелигенција е моќна помош во оваа фаза; Пишува SQL барање, го сумира документот API, подготвува договор за податоци. Но, човечкото суштество е тој што одлучува какви податоци ќе соберете и дали тие податоци ве претставуваат.

Запознавање со изворите на податоци

Податоците доаѓаат од различни места и секој извор има свои стапици. Базата на податоци (структурирани податоци зачувани во табели, обично побарани со SQL) е најчестиот извор; Тој е сигурен, но неопходно е добро да се разбере неговата шема. API (Application Programming Interface) обезбедува податоци во живо, но носи ризик од ограничувања на брзината и промени во форматот. Датотеките (CSV, Excel, JSON) се флексибилни, но склони кон недоследност на форматот. Веб-стружењето е моќно, но има законски и етички ограничувања; Не секоја локација може да се изгребе.

Внимание: За гребење на веб и автоматско собирање податоци, почитувајте ги условите за користење на страницата, датотеката robots.txt и KVKK/GDPR. Неовластено собирање податоци создава законска одговорност. Во контекст на безбедноста на информациите, користете алатки за собирање податоци само за системи за кои сте овластени и за цели на одбрана/анализа; Забранет е неовластен пристап или стругање.

Разбирање на шемата: запознавање со податоците

Пред да соберете збир на податоци, мора да ја разберете неговата шема (имињата на колоните, нивните типови податоци, нивните значења и нивните меѓусебни односи). Вештачката интелигенција е многу корисна овде при создавањето „речник на податоци“ - табела што објаснува што значи секоја колона. Но, објаснувањата што ги произведува вештачката интелигенција се предвидувања; Потврдете го вистинското значење на секоја колона со тимот што ги создал податоците. На пример, колона со име „статус“ може да содржи 0/1/2; Само почетниот тим знае дали овие се „во тек/одобрување/откажани“ или нешто друго.

Следната табела ги сумира основните типови на ресурси и предупредувања:

Извор

силна точка

стапица

Како вештачката интелигенција помага

SQL база на податоци

Структурно, доверливо

Комплексни ПРИКЛУЧУВАЊА

Пишува нацрт за барање

API

живи податоци

Ограничување на брзината, промена на обликот

Резиме на документи, повлекување код

CSV/Excel

Флексибилен, брз

Неконзистентност на форматот

Прочитајте/расчистете го кодот

веб стружење

Широк дофат

Правна/етичка граница

Парсирање на нацрт (во рамките на авторитетот)

Податоци за дневник/настан

детално

огромен волумен

Барање за филтрирање

Илустрација: дали делот ја претставува целината?

Поголемиот дел од времето, работите со примерок (подмножество избрано од популацијата) наместо со цели податоци. Критичното прашање е: дали овој примерок ја претставува популацијата? Пристрасноста во изборот е најчеста замка. На пример, ако земате примероци од корисници само од мобилната апликација, нема да гледате веб-корисници и вашите резултати ќе бидат погрешни. Случајното земање примероци (секој запис има еднакви шанси да биде избран) е најбезбедно во повеќето случаи; но во податоците за временските серии, разделувањето се врши хронолошки наместо случајно (ова ќе го видиме во единиците 7 и 10).

Пропуштајте ја свеста уште од првиот ден

Протекувањето податоци е извор на повеќето катастрофи и обично се јавува во фазата на собирање податоци. Пример: кога се предвидува „дали е откажано“, ако на податоците се додаде колоната „датум на откажување“, моделот гледа во иднината. За време на фазата на собирање, поставете по едно прашање за секоја колона: „Дали навистина ќе ги имам овие информации во моментот кога ќе го направам предвидувањето? Ако одговорот е не, таа колумна протекува. Оваа тема детално ќе ја опфатиме во единица 10; Но, свеста треба да започне од првиот ден.

три мини футроли

Случај 1 - Проблемот на застапеноста. Една банка собрала податоци само за одобрени заеми за нејзиниот модел на кредитен ризик (18.500 записи). Одбивањата ги немаше во податоците. Моделот не беше во право во реалниот свет бидејќи никогаш не виде како ќе се однесуваат одбиените. Поука: примерокот треба да биде репрезентативен за целата популација од која ја донесувате вашата одлука.

Случај 2 — Тивка промена на формата. Еден тим влечеше податоци за цената од API секој ден. Еден ден, давателот на API ја смени валутата од УСД во ЕУР, но името на доменот остана исто. Податоците беа собрани во погрешна единица 12 дена; Корумпирани се 3.200 линии. Лекција: Редовно проверувајте ја јачината и конзистентноста на форматот во податоците на API.

Случај 3 - Рано истекување. Еден аналитичар ја вклучи колоната „причина за затворање на сметката“ при собирање податоци за проценка на „превртување“. Оваа колона беше пополнета дури откако клиентот си замина. Моделот даде 97% точност на тест сет; Не работеше во производството бидејќи таа колона беше празна во времето на предвидување. Лекција: поставете ја секоја колона прашањето „дали го имам во моментот на предвидувањето?“

Четири шаблони за копирање

1) Извлекување на речник на податоци:

Вашата улога: асистент за научник за податоци. Подолу се имињата на колоните и примероците (анонимни) вредности на табелата. За секоја колона, наведете го неговото проценето значење, типот на податоци и потенцијалните ризици за квалитетот во табела. Обележете ги колоните за кои не сте сигурни како „потребна е потврда“; што значи правење.Колони: [залепете овде]

2) Код за примерок (случаен, повторлив):

Имам панди df. Напишете код кој извлекува репрезентативен 5% случаен примерок од 200.000 редови. Користете random_state=42 (за репродуктивност). Додадете код за да проверите дали класната распределба на примерокот е слична на популацијата.

3) Прашање за скенирање протекување:

Ќе ви ја дадам оваа листа на колони. Целта ми е да предвидам „дали е откажано“ (0/1). За секоја колона, проценете дали навистина ќе ја имам во моментот на предвидувањето и означете ја како „безбедна / сомнителна / протекување“. Напишете го вашето образложение во една реченица. Колони: [листа]

4) нацрт SQL барање за влечење:

Имам табели „нарачки“ и „клиенти“ во PostgreSQL. Напишете барање JOIN кое ги комбинира нарачките од последните 90 дена со градот на клиентите и го враќа вкупниот износ и број на нарачки по град. Објаснете го филтерот за датум и како се постапува со NULL градови. Ќе го извршам барањето и ќе го потврдам.

Слаб промпт / Силен промпт

Слаба навестување:

Повлечете ми добар примерок на податоци од оваа база на податоци.

„Добро“ е двосмислено; Која слика, кој период, која големина, која цел не е јасно. ВИ ќе произведе само генеричко, можеби погрешно барање.

Моќен потсетник:

Вашата улога: SQL асистент. Имам табела за „трансакции“: ID на колони, ID на клиент, датум (временски печат), износ (нумерички), канал (текст: „веб“/„мобилен“). Задача: Напишете повторливо (детерминистичко со ORDER BY) барање кое враќа 10.000 репрезентативни редови од секој канал за 2024 година. Цел: компаративна анализа на каналот. Наведете ги претпоставките на вашето барање.

Овде табелата, целта, големината и повторливоста се јасни.

Вообичаени грешки

  • Не се доведува во прашање репрезентативноста на примерокот. Лесно достапните податоци не се точни податоци; пристрасноста на изборот го нарушува резултатот.
  • Приспособување на значењата на колоните на ВИ. Изворниот тим го знае значењето; Не користете го предвидувањето на вештачката интелигенција без да го потврдите.
  • Не се следи промената на формат/единица на API. Тивката промена со денови собира корумпирани податоци.
  • Игнорирање на истекувањето во фазата на собирање. Ако прашањето „Дали го имам во моментот на предвидување“ не се постави рано, моделот ќе даде лажен успех.
  • Собирање неовластени или незаконски податоци. Прекршувањето на robots.txt, условите за користење и KVKK е сериозен ризик.
Совет: чувајте „картичка со податоци“ на една страница за секој нов извор на податоци: извор, датум на извлекување, број на редови, познати граници и колони со ризик од истекување. Оваа картичка го зачувува прашањето „што беше овој податок“ и репродуктивноста неколку месеци подоцна.

Сумирано

Квалитетот на анализата е ограничен од квалитетот на собраните податоци. Добро знајте го изворот (база на податоци, API, датотека, гребење) и шемата; проверете дали примерокот е репрезентативен за популацијата; Елиминирајте го истекувањето од првиот ден со тоа што ќе ја прашате секоја колона „дали ја имам во моментот на предвидување?“ Вештачката интелигенција е одличен забрзувач за работа со прашања и документи, но луѓето одлучуваат кои податоци да ги соберат и нивната репрезентативност. Границите на авторитетот, законот и доверливоста секогаш се на прво место.

Задача за апликација

Изберете извор на податоци (од ваш сопствен бизнис или хипотетички). Добијте нацрт на речник на податоци од вештачката интелигенција со шаблонот „извлекување речник на податоци“ погоре; Потоа рачно проценете ја секоја колона за да видите дали е протечена. Обидете се да најдете барем една сомнителна/протече колумна и напишете во една реченица зошто е ризично.

листа за проверка

  • [ ] Дали ги потврдив изворот на податоци и шемата со изворниот тим?
  • [ ] Дали проверив дали примерокот е репрезентативен за популацијата?
  • [ ] Дали на секоја колона го поставив прашањето „дали ќе го имам во моментот на проценката?“
  • [ ] Дали го направив земање примерок повторливо (фиксно семе)?
  • [ ] Дали ги проверив правните/етичките (овластувања, robots.txt, KVKK) ограничувања за собирање?