Бирдиктер
1. Маалымат илиминде жана аналитикада жасалма интеллектке киришүү: иш процесси, ролдор, чек аралар, текшерүү жана этика 2. Маалыматтарды чогултуу жана булакты түшүнүү: схема, үлгүлөрдү алуу, сапат жана агып чыгууну билүү 3. Маалыматтарды тазалоо жана алдын ала кайра иштетүү: Жок маани, чектен чыгуу жана түрдү конверсиялоо 4. Изилдөөчү маалыматтарды талдоо (EDA): бөлүштүрүү, мамилелер жана баштапкы түшүнүктөр 5. Функция инженериясы: Варианттарды түзүү, коддоо, масштабдоо жана агып кетүүдөн сактануу 6. Моделди түзүү: Маселени аныктоо, алгоритмди тандоо жана окутуу/Тестти бөлүү 7. Моделди баалоо: метрика, кайчылаш текшерүү жана экстремалдуу үйрөнүү 8. Визуализация жана баяндоо: так графика, чынчыл графика 9. Кодду түзүү: Python (пандалар) жана SQL менен AI жардамы менен талдоо 10. Маалыматтын агып кетиши жана кайра жаралуу: Тынч кырсыктар жана тартип 11. MLOps Foundation, этика, купуялык жана жооптуу аналитика
бирдиги 9 / 11

Кодду түзүү: Python (пандалар) жана SQL менен AI жардамы менен талдоо

Пайдалар:

  • Жасалма интеллекттин так схемасын жана максатын берүү менен күчтүү SQL жана панда кодун алып, аны саптан сап окуп, текшерүү мүмкүнчүлүгү
  • Биригүү/КОШУЛГАНдан кийин катарлардын саны, тууралоо функциясы жана өткөрүү жөндөмдүүлүгү сыяктуу унчукпай каталарды кармоо мүмкүнчүлүгү
  • Мүчүлүштүктөрдү оңдоодо көйгөйдү өчүрбөй туруп чечүү жана кодду өндүрүш чөйрөсүндө сынабай туруп иштетүүдөн качуу

Маалымат илиминде эки негизги тил бар: SQL (Structured Query Language — берилиштер базасынан маалыматтарды суроо тили) жана Python (тактап айтканда, пандалар китепканасы — таблицаларды программалык түрдө манипуляциялоо үчүн стандарттык курал). Бул бөлүмдө биз AIди код өнөктөшү катары колдонууну үйрөнөбүз: андан туура суроолор менен катуу SQL жана панда кодун алуу, ал кодду окуу жана текшерүү, мүчүлүштүктөрдү оңдоо жана аны эч качан сокур түрдө иштетүү. AI кайталануучу кодду мүнөттүн ордуна секунданын ичинде жазат; Бирок ал чыгарган код туура логика менен туура тилкени иштетип жатканын текшерүү сиздин милдетиңиз. Жумушчу код туура кодду билдирбейт.

Эмне үчүн AI менен код өндүрүү күчтүү, бирок кооптуу

AI кодду жаратууда үч чоң пайданы камсыздайт: ылдамдык (секундда 30 саптык топко айланма операцияны жазат), эстеткич (сиз унутуп калган панда функциясын эске салат) жана окутуу (кодду сап боюнча түшүндүрөт). Бирок анын үч коркунучу бар: унчукпай логикалык ката (туура эмес тилкени жыйынтыктаган код катасыз иштейт), орнотулган функция (жок методду сунуштайт) жана кирешелүү тузак (кичинекей маалыматтарда иштеген, бирок 10 миллион сапта кыйроого учураган код). Ошентип, алтын эреже: AI кодун өзүңүз жазгандай окуңуз. Түшүнбөгөн сапты иштетпе.

SQL: маалыматтарды булакта иштетүү

SQL маалымат базасынан маалыматтарды алууга жана аны ошол жерде иштетүүгө мүмкүндүк берет; Сиз миллиондогон саптарды Python'го тартпастан жалпылай аласыз. Негизги курулуш блоктору: SELECT (кайсы мамычалар), WHERE (кайсы саптар), GROUP BY (топтоо жана жыйынтыктоо), JOIN (таблицаларга кошулуу), HAVING (топтон кийинки чыпкалоо). AI татаал JOINдерди жана терезе функцияларын жазууда абдан пайдалуу, бирок эки нерсени текшериңиз: туура баскыч аркылуу JOIN (туура эмес ачкыч саптарды кайталайт) жана чыпка логикасы туурабы (айрыкча NULL жүрүм-туруму жана дата диапазону).

Эскертүү: AI тарабынан түзүлгөн SQL суроосун түздөн-түз өндүрүш базасына каршы иштетпеңиз. Кичинекей көчүрмө менен сынап көрүңүз же адегенде LIMIT. WHERE шартын текшербестен UPDATE/DELETE суроосун эч качан иштетпеңиз; Туура эмес WHERE таблицаны толугу менен жок кылышы мүмкүн.

Python/pandas: ийкемдүү анализ

pandas Pythonдо таблицаларды (DataFrame) башкаруунун стандарттуу жолу. AIны эң эффективдүү колдонуу - бул ага так схема жана максат берүү. Көбүнчө колдонулган операциялар: чыпкалоо, группалоо, бириктирүү, пивот_таблица, колдонуу. AI буларды тез жазат; Сиз текшергиңиз келген нерсе - бул логика: туура тилкеде топтоштурулганбы, бириктирилгенде саптардын саны күтүүсүз өзгөргөнбү (бириккенден кийин саптардын санын ар дайым текшериңиз), чынжыр операциялары түпнусканы өзгөртөбү.

транзакция

SQL

пандалар

өткөрүү пункту

Чыпкалоо

КАЙДА

df[df.x > 5]

NULL/NaN жүрүм-туруму

топтоо

GROUP BY

df.groupby()

Бул туура тилкеби?

бириктирүү

КОШУЛ

df.merge()

Катарлардын санын өзгөртүү

Жыйынтык

AVG(), SUM()

.mean(), .sum()

Кайсы колонка чогултулду

Сорттоо боюнча

ЗАКАЗ БЕРҮҮ

.sort_values()

Багыт (өсүү/төмөндөө)

дедупликация

DISTINCT

.drop_duplicates()

Кайсы тилкелерде?

Мүчүлүштүктөрдү оңдоо: AI менен

Код иштебей калганда, AI мүчүлүштүктөрдү оңдоонун эң сонун өнөктөшү болуп саналат. Ага толук ката кабарын жана тиешелүү код үзүндүсүн бериңиз. Бирок эки тузактан сак болгула. Биринчиден, AI катаны "унчуккан" чечимди сунушташы мүмкүн (мисалы, эскертүүлөрдү жашыруу) - бул катаны оңдобойт, аны жашырат. Экинчиден, AI кээде көйгөйдү "чечүүдө" башка жүрүм-турумду унчукпай өзгөртөт. Эреже: оңдоону түшүнүңүз, үнүн өчүрбөй чечиңиз жана оңдогондон кийин дагы эле жыйынтык туура экенин текшериңиз.

Чечмелөөчү жана колдоого алынуучу кодду каалайсыз

AIдан код сатып алууда, жөн гана "иштей турган" код эмес, окула турган жана тейлөөгө боло турган кодду сураңыз. Сиз же кесиптешиңиз бул кодду бир нече айдан кийин ачканда, ал эмне кылып жатканын түшүнүшү керек. Бул үчүн, AI үч нерсени камтууну адатка айлантыңыз: маанилүү өзгөрмө аттары (orders_temiz, df2 эмес), критикалык кадамдардагы кыска комментарий саптары (эмне үчүн эмес, эмне кылып жатканын түшүндүрүү) жана сыйкырдуу сандын ордуна аталган константа (ACCEPT_ESIGI = 0,85 ордуна 0,85 кодго көмүлгөн). Ошондой эле узун бир линиялуу чынжырлардан качуу (бир сапта беш аракетти бириктирүү); булар мүчүлүштүктөрдү оңдоону кыйындатат. Демейки боюнча, AI көбүнчө кыска жана "акылдуу" кодду чыгарат; Эгер сиз "окула турган, чечмеленүүчү, сактала турган жазуу" деп ачык айтсаңыз, сиз бир топ жакшыраак натыйжа аласыз. Бул да кайталануучулуктун негизи болуп саналат (10-бирдик): түшүнүксүз код - бул коопсуз кайра иштетүү мүмкүн болбогон код.

үч мини учурлар

1-жагдай — JOIN репликациясы. Аналитик буйрутмаларды продуктулардын таблицасы менен бириктирип, жалпы жүгүртүү 3 эсе көп экенин аныктады. Себеби: ар бир продукт продуктунун таблицасында бир нече саптар (башка түстөр) болгон; JOIN ар бир буйрутманы кайталады. AI коду "иштеп жаткан", бирок саптардын саны 240 миңден 690 миңге чейин секирип кеткен. Сабак: бириктирүү/ЖОГУЛГАНдан кийин ар дайым саптардын санын текшериңиз.

2-жагдай — Орнотуу функциясы. Ал интернге AI df.groupby('x').summarize() сунуштады; Пандаларда мындай ыкма жок (.agg() бар). Код иштебей калды, стажер 20 мүнөткө адашып кетти. Сабак: документтен сиз тааныбаган функцияны текшериңиз; AI ыкмаларды жасай алат.

3-жагдай - Түшүмдүүлүктүн төмөндөшү. Ар бир сап үчүн арызда бир код маалымат базасын сурап жаткан; Ал 5000 линияда иштеп, 4 миллион линияда 9 саатка созулуп, токтоп калган. AI векторлоштурулган (партиялык) чечимди сунуштаганда, убакыт 40 секундага чейин кыскарган. Сабак: кичинекей маалыматтарда иштеген код чоң маалыматтарда бузулушу мүмкүн; натыйжалуулугун карап көрөлү.

Көчүрүү үчүн төрт шаблон

1) схемасы менен SQL суроо:

Сиздин ролуңуз: SQL жардамчысы (PostgreSQL). Таблицалар:- заказдар(id, customer_id, дата убакыт белгиси, сумма сан)- кардарлар(id, шаардын тексти)Тапшырма: 2024-жылы шаар боюнча жалпы жүгүртүүнү жана заказдардын санын азаюу тартибинде иреттеп алыңыз. NULL шаарларды кантип башкарарыңызды түшүндүрүңүз. Мен биринчи LIMIT менен суроону сынайм; UPDATE/DELETE муун.

2) өткөрүү пункту менен панда процесси:

Менде DataFrames df (заказдар) жана df_customers (кардарлар) бар. Шаар боюнча орточо сумманы эсептеп. МААНИЛҮҮ: бириккенге чейинки жана кийинки саптардын санын басып чыгарыңыз, ошондо мен кайталануу бар-жогун көрөм. Кайсы тилкеге ​​кошулганыңызды жана эмне үчүн ички/солду тандаганыңызды түшүндүрүңүз.

3) Кодду түшүндүрүү жана текшерүү:

Төмөнкү пандалардын кодун сап боюнча түшүндүрүп бериңиз: ар бир сап эмне кылат, ал кандай божомолдорду жасайт, кандай учурларда туура эмес жыйынтыктарды бериши мүмкүн? Мен фудж функциясын колдонгон болсом, мага кабарлаңыз. Код: [чаптоо]

4) Мүчүлүштүктөрдү оңдоо:

Бул код бул катаны берет. Толук ката кабары: [чаптоо]. Код: [чаптоо]. Катанын ROOT себебин түшүндүрүп, аны оңдоңуз. Аны эскертүүнүн үнүн басуу менен эмес, көйгөйдү чындап чечүү менен оңдоңуз. Ошондой эле оңдоо натыйжаны өзгөрткөнбү же жокпу көрсөтүңүз.

Алсыз тездик / Күчтүү тездик

Алсыз билдирүү:

Мага шаар боюнча сатууну берген суроо жазыңыз.

Таблица аттары, мамычалар, маалымат базасынын түрү, NULL жүрүм-туруму түшүнүксүз. AI кеңири таралган, балким, ал сиздин үстөлүңүзгө туура келбеген суроону жаратышы мүмкүн.

Күчтүү билдирүү:

Сиздин ролуңуз: SQL жардамчысы (MySQL 8). Таблица: сатуулар (id, шаар варчар, ондук сумма, дата датасы). Тапшырма: 2024-жылга шаар боюнча жалпы жана орточо сумманы, заказдардын санын алыңыз; Жалпы суммасы боюнча азайып сорттоо; 100дөн ашык буйрутмасы бар шаарларды гана көрсөтүңүз (БАР).NULL шаарды кошпойт. суроону түшүндүрүү; Мен LIMIT менен сынайм.

Бул жерде маалымат базасы, схема, чыпка, сорттоо жана NULL эрежеси ачык көрүнүп турат.

Жалпы каталар

  • Кодду окубастан иштетүү. Жумушчу код туура эмес код; Туура эмес тилкени башкарган код да катасыз иштейт.
  • Бириктирилгенден/ЖОГУЛГАНдан кийин саптардын саны текшерилбейт. Туура эмес ачкыч саптарды үнсүз кайталап, жыйынтыктарды көбөйтөт.
  • Орнотуу функциясын текшерүү эмес. AI жок ыкмаларды сунуш кылышы мүмкүн; Документтен аны тааныбай турганыңызды ырастаңыз.
  • Натыйжалуулукту ойлобойт. миллиондогон саптардагы майда маалыматтар кыйроолорунун үстүндө иштөө/укурук; векторизациялоо.
  • Түздөн-түз өндүрүш базасында иштетиңиз. Өзгөчө WHERE же тестсиз UPDATE/DELETE иштетүү каргашалуу.
Кеңеш: AIдан алган коддун ар бир бөлүгүнө "текшерүү сызыгын" кошууну адатка айлантыңыз: саптардын алдын ала жана кийинки иштетүү саны, бир нече үлгү саптары жана кол менен критикалык жалпы. Бул үч текшерүү көпчүлүк унчукпаган логикалык каталарды кармайт.

Кыскача айтканда

AI тез SQL жана панда коддорун чыгарган күчтүү өнөктөш, бирок бул сокур бийлик эмес. Ага схеманы жана максатты так бериңиз; Ал чыгарган кодду өзүңүз жазгандай окуңуз; Бириктирилгенден/ЖОГУЛГАНдан кийин катарлардын санын, тууралоо функцияларын жана өткөрүү жөндөмдүүлүгүн текшерүү; Аны өндүрүш базасында сынабай туруп иштетпеңиз. Мүчүлүштүктөрдү оңдоодо маселенин үнүн басууга эмес, аны чечүүгө умтулуңуз. Иштеген код туура код эмес; Тактыгына сиз гана кепилдик бере аласыз.

Колдонмо тапшырмасы

Талдоо суроосун тандаңыз (мисалы, "канал боюнча айлык жүгүртүү") жана SQL жана пандалар менен AIдан код сураңыз. Кодду эки сапты сызык менен окуп чыгыңыз, бириктирилгенден/КОШУЛГАНдан кийин саптардын санын текшериңиз жана жок дегенде бир критикалык сумманы кол менен текшериңиз. Эки код бирдей натыйжа береби, салыштырыңыз; Эгер башкача болсо, эмне үчүн экенин билиңиз.

текшерүү тизмеси

  • [ ] Мен таблицаны/схеманы жана максатты AIга так бердимби?
  • [ ] Ал чыгарган кодду саптан сап окуп түшүндүмбү?
  • [ ] Мен бириктирилгенден/ЖООНдон кийин саптардын санын текшердимби?
  • [ ] Мен документациядан тааныбаган функцияларды текшердимби?
  • [ ] Кодду өндүрүш чөйрөсүндө эмес, адегенде коопсуз/кичине маалыматтарда сынап көрдүмбү?