Vienība 1 / 11

Mākslīgais intelekts ML inženierijā: loma, robežas, apstiprināšana un atbildība

Ieguvumi:

  • Spēja atšķirt, kur ML darbplūsmā (kods, dati, dokuments) mākslīgais intelekts ietaupa laiku ar zemu risku un kur tādus lēmumus kā metrika / dati / ieviešana ražošanā atstāj cilvēka ziņā atbilstoši uzdevuma riska līmenim.
  • Spēja pielietot disciplīnu, kas pārbauda katru AI izvadi, savienojot to ar avotu, palaižot to atkārtoti, izmērot un izlaižot caur inženiertehnisko filtru.
  • Spēja iegūt ieradumu nesūtīt neapstrādātus konfidenciālus un personas datus ārējiem rīkiem, izmantot korporatīvos apstiprinātus rīkus un risināt drošības problēmas tikai aizsardzības nolūkos.

Mākslīgais intelekts mašīnmācības inženierijā: loma, robežas, apstiprināšana un atbildība

Mašīnmācīšanās inženieris (ML inženieris: programmatūras profesionālis, kurš projektē, apmāca un nogādā modeļus, kas mācās no datiem līdz ražošanai) šodien katrā sava darba solī strādā ar citu mākslīgā intelekta rīku. Kodēšanas palīgs ir spēkā, rakstot kodu, sarunas modelis, pētot datus, un liels valodas modelis (LLM: neironu tīkls ar miljardiem parametru, kas saprot un veido tekstu), veidojot dokumentāciju. Šajā modulī mākslīgais intelekts tiek uzskatīts gan par izstrādāto produktu, gan par ML inženiera ikdienas darba rīku. Tas darbojas, skaidri nospraužot atbildības robežas, nesajaucot abas lomas.

Šajā pirmajā daļā mēs atbildam uz pamatjautājumu: kur ML inženierijā mākslīgais intelekts ietaupa reālo laiku un kur mums ir jāatstāj lēmums cilvēkiem? Atbilde ir inženierzinātņu disciplīnas pamatā: tas, kurš ražo, ir ātrs, un tas, kurš pārbauda, ​​ir atbildīgs.

Kur mākslīgais intelekts noder ML inženierijā?

ML projekts iet cauri aptuveni šādām līnijām: datu vākšana, datu tīrīšana, funkciju izstrāde (neapstrādātu datu pārvēršana ciparu signālos, ko modelis var saprast), modeļa apmācība, novērtēšana, izvietošana (izvietošana: modeļa atvēršana reālajam lietotājam) un uzraudzība. AI palīdz katrā šīs līnijas pieturā, taču tā autoritātes līmenis atšķiras.

Augstas atlīdzības, zema riska jomas: koda skeleta izveide, datu pārveidošanas funkcijas izstrāde, žurnāla ziņojumu interpretēšana, steka izsekošanas aprakstīšana, eksperimenta piezīmju apkopošana, dokumentācijas un README rakstīšana, testa gadījuma ierosināšana. Šeit mākslīgā intelekta kļūdas ir lētas; jo produkcija jau tiks pārbaudīta un pārskatīta.

Augsta riska jomas: izlemšana, kādi dati tiek izmantoti apmācībā, apstiprinājums, vai modelim vajadzētu sākt ražošanu, metrika ir "pietiekami laba", lēmums apstrādāt personas datus, drošības ievainojamības aizvēršana kā "junk". Tie ietekmē naudu, privātumu, juridisko atbildību un lietotāju uzticēšanos. Mākslīgais intelekts šeit sniedz ieteikumus; Lēmumu pieņem kompetentais inženieris un atbildīgā komanda.

Padoms. Pirms uzdevuma nodošanas AI ārpakalpojumam, pajautājiet: “Kādas ir izmaksas, ja šī izvade ir nepareiza, un cik viegli kāds pieķers kļūdu?” Ja cena ir zema un uztveršana ir vienkārša, nododiet to tālāk. Ja cena ir augsta vai uztveršana ir sarežģīta, izmantojiet AI tikai melnrakstam, un jūs izlemjat.

Pārbaudes disciplīna: trīs soļi

ML inženierijā AI izvade nekad nav "pabeigts darbs"; Tas ir melnraksts. Palaidiet katru izvadi, veicot šīs trīs darbības:

  1. Pievienojiet to avotam. Ja modelī ir norādīts skaitlis, slieksnis vai “labākā prakse”, pamatojiet to ar oficiālu dokumentāciju, faktisko vērtību kodu bāzē vai izmērīto metriku. Šeit visbiežāk tiek pieķerta “modeļa pielāgošana” (halucinācijas: pārliecinoša nereālas informācijas ģenerēšana ar valodas modeli).
  2. Restartējiet un izmēriet. Palaidiet ģenerēto kodu, pārrēķiniet tā radīto metriku savā testa kopā, apstipriniet piedāvāto SQL vaicājumu nelielā paraugā. Kods, kas nedarbojas, ir bezvērtīgs, pat ja tas izskatās jauki.
  3. Izlaidiet to caur inženiertehnisko filtru. Vai izvade iztur mērogā? Vai ir ņemti vērā malas gadījumi (tukši dati, ļoti liela ievade, trūkstoši lauki)? Vai pastāv drošības un privātuma pārkāpums? Šo soli var veikt tikai cilvēks, kurš pārzina jomu.

Vāja uzvedne / spēcīga uzvedne

Vāja uzvedne: "Uzrakstiet man modeļa apmācības kodu."

Spēcīga uzvedne: "Uzrakstiet apmācības skriptu binārajai klasifikācijai, izmantojot scikit-learn. Ievade: data/train.parquet, mērķa kolonna is_churn. Pastāv klases nelīdzsvarotība (pozitīvs rādītājs ~ 8%), apstrādājiet to ar class_weight. Izmantojiet PR-AUC (apgabals zem precizitātes-atgādināšanas līknes), jo accuracy novērtēšanas metrika ir nepareiza. izlases sēkla līdz 42. Pārbaude koda drukas komplekta PR-AUC beigās."

Atšķirība: otrais uzvednes uzdevums satur datu patiesumu, pareizu metriku, informāciju par nelīdzsvarotību un atkārtojamības prasību. No šī konteksta rezultāts ir pārbaudāms un lietojams.

Privātums un datu drošība: inženiera pirmā atbildība

ML inženieris bieži pieskaras uzņēmuma sensitīvākajiem datiem: klientu ierakstiem, darījumu vēsturei, veselības vai finanšu datiem, ražošanas sistēmu žurnāliem. Trīs noteikumi, sniedzot datus mākslīgā intelekta rīkiem:

  • Nesūtiet neapstrādātus personas un konfidenciālus datus ārējiem rīkiem. Piemēram, tā vietā, lai uzvednē ielīmētu klientu e-pasta ziņojumus, nosūtiet shēmu un fiktīvus (sintētiskos) paraugus. Izmantojiet maskētu piemēru, piemēram, “ex: ahmet@example.com”, nevis reālus datus.
  • Izmantojiet uzņēmuma apstiprinātus transportlīdzekļus. Izvēlieties rīkus, kuriem līgumā ir skaidrs, kur dati tiek apstrādāti, vai tie tiek glabāti, vai tie tiek izmantoti izglītībai vai nē. Korporatīvo datu apstrāde ar personīgo kontu ir pārkāpums lielākajā daļā uzņēmumu.
  • Minimālā datu politika. Norādiet minimālo kontekstu, kas nepieciešams uzdevuma risināšanai. Nevis visa tabula, bet attiecīgās 5 kolonnas un shēma.
Uzmanību! Pieņemsim, ka tekstu, ko sniedzat valodas modelim, nevar atsaukt. Nesūtiet neapstrādātus personas datus, domājot "Vēlāk tos izdzēsīšu"; Risks radās brīdī, kad tas tika nosūtīts.

Aizsardzības izmantošana drošības jomā

ML inženieri bieži uzstāda drošības sistēmas: krāpšanas atklāšana, ļaunprātīgas satiksmes klasifikācija, autentifikācija. Visā šajā modulī mēs aptveram drošības problēmas tikai aizsardzības nolūkos: uzbrukuma noteikšana, sistēmas nostiprināšana, ievainojamības novēršana. Mākslīgā intelekta izmantošana nesankcionētai piekļuvei, datu noplūdei vai nesankcionētai iejaukšanās kāda cita sistēmā ir gan nelikumīga, gan pret profesionālo ētiku. Kad atrodat ievainojamību, pareizais veids ir ziņot par to atbildīgi un to novērst; nevis ekspluatēt.

trīs mini futrāļi

1. gadījums — ietaupīts laiks. ML inženieris parasti pavada pusi dienas, veicot pētniecisko datu analīzi (EDA) 40 kolonnu datu kopai. Viņš deva shēmas un df.describe() izvadi mākslīgajam intelektam un jautāja: "Kurās kolonnās ir augsts izņēmuma rādītājs un trūkstošais rādītājs, kādas transformācijas jūs ieteiktu?" 20 minūšu laikā viņš saņēma prioritāru sarakstu, pārbaudot katru vienumu ar savu kodu. Ietaupiet: ~3 stundas, zems kļūdu risks, jo tiek izmērīta katra pretenzija.

2. gadījums — pieķerta kļūda. “Treniņu precizitāte ir 99%, lieliski,” modele teica tērzēšanas palīgs. Inženieris pielietoja trešo soli (inženiertehniskais filtrs) un saprata: mērķa kolonnā nejauši ir noplūduši atribūti (datu noplūde: modelis redz informāciju, ko tam nevajadzētu redzēt apmācībā). Faktiskais sniegums bija daudz zemāks. Inženiera skepse, nevis AI "lieliskā" interpretācija, izglāba darbu.

3. gadījums — privātuma pārkāpuma novēršana. Komanda ielīmēja ražošanas kļūdu žurnālus ārējā modelī un teica "labojiet šo kļūdu". Žurnālos bija klientu identifikācijas numuri. Komanda izstrādāja noteikumu, kas paredz uzrakstīt nelielu skriptu, kas vispirms maskē žurnālus (izveidojot to ID numurus ***) un nosūtot tos šādā veidā. Pārkāpuma risks ir zudis, palīdzības sniegšanas ātrums nav mainījies.

Kopējamas veidnes

Uzdevums: [ko darīt, viens teikums]Konteksts: [datu shēma, lielums, ierobežojumi; NAV FAKTIŠU personas datu]Ierobežojumi: [valoda/bibliotēka, veiktspēja, reproducējamība]Metrika: [kā novērtēt panākumus]Vēlamā izvade: [kods/apraksts/saraksts] un kāpēc šajā formātā

Pārbaudiet šo kodu. Novērtējiet ne tikai to, vai tas darbojas, bet arī attiecībā uz: 1) malas gadījumiem (tukša ievade, trūkst kolonnas, ļoti lieli dati) 2) datu noplūdes risks3) reproducējamība (sēkla, versija) Ieteikt labojumus katrai atrastajai problēmai. Atzīmējiet "pārbaudīt", ja neesat pārliecināts. Kods: [kods]

Interpretējiet šīs metrikas rezultātu, taču vispirms jautājiet: vai šī metrika ir pareiza šai problēmai?Problēma: [līdzsvarota/nesabalansēta klasifikācija, regresija, ranžēšana...]Pārskatā norādītā metrika un vērtība: [piem. precizitāte 0,99]Kuru metriku jūs ieteiktu un kāpēc, un kādas pazīmes man vajadzētu meklēt, lai man liktu šaubīties par pašreizējo rezultātu?

Pārbaudiet, vai datos, ko es sniegšu tālāk norādītajā uzvednē, ir personiska/konfidenciāla informācija. Zemāk esošajā tekstā norādiet laukus (vārds, e-pasts, ID numurs, tālrunis, adrese), kurus nepieciešams maskēt. Teksts: [teksts]

Lomu un autoritātes tabula

Meklējumi

Mākslīgā intelekta loma

Lēmuma īpašnieks

Koda skeleta / transformācijas funkcija

vilkmes ģenerators

Inženieris (atsauksmes)

EDA / datu kopsavilkums

akselerators

Inženieris (pārbauda ar mērījumiem)

Metriskā interpretācija

Ieteikums

inženieris

Kādi dati tiks izmantoti apmācībā?

Ieteikums

Komanda + datu īpašnieks

Ievietojiet modeli ražošanā

Kontrolsaraksta atgādinājums

Atbildīgs inženieris + komanda

Personas datu apstrāde

Nav (nav lietots)

Juridiskais + datu pārzinis

Biežas kļūdas

  • Izvades izmantošana bez apstiprināšanas. Visizplatītākā un dārgākā kļūda. Kods vai metrika, kas izskatās labi, nenozīmē, ka tā ir pareiza.
  • Neapstrādātu konfidenciālu datu ielīmēšana rīkā. Pēc nosūtīšanas to nevar ņemt atpakaļ.
  • Paļaušanās uz nepareizu metriku. Nesaderīgi rādītāji, piemēram, nelīdzsvarotu datu precizitāte un ranžēšanas problēmu RMSE, ir maldinoši.
  • Mākslīgā intelekta kā lēmumu pieņēmēja maldināšana. Viņš sniedz ieteikumus; Atbildība gulstas uz parakstītāju.
  • Bezkonteksta uzvedne. Neskaidri pieprasījumi, piemēram, “rakstīt modeli”, rada nepārbaudāmu rezultātu.

Rezumējot

Mākslīgais intelekts ir gan ML inženiera izstrādātais produkts, gan tā ikdienas replikators. Tā vērtība ir visaugstākā zema riska, viegli pārbaudāmos uzdevumos, piemēram, kods-dati-dokuments; Lēmumi, kas ietekmē naudu, privātumu un drošību, paliek personas ziņā. Savienojiet katru izvadi ar avotu, mēriet vēlreiz, izlaidiet inženiertehnisko filtru. Aizsargājiet konfidenciālos datus, izmantojiet apstiprinātus transportlīdzekļus, strādājiet drošībā tikai aizsardzības nolūkos. Šī disciplīna ir visu turpmāko vienību pamatā.

Lietojumprogrammas uzdevums

Izvēlieties uzdevumu no sava projekta (piemēram, ierakstiet datu tīrīšanas funkciju). Vispirms uzrakstiet vāju uzvedni, pēc tam uzrakstiet spēcīgu uzvedni, izmantojot šīs vienības veidni. Izmantojiet abas izvades, izmantojiet trīspakāpju verifikāciju (saite uz avotu, atkārtota palaišana, inženierijas filtrs). Ņemiet vērā, kura uzvedne ietaupa minūtes un labojumus.

kontrolsaraksts

  • [ ] Esmu noteicis sava uzdevuma riska līmeni (zems/augsts).
  • [ ] Es uzvednē neievietoju nekādus faktiskus personas/konfidenciālus datus; Es to maskēju vai izmantoju sintētisko paraugu.
  • [ ] Es savienoju izvadi ar avotu, palaidu to vēlreiz, filtrēju no inženierijas viedokļa.
  • [ ] Es pārbaudīju, vai esmu atlasījis pareizo metriku.
  • [ ] Kritisko lēmumu (nodošana ražošanā, datu apstrāde) pieņēmu pats/ar komandu, neatstāju to mākslīgā intelekta ziņā.
  • [ ] Es izmantoju uzņēmuma apstiprinātu transportlīdzekli.