Yunit 1 / 11

Artificial Intelligence sa ML Engineering: Tungkulin, Hangganan, Pagpapatunay at Pananagutan

Mga nadagdag:

  • Ang kakayahang matukoy kung saan sa ML workflow (code, data, dokumento) ang artificial intelligence ay nakakatipid ng oras na may mababang panganib, at kung saan ang mga desisyon tulad ng sukatan / data / paglalagay sa produksyon ay ipinaubaya sa tao, ayon sa antas ng panganib sa gawain.
  • Kakayahang maglapat ng disiplina na nagbe-verify sa bawat output ng AI sa pamamagitan ng pagkonekta nito sa pinagmulan, muling pagpapatakbo nito, pagsukat nito, at pagpasa nito sa isang filter ng engineering.
  • Kakayahang kunin ang ugali ng hindi pagpapadala ng hilaw na kumpidensyal at personal na data sa mga panlabas na tool, gamit ang mga tool na inaprubahan ng kumpanya, at paghawak ng mga isyu sa seguridad para lamang sa mga layunin ng pagtatanggol.

Artificial Intelligence sa Machine Learning Engineering: Tungkulin, Hangganan, Pagpapatunay at Pananagutan

Ang isang machine learning engineer (ML engineer: isang software professional na nagdidisenyo, nagsasanay, at nagdadala ng mga modelong natututo mula sa data hanggang sa produksyon) ngayon ay gumagana sa isa pang artificial intelligence tool sa bawat hakbang ng kanyang trabaho. May bisa ang isang coding assistant kapag nagsusulat ng code, isang modelo ng pag-uusap kapag nag-explore ng data, at isang malaking modelo ng wika (LLM: isang neural network na may bilyun-bilyong parameter na nakakaunawa at gumagawa ng text) kapag gumagawa ng dokumentasyon. Isinasaalang-alang ng module na ito ang artificial intelligence bilang parehong produkto na binuo at ang pang-araw-araw na tool sa trabaho ng isang ML engineer. Gumagana ito sa pamamagitan ng malinaw na pagtukoy sa mga hangganan ng responsibilidad nang hindi pinaghahalo ang dalawang tungkulin.

Sa unang yunit na ito, sinasagot namin ang pangunahing tanong: Saan sa ML engineering nakakatipid ng real time ang artificial intelligence, at saan natin kailangang ipaubaya ang desisyon sa mga tao? Ang sagot ay nasa puso ng disiplina sa engineering: ang gumagawa ay mabilis, ang nag-verify ay may pananagutan.

Saan nagagamit ang artificial intelligence sa ML engineering?

Ang isang proyekto ng ML ay dumaan sa halos mga sumusunod na linya: pangongolekta ng data, paglilinis ng data, feature engineering (pagsasalin ng hilaw na data sa mga digital na signal na mauunawaan ng modelo), pagsasanay sa modelo, pagsusuri, deployment (deployment: pagbubukas ng modelo sa tunay na user) at pagsubaybay. Tumutulong ang AI sa bawat paghinto sa linyang ito, ngunit nag-iiba ang antas ng awtoridad nito.

Mga lugar na may mataas na gantimpala, mababa ang panganib: paggawa ng code skeleton, pag-draft ng function ng pagbabago ng data, pagbibigay-kahulugan sa mga mensahe ng log, paglalarawan ng stack trace, pagbubuod ng mga tala sa eksperimento, pagsulat ng dokumentasyon at README, pagmumungkahi ng test case. Dito, ang mga pagkakamali ng artificial intelligence ay mura; dahil ang output ay dadaan na sa pagsubok at pagsusuri.

Mga lugar na may mataas na peligro: pagpapasya kung anong data ang mapupunta sa pagsasanay, pagkumpirma kung ang isang modelo ay dapat pumunta sa produksyon, paghusga sa isang sukatan ay "sapat na mabuti", pagpapasyang iproseso ang personal na data, isara ang isang kahinaan sa seguridad bilang "junk". Nakakaapekto ang mga ito sa pera, privacy, legal na pananagutan, at tiwala ng user. Ang artificial intelligence ay nagbibigay ng mga mungkahi dito; Ang desisyon ay ginawa ng karampatang inhinyero at ng responsableng pangkat.

Tip: Bago mag-outsourcing ng isang gawain sa AI, itanong: "Ano ang gastos kung mali ang output na ito, at gaano kadaling mahuli ng sinuman ang pagkakamali?" Kung mababa ang presyo at madaling makuha, ipasa ito. Kung mataas ang presyo o mahirap makuha, gamitin lang ang AI para sa draft at magpasya ka.

Disiplina sa pagpapatunay: tatlong hakbang

Sa ML engineering, ang output ng AI ay hindi kailanman isang "tapos na trabaho"; Ito ay isang draft. Patakbuhin ang bawat output sa pamamagitan ng tatlong hakbang na ito:

  1. Ikonekta ito sa pinagmulan. Kung ang modelo ay nagsabi ng isang numero, isang threshold, o isang "pinakamahusay na kasanayan," ibabatay ito sa opisyal na dokumentasyon, aktwal na halaga sa codebase, o isang nasusukat na sukatan. Ang "Pagkakasya ng modelo" (hallucination: ang kumpiyansa na paggawa ng hindi totoong impormasyon ng modelo ng wika) ay madalas na nahuhuli dito.
  2. I-restart at sukatin. Patakbuhin ang nabuong code, kalkulahin muli ang sukatan na ginawa nito sa iyong sariling set ng pagsubok, patunayan ang iminungkahing SQL query sa isang maliit na sample. Ang code na hindi gumagana ay walang halaga, kahit na mukhang maganda.
  3. Ipasa ito sa isang filter ng engineering. Ang output ba ay tumatagal sa sukat? Napag-isipan na ba ang mga edge case (walang laman na data, napakalaking input, nawawalang field)? Mayroon bang paglabag sa seguridad at privacy? Tanging isang taong nakakaalam ng field ang makakagawa ng hakbang na ito.

Mahinang prompt / Malakas na prompt

Mahinang prompt: "Sumulat ako ng ilang code ng pagsasanay ng modelo."

Napakahusay na prompt: "Sumulat ng script ng pagsasanay para sa binary classification na may scikit-learn. Input: data/train.parquet, target column is_churn. Mayroong class imbalance (positive rate ~8%), hawakan ito nang may class_weight. Gamitin ang PR-AUC (lugar sa ilalim ng precision-recall curve) bilang sukatan ng pagsusuri, dahil ang katumpakan ng pagsubok ay nakaliligaw sa random na data. ang code print set PR-AUC."

Pagkakaiba: ang pangalawang mabilis na gawain ay naglalaman ng katotohanan ng data, tamang sukatan, impormasyon ng kawalan ng timbang at kinakailangan sa pag-uulit. Mula sa kontekstong ito na ang output ay napatunayan at magagamit.

Pagkapribado at seguridad ng data: ang unang responsibilidad ng engineer

Ang inhinyero ng ML ay madalas na hawakan ang pinakasensitibong data ng kumpanya: mga talaan ng customer, kasaysayan ng transaksyon, data ng kalusugan o pananalapi, mga tala ng mga sistema ng produksyon. Tatlong panuntunan kapag nagbibigay ng data sa mga tool ng artificial intelligence:

  • Huwag magpadala ng hilaw na personal at kumpidensyal na data sa mga panlabas na tool. Halimbawa, sa halip na i-paste ang mga email ng customer sa prompt, ipadala ang schema at dummy (synthetic) na mga sample. Gumamit ng naka-mask na halimbawa tulad ng "ex: ahmet@example.com" sa halip na totoong data.
  • Gumamit ng mga sasakyang inaprubahan ng kumpanya. Pumili ng mga tool na malinaw ayon sa kontrata kung saan pinoproseso ang data, kung ito ay nakaimbak, kung ito ay ginagamit para sa edukasyon o hindi. Ang pagproseso ng corporate data gamit ang isang personal na account ay isang paglabag sa karamihan ng mga kumpanya.
  • Minimum na patakaran sa data. Ibigay ang pinakamababang konteksto na kailangan upang malutas ang gawain. Hindi ang buong talahanayan, ngunit ang nauugnay na 5 column at schema.
Babala: Ipagpalagay na ang tekstong ibibigay mo sa isang modelo ng wika ay hindi na mababawi. Huwag magpadala ng hilaw na personal na data sa pag-iisip na "Tatanggalin ko ito mamaya"; Ang panganib ay nangyari sa sandaling ito ay ipinadala.

Depensibong paggamit sa larangan ng seguridad

Ang mga inhinyero ng ML ay madalas na nag-i-install ng mga sistema ng seguridad: pagtuklas ng pandaraya, pag-uuri ng malisyosong trapiko, pagpapatunay. Sa kabuuan ng module na ito, sinasaklaw namin ang mga isyu sa seguridad para sa mga layuning pangdepensa lamang: pag-detect ng pag-atake, pagpapatigas ng system, pagsasara ng kahinaan. Ang paggamit ng artificial intelligence para sa hindi awtorisadong pag-access, pagtagas ng data o hindi awtorisadong interbensyon sa system ng ibang tao ay parehong labag sa batas at laban sa propesyonal na etika. Kapag nakakita ka ng kahinaan, ang tamang paraan ay iulat ito nang responsable at ayusin ito; hindi pagsasamantala.

tatlong mini case

Case 1 - Nakatipid ng oras. Ang isang ML engineer ay karaniwang gumugugol ng kalahating araw sa paggawa ng exploratory data analysis (EDA) ng isang 40-column data set. Ibinigay niya ang schema at df.describe() na output sa artificial intelligence at nagtanong, "Aling mga column ang may mataas na outlier at nawawalang rate, aling mga pagbabago ang inirerekomenda mo?" Sa loob ng 20 minuto, nakatanggap siya ng isang priyoridad na listahan, na bini-verify ang bawat item na may sarili nitong code. Makatipid: ~3 oras, mababa ang panganib ng error dahil sinukat ang bawat paghahabol.

Kaso 2 - Nahuli na error. "Ang katumpakan ng pagsasanay ay 99%, mahusay," sinabi ng modelo sa isang chat assistant. Inilapat ng engineer ang ikatlong hakbang (filter ng engineering) at napagtanto: ang target na column ay hindi sinasadyang nag-leak ng mga katangian (pag-leakage ng data: nakikita ng modelo ang impormasyong hindi nito dapat makita sa pagsasanay). Ang aktwal na pagganap ay mas mababa. Ang pag-aalinlangan ng engineer, hindi ang "mahusay" na interpretasyon ng AI, ang nagligtas sa trabaho.

Kaso 3 - Pag-iwas sa paglabag sa privacy. Ipina-paste ng isang team ang mga log ng error sa produksyon sa isang panlabas na modelo at sinasabing "ayusin ang error na ito." May mga numero ng pagkakakilanlan ng customer sa mga log. Ang koponan ay gumawa ng isang panuntunan ng pagsulat ng isang maliit na script na i-mask muna ang mga log (ginagawa ang kanilang mga numero ng ID ***) at ipadala ang mga ito sa ganoong paraan. Ang panganib ng paglabag ay nawala, ang bilis ng tulong ay hindi nagbago.

Mga nakopyang template

Gawain: [what to do, single sentence]Context: [data schema, size, constraints; WALANG ACTUAL na personal na data]Mga hadlang: [wika/library, performance, reproducibility]Mga sukatan: [paano sukatin ang tagumpay]Ninanais na output: [code/description/list] at bakit nasa ganitong format

Tingnan ang code na ito. Suriin hindi lamang kung gumagana ito, kundi pati na rin sa mga tuntunin ng:1) Mga Edge case (walang laman na input, nawawalang column, napakalaking data)2) Panganib ng pagtagas ng data3) Reproducibility (seed, bersyon)Magmungkahi ng mga pag-aayos para sa bawat problemang makikita mo. Markahan ang "verify" kung saan hindi ka sigurado. Code: [code]

Bigyang-kahulugan ang resulta ng sukatang ito, ngunit itanong muna: tama ba ang sukatang ito para sa problemang ito? Problema: [balanse/hindi balanseng pag-uuri, regression, ranking...]Naiulat na sukatan at halaga: [hal. katumpakan 0.99]Aling sukatan ang irerekomenda mo at bakit, at anong mga senyales ang dapat kong hanapin para pagdudahan ako sa kasalukuyang resulta?

Suriin kung mayroong personal/kumpidensyal na impormasyon sa data na ibibigay ko sa sumusunod na prompt. Ilista ang mga field (pangalan, e-mail, ID number, telepono, address) na kailangang i-mask sa teksto sa ibaba. Teksto: [teksto]

Talahanayan ng tungkulin at awtoridad

Paghanap

Ang papel ng artificial intelligence

May-ari ng desisyon

Code skeleton / function ng pagbabago

draft generator

Engineer (mga review)

EDA / buod ng data

accelerator

Engineer (nagbe-verify sa pamamagitan ng pagsukat)

Pagpapakahulugan sa panukat

Mungkahi

inhinyero

Anong data ang mapupunta sa pagsasanay?

Mungkahi

May-ari ng team + data

Ilagay ang modelo sa produksyon

Paalala sa checklist

Responsableng engineer + team

Pagproseso ng personal na data

Wala (hindi ginagamit)

Legal + data controller

Mga karaniwang pagkakamali

  • Gamit ang output nang hindi pinapatunayan ito. Ang pinakakaraniwan at pinakamahal na pagkakamali. Ang code o sukatan na mukhang maganda ay hindi nangangahulugan na ito ay tama.
  • Pag-paste ng hilaw na kumpidensyal na data sa tool. Kapag naipadala na, hindi na ito mababawi.
  • Umaasa sa maling sukatan. Ang mga hindi tugmang sukatan tulad ng katumpakan sa hindi balanseng data at RMSE sa mga problema sa pagraranggo ay nakakapanlinlang.
  • Napagkakamalang artificial intelligence bilang gumagawa ng desisyon. Nagbibigay siya ng mga mungkahi; Ang responsibilidad ay nakasalalay sa pumirma.
  • Contextless prompt. Ang mga hindi tiyak na kahilingan tulad ng "magsulat ng isang modelo" ay gumagawa ng hindi nabe-verify na output.

Sa buod

Ang artificial intelligence ay parehong produkto na binuo ng ML engineer at ang pang-araw-araw na replicator nito. Ang halaga nito ay pinakamataas sa mababang panganib, madaling ma-verify na mga gawain tulad ng code-data-document; Ang mga desisyon na nakakaapekto sa pera, privacy at seguridad ay nananatili sa tao. Ikonekta ang bawat output sa pinagmulan, sukatin muli, dumaan sa filter ng engineering. Protektahan ang kumpidensyal na data, gumamit ng mga inaprubahang sasakyan, magtrabaho sa seguridad para sa mga layuning pangdepensa lamang. Ang disiplina na ito ay ang batayan para sa lahat ng kasunod na mga yunit.

Gawain ng aplikasyon

Pumili ng isang gawain mula sa iyong sariling proyekto (hal. pagsulat ng function ng paglilinis ng data). Sumulat muna ng mahinang prompt, pagkatapos ay sumulat ng malakas na prompt gamit ang template sa unit na ito. Kunin ang parehong mga output, ilapat ang tatlong-hakbang na pag-verify (link sa pinagmulan, muling pagtakbo, filter ng engineering). Tandaan kung aling prompt ang nagse-save kung gaano karaming minuto at kung gaano karaming mga pagwawasto.

checklist

  • [ ] Natukoy ko ang antas ng panganib (mababa/mataas) ng aking gawain.
  • [ ] Hindi ako naglagay ng anumang aktwal na personal/kumpidensyal na data sa prompt; Nimaskara ko ito o gumamit ng synthetic sample.
  • [ ] Ikinonekta ko ang output sa pinagmulan, pinatakbo itong muli, na-filter ito mula sa pananaw ng engineering.
  • [ ] Sinuri ko kung pinili ko ang tamang sukatan.
  • [ ] Ginawa ko ang kritikal na desisyon (paglalagay nito sa produksyon, pagpoproseso ng data) sa aking sarili/sa koponan, hindi ko ito ipinaubaya sa artificial intelligence.
  • [ ] Gumamit ako ng sasakyang inaprubahan ng kumpanya.