లాభాలు:
- డేటా పైప్లైన్ను సెటప్ చేయగల సామర్థ్యం (సేకరణ, ధ్రువీకరణ, ప్రక్షాళన, రూపాంతరం, విభజన, సంస్కరణ) మరియు పైప్లైన్ ప్రారంభంలో స్కీమా ధ్రువీకరణను ఉంచడం
- డేటా లీకేజీని నిరోధించడానికి ఫీల్డ్ అర్థం మరియు విభజన ఆధారంగా తప్పిపోయిన విలువ మరియు లేబులింగ్ నిర్ణయాలు తీసుకునే సామర్థ్యం (సమూహం మరియు తాత్కాలిక)
- డేటా వెర్షన్ మరియు ర్యాండమ్నెస్ సీడ్ను పరిష్కరించడం ద్వారా పునరుత్పాదక డేటా బేస్ను సృష్టించగల సామర్థ్యం
ప్రతి మెషిన్ లెర్నింగ్ సిస్టమ్ యొక్క నిజమైన శక్తి డేటాలో ఉంది, మోడల్లో కాదు. అనుభవజ్ఞులైన ఇంజనీర్లకు తెలుసు: “గార్బేజ్ ఇన్, గార్బేజ్ అవుట్” — అత్యంత అధునాతన మోడల్ ఫెడ్ బ్యాడ్ డేటా కూడా చెడు ఫలితాలను ఇస్తుంది. ఈ యూనిట్లో, మేము డేటా పైప్లైన్ (డేటా పైప్లైన్: మోడల్ శిక్షణ కోసం ముడి డేటాను సిద్ధం చేసే దశల గొలుసు)ను ఎండ్ టు ఎండ్ మరియు ఈ లైన్లోని ఏ దశలో మనం సురక్షితంగా కృత్రిమ మేధస్సును ఉపయోగించవచ్చో తెలుసుకుంటాము.
డేటా లైన్ యొక్క దశలు
డేటా లైన్ సాధారణంగా ఈ స్టాప్ల గుండా వెళుతుంది:
- సేకరణ (ఇంజెషన్): మూలాల నుండి డేటాను లాగడం (డేటాబేస్, API, లాగ్ ఫైల్లు, ఈవెంట్ స్ట్రీమ్లు).
- ధ్రువీకరణ: డేటా ఆశించిన స్కీమా, రకాలు మరియు పరిధులకు అనుగుణంగా ఉందో లేదో తనిఖీ చేస్తోంది.
- క్లీనింగ్: తప్పిపోయిన విలువలు, నకిలీ రికార్డులు, అవుట్లయర్లు మరియు అసమానతలను నిర్వహించడం.
- రూపాంతరం: ముడి డేటాను అట్రిబ్యూట్లుగా మార్చడం — వర్గీకరణ వేరియబుల్ను సంఖ్యగా మార్చడం, తేదీ నుండి "వారంలో రోజు"ని ఉత్పత్తి చేయడం వంటివి.
- విభజన: శిక్షణ, ధ్రువీకరణ మరియు పరీక్ష సెట్లుగా విభజించడం.
- సంస్కరణ: ఏ డేటాతో ఏ మోడల్ శిక్షణ పొందిందో రికార్డ్ చేయడం.
ఆర్టిఫిషియల్ ఇంటెలిజెన్స్ కోడ్ చిత్తుప్రతులు మరియు ఆలోచనలను రూపొందించడం ద్వారా సమయాన్ని ఆదా చేస్తుంది, ముఖ్యంగా 2, 3 మరియు 4 దశల్లో. అయితే ఏ రికార్డ్ను విస్మరించాలి, ఏ తప్పిపోయిన విలువను పూరించాలి మరియు ఎలా వంటి నిర్ణయాలు డేటా తెలిసిన ఇంజనీర్కు చెందుతాయి; ఎందుకంటే సరికాని శుభ్రత మోడల్లో దాచిన పక్షపాతాన్ని ఇంజెక్ట్ చేస్తుంది.
డేటా ధృవీకరణ: లైన్ యొక్క ముందస్తు రక్షణ
అత్యంత ఖరీదైన లోపాలు ఉత్పత్తిలో కాదు, ధృవీకరణ దశ దాటవేయబడిన చోట ప్రారంభమవుతాయి. స్కీమా ధృవీకరణ ప్రతి ఇన్కమింగ్ బ్యాచ్ అంచనా నిర్మాణానికి అనుగుణంగా ఉందో లేదో స్వయంచాలకంగా తనిఖీ చేస్తుంది. ఉదాహరణకు, వయస్సు కాలమ్ 0-120 మధ్య ఉందా, ఇమెయిల్ ఫీల్డ్ ఖాళీగా ఉందా, నిలువు వరుసల సంఖ్య మారిందా?
చిట్కా: ధృవీకరణను లైన్ ప్రారంభంలో ఉంచండి. అవినీతి డేటా ఎంత త్వరగా పట్టుబడితే, దాన్ని పరిష్కరించడం అంత చౌకగా ఉంటుంది. శిక్షణ దశలో పట్టుకున్న దాని కంటే ఉత్పత్తిలో చిక్కుకున్న స్కీమా లోపం చాలా రెట్లు ఎక్కువ ఖరీదైనది.
కింది డేటా స్కీమా కోసం పందేరా (లేదా గొప్ప అంచనాలు)తో ధ్రువీకరణ పథకాన్ని వ్రాయండి. నిలువు వరుసలు మరియు నియమాలు:- user_id: పూర్ణాంకం, శూన్యమైనది కాకూడదు, ప్రత్యేకం- వయస్సు: పూర్ణాంకం, 0-120 నుండి ఉండకూడదు- signup_date: తేదీ, భవిష్యత్తులో ఉండకూడదు- దేశం: వర్గీకరణ, సెట్ నుండి {TR, DE, US, UK}- బ్యాలెన్స్: దశాంశం, ప్రతికూలంగా ఉండకూడదు. కోడ్ చివరిలో విరిగిన పంక్తితో పరీక్షను చూపండి.
శుభ్రపరచడం: నిర్ణయించేది మానవుడే
తప్పిపోయిన విలువలు ప్రతి డేటా సెట్ యొక్క వాస్తవికత. నిర్వహించడానికి మార్గాలు:
- తొలగింపు: చాలా ఎక్కువ మిస్సింగ్ రేట్తో అడ్డు వరుస/నిలువు వరుసను విస్మరించడం. కానీ సమాచారం నష్టం మరియు పక్షపాతం ప్రమాదం ఉంది.
- ఇంప్యుటేషన్: సగటు, మధ్యస్థ, అత్యంత తరచుగా ఉండే విలువ లేదా మోడల్ ఆధారిత అంచనాతో ఇంప్యుటేషన్.
- ఫ్లాగ్: ప్రత్యేక ఫ్లాగ్ కాలమ్లో “తప్పిపోయిన” సమాచారాన్ని నిల్వ చేయడం — కొన్నిసార్లు తప్పిపోయిన సంకేతం.
ఏది సరైనది అనేది సమస్యపై ఆధారపడి ఉంటుంది. మెడికల్ డేటా సెట్లో, "రక్త విలువ కొలవబడదు" సమాచారం తొలగించబడకుండా భద్రపరచబడాలి; ఎందుకంటే డాక్టర్ కూడా కొలతలు తీసుకోవడానికి నిరాకరించడం ఒక సంకేతం. AI మీకు ఎంపికలు మరియు కోడ్ ఇవ్వగలదు; మీరు ఫీల్డ్ యొక్క వాస్తవికతకు ఏది సరిపోతుందో ఎంచుకోండి.
బలహీనమైన ప్రాంప్ట్ / బలమైన ప్రాంప్ట్
బలహీనమైన ప్రాంప్ట్: "తప్పిపోయిన విలువలను పూరించండి."
బలమైన ప్రాంప్ట్: "క్రింది నిలువు వరుసలలో తప్పిపోయిన విలువలు ఉన్నాయి: ఆదాయం (12% లేదు, కుడి-వక్రంగా పంపిణీ), చివరి_లాగిన్ (30% లేదు). మధ్యస్థంతో ఆదాయాన్ని పూరించడాన్ని సూచించండి, కానీ మధ్యస్థంగా మరియు ఎందుకు అర్థం కాదో వివరించండి. చివరి_లాగిన్ కోసం, తప్పిపోయిన విలువ గణనీయంగా ఉండవచ్చని భావించండి (వినియోగదారుని లాగ్ ఇన్ ఫ్లాగ్ ఇన్ చేసి ఉండకపోవచ్చు); పక్షపాత విధానం మోడల్కు జోడిస్తుంది."
తేడా: బలమైన ప్రాంప్ట్ పంపిణీ సమాచారం మరియు ప్రాంతం అర్థాన్ని ఇస్తుంది; కృత్రిమ మేధస్సు మెకానికల్ ఫిల్లింగ్కు బదులుగా నిర్ణయ మద్దతును ఉత్పత్తి చేస్తుంది.
లేబులింగ్: నాణ్యత కొలుస్తారు
పర్యవేక్షించబడే అభ్యాసంలో (సరైన సమాధానాలతో ఉదాహరణలు ఇవ్వబడిన అభ్యాసం), మోడల్ నేర్చుకునేవి లేబుల్లు (లేబుల్లు: ప్రతి ఉదాహరణకి సరైన సమాధానం). లేబుల్ నాణ్యత సీలింగ్ను సెట్ చేస్తుంది - వ్యక్తులు అస్థిరంగా లేబుల్ చేస్తే, మోడల్ అస్థిరంగా నేర్చుకుంటుంది.
ఇంటర్-ఉల్లేఖన ఒప్పందం వేర్వేరు వ్యక్తులు ఒకే నమూనాకు ఒకే లేబుల్ను ఇచ్చే రేటును కొలుస్తుంది; ఇది కోహెన్స్ కప్పా వంటి గుణకం ద్వారా వ్యక్తీకరించబడింది. తక్కువ సమ్మతి పని అస్పష్టంగా ఉందని లేదా సూచన బలహీనంగా ఉందని సూచిస్తుంది.
కృత్రిమ మేధస్సు రెండు విధాలుగా లేబుల్ చేయడంలో సహాయపడుతుంది: (1) ఉల్లేఖన మార్గదర్శకాన్ని రూపొందించడం, (2) ముందుగా లేబులింగ్ చేయడం మరియు మానవుడు దానిని సరిదిద్దడం. కానీ LLMతో ప్రీ-లేబులింగ్ ఒక ఆపదను కలిగి ఉంది: మోడల్ యొక్క క్రమబద్ధమైన లోపం మొత్తం లేబుల్ సెట్లోకి లీక్ కావచ్చు. అందుకే మానవులు ఎల్లప్పుడూ కొన్ని LLM లేబుల్లను తనిఖీ చేస్తారు.
శ్రద్ధ: LLM ద్వారా ఉత్పత్తి చేయబడిన లేబుల్లను "గ్రౌండ్ ట్రూత్"గా పరిగణించవద్దు. మానవుడితో నమూనాను తనిఖీ చేయండి మరియు LLM-మానవ సరిపోతుందని కొలవండి. సమ్మతి తక్కువగా ఉంటే, ముందస్తు లేబులింగ్ మంచి కంటే ఎక్కువ హాని చేస్తుంది.
డేటా విభజన: లీకేజీని నిరోధించండి
డేటాను శిక్షణ/ధృవీకరణ/పరీక్షగా విభజించేటప్పుడు అత్యంత ప్రమాదకరమైన తప్పు డేటా లీకేజీ: పరీక్ష సమాచారాన్ని శిక్షణలో కలపడం. ఉదాహరణలు:
- ఒకే వినియోగదారు రికార్డులు శిక్షణ మరియు పరీక్ష (గ్రూప్ లీక్) రెండింటిలోనూ వస్తాయి.
- శిక్షణలో భవిష్యత్తును మరియు సమయ శ్రేణిలో పరీక్షలో గతాన్ని ఉపయోగించడం (తాత్కాలిక లీకేజీ).
- మొత్తం డేటా నుండి స్కేలింగ్ (సాధారణీకరణ) పారామితులను లెక్కించడం మరియు ఆపై విభజించడం.
సమయానికి సంబంధించిన సమస్యలకు తాత్కాలిక విభజన అవసరం: గతంతో శిక్షణ, భవిష్యత్తులో పరీక్ష. యాదృచ్ఛిక విభజన ఉత్పత్తిలో ఎప్పటికీ జరగని "భవిష్యత్తు" ప్రయోజనాన్ని ఇస్తుంది మరియు కొలమానాలను పెంచుతుంది.
డేటా సంస్కరణ మరియు పునరుత్పత్తి
"మేము ఈ మోడల్కు ఏ డేటాతో శిక్షణ ఇచ్చాము?" నెలల తర్వాత ప్రశ్నకు సమాధానం చెప్పగలగడం తీవ్రమైన ML ఇంజనీరింగ్ యొక్క ముఖ్య లక్షణం. డేటా సంస్కరణ ప్రతి డేటా స్నాప్షాట్ను ID (హాష్ లేదా వెర్షన్ ట్యాగ్)తో నిల్వ చేస్తుంది. కోడ్ వంటి DVC (డేటా వెర్షన్ కంట్రోల్) వెర్షన్ డేటా వంటి సాధనాలు.
మోడల్ ఫలితాన్ని పునరుత్పత్తి చేయడానికి, మూడు విషయాలు తప్పనిసరిగా పరిష్కరించబడాలి: డేటా వెర్షన్, కోడ్ వెర్షన్ మరియు యాదృచ్ఛిక సీడ్. ఈ త్రయం లేకుండా "నాకు అదే ఫలితం వచ్చింది" అని చెప్పడం సాధ్యం కాదు. మేము యూనిట్ 11లో పునరుత్పత్తిని మరింత లోతుగా చేస్తాము; కానీ డేటా పైప్లైన్లో విత్తనాన్ని పరిష్కరించడం ఇక్కడ నుండి ప్రారంభమవుతుంది.
మూడు చిన్న కేసులు
కేసు 1 - రోజు స్కీమా ధ్రువీకరణ సేవ్ చేయబడింది. ఒక బృందం అప్స్ట్రీమ్ సిస్టమ్ ధర ఫీల్డ్ను పెన్నీల నుండి లిరాస్గా మార్చినప్పుడు, అన్ని ధరలు 100 రెట్లు పడిపోయాయి. స్కీమా ధ్రువీకరణ బ్యాచ్ని "ధర పరిధి దాటిపోయింది" అని తిరస్కరించింది మరియు పాడైన డేటాతో మోడల్ శిక్షణ పొందలేదు. ధృవీకరణ లేకుండా, తప్పు అంచనాలతో ఉత్పత్తిలో మాత్రమే లోపం గుర్తించబడుతుంది.
కేసు 2 - తప్పు పూరకం యొక్క పక్షపాతం. క్రెడిట్ మోడల్లో, తప్పిపోయిన ఆదాయ విలువలు సగటుతో నింపబడ్డాయి. కానీ తప్పిపోయిన ఆదాయాలు ప్రధానంగా తక్కువ-ఆదాయ సమూహంలో ఉన్నాయి; సగటు కృత్రిమంగా ఈ సమూహాన్ని "సుసంపన్నం" చేసింది మరియు మోడల్ వారికి అన్యాయంగా అధిక పరిమితిని అందించింది. మధ్యస్థ + తప్పిపోయిన ఫ్లాగ్తో సమస్య పరిష్కరించబడింది.
కేస్ 3 - తాత్కాలిక లీకేజ్. టెస్ట్ సెట్లో డిమాండ్ అంచనా మోడల్ అద్భుతంగా కనిపించింది (95% ఖచ్చితత్వం) కానీ ఉత్పత్తిలో క్రాష్ అయింది. ఎందుకు: యాదృచ్ఛిక విభజన కారణంగా, మోడల్ భవిష్యత్తును చూసింది. టెంపోరల్ బిన్నింగ్కు మారడం వలన పరీక్ష ఖచ్చితత్వం 78%కి పడిపోయింది - కానీ అది నిజమైన పనితీరు మరియు దానిని ఉత్పత్తిలో ఉంచింది.
కాపీ చేయగల టెంప్లేట్లు
కింది డేటాసెట్ను మూడు సెట్లుగా విభజించండి: శిక్షణ/ధృవీకరణ/పరీక్ష. నిర్బంధం: ఇది సమయ శ్రేణి; తాత్కాలిక విభజనను ఉపయోగించండి (గతంలో రైలు, భవిష్యత్తులో పరీక్ష). బ్యాచ్ లీకేజీని నిరోధించండి: ఒకే క్లస్టర్లో మాత్రమే అదే `కస్టమర్_ఐడి`ని కలిగి ఉండండి. శిక్షణ సెట్ నుండి మాత్రమే స్కేలింగ్ పారామితులను లెక్కించండి, ఆపై అందరికీ వర్తించండి. ప్రతి దశలో కోడ్లో ఎన్ని పంక్తులు మిగిలి ఉన్నాయో ప్రింట్ చేయండి మరియు లీక్లు లేకుండా తనిఖీ చేసే నిశ్చయతను జోడించండి.
ఈ లేబులింగ్ టాస్క్ కోసం డ్రాఫ్ట్ ఉల్లేఖన మార్గదర్శకాన్ని వ్రాయండి. టాస్క్: [ఉదా. కస్టమర్ సమీక్ష సానుకూల/ప్రతికూల/తటస్థంగా లేబుల్ చేయండి]సరిహద్దు కేసులను స్పష్టం చేయండి: వ్యంగ్యం, మిశ్రమ భావోద్వేగం, ఉత్పత్తికి సంబంధం లేని సమీక్షను ఎలా లేబుల్ చేయాలి? ట్యాగర్లలో స్థిరత్వాన్ని పెంచే 5 ఉదాహరణలు మరియు 3 క్లిష్టమైన ఎడ్జ్ కేసులను ఇవ్వండి.
ఈ డేటా పైప్లైన్ కోసం పునరుత్పత్తి చెక్లిస్ట్ను రూపొందించండి:- డేటా వెర్షన్ని ఎలా ఫిక్స్ చేయాలి?- ఏ యాదృచ్ఛిక విత్తనాలను ఎక్కడ సెట్ చేయాలి?- ఏ మెటాడేటా (డేటా హ్యాష్, రో కౌంట్, తేదీ) లాగిన్ చేయాలి? నా కోడ్బేస్: [భాష/లైబ్రరీ]
డేటా లీకేజీ కోసం ఈ క్లీనప్ కోడ్ని తనిఖీ చేయండి. దీన్ని ప్రత్యేకంగా చూడండి: స్కేలింగ్/ఎన్కోడింగ్ పారామితులు విభజించడానికి ముందు లెక్కించబడ్డాయా? ఏదైనా గణాంకాలు మొత్తం డేటా లేదా శిక్షణ నుండి లెక్కించబడ్డాయా? కోడ్: [కోడ్]
నిర్ణయ పట్టిక: విలువ వ్యూహం లేదు
స్థితి
సిఫార్సు చేయబడిన విధానం
ఎందుకు
సంఖ్యాపరమైన, వక్ర పంపిణీ
మధ్యస్థంతో నింపండి
అవుట్లెర్స్ ద్వారా సగటు ప్రభావితమవుతుంది
సంఖ్యా, సుష్ట
సగటుతో నింపండి
సమాచారాన్ని రక్షిస్తుంది
లోపం గణనీయంగా ఉండవచ్చు
ఫ్లాగ్ కాలమ్ + పూరించండి
లేకపోవడం ఒక సంకేతం
తప్పిపోయిన రేటు > 60%
కాలమ్ను మూల్యాంకనం చేయండి/విస్మరించండి
శబ్దం చాలా ఎక్కువ
వర్గీకరణ
"తెలియని" వర్గం
కృత్రిమ మెజారిటీని సృష్టించదు
సాధారణ తప్పులు
- ధృవీకరణను దాటవేయడం. స్కీమా నియంత్రణ లేకుండా, పాడైన డేటా నిశ్శబ్దంగా స్నీక్ అవుతుంది.
- విభజనకు ముందు స్కేలింగ్. ఇది విద్యలో పరీక్ష గణాంకాలను లీక్ చేస్తుంది.
- సమయ శ్రేణిలో యాదృచ్ఛిక విభజనను ఉపయోగించడం. ఇది నకిలీ అధిక కొలమానాలను ఉత్పత్తి చేస్తుంది.
- LLM లేబుల్లను గుడ్డిగా విశ్వసిస్తున్నారు. క్రమబద్ధమైన లోపం డేటా అంతటా వ్యాపిస్తుంది.
- డేటా సంస్కరణను సేవ్ చేయడం లేదు. మీరు ఫలితాన్ని పునరుత్పత్తి చేయలేరు.
- సగటుతో మెకానికల్ ఫిల్లింగ్. ఇది ఫీల్డ్ అర్థాన్ని విస్మరిస్తుంది, పక్షపాతాన్ని జోడిస్తుంది.
సారాంశంలో
డేటా పైప్లైన్ ML సిస్టమ్ యొక్క పునాది మరియు మోడల్ కంటే ఎక్కువ కృషికి అర్హమైనది. ధృవీకరణను ఎగువన ఉంచండి; డొమైన్ పరిజ్ఞానంతో క్లీనింగ్ మరియు లేబులింగ్ నిర్ణయాలు తీసుకోండి; కంపార్ట్మెంట్లో లీకేజీని (సమూహం మరియు తాత్కాలిక) నిరోధించండి; డేటా వెర్షన్ మరియు సీడ్ను పరిష్కరించండి. AI ఈ లైన్లో కోడ్ మరియు ఆలోచనలను రూపొందిస్తుంది, అయితే ఏ డేటాను ఎలా ప్రాసెస్ చేయాలో మరియు ఎలా ప్రాసెస్ చేయాలో నిర్ణయించుకోవడం మీ ఇష్టం — ఎందుకంటే ఇక్కడ ప్రతి తప్పు నిర్ణయం దాచిన లోపంగా మోడల్లోకి వెళుతుంది.
అప్లికేషన్ టాస్క్
మీ స్వంత డేటాసెట్లో ధృవీకరణ స్కీమ్ను (పాండేరా/గ్రేట్ ఎక్స్పెక్టేషన్స్) వ్రాసి, ఉద్దేశపూర్వకంగా చెడ్డ అడ్డు వరుసను జోడించి, అది క్యాచ్ అయ్యిందని చూపించండి. ఆపై డేటాను తాత్కాలికంగా లేదా బ్యాచ్వైజ్గా విభజించండి, శిక్షణ నుండి మాత్రమే స్కేలింగ్ పారామితులను లెక్కించండి మరియు ధృవీకరణతో లీకేజీ లేదని ధృవీకరించండి. మెటాడేటా ఫైల్కి డేటా వెర్షన్ మరియు అడ్డు వరుసల సంఖ్యను వ్రాయండి.
చెక్లిస్ట్
- [ ] స్కీమా ధ్రువీకరణ పంక్తి ఎగువన నడుస్తుంది.
- [ ] నేను ఫీల్డ్ అర్థం ఆధారంగా తప్పిపోయిన విలువ వ్యూహాన్ని ఎంచుకున్నాను, నేను దానిని యాంత్రికంగా పూరించలేదు.
- [ ] నేను లేబుల్ నాణ్యతను (అనుకూలత) కొలిచాను; నేను LLM ట్యాగ్లను మనుషులతో తనిఖీ చేసాను.
- [ ] నేను పేన్లో సమూహం మరియు తాత్కాలిక లీకేజీని నిరోధించాను.
- [ ] స్కేలింగ్/ఎన్కోడింగ్ శిక్షణ సెట్ నుండి మాత్రమే లెక్కించబడుతుంది.
- [ ] డేటా వెర్షన్, వరుసల సంఖ్య మరియు సీడ్ రికార్డ్ చేయబడింది.