లాభాలు:
- గోప్యత, ఆఫ్లైన్ అవసరం, మోడల్ పరిమాణం మరియు బ్యాటరీ ప్రమాణాల ఆధారంగా పరికరం లేదా క్లౌడ్ని నిర్ణయించే సామర్థ్యం మరియు సరైన సాధనాన్ని (ML Kit, Core ML, TensorFlow Lite) ఎంచుకునే సామర్థ్యం
- మోడల్ ఇంటిగ్రేషన్లో మోడల్ డాక్యుమెంట్ నుండి ఇన్పుట్ ప్రిప్రాసెసింగ్ (పరిమాణం మరియు సాధారణీకరణ) ధృవీకరించడం ద్వారా నిశ్శబ్ద లోపాలను నిరోధించే సామర్థ్యం
- విశ్వసనీయ స్కోర్ను మూల్యాంకనం చేయగల సామర్థ్యం మరియు వినియోగదారు ఆమోదంతో మరియు నిజమైన పరికరంలో, తక్కువ విశ్వాస అంచనాలను సంపూర్ణ సత్యంగా ప్రదర్శించకుండా ఫలితాన్ని కొలవగల సామర్థ్యం.
ఇప్పటివరకు, మేము అభివృద్ధి ప్రక్రియను వేగవంతం చేయడానికి AIని సహాయంగా ఉపయోగించాము. ఇప్పుడు మేము AI యొక్క రెండవ పాత్రకు వెళ్తాము: అప్లికేషన్లో పొందుపరిచిన ప్రతిభ. ఆధునిక ఫోన్లు ఇమేజ్ రికగ్నిషన్, టెక్స్ట్ ట్రాన్స్లేషన్, స్పీచ్ ట్రాన్స్క్రిప్షన్ వంటి AI మోడల్లను నేరుగా పరికరంలో (పరికరంలో — సర్వర్కి వెళ్లకుండా ఫోన్ స్వంత ప్రాసెసర్లో) అమలు చేయగల శక్తిని కలిగి ఉంటాయి. పరికరంలో AI; ఇది వేగం, గోప్యత మరియు ఆఫ్లైన్ ఆపరేషన్ పరంగా క్లౌడ్ సొల్యూషన్ల కంటే గొప్ప ప్రయోజనాలను అందిస్తుంది. ఈ యూనిట్లో, iOS యొక్క కోర్ ML, క్రాస్-ప్లాట్ఫారమ్ TensorFlow Lite (ఇప్పుడు LiteRT అని పిలుస్తారు) మరియు Google యొక్క రెడీమేడ్ సొల్యూషన్ ML కిట్తో అప్లికేషన్లో AIని ఎలా పొందుపరచాలో మరియు ఈ ఏకీకరణలో AIని సహాయకుడిగా ఎలా ఉపయోగించాలో నేర్చుకుంటాము.
పరికరంలో లేదా క్లౌడ్?
ఇది మొదటి మరియు అత్యంత ముఖ్యమైన నిర్మాణ నిర్ణయం. పరికరంలో AI ఫోన్ నుండి డేటాను తీసివేయదు — గోప్యతకు భారీ విజయం. నెట్వర్క్ జాప్యం లేనందున ఇది తక్షణమే మరియు ఆఫ్లైన్లో కూడా పని చేస్తుంది. అయినప్పటికీ, ఇది పరికరం యొక్క ప్రాసెసింగ్ శక్తి మరియు మెమరీ ద్వారా పరిమితం చేయబడింది; చాలా పెద్ద మోడల్లు (ఉదా. జెయింట్ నాలుక నమూనాలు) ఫోన్లో సరిపోవు లేదా బ్యాటరీని ఖాళీ చేస్తాయి. మరోవైపు, క్లౌడ్ AI అపరిమిత శక్తిని అందిస్తుంది, కానీ సర్వర్కు డేటాను పంపుతుంది, నెట్వర్క్ అవసరం మరియు జాప్యాన్ని సృష్టిస్తుంది.
ప్రమాణం
పరికరంలో
క్లౌడ్ (క్లౌడ్ API)
గోప్యత
పరికరంలో డేటా బలంగా ఉంటుంది
డేటా సర్వర్కి వెళుతుంది, శ్రద్ధ అవసరం
వేగం
తక్షణం, నెట్వర్క్ లేదు
నెట్వర్క్ జాప్యంపై ఆధారపడి ఉంటుంది
ఆఫ్లైన్
ఇది పనిచేస్తుంది
పని చేయదు
మోడల్ పరిమాణం
పరిమిత (ఫోన్ వనరు)
అపరిమిత
బ్యాటరీ/వేడి
భారీ వినియోగంతో ప్రభావాలు
సర్వర్ లోడ్లో ఉంది, పరికరం సడలించింది
ఖర్చు
ఉచిత (పరికర మూలం)
ఒక్కో వినియోగానికి రుసుము
నిర్ణయ నియమం: వ్యక్తిగత/సున్నితమైన డేటా ప్రాసెస్ చేయబడుతుంటే, ఆఫ్లైన్లో పని చేయాలంటే లేదా తక్షణ ప్రతిస్పందన అవసరం అయితే పరికరంలో ఎంచుకోండి. మీకు చాలా పెద్ద మోడల్ అవసరమైతే, క్లౌడ్ వైపు తిరగండి. ఈ యూనిట్ పరికరంలో ఫోకస్ చేయబడింది; మేము తదుపరి యూనిట్లో క్లౌడ్ AIని కవర్ చేస్తాము.
చిట్కా: సున్నితమైన డేటాను (ఆరోగ్యం, బయోమెట్రిక్లు, స్థానం) హ్యాండిల్ చేసే ఫీచర్ కోసం ఎల్లప్పుడూ పరికరంలో మీ డిఫాల్ట్గా చేయండి. “డేటా పరికరాన్ని విడిచిపెట్టదు” అనే పదబంధం గోప్యతా సమ్మతి మరియు వినియోగదారు విశ్వాసం రెండింటికీ అమూల్యమైనది మరియు స్టోర్ గోప్యతా లేబుల్లో పెద్ద తేడాను కలిగిస్తుంది.
మూడు మార్గాలు: ML కిట్, కోర్ ML, TensorFlow Lite
ML కిట్ (గూగుల్) ప్రారంభించడానికి సులభమైన మార్గం: ఇది టెక్స్ట్ రికగ్నిషన్ (OCR — ఒక ఇమేజ్లో టెక్స్ట్ చదవడం), ఫేస్ డిటెక్షన్, బార్కోడ్ రీడింగ్, కొన్ని లైన్లలో అనువాదం వంటి రెడీమేడ్ సామర్థ్యాలను అందిస్తుంది. మీరు మీ స్వంత మోడల్కు శిక్షణ ఇవ్వాల్సిన అవసరం లేదు. కోర్ ML (ఆపిల్) అనేది iOSలో మీ స్వంత మోడల్ లేదా రెడీమేడ్ మోడల్ను అమలు చేయడానికి అత్యంత సమర్థవంతమైన మార్గం; ఇది Apple యొక్క న్యూరల్ ఇంజిన్ (కృత్రిమ న్యూరల్ నెట్వర్క్ ప్రాసెసర్) హార్డ్వేర్ను ఉపయోగిస్తుంది. TensorFlow Lite/LiteRT అనేది Android మరియు iOS రెండింటిలో మీ స్వంత శిక్షణ పొందిన మోడల్ను అమలు చేయడానికి మిమ్మల్ని అనుమతించే క్రాస్-ప్లాట్ఫారమ్ పరిష్కారం.
AIతో సాధారణ ఏకీకరణ ప్రవాహం ఇలా ఉంటుంది:
- టాలెంట్ నిర్వచనం. "నేను ఫోటోలోని వచనాన్ని చదవాలనుకుంటున్నాను" వంటి స్పష్టమైన లక్ష్యం.
- మార్గం ఎంపిక. సిద్ధంగా ప్రతిభ ఉంటే, ML కిట్; ప్రత్యేక మోడల్ అందుబాటులో ఉంటే కోర్ ML/TF లైట్.
- మోడల్ ఫార్మాట్. .mlmodel (కోర్ ML), .tflite (TF లైట్). AI పరివర్తన దశలను వివరిస్తుంది.
- ఇంటిగ్రేషన్ కోడ్. మోడల్ను లోడ్ చేయడం, ఇన్పుట్ను ప్రీప్రాసెస్ చేయడం, అవుట్పుట్ను వివరించడం.
- పనితీరు పరీక్ష. నిజమైన పరికరంలో వేగం, మెమరీ, బ్యాటరీ కొలత.
జాగ్రత్త: ఆన్-డివైస్ మోడల్ ఇంటిగ్రేషన్లో అత్యంత సాధారణ AI తప్పు ఇన్పుట్ ప్రీప్రాసెసింగ్ — మోడల్ ఆశించే పరిమాణం మరియు రంగు ఆకృతికి చిత్రాన్ని మార్చడం. మోడల్ 224x224 పిక్సెల్లను ఆశించి, మీరు దానికి 300x300 ఇస్తే, ఫలితం అర్థరహితంగా ఉంటుంది, కానీ మీరు దోష సందేశాన్ని స్వీకరించరు. మోడల్ పత్రం నుండి ప్రీప్రాసెసింగ్ విలువలను ధృవీకరించండి.
మోడల్ పరిమితులను తెలుసుకోవడం
పరికరంలో మోడల్ శిక్షణ పొందిన డేటా ఆధారంగా నిర్ణయాలు తీసుకుంటుంది. పగటిపూట తీసిన ఫోటోలపై మాత్రమే శిక్షణ పొందిన ఆబ్జెక్ట్ రికగ్నిషన్ మోడల్ రాత్రి చిత్రాలపై తప్పుగా ఉంటుంది. మోడల్ కాన్ఫిడెన్స్ స్కోర్ను కలిగి ఉంది (విశ్వాసం — మోడల్ దాని సమాధానం గురించి ఎంత నమ్మకంగా ఉంది, సాధారణంగా 0 మరియు 1 మధ్య ఉంటుంది); తక్కువ-విశ్వాస ఫలితాలను వినియోగదారుకు ఖచ్చితమైనదిగా అందించడం ప్రమాదకరం. ఉదాహరణకు, స్కిన్ స్పాట్ స్కానింగ్ అప్లికేషన్ "ఖచ్చితంగా నిరపాయమైనది" అని చెప్పకూడదు, కానీ "మోడల్ యొక్క అంచనా ఇదే, దయచేసి వైద్యుడిని సంప్రదించండి" అని చెప్పాలి. మోడల్ ఫలితం ఒక సిఫార్సు, రోగనిర్ధారణ కాదు.
మూడు చిన్న కేసులు
కేస్ 1 - OCR తో త్వరణం. ML కిట్ టెక్స్ట్ రికగ్నిషన్తో రసీదులను మాన్యువల్గా నమోదు చేసే భారాన్ని ఖర్చుల ట్రాకింగ్ యాప్ తొలగించింది. వినియోగదారు రసీదు యొక్క ఫోటోను తీసుకుంటారు మరియు మొత్తం మరియు తేదీ స్వయంచాలకంగా పూరించబడతాయి. మాన్యువల్ ఎంట్రీ సమయం ప్రతి రసీదుకు 40 సెకన్ల నుండి 8 సెకన్లకు తగ్గింది. బృందం ఎల్లప్పుడూ AI చదివిన మొత్తాన్ని నిర్ధారించడానికి వినియోగదారుని కలిగి ఉంటుంది; ఎందుకంటే ముడతలు పడిన రసీదులు 6% మార్జిన్ ఎర్రర్ను కలిగి ఉన్నాయి. ఆటోమేషన్ + మానవ ఆమోదం సరైన బ్యాలెన్స్.
కేస్ 2 — ప్రీప్రాసెసింగ్ లోపం. ఒక బృందం టెన్సర్ఫ్లో లైట్తో మొక్కల గుర్తింపు నమూనాను ఏకీకృతం చేసింది; టెస్టర్లో, ఫలితాలు యాదృచ్ఛికంగా ఉన్నాయి. సమస్య ఏమిటంటే, AI రూపొందించిన కోడ్ మోడల్ ఊహించిన [0,1] పరిధికి చిత్రాన్ని సాధారణీకరించలేదు (పిక్సెల్ విలువలు 0-255 వద్ద మిగిలి ఉన్నాయి). సాధారణీకరణ జోడించబడినప్పుడు, ఖచ్చితత్వం 30% నుండి 89%కి పెరిగింది. పాఠం: ప్రీప్రాసెసింగ్ నిశ్శబ్దం కానీ ప్రాణాంతకం.
కేసు 3 - గోప్యతా లాభం. ఆరోగ్య అప్లికేషన్ ఆన్-డివైస్ కోర్ ML మోడల్తో హృదయ స్పందన డేటా నుండి క్రమరాహిత్యాన్ని గుర్తించింది. డేటా ఎప్పుడూ సర్వర్కు వెళ్లలేదు. ఈ ఎంపిక యాప్ స్టోర్ గోప్యతా లేబుల్లో "డేటాను సేకరించదు" అనే పదబంధాన్ని స్వీకరించడానికి అప్లికేషన్ను ప్రారంభించింది మరియు పోటీదారులతో పోలిస్తే దాని డౌన్లోడ్ రేటును పెంచింది. పరికరంలో ఎంపిక నైతికంగా మరియు వాణిజ్యపరంగా లాభదాయకంగా ఉంది.
బలహీనమైన ప్రాంప్ట్ / బలమైన ప్రాంప్ట్
బలహీనమైన ప్రాంప్ట్: "నా యాప్కి చిత్ర గుర్తింపును జోడించు."
శక్తివంతమైన ప్రాంప్ట్: "నా Android/Kotlin అప్లికేషన్కు మొత్తం మరియు తేదీ పఠన లక్షణాన్ని జోడించండి. - Google ML కిట్ టెక్స్ట్ రికగ్నిషన్ని ఉపయోగించండి (పరికరంలో, ఆఫ్లైన్) - కెమెరా లేదా గ్యాలరీ నుండి చిత్రాన్ని తీయండి - regexతో గుర్తించబడిన వచనం నుండి మొత్తం మరియు తేదీని సంగ్రహించండి - ఆమోదం కోసం వినియోగదారుకు ఫలితాన్ని అందించండి - ఎడిటబుల్ మరియు హ్యాండ్డ్ కెమెరా-ప్రోప్ రిజెక్ట్ ఫీల్డ్ - ఆటో-సేవ్ రిజెక్ట్ డౌన్ కెమెరా ఫీల్డ్ మరియు దోష పరిస్థితులు, దశలను వివరించండి."
కాపీ చేయగల టెంప్లేట్లు
మార్గ ఎంపిక టెంప్లేట్: "నేను ఈ క్రింది ఫీచర్ను చేయాలనుకుంటున్నాను: [ఫీచర్]. ఇది పరికరంలో లేదా క్లౌడ్గా ఉండాలా? దీని ఆధారంగా సరిపోల్చండి: గోప్యత, ఆఫ్లైన్ అవసరం, మోడల్ పరిమాణం, బ్యాటరీ, ధర. తగిన సాధనాన్ని (ML కిట్ / కోర్ ML / TF లైట్) సిఫార్సు చేసి, సమర్థించండి."
ఇంటిగ్రేషన్ టెంప్లేట్:"[ప్లాట్ఫారమ్]:1 కోసం [మోడల్/సామర్థ్యం] ఇంటిగ్రేషన్ రాయండి:1) మోడల్ లోడ్ అవుతోంది2) ఇన్పుట్ ప్రీప్రాసెసింగ్ (అంచనా పరిమాణం మరియు సాధారణీకరణ)3) ఇన్ఫరెన్స్ కాల్4) అవుట్పుట్ ఇంటర్ప్రెటేషన్ మరియు కాన్ఫిడెన్స్ స్కోర్ చెకింగ్5) తక్కువ-కాన్ఫిడెన్స్లో యూజర్కు హెచ్చరిక ఫలితంగా ప్రీప్రాసెసింగ్ డాక్యుమెంట్ను ధృవీకరించడానికి నాకు గుర్తుచేయండి."
కాన్ఫిడెన్స్ స్కోర్ టెంప్లేట్:"ఈ అనుమితి కోడ్లో కాన్ఫిడెన్స్ స్కోర్ను పరిగణించండి:- థ్రెషోల్డ్ క్రింద 'ఖచ్చితమైన' ఫలితాన్ని ప్రదర్శించండి (ఉదా. 0.6)- 'ఇది అంచనా' గమనికను వినియోగదారుకు చూపండి- క్లిష్టమైన ప్రాంతం (ఆరోగ్యం, భద్రత)[కోడ్] అయితే నిపుణులను సంప్రదించండి"
పనితీరు ధృవీకరణ టెంప్లేట్: "ఈ ఆన్-డివైస్ మోడల్ ఇంటిగ్రేషన్ కోసం నేను అసలు పరికరంలో కొలవాల్సిన కొలమానాలను జాబితా చేయండి: అనుమితి సమయం, మెమరీ పెరుగుదల, బ్యాటరీ ప్రభావం, వేడి చేయడం. ప్రతి దాని కోసం కొలత పద్ధతిని చెప్పండి."
సాధారణ తప్పులు
- ప్రీప్రాసెసింగ్ను దాటవేయడం లేదా తప్పుగా చేయడం. తప్పు పరిమాణం/సాధారణీకరణ నిశ్శబ్దంగా తప్పు ఫలితాన్ని ఇస్తుంది.
- కాన్ఫిడెన్స్ స్కోర్ను విస్మరించడం. తక్కువ-విశ్వాసం అంచనాను ఖచ్చితమైనదిగా ప్రదర్శించడం వినియోగదారుని తప్పుదారి పట్టిస్తుంది.
- ఎమ్యులేటర్లో మోడల్ను పరీక్షిస్తోంది. అసలు పరికరం వేగం మరియు బ్యాటరీ చాలా భిన్నంగా ఉంటాయి; ఎల్లప్పుడూ నిజమైన హార్డ్వేర్పై కొలవండి.
- సెన్సిటివ్ డేటాను అనవసరంగా క్లౌడ్కి పంపుతోంది. పరికరంలో సాధ్యమైనప్పుడు క్లౌడ్ని ఎంచుకోవడం గోప్యతా ప్రమాదం.
- మోడల్ పరిమాణాన్ని విస్మరిస్తోంది. పెద్ద మోడల్ యాప్లు డౌన్లోడ్ పరిమాణాన్ని పెంచుతాయి మరియు తక్కువ హార్డ్వేర్లో క్రాష్ అవుతాయి.
- మోడల్ శిక్షణ పరిమితిని మర్చిపోవడం. మోడల్ అది చూడని పరిస్థితిలో తప్పుగా ఉంది (రాత్రి, విభిన్న భాష); దీన్ని వినియోగదారుకు స్పష్టం చేయండి.
సారాంశంలో
ఫోన్లో డేటాను ఉంచడం ద్వారా ఆన్-డివైస్ AI గోప్యత, వేగం మరియు ఆఫ్లైన్ ఆపరేషన్ను అందిస్తుంది; పరికర శక్తి మరియు మోడల్ పరిమాణం పరిమితి. ML కిట్ అవుట్-ఆఫ్-ది-బాక్స్ సామర్థ్యాల కోసం ఉపయోగించబడుతుంది, కోర్ ML (iOS) మరియు టెన్సర్ఫ్లో లైట్ (క్రాస్-ప్లాట్ఫారమ్) అనుకూల నమూనాల కోసం ఉపయోగించబడతాయి. ఏకీకరణ యొక్క నిశ్శబ్ద కిల్లర్ సరికాని ప్రిప్రాసెసింగ్; ఇన్పుట్ పరిమాణం మరియు సాధారణీకరణ మోడల్ డాక్యుమెంటేషన్ నుండి ధృవీకరించబడ్డాయి. ప్రతి ఫలితం కాన్ఫిడెన్స్ స్కోర్తో వస్తుంది మరియు తక్కువ కాన్ఫిడెన్స్ అంచనాలు సంపూర్ణ సత్యంగా ప్రదర్శించబడవు. నిర్ణయాలు నిజమైన పరికరంలో కొలుస్తారు, ఎమ్యులేటర్ కాదు.
అప్లికేషన్ టాస్క్
“ఫోటో నుండి టెక్స్ట్ రీడింగ్” లేదా “బార్కోడ్ రీడింగ్” ఫీచర్ కోసం, అది పరికరంలో ఉండాలా లేదా “పాత్ ఎంపిక టెంప్లేట్”తో క్లౌడ్లో ఉండాలా అని AIని అడగండి, ఆపై “ఇంటిగ్రేషన్ టెంప్లేట్”తో ML కిట్ ఆధారిత బ్లూప్రింట్ కోసం అడగండి. ప్రీప్రాసెసింగ్ దశ మరియు వినియోగదారు ఆమోదం/సవరణ విధానం కోడ్లో ఉన్నాయని ధృవీకరించండి. ట్రస్ట్ స్కోర్ థ్రెషోల్డ్ని సెట్ చేయండి మరియు ఫలితం తక్కువగా ఉంటే మీరు ఏమి చేస్తారో వ్రాయండి.
చెక్లిస్ట్
- [ ] నేను ప్రమాణాల ఆధారంగా పరికరం/క్లౌడ్ నిర్ణయం తీసుకున్నాను
- [ ] నేను సరైన సాధనాన్ని ఎంచుకున్నాను (ML కిట్ / కోర్ ML / TF లైట్)
- [ ] నేను మోడల్ డాక్యుమెంటేషన్ నుండి ప్రీప్రాసెసింగ్ పరిమాణం మరియు సాధారణీకరణను ధృవీకరించాను
- [ ] నేను ట్రస్ట్ స్కోర్ని తనిఖీ చేసాను మరియు తక్కువ విశ్వసనీయ ఫలితాల గురించి హెచ్చరించాను
- [ ] నేను ఆమోదం/సవరణతో వినియోగదారుకు ఫలితాన్ని అందించాను, నేను దానిని గుడ్డిగా సేవ్ చేయలేదు
- [ ] నేను ఎమ్యులేటర్లో కాకుండా నిజమైన పరికరంలో పనితీరును కొలిచాను