નફો:
- ML વર્કફ્લો (કોડ, ડેટા, દસ્તાવેજ)માં આર્ટિફિશિયલ ઇન્ટેલિજન્સ ક્યાં ઓછા જોખમ સાથે સમય બચાવે છે અને જ્યાં મેટ્રિક/ડેટા/પ્રોડક્શનમાં મૂકવા જેવા નિર્ણયો, કાર્ય જોખમ સ્તર અનુસાર, માનવ પર છોડવામાં આવે છે તે પારખવામાં સક્ષમ હોવાને કારણે.
- એવી શિસ્ત લાગુ કરવાની ક્ષમતા કે જે દરેક AI આઉટપુટને સ્ત્રોત સાથે કનેક્ટ કરીને, તેને ફરીથી ચલાવીને, તેને માપીને અને તેને એન્જિનિયરિંગ ફિલ્ટરમાંથી પસાર કરીને ચકાસે.
- કાચા ગોપનીય અને વ્યક્તિગત ડેટાને બાહ્ય સાધનોમાં ન મોકલવાની, કોર્પોરેટ-મંજૂર સાધનોનો ઉપયોગ કરીને અને માત્ર રક્ષણાત્મક હેતુઓ માટે સુરક્ષા મુદ્દાઓને હેન્ડલ કરવાની આદત મેળવવાની ક્ષમતા.
મશીન લર્નિંગ એન્જિનિયરિંગમાં કૃત્રિમ બુદ્ધિ: ભૂમિકા, સીમાઓ, માન્યતા અને જવાબદારી
એક મશીન લર્નિંગ એન્જિનિયર (એમએલ એન્જિનિયર: એક સોફ્ટવેર પ્રોફેશનલ જે ડેટાથી ઉત્પાદનમાં શીખતા મોડલને ડિઝાઇન કરે છે, તાલીમ આપે છે અને લાવે છે) આજે તેની નોકરીના દરેક પગલા પર અન્ય આર્ટિફિશિયલ ઇન્ટેલિજન્સ ટૂલ સાથે કામ કરે છે. કોડ લખતી વખતે કોડિંગ સહાયક અસરમાં હોય છે, જ્યારે ડેટાની શોધખોળ કરતી વખતે વાતચીતનું મોડલ અને ડોક્યુમેન્ટેશન બનાવતી વખતે એક વિશાળ ભાષા મોડલ (એલએલએમ: અબજો પેરામીટર્સ સાથેનું ન્યુરલ નેટવર્ક જે ટેક્સ્ટને સમજે છે અને બનાવે છે). આ મોડ્યુલ કૃત્રિમ બુદ્ધિમત્તાને વિકસિત ઉત્પાદન અને એમએલ એન્જિનિયરના રોજિંદા કાર્ય સાધન બંને તરીકે માને છે. તે બે ભૂમિકાઓને મિશ્રિત કર્યા વિના જવાબદારીની સીમાઓને સ્પષ્ટ રીતે દર્શાવીને કાર્ય કરે છે.
આ પ્રથમ એકમમાં, અમે મૂળભૂત પ્રશ્નનો જવાબ આપીએ છીએ: ML એન્જિનિયરિંગમાં કૃત્રિમ બુદ્ધિમત્તા વાસ્તવિક સમયને ક્યાં બચાવે છે, અને આપણે નિર્ણય ક્યાં માનવો પર છોડવો જોઈએ? જવાબ એન્જિનિયરિંગ શિસ્તના હાર્દમાં છે: જે બનાવે છે તે ઝડપી છે, જે ચકાસે છે તે જવાબદાર છે.
ML એન્જિનિયરિંગમાં આર્ટિફિશિયલ ઇન્ટેલિજન્સ ક્યાં કામમાં આવે છે?
એક ML પ્રોજેક્ટ લગભગ નીચેની લીટીઓમાંથી પસાર થાય છે: ડેટા સંગ્રહ, ડેટા ક્લિનિંગ, ફીચર એન્જિનિયરિંગ (કાચા ડેટાનું ડિજિટલ સિગ્નલોમાં ભાષાંતર કરવું કે જે મોડેલ સમજી શકે છે), મોડેલ તાલીમ, મૂલ્યાંકન, જમાવટ (ડિપ્લોયમેન્ટ: વાસ્તવિક વપરાશકર્તા માટે મોડેલ ખોલવું) અને દેખરેખ. AI આ લાઇનના દરેક સ્ટોપ પર મદદ કરે છે, પરંતુ તેની સત્તાનું સ્તર બદલાય છે.
ઉચ્ચ-પુરસ્કાર, ઓછા જોખમવાળા વિસ્તારો: કોડ હાડપિંજરનું નિર્માણ કરવું, ડેટા ટ્રાન્સફોર્મેશન ફંક્શનનો મુસદ્દો તૈયાર કરવો, લોગ સંદેશાઓનું અર્થઘટન કરવું, સ્ટેક ટ્રેસનું વર્ણન કરવું, પ્રયોગ નોંધોનો સારાંશ આપવો, દસ્તાવેજીકરણ અને READMEs લખવા, ટેસ્ટ કેસની દરખાસ્ત કરવી. અહીં, કૃત્રિમ બુદ્ધિની ભૂલો સસ્તી છે; કારણ કે આઉટપુટ પહેલાથી જ પરીક્ષણ અને સમીક્ષામાંથી પસાર થશે.
ઉચ્ચ જોખમ વિસ્તારો: તાલીમમાં કયો ડેટા જાય છે તે નક્કી કરવું, મોડેલ ઉત્પાદનમાં જવું જોઈએ કે કેમ તેની પુષ્ટિ કરવી, મેટ્રિકનું મૂલ્યાંકન કરવું "પૂરતું સારું છે", વ્યક્તિગત ડેટા પર પ્રક્રિયા કરવાનો નિર્ણય, સુરક્ષા નબળાઈને "જંક" તરીકે બંધ કરવી. આ નાણાં, ગોપનીયતા, કાનૂની જવાબદારી અને વપરાશકર્તા વિશ્વાસને અસર કરે છે. કૃત્રિમ બુદ્ધિ અહીં સૂચનો આપે છે; સક્ષમ ઈજનેર અને જવાબદાર ટીમ દ્વારા નિર્ણય લેવામાં આવે છે.
ટીપ: AI ને કોઈ કાર્ય આઉટસોર્સ કરતા પહેલા, પૂછો: "જો આ આઉટપુટ ખોટું હોય તો તેની કિંમત શું છે, અને કોઈ કેટલી સરળતાથી ભૂલ પકડી લેશે?" જો કિંમત ઓછી છે અને કેપ્ચર કરવું સરળ છે, તો તેને પસાર કરો. જો કિંમત વધારે હોય અથવા કેપ્ચર કરવું મુશ્કેલ હોય, તો ડ્રાફ્ટ માટે જ AI નો ઉપયોગ કરો અને તમે નક્કી કરો.
ચકાસણી શિસ્ત: ત્રણ પગલાં
ML એન્જિનિયરિંગમાં, AI આઉટપુટ ક્યારેય "સમાપ્ત કાર્ય" નથી; તે ડ્રાફ્ટ છે. આ ત્રણ પગલાઓ દ્વારા દરેક આઉટપુટ ચલાવો:
- તેને સ્ત્રોત સાથે જોડો. જો મોડેલે કોઈ સંખ્યા, થ્રેશોલ્ડ અથવા "શ્રેષ્ઠ પ્રેક્ટિસ" કહ્યું હોય, તો તેને સત્તાવાર દસ્તાવેજીકરણ, કોડબેઝમાં વાસ્તવિક મૂલ્ય અથવા માપેલા મેટ્રિક પર આધારિત કરો. "મૉડલનું ફિટિંગ" (ભાષા મૉડલ દ્વારા બિન-વાસ્તવિક માહિતીનું આત્મવિશ્વાસપૂર્ણ ઉત્પાદન) મોટાભાગે અહીં પકડાય છે.
- પુનઃપ્રારંભ કરો અને માપો. જનરેટ કરેલ કોડ ચલાવો, તે તમારા પોતાના ટેસ્ટ સેટ પર બનાવેલ મેટ્રિકની પુનઃગણતરી કરો, નાના નમૂના પર સૂચિત SQL ક્વેરી માન્ય કરો. કોડ કે જે કામ કરતું નથી તે નકામું છે, ભલે તે સરસ દેખાય.
- તેને એન્જિનિયરિંગ ફિલ્ટરમાંથી પસાર કરો. શું આઉટપુટ સ્કેલ પર રહે છે? શું ધારના કિસ્સાઓ (ખાલી ડેટા, ખૂબ મોટા ઇનપુટ, ખૂટતા ક્ષેત્રો) ધ્યાનમાં લેવામાં આવ્યા છે? શું ત્યાં સુરક્ષા અને ગોપનીયતાનો ભંગ છે? આ પગલું માત્ર ક્ષેત્ર જાણનાર વ્યક્તિ જ કરી શકે છે.
નબળા પ્રોમ્પ્ટ / મજબૂત પ્રોમ્પ્ટ
નબળો પ્રોમ્પ્ટ: "મને અમુક મોડેલ તાલીમ કોડ લખો."
શક્તિશાળી પ્રોમ્પ્ટ: "સ્કિટ-લર્ન સાથે દ્વિસંગી વર્ગીકરણ માટે તાલીમ સ્ક્રિપ્ટ લખો. ઇનપુટ: data/train.parquet, લક્ષ્ય કૉલમ is_churn. ત્યાં વર્ગ અસંતુલન છે (પોઝિટિવ દર ~8%), તેને class_weight સાથે હેન્ડલ કરો. PR-AUC (ચોકસાઇ-રિકોલ કર્વ હેઠળનો વિસ્તાર) નો ઉપયોગ કરો કારણ કે unbalcy, unbalance metricia છે. ડેટા રેન્ડમ સીડને 42 પર ઠીક કરો. કોડ પ્રિન્ટ સેટ PR-AUC ના અંતે પરીક્ષણ કરો."
તફાવત: બીજા પ્રોમ્પ્ટ કાર્યમાં ડેટા સત્ય, સાચો મેટ્રિક, અસંતુલન માહિતી અને પુનરાવર્તિતતા આવશ્યકતા છે. તે આ સંદર્ભમાંથી છે કે આઉટપુટ ચકાસી શકાય તેવું અને ઉપયોગી છે.
ગોપનીયતા અને ડેટા સુરક્ષા: એન્જિનિયરની પ્રથમ જવાબદારી
ML એન્જિનિયર ઘણીવાર કંપનીના સૌથી સંવેદનશીલ ડેટાને સ્પર્શે છે: ગ્રાહક રેકોર્ડ્સ, ટ્રાન્ઝેક્શન ઇતિહાસ, આરોગ્ય અથવા નાણાકીય ડેટા, ઉત્પાદન સિસ્ટમ્સના લોગ. આર્ટિફિશિયલ ઇન્ટેલિજન્સ ટૂલ્સને ડેટા આપતી વખતે ત્રણ નિયમો:
- બાહ્ય સાધનો પર કાચો વ્યક્તિગત અને ગોપનીય ડેટા મોકલશો નહીં. ઉદાહરણ તરીકે, ગ્રાહકના ઈમેઈલને પ્રોમ્પ્ટમાં પેસ્ટ કરવાને બદલે, સ્કીમા અને ડમી (સિન્થેટિક) સેમ્પલ મોકલો. વાસ્તવિક ડેટાને બદલે "ex: ahmet@example.com" જેવા માસ્ક કરેલા ઉદાહરણનો ઉપયોગ કરો.
- કોર્પોરેટ માન્ય વાહનોનો ઉપયોગ કરો. એવા સાધનો પસંદ કરો કે જે કરાર મુજબ સ્પષ્ટ હોય કે ડેટા ક્યાં પ્રક્રિયા કરવામાં આવે છે, તે સંગ્રહિત થાય છે કે કેમ, તેનો ઉપયોગ શિક્ષણ માટે થાય છે કે નહીં. વ્યક્તિગત ખાતા સાથે કોર્પોરેટ ડેટા પર પ્રક્રિયા કરવી એ મોટાભાગની કંપનીઓમાં ઉલ્લંઘન છે.
- ન્યૂનતમ ડેટા નીતિ. કાર્યને હલ કરવા માટે જરૂરી ન્યૂનતમ સંદર્ભ આપો. સમગ્ર કોષ્ટક નહીં, પરંતુ સંબંધિત 5 કૉલમ અને સ્કીમા.
સાવધાન: ધારો કે તમે ભાષા મોડેલને જે ટેક્સ્ટ આપો છો તે પૂર્વવત્ કરી શકાતું નથી. "હું તેને પછીથી કાઢી નાખીશ" એમ વિચારીને કાચો વ્યક્તિગત ડેટા મોકલશો નહીં; જોખમ તે મોકલવામાં આવ્યું તે ક્ષણે આવી.
સુરક્ષાના ક્ષેત્રમાં રક્ષણાત્મક ઉપયોગ
ML એન્જિનિયરો ઘણીવાર સુરક્ષા સિસ્ટમ્સ ઇન્સ્ટોલ કરે છે: છેતરપિંડી શોધ, દૂષિત ટ્રાફિક વર્ગીકરણ, પ્રમાણીકરણ. આ સમગ્ર મોડ્યુલ દરમિયાન, અમે માત્ર રક્ષણાત્મક હેતુઓ માટે સુરક્ષા મુદ્દાઓને આવરી લઈએ છીએ: હુમલાને શોધી કાઢવો, સિસ્ટમને સખત બનાવવી, નબળાઈને બંધ કરવી. અનધિકૃત ઍક્સેસ, ડેટા લીક અથવા અન્ય કોઈની સિસ્ટમમાં અનધિકૃત હસ્તક્ષેપ માટે કૃત્રિમ બુદ્ધિમત્તાનો ઉપયોગ ગેરકાયદેસર અને વ્યાવસાયિક નીતિશાસ્ત્રની વિરુદ્ધ છે. જ્યારે તમને કોઈ નબળાઈ મળે, ત્યારે જવાબદારીપૂર્વક તેની જાણ કરવી અને તેને ઠીક કરવાનો યોગ્ય માર્ગ છે; શોષણ નથી.
ત્રણ નાના કેસો
કેસ 1 - સમય બચાવ્યો. એક ML એન્જિનિયર સામાન્ય રીતે 40-કૉલમ ડેટા સેટના એક્સપ્લોરેટરી ડેટા એનાલિસિસ (EDA) કરવામાં અડધો દિવસ પસાર કરે છે. તેણે આર્ટિફિશિયલ ઇન્ટેલિજન્સ માટે સ્કીમા અને df.describe() આઉટપુટ આપ્યું અને પૂછ્યું, "કયા કૉલમમાં આઉટલીયર અને ખૂટતો દર વધારે છે, તમે કયા ટ્રાન્સફોર્મેશનની ભલામણ કરો છો?" 20 મિનિટમાં, તેણે દરેક આઇટમને તેના પોતાના કોડ વડે ચકાસીને પ્રાથમિકતાની સૂચિ પ્રાપ્ત કરી. બચાવો: ~3 કલાક, ભૂલનું ઓછું જોખમ કારણ કે દરેક દાવાને માપવામાં આવે છે.
કેસ 2 - ભૂલ પકડાઈ. "તાલીમ ચોકસાઈ 99% છે, સરસ," મોડેલે ચેટ સહાયકને કહ્યું હતું. એન્જિનિયરે ત્રીજું પગલું (એન્જિનિયરિંગ ફિલ્ટર) લાગુ કર્યું અને સમજાયું: લક્ષ્ય કૉલમમાં આકસ્મિક રીતે વિશેષતાઓ લીક થઈ ગઈ હતી (ડેટા લિકેજ: મોડેલ એવી માહિતી જુએ છે જે તેને તાલીમમાં ન જોવી જોઈએ). વાસ્તવિક કામગીરી ઘણી ઓછી હતી. એઆઈના "મહાન" અર્થઘટનથી નહીં, પણ એન્જિનિયરની શંકાએ નોકરી બચાવી.
કેસ 3 - ગોપનીયતા ભંગ અટકાવવા. એક ટીમ પ્રોડક્શન એરર લૉગ્સને એક્સટર્નલ મૉડલમાં પેસ્ટ કરી રહી હતી અને "આ ભૂલને ઠીક કરો" કહી રહી હતી. લોગમાં ગ્રાહક ઓળખ નંબરો હતા. ટીમે એક નાની સ્ક્રિપ્ટ લખવાનો નિયમ બનાવ્યો જે પહેલા લોગને માસ્ક કરે છે (તેમના આઈડી નંબર *** બનાવે છે) અને તે રીતે મોકલે છે. ભંગનું જોખમ અદૃશ્ય થઈ ગયું છે, સહાયની ઝડપ બદલાઈ નથી.
નકલ કરી શકાય તેવા નમૂનાઓ
કાર્ય: [શું કરવું, એક વાક્ય]સંદર્ભ: [ડેટા સ્કીમા, કદ, અવરોધો; કોઈ વાસ્તવિક વ્યક્તિગત ડેટા નથી] અવરોધો: [ભાષા/લાઇબ્રેરી, પ્રદર્શન, પુનઃઉત્પાદનક્ષમતા]મેટ્રિક્સ: [સફળતા કેવી રીતે માપવી]ઇચ્છિત આઉટપુટ: [કોડ/વર્ણન/સૂચિ] અને આ ફોર્મેટમાં શા માટે
આ કોડ તપાસો. મૂલ્યાંકન કરો કે તે માત્ર કામ કરે છે, પણ આના સંદર્ભમાં પણ: 1) એજ કેસ (ખાલી ઇનપુટ, ખૂટે છે કૉલમ, ખૂબ મોટો ડેટા) 2) ડેટા લીકેજનું જોખમ3) પુનઃઉત્પાદનક્ષમતા (બીજ, સંસ્કરણ)તમને મળેલી દરેક સમસ્યા માટે સુધારાઓ સૂચવો. જ્યાં તમને ખાતરી ન હોય ત્યાં "ચકાસણી કરો" ચિહ્નિત કરો. કોડ: [કોડ]
આ મેટ્રિકના પરિણામનું અર્થઘટન કરો, પરંતુ પહેલા પૂછો: શું આ સમસ્યા માટે આ મેટ્રિક યોગ્ય છે? સમસ્યા: [સંતુલિત/અસંતુલિત વર્ગીકરણ, રીગ્રેસન, રેન્કિંગ...]રિપોર્ટેડ મેટ્રિક અને મૂલ્ય: [દા.ત. ચોકસાઈ 0.99]તમે કયા મેટ્રિકની ભલામણ કરશો અને શા માટે, અને મને વર્તમાન પરિણામ પર શંકા કરવા માટે મારે કયા સંકેતો જોવું જોઈએ?
હું નીચેના પ્રોમ્પ્ટ પર જે ડેટા આપીશ તેમાં વ્યક્તિગત/ગોપનીય માહિતી છે કે કેમ તે તપાસો. ફીલ્ડ્સ (નામ, ઈ-મેલ, આઈડી નંબર, ફોન, સરનામું) સૂચિબદ્ધ કરો જેને નીચેના ટેક્સ્ટમાં માસ્ક કરવાની જરૂર છે. ટેક્સ્ટ: [ટેક્સ્ટ]
ભૂમિકા અને સત્તા ટેબલ
ક્વેસ્ટ
કૃત્રિમ બુદ્ધિની ભૂમિકા
નિર્ણયના માલિક
કોડ સ્કેલેટન / ટ્રાન્સફોર્મેશન ફંક્શન
ડ્રાફ્ટ જનરેટર
એન્જિનિયર (સમીક્ષાઓ)
EDA / ડેટા સારાંશ
પ્રવેગક
એન્જિનિયર (માપ દ્વારા ચકાસે છે)
મેટ્રિક અર્થઘટન
સૂચન
એન્જિનિયર
તાલીમમાં કયો ડેટા જશે?
સૂચન
ટીમ + ડેટા માલિક
મોડેલને ઉત્પાદનમાં મૂકો
ચેકલિસ્ટ રીમાઇન્ડર
જવાબદાર ઈજનેર + ટીમ
વ્યક્તિગત ડેટા પ્રોસેસિંગ
કોઈ નહીં (વપરાયેલ નથી)
કાનૂની + ડેટા નિયંત્રક
સામાન્ય ભૂલો
- આઉટપુટને માન્ય કર્યા વિના તેનો ઉપયોગ કરવો. સૌથી સામાન્ય અને સૌથી ખર્ચાળ ભૂલ. કોડ અથવા મેટ્રિક જે સરસ લાગે છે તેનો અર્થ એ નથી કે તે સાચું છે.
- ટૂલમાં કાચો ગોપનીય ડેટા પેસ્ટ કરવો. એકવાર મોકલ્યા પછી, તે પાછું લઈ શકાતું નથી.
- ખોટા મેટ્રિક પર આધાર રાખવો. અસંતુલિત ડેટામાં સચોટતા અને રેન્કિંગ સમસ્યાઓમાં RMSE જેવા અસંગત મેટ્રિક્સ ગેરમાર્ગે દોરે છે.
- નિર્ણય નિર્માતા તરીકે કૃત્રિમ બુદ્ધિને ભૂલ કરવી. તે સૂચનો આપે છે; જવાબદારી સહી કરનારની છે.
- સંદર્ભહીન પ્રોમ્પ્ટ. "મૉડલ લખો" જેવી અસ્પષ્ટ વિનંતીઓ અચકાસણીય આઉટપુટ ઉત્પન્ન કરે છે.
સારાંશમાં
આર્ટિફિશિયલ ઇન્ટેલિજન્સ એ એમએલ એન્જિનિયર અને તેની દૈનિક પ્રતિકૃતિ બંને દ્વારા વિકસિત ઉત્પાદન છે. કોડ-ડેટા-દસ્તાવેજ જેવા ઓછા જોખમવાળા, સહેલાઈથી ચકાસાયેલ કાર્યોમાં તેનું મૂલ્ય સૌથી વધુ છે; પૈસા, ગોપનીયતા અને સુરક્ષાને અસર કરતા નિર્ણયો વ્યક્તિ પાસે રહે છે. દરેક આઉટપુટને સ્ત્રોત સાથે જોડો, ફરીથી માપો, એન્જિનિયરિંગ ફિલ્ટરમાંથી પસાર થાઓ. ગોપનીય ડેટાને સુરક્ષિત કરો, માન્ય વાહનોનો ઉપયોગ કરો, માત્ર રક્ષણાત્મક હેતુઓ માટે સુરક્ષામાં કામ કરો. આ શિસ્ત એ પછીના તમામ એકમો માટેનો આધાર છે.
એપ્લિકેશન કાર્ય
તમારા પોતાના પ્રોજેક્ટમાંથી એક કાર્ય પસંદ કરો (દા.ત. ડેટા ક્લિનિંગ ફંક્શન લખવું). પહેલા નબળા પ્રોમ્પ્ટ લખો, પછી આ એકમમાં ટેમ્પલેટનો ઉપયોગ કરીને મજબૂત પ્રોમ્પ્ટ લખો. બંને આઉટપુટ લો, થ્રી-સ્ટેપ વેરિફિકેશન લાગુ કરો (સ્રોતની લિંક, ફરીથી ચલાવો, એન્જિનિયરિંગ ફિલ્ટર). નોંધ કરો કે કયો પ્રોમ્પ્ટ કેટલી મિનિટ અને કેટલા સુધારા બચાવે છે.
ચેકલિસ્ટ
- [] મેં મારા કાર્યનું જોખમ સ્તર (નીચું/ઉચ્ચ) નક્કી કર્યું છે.
- [ ] મેં પ્રોમ્પ્ટમાં કોઈ વાસ્તવિક વ્યક્તિગત/ગોપનીય ડેટા મૂક્યો નથી; મેં તેને માસ્ક કર્યો અથવા કૃત્રિમ નમૂનાનો ઉપયોગ કર્યો.
- [ ] મેં આઉટપુટને સ્ત્રોત સાથે કનેક્ટ કર્યું, તેને ફરીથી ચલાવ્યું, તેને એન્જિનિયરિંગ પરિપ્રેક્ષ્યથી ફિલ્ટર કર્યું.
- [ ] મેં તપાસ્યું કે મેં સાચો મેટ્રિક પસંદ કર્યો છે.
- [] મેં જાતે/ટીમ સાથે નિર્ણાયક નિર્ણય લીધો (તેને ઉત્પાદનમાં, ડેટા પ્રોસેસિંગમાં મૂકવો), મેં તેને આર્ટિફિશિયલ ઇન્ટેલિજન્સ પર છોડ્યું નથી.
- [ ] મેં કોર્પોરેટ માન્ય વાહનનો ઉપયોગ કર્યો છે.