डीप लर्निंग पर ध्यान, लेकिन डीप फैक्ट-चेकिंग की अनदेखी
(rachel.fast.ai)- 2.2 करोड़ enzyme data पर Transformer को train करके 450 अज्ञात enzymes के functions predict करने वाली research को Nature Communications में publication और Altmetric के top 5% attention मिला, लेकिन बड़े पैमाने की errors verify करने वाला follow-up preprint कहीं कम ध्यान में आया
- enzyme function prediction amino acid sequence से EC number मिलाने की problem जैसा दिखता है, लेकिन असल assessment में structural similarity के अलावा genes के आसपास का context, substrate docking, metabolic pathways में co-occurrence जैसे biological evidence की जरूरत होती है
- 450 “novel” predictions में से 135 UniProt में पहले से मौजूद थे, और 148 में वही बहुत specific function अधिकतम 12 बार repeat हुआ, जो biologically awkward patterns दिखाता है
- yciO case दिखाता है कि test set performance और कुछ in vitro validation ही पर्याप्त नहीं हैं; yciO structurally TsaC जैसा है, लेकिन existing research और enzyme activity का फर्क बताता है कि वे वही core function perform नहीं करते
- supervised learning models known function labels को उसी function family में propagate करने में useful हो सकते हैं, लेकिन सचमुच unknown functions discover करने में उनकी limits हैं, और wrong labels UniProt जैसे databases के जरिए बाद के model training में लगातार फैल सकते हैं
AI enzyme prediction paper और follow-up validation का अंतर
- original research ने 2.2 करोड़ enzymes और EC numbers वाले dataset से Transformer-based model को train और evaluate किया, फिर जिन enzymes के functions unknown थे, ऐसे करीब 450 enzymes के functions predict किए
- यह Functional annotation of enzyme-encoding genes using deep learning with transformer layers | Nature Communications में published हुआ, और 22,000 views तथा Altmetric के हिसाब से सभी research outputs में top 5% attention दर्ज किया
- follow-up validation paper Limitations of Current Machine-Learning Models in Predicting Enzymatic Functions for Uncharacterized Proteins | bioRxiv ने original paper की predictions में गंभीर errors और सैकड़ों ऐसे results पाए जिनके गलत होने की काफी संभावना थी, लेकिन उसे original paper जितने views या citations नहीं मिले
- यह case दिखाता है कि biology में AI results की validity को deep domain expertise के बिना evaluate करना मुश्किल है
enzyme function prediction मुश्किल क्यों है
- enzymes living organisms के अंदर reactions को catalyze करते हैं, और Enzyme Commission(EC) number हजारों enzyme functions को hierarchical तरीके से classify करता है
- input protein बनाने वाली amino acid sequence है और output EC number—इस लिहाज से यह machine learning के लिए well-suited problem जैसा दिखता है
- UniProt में 2.2 करोड़ से ज्यादा enzymes और EC numbers हैं, जिन्हें बड़े training dataset के रूप में इस्तेमाल किया जा सकता है
- लेकिन enzyme function assessment के लिए सिर्फ sequence/structure similarity काफी नहीं है; function के diverge हो चुके evolutionary relationships आम pitfall बन जाते हैं
Transformer approach और सतही उपलब्धियां
- Nature Communications paper ने पहले unknown-function enzymes के functions predict करने के लिए Transformer deep learning model इस्तेमाल किया
- model architecture BERT से अपनाए गए तरीके पर आधारित है, जिसमें दो Transformer encoders, दो convolutional layers और एक linear layer शामिल हैं
- researchers ने यह check किया कि high-attention regions biologically meaningful हैं या नहीं, और निष्कर्ष निकाला कि model ने fundamental meaning सीखा है और interpretability भी देता है
- करोड़ों entries वाले dataset में standard train/validation/test split इस्तेमाल किया गया, और model को ground truth न होने वाले dataset पर apply करके करीब 450 new predictions generate की गईं
- इनमें से random तौर पर तीन चुने गए और in vitro test किए गए, और predictions को accurate पाया गया
सामने आई errors और repeated patterns
- follow-up analysis ने Nature Communications paper की सैकड़ों “novel” predictions को लगभग निश्चित तौर पर errors माना
- original paper ने held-out test set पर अच्छी performance दिखाई, लेकिन बाद की जांच में data leakage की संभावना मिली
- 450 “novel” results में:
- 135 पहले से UniProt में listed थे, इसलिए असल में new नहीं थे
- 148 में वही बहुत specific enzyme function E. coli genes में अधिकतम 12 बार तक repeat होने का abnormal pattern दिखा
- ऐसी repetition biologically plausible नहीं है, और bias, data imbalance, relevant features की कमी, architecture limits, uncertainty calibration की कमी model को training data के common labels जबरन output करने पर मजबूर कर सकते हैं
- YjhQ को mycothiol synthase predict किया गया, लेकिन E. coli mycothiol synthesize नहीं करता
- YrhB के लिए एक specific compound synthesize करने की prediction की गई, लेकिन वही compound पहले से QueD enzyme द्वारा synthesize किया जाना predict था, और QueD mutant E. coli उस compound को synthesize नहीं कर पाता—यह दिखाता है कि यह YrhB का function नहीं है
yciO case ने domain knowledge की भूमिका कैसे दिखाई
- yciO, जो in vitro test subjects में से एक था, Dr. de Crécy-Lagard द्वारा 10 साल से ज्यादा समय से study किया गया enzyme था
- original paper ने निष्कर्ष निकाला कि yciO TsaC जैसा ही function करता है, लेकिन existing research इसे support नहीं करती
- TsaC E. coli में essential gene है, और yciO उसी genome में मौजूद है; yciO overexpress होने पर भी TsaC की essentiality खत्म नहीं होती
- Kim et al. द्वारा reported yciO activity TsaC से 4 orders of magnitude से ज्यादा, यानी 10,000 गुना से अधिक कमजोर है
- yciO और TsaC structurally similar हैं और yciO TsaC ancestor से evolve हुआ है, लेकिन gene duplication के बाद function diversification protein/enzyme evolution में common है
- enzyme function classification में structural similarity के अलावा ये evidence भी important हैं
- gene का neighborhood context
- substrate docking
- metabolic pathway में genes का co-occurrence
- enzyme की अन्य characteristics
“known function propagation” और “true unknown function discovery” का फर्क
- enzyme function identification में दो अलग-अलग problems मिली हुई हैं
- same function family के enzymes में known function labels propagate करने की problem
- सचमुच unknown functions discover करने की problem
- supervised machine learning models design के हिसाब से true unknowns के functions predict करने के लिए इस्तेमाल नहीं किए जा सकते
- machine learning known functions को अतिरिक्त enzymes तक propagate करने में useful हो सकती है
- लेकिन ये errors हो सकती हैं
- जिस label को propagate करना चाहिए, उसे propagate न करना
- जिस label को propagate नहीं करना चाहिए, उसे propagate कर देना
- curation mistakes
- experimental mistakes
- अगर wrong function UniProt जैसे core online databases में चला जाए, तो बाद में prediction models के training data के रूप में इस्तेमाल होकर error और फैल सकती है
- यह problem समय के साथ बढ़ सकती है
data validation research को कम reward मिलना
- AI model बनाने का काम underlying data को ध्यान से inspect करने और deep domain knowledge integrate करने के काम की तुलना में ज्यादा rewards और support पाता है
- Everyone Wants to do the Model Work, not the Data Work ने high-risk AI projects में शामिल दर्जनों machine learning practitioners को cover किया, और inadequate applied domain expertise को catastrophic failures के प्रमुख कारणों में से एक माना
- अपनी expertise के बाहर के AI results को evaluate करना बहुत मुश्किल या असंभव हो सकता है
- कई deep learning papers को ऐसे पढ़ा जाता है कि domain experts ने result quality की बारीकी से review नहीं की होती
- सैकड़ों enzyme predictions verify करने का काम AI model बनाने से कम glamorous है, लेकिन result quality के लिए ज्यादा important हो सकता है
- flashy AI solutions पर असंतुलित रूप से focus करने वाला incentive system quality results की कीमत पर चल सकता है
1 टिप्पणियां
Hacker News की राय
पहले मैं कुछ ऐसा ही झेल चुका हूँ। enzyme data पर BERT चलाकर देखा था; evaluation में सब ठीक-ठाक दिखा, लेकिन असली माहौल में पूरी तरह फेल हो गया। यह क्लासिक “माहौल पर overfit” वाली स्थिति थी
सच कहूँ तो अगर simple classification हो, तो मैं किसी भी दिन SVM या logistic regression चुनूँगा। Transformers शानदार हैं, लेकिन data बहुत साफ़ न हो तो वे पूरे आत्मविश्वास के साथ बकवास करते हैं। यह वैसा ही है जैसे GPT को कोई बेहूदा multiple-choice test दे दें, वह कुछ चुन लेता है और बड़े भरोसे से जवाब देता है
आजकल मैं बड़े model से सिर्फ embeddings लेकर उसके ऊपर simple classifier लगाने की तरफ जाता हूँ। यह बेहतर चलता है, तेज़ है, और कम शोर करता है
AI से research करवाने से पहले शायद उससे research को reproduce करवाना चाहिए। जैसे किसी deep learning technique का paper देकर उससे उस paper की implementation बनवाना
अगर वह यह नहीं कर सकता, तो उससे नए ideas निकाल पाने की उम्मीद नहीं है
Academic fraud दुर्लभ है, लेकिन होता है। LLM ज़रा-सी गुंजाइश मिलते ही data गढ़ते हैं और झूठ बोलते हैं
सुना था कि एक researcher ने प्रकाशित paper के results verify करने में 6 महीने लगाए। आखिर में उसे बस “बताने के लिए धन्यवाद” जैसी एक लाइन मिली
उसने चुपचाप कहा, “कुछ काम इसलिए महत्वपूर्ण नहीं होते कि वे दिखते हैं, बल्कि इसलिए कि वे दूसरों को गलत रास्ते पर जाने से रोकते हैं”
मेरा मानना है कि अगर हम यह सावधानी से जाँचने को भी तैयार नहीं कि predictions reality से मेल खाते हैं या नहीं, तो technology कितनी भी impressive दिखे, वह बस थोड़े समय का illusion है
“बाद की जाँच के अनुसार data leakage होने की संभावना थी” वाला हिस्सा अक्सर भुला दिया जाता है। जब तक मजबूत contrary evidence न आए, सभी को data leakage assume करना चाहिए
leakage है, यह साबित करने की जिम्मेदारी reader या skeptic की नहीं है; leakage नहीं है, यह prove करने की जिम्मेदारी authors की है
छोटे datasets में data leakage आसानी से हो जाती है। जिन datasets को पूरा आँखों से देखा जा सकता है, उनमें भी leakage बहुत आसानी से घुस जाती है, और आमतौर पर खुद पता भी नहीं चलता। subtle चीज़ें data को आसानी से बिगाड़ देती हैं
अब हम ऐसे विशाल datasets से निपटते हैं जिन्हें किसी इंसान द्वारा पूरा देखने की संभावना नहीं है। हमें पता है कि filtering methods imperfect हैं, तो हम कैसे मान लें कि leakage नहीं है? आप कह सकते हैं कि filtering की गई, लेकिन यह नहीं कह सकते कि leakage नहीं है
ऊपर से accessible datasets में भी हमें लगातार contamination मिल रही है। यानी यह evidence लगातार आ रहा है कि ऐसा सच में अक्सर होता है
फिर हम contamination न होने की assumption क्यों करते रहते हैं? क्या hype की वजह से? सच कहूँ तो यह खुद से बोला गया झूठ लगता है, क्योंकि हम विश्वास करना चाहते हैं। ऐसे मुद्दों पर खुद को धोखा देकर उन्हें ठीक नहीं किया जा सकता
उदाहरण के लिए Medicare और Medicaid में improper payment rate 7.66% था। यह अरबों डॉलर का मामला है और सुधार की गुंजाइश भी है, लेकिन इसका मतलब यह नहीं कि पूरा system fail हो गया। 93% मामलों में coverage intended तरीके से हो रही है
इन models के साथ भी ऐसा ही हो सकता है। अगर contamination rate 10% है, तो क्या पूरा system खराब है, या वह सहन करने लायक स्तर है?
[1]: https://www.cms.gov/newsroom/fact-sheets/fiscal-year-2024-im...
जिसकी मैं भविष्यवाणी करता आ रहा था, वही सामने आया: https://news.ycombinator.com/context?id=44041114 https://news.ycombinator.com/context?id=41786908
यह “AI coding कर सकता है” जैसा ही है। अगर problem training set में नहीं है, तो यह लगातार चमकदार ढंग से fail होता है, और लोग हर बार हैरान होते हैं
Architecture, design, review जैसे मुश्किल हिस्से यह नहीं कर सकता, लेकिन ज़्यादातर engineers का समय खाने वाले repetitive और पहले से solved हिस्सों का बहुत बड़ा हिस्सा यह ले सकता है। Quality assurance इंसान करता है, इसलिए quality loss के बिना productivity 2–5x बढ़ाना बिल्कुल संभव है
लेकिन बिना management और verification के यह किसी भी इंसान का पूरा काम सही से replace नहीं कर सकता। अभी यह बिल्कुल भी करीब नहीं है
“मैंने पढ़े ज़्यादातर deep learning papers में domain expert ने नतीजों को बारीकी से खंगालकर output quality की जांच नहीं की थी। ऊपर से प्रभावशाली दिखने वाले कितने papers सटीक verification में टिक नहीं पाएंगे?”
क्या सच में ऐसा है? मैंने अपने क्षेत्र के कुछ AI papers पढ़े हैं, और जानता हूं कि दूसरे domain experts ने भी बहुत पढ़े हैं। हालांकि लगता है कि computer science/software-आधारित कामों को biology की तुलना में आम तौर पर verify करना आसान होता है। या शायद ऐसा इसलिए हो कि मुझे biology के बारे में बहुत कम पता है
कोई भी किसी arbitrary model prediction को verify करने के लिए अपने career के 3–5 साल दांव पर नहीं लगाएगा
ऐसा करने पर ground-truth label errors अक्सर काफी जल्दी मिल जाते हैं। बेशक, ज़्यादातर models की performance इतनी अच्छी नहीं होती कि ऐसे errors results पर बड़ा असर डालें
Nature Communications को “Nature” नहीं कहना चाहिए। दोनों की प्रतिष्ठा बिल्कुल अलग है। और altmetrics भी उतने relevant नहीं हैं—जब तक कि आप public hype को measure करना न चाहें
researcher के तौर पर मेरे सीमित LLM experience से यह काफी मेल खाता है। सतही तौर पर prose को समझना और वाक्य बनाना बेहद impressive है
लेकिन खासकर अभी तक unresolved questions में best possible answer तक पहुंचना अलग बात है। जिस सवाल पर आधा दिन लगाने के बाद भी निष्कर्ष न निकल सकता हो, उसका लगभग तुरंत दिया गया जवाब शायद ही कभी संतोषजनक होता है
जटिल सवालों को explore करने के लिए समय चाहिए। अब तक LLM उन स्थितियों में भी, जहां उसे अपनी क्षमता की कमी के कारण निष्कर्ष न निकालना चाहिए, उस unresolved state को स्वीकार करने के बजाय confident दिखने वाला—कभी-कभी पूरी तरह गलत—जवाब देने की ओर झुकता है
Rachel Thomas का बेहतरीन लेख है
यह इस बात के लिए एक और तर्क जैसा लगता है कि deep learning मूल domain के बेहद lossy representation यानी training data पर निर्भर करती है, इसलिए अंततः यह सिर्फ generative information retrieval की तरह काम करती है। यानी stochastic parrot
क्योंकि gene data या labels हमेशा मूल domain यानी biology को पूरी तरह represent नहीं करते, output झूठा, invalid या बेतुका हो सकता है
जब यह बहुत अच्छी तरह काम करता है, तो data leakage मौजूद होता है। क्योंकि LLMs design के हिसाब से information retrieval tools हैं। information theory के नजरिए से किसी भी model में बुनियादी तौर पर “unknown unknowns” मौजूद होते हैं
मेरा निष्कर्ष यह है कि गलती algorithm की कम और training dataset की ज्यादा है
इंसान natural language domain में flexible तरीके से काम करते हैं, और बच्चा भी text पढ़कर evaluate कर सकता है कि वह अर्थपूर्ण है या नहीं। यही natural language processing से trained models की सफलता को समझाता है
लेकिन जिन क्षेत्रों में training data मूल domain को lossy तरीके से represent करता है, वहां यह अधूरा होना ही है
embedding space words, sentences और paragraphs के बीच relationships को represent कर सकता है, और ये चीजें मूल domain के बारे में information रख सकती हैं; इसलिए जब text के जरिए उन relationships को query किया जाता है, तो plausible answer मिल सकता है। समस्या यह है कि text एक messy encoding तरीका है, इसलिए वे relationships क्या represent करते हैं यह हमेशा साफ नहीं होता
दूसरी कमजोरी इसका generative होना है। generative बनाने के लिए हर possible question और answer को database में hardcode करने के बजाय, कुछ data algorithm—यानी next token prediction—पर छोड़ दिया जाता है। इससे inaccurate लेकिन probabilistic questions/prompts possible होते हैं, और कुछ भी पूछ सकने का फायदा मिलता है
लेकिन कोई भी single algorithm किसी domain के सभी possible questions के सभी possible answers को accurately encode नहीं कर सकता। इसलिए information की precision कुछ हद तक खो जाती है। मौजूदा LLMs को मैं इसी तरह देखता हूं
programming में average से नीचे या average level का junior developer कैसे काम करता है, यह सोचिए। वह Stack Overflow या tutorials से समस्या हल करने की information “search” करता है
हर developer को अच्छी तरह बनाया गया AI automation tool देना लगभग ऐसा है जैसे हर किसी के साथ boring और simple tasks सौंपने के लिए एक junior developer लगा दिया जाए। simple tasks के कारण junior के grow न कर पाने की चिंता भी नहीं रहती। अगर static code analysis, tests जैसे tools पर्याप्त रूप से मौजूद हों, तो AI tool काम करने, tools चलाने और problems fix करने की iteration काफी अच्छी तरह कर पाएगा
क्या उस tool की कीमत junior developer की cost की करीब 1/30 नहीं है? तब असली junior developers को train करने सहित महत्वपूर्ण कामों के लिए ज्यादा समय मिल सकता है
मुझे नहीं लगता कि AI अभी पूरी तरह वहां पहुंच गया है, लेकिन लगता है कि मौजूदा foundation models को सही तरीके से connect और combine किया जाए तो वे वहां पहुंचने के लिए पर्याप्त हो सकते हैं
मौजूदा AI hype cycle की एक मुख्य समस्या को अच्छी तरह पकड़ा गया है। हम accuracy नहीं, attention optimize कर रहे हैं
और यह सिर्फ biology की समस्या नहीं है। climate science, law, medicine तक machine learning के applications में ऐसे ही patterns दिखते हैं