ailiteracynepal 🇳🇵
पाठ आकार

अध्याय ६ · खण्ड I · 20 मिनेट

वास्तविक नेपाली डाटासँग समस्या फ्रेम गर्ने

कुनै पनि ML परियोजनाको सबैभन्दा गाह्रो, सबैभन्दा महत्त्वपूर्ण भाग के पूर्वानुमान गर्ने र कसका लागि छान्नु हो। यो खण्ड फ्रेमिङको अनुशासन हो — अस्पष्ट आकाङ्क्षालाई मूर्त, सक्न सकिने, स्थानीय रूपमा भुइँमा टेकेको ML समस्यामा बदल्ने।

तपाईं अब वर्गीकरणकर्ता र रिग्रेसर तालिम दिन, मूल्याङ्कन गर्न, र ट्युन गर्न सक्नुहुन्छ। कुनै पनि ML परियोजनाको सबैभन्दा गाह्रो भाग अझै तपाईंको अगाडि छ: के पूर्वानुमान गर्नेकसका लागि निर्णय गर्ने। यो खण्ड फ्रेमिङ अनुशासन हो — ध्यानले सोचिएको आधा घण्टा जसले “हामीले माइक्रोफाइनान्सलाई मद्दत गर्न AI प्रयोग गर्नुपर्छ” लाई “हामी 35% भन्दा माथिको डिफल्ट सम्भावना भएका ऋण आवेदनहरू फ्ल्याग गर्ने वर्गीकरणकर्ता बनाउनेछौं, मानवीय अधिकारीको समीक्षाका लागि, प्रति-जिल्ला recall मा मूल्याङ्कन गरिएको” मा बदल्छ। फ्रेमिङ सही पाउनुहोस् र प्राविधिक काम प्राकृतिक रूपमा पछ्याउँछ। यसलाई गलत पाउनुहोस् र कुनै पनि ट्युनिङले परियोजना बचाउँदैन।

“फ्रेमिङ” को अर्थ के हो

फ्रेमिङले तपाईंको परियोजनाबारे पाँच प्रश्नको उत्तर दिन्छ, क्रममा। कुनै पनि डाटा लोड गर्नुअघि सबै पाँच उत्तर एक पृष्ठमा लेख्नुहोस्।

  1. प्रयोगकर्ता को हो? विशिष्ट रूपमा। “माइक्रोफाइनान्स संगठन” होइन — कुन संगठन, कसको काम सुधारिन्छ?
  2. मोडेलले कुन निर्णयलाई सूचित गर्नेछ? मूर्त रूपमा। प्रयोगकर्ताले पहिले नै चाहेको पूर्वानुमान?
  3. पूर्वानुमान लक्ष्य के हो? तपाईंसँग पहुँच भएको डाटाबाट गणना गर्न सकिने विशिष्ट स्तम्भ।
  4. सफलता कस्तो देखिन्छ? एउटा मेट्रिक र थ्रेसहोल्ड, दुवै रक्षा गर्न मिल्ने।
  5. विफलता मोड र लगत कसले बोक्छन्? नाम र परिणामसहित।

यो अफिसीशैलीको लाग्छ। यो होइन। यो साना सकिएका परियोजना र छ-महिने फैलावटलाई छुट्ट्याउने कुरा हो।

कार्यगत फ्रेमिङ — माइक्रोफाइनान्स डिफल्ट पूर्वानुमान

आकाङ्क्षा: “हाम्रो माइक्रोफाइनान्स संस्थामा डिफल्ट घटाउन AI प्रयोग गर्नुहोस्।”

आकाङ्क्षासँगको समस्या: यसले हामीलाई के बनाउने भन्दैन। हामी फ्रेम गर्छौं:

1. प्रयोगकर्ता को हो?

तराईको एक विशिष्ट माइक्रोफाइनान्स संस्थाका ऋण अधिकारीहरू। ४ शाखामा लगभग १२ अधिकारी छन्। प्रत्येकले प्रति दिन १५-३० ऋण आवेदनहरू समीक्षा गर्छन्। मोडेल तिनको कार्यप्रवाहलाई समर्थन गर्न बनाइएको हो, प्रतिस्थापन गर्न होइन।

विशिष्ट। सङ्ख्या र कार्यप्रवाह सन्दर्भ छ।

2. कुन निर्णय?

हरेक नयाँ आवेदनका लागि, अधिकारीलाई निर्णय गर्नुपर्छ: स्वीकृत, अस्वीकार, वा वरिष्ठ समीक्षामा escalate गर्ने। तिनी हाल फारम पढेर, प्रश्न सोधेर, र न्यायालोचना गरेर यो निर्णय गर्छन्। मोडेलले अधिकारीले एक इनपुटका रूपमा प्रयोग गर्न सक्ने डिफल्ट-सम्भावना स्कोर उत्पादन गर्नेछ — निर्णय आफै होइन।

मोडेल सहयोगी छ, स्वायत्त होइन। गहिरो महत्त्वपूर्ण फ्रेमिङ छनोट। हामी यसमा फर्किनेछौं।

3. पूर्वानुमान लक्ष्य के हो?

defaulted — हाम्रो ऐतिहासिक ऋण डाटाबेसमा बाइनरी स्तम्भ। defaulted = True यदि ऋण या त (a) कम्तीमा एक भुक्तानीमा ९० दिनभन्दा बढी बाँकी थियो, वा (b) औपचारिक रूपमा राइट-अफ भयो। हामी हाल सक्रिय तर ६ महिनाभन्दा कम पुराना ऋणहरू बहिष्कार गर्नेछौं (किनभने तिनी डिफल्ट हुनेछन् कि हुँदैनन् अझै थाहा छैन)।

विशिष्ट परिभाषा। बहिष्कार नियम महत्त्वपूर्ण छ — यसबिना, हालैका ऋणहरू प्रणालीगत रूपमा “no-default” लेबल हुन्छन् केवल पुराना नभएकाले, र मोडेलले बकवास सिक्थ्यो।

4. सफलता कस्तो देखिन्छ?

डिफल्ट कक्षामा 75% भन्दा माथि recall, 60% भन्दा माथि precision सँग, प्रति-शाखा र समग्रमा मूल्याङ्कन। Stakeholders ले मोडेलका फ्ल्याग हाल manual escalation दरहरूको विरुद्धमा तुलना गर्नेछन् — यदि मोडेलले समान समीक्षा भारसँग हालको प्रक्रियाभन्दा बढी डिफल्ट समात्छ भने, यो पठाइन्छ। यदि अधिकारीले “धेरै झुटा फ्ल्याग” रिपोर्ट गर्छन् भने, हामी थ्रेसहोल्ड समायोजन गर्छौं।

विशिष्ट मेट्रिक विशिष्ट थ्रेसहोल्डसँग। विशिष्ट प्रयोगकर्ता-सामना तुलना। समायोजनका लागि विशिष्ट सञ्चालन लिभर।

5. विफलता मोड?

(a) मोडेलले वास्तविक डिफल्टर छुटाउन सक्छ, संस्थालाई पैसा गुमाउँदै — recall द्वारा मापन। (b) मोडेलले राम्रा ऋणीलाई गलत रूपमा फ्ल्याग गर्न सक्छ, अधिकारीको समय बर्बाद गर्दै र स्वीकृति सुस्त बनाउँदै — precision द्वारा मापन। (c) मोडेल प्रणालीगत रूपमा पूर्वाग्रही हुन सक्छ — जस्तै, विशिष्ट जिल्लाका ऋणीहरूका लागि खराब — उप-जनसङ्ख्यालाई असुविधामा राख्दै। हामीले प्रति-जिल्ला प्रदर्शन रिपोर्ट गर्नुपर्छ र यदि खाडल सहमत भएको थ्रेसहोल्ड नाघ्छ भने तैनाती रोक्नुपर्छ। (d) मोडेलले ऐतिहासिक ऋण दिने पूर्वाग्रह embed र amplify गर्न सक्छ। हामी संरक्षित विशेषताहरू (जात, जातीयता, लिङ्ग) लाई फिचरका रूपमा प्रयोग गर्ने छैनौं; हामी प्रतिनिधिहरूका लागि अडिट गर्नेछौं।

चार विफलता मोड। तीन प्राविधिक हुन्। चौथो नैतिक हो। प्रत्येकको नाम र जाँच छ।

त्यो पाँच-प्रश्न टेम्प्लेट, इमानदारीसाथ लागू गरिँदा, लगभग एक घण्टा लाग्छ। यो कुनै पनि ML परियोजनाको उच्चतम-लिभरेज घण्टा हो। “हामीले यसलाई बनायौँ तर कसैले प्रयोग गर्दैनन्” कथाहरू झन्डै सबै यो चरण स्किप गर्ने परियोजनाबाट आउँछन्।

राम्रोसँग आकार दिइएका नेपाली ML समस्याहरूको सानो सूची

तपाईंको कल्पनालाई केही आकार दिन, यहाँ आठ परियोजना विचार छन्, प्रत्येक हप्ता-अन्तदेखि-महिना स्केलको प्रयासका लागि उचित रूपमा फ्रेम गरिएको।

  1. NEPSE दिशा पूर्वानुमानकर्ता। भोलिको NEPSE बन्द आजको भन्दा उच्च हुनेछ कि कम पूर्वानुमान गर्नुहोस्। लक्ष्य: बाइनरी माथि/तल। प्रयोगकर्ता: समाचार ब्राउज गर्ने सानो खुद्रा लगानीकर्ता। सफलता: सिक्का-उछालभन्दा राम्रो recall, कालानुक्रमिक रूपमा मूल्याङ्कन (TimeSeriesSplit)। विफलता मोड: मोडेल अस्वीकरणविना “किन्नुहोस् सङ्केत” बन्छ।

  2. माइक्रोफाइनान्स डिफल्ट फ्ल्याग। माथिको कार्यगत उदाहरण।

  3. SMS स्प्याम वर्गीकरणकर्ता (नेपाली)। अध्याय 2 खण्ड 3 मा निर्माण गर्नुहोस्। आफै 500 मिश्रित-भाषाको SMS सङ्कलन गर्नुहोस्। लक्ष्य: स्प्याम/ham बाइनरी। प्रयोगकर्ता: पहिले आफै। सफलता: 5% भन्दा कम झुटा अलार्मसँग स्प्याममा 90% recall। विफलता मोड: प्रेषक सम्पर्कहरूको गोपनीयता।

  4. विद्यालय छाड्ने जोखिम। विद्यार्थीको उपस्थिति, ग्रेड, र आधारभूत जनसाङ्ख्यिकी दिइयो, अर्को वर्ष तिनी छाड्नेछन् कि पूर्वानुमान गर्नुहोस्। लक्ष्य: बाइनरी रह्यो/गयो। प्रयोगकर्ता: विद्यालय काउन्सलर। सफलता: प्रति-समूह recall र काउन्सलरले कार्य गर्न सक्ने व्याख्या। विफलता मोड: विशिष्ट समूहका विरुद्ध पूर्वाग्रह, आत्म-पूरा हुने भविष्यवाणी प्रभाव।

  5. Tukcha (होमस्टे) समीक्षा भावना। नेपाली-भाषाका होटल/होमस्टे समीक्षालाई सकारात्मक/नकारात्मक वर्गीकृत गर्नुहोस्। प्रयोगकर्ता: अनलाइन उपस्थिति निगरानी गर्ने सानो होमस्टे मालिक। सफलता: हरेक कक्षामा 85% precision। विफलता मोड: रचनात्मक आलोचनालाई “नकारात्मक” वर्गीकृत गर्ने र यसलाई बेवास्ता गर्ने।

  6. काठमाडौं भाडा अनुमानकर्ता। अध्याय 3 को कार्यगत उदाहरण, उत्पादनका लागि परिष्कृत। प्रयोगकर्ता: सानो वास्तविक-सम्पत्ति ब्रोकर। सफलता: रु 5,000 भित्र MAE। विफलता मोड: बासी डाटा (भाडा मौसमी र वार्षिक रूपमा बदलिन्छ)।

  7. NEPSE अर्को-दिन volatility वर्गीकरणकर्ता। भोलिको intraday volatility उच्च हुनेछ कि पूर्वानुमान गर्नुहोस्। लक्ष्य: बाइनरी उच्च/कम। प्रयोगकर्ता: अझ परिष्कृत लगानीकर्ता। सफलता: आधारमा सुधार। विफलता मोड: मोडेल तालिम नदिइएको बजार regime परिवर्तन।

  8. विक्रेता/कारोबार ठगी फ्ल्याग। खल्ती कारोबार इतिहास दिइयो, असामान्य देखिने कारोबार फ्ल्याग गर्नुहोस्। Unsupervised वा weakly supervised। प्रयोगकर्ता: आफ्नै खाता निगरानी गर्ने सानो व्यवसाय मालिक। सफलता: फ्ल्याग गरिएका कारोबारमा precision।

एउटा छान्नुहोस्। पृष्ठमा फ्रेम गर्नुहोस्। यो अध्यायको बाँकीले पूरै build हिँडाउँछ।

फ्रेमिङ लेख्ने

यो खण्डबाट deliverable, तपाईंले कुनै कोड लेख्नुअघि: एक-पृष्ठ फ्रेमिङ document, docs/framing.md का रूपमा आफ्नो परियोजनामा बचत। संरचना:

# Project: NEPSE Direction Predictor

## User
A small retail investor in Nepal who reads the morning paper and decides
whether to check their portfolio more closely today. About 200,000
active retail investors on NEPSE.

## Decision the model informs
For each upcoming trading day, suggest "likely up" or "likely down" so
the user knows whether to expect a calm or volatile day. Not a buy/sell
signal — explicitly framed as a directional hint, not advice.

## Prediction target
Binary: `direction = sign(close_tomorrow - close_today) > 0`. Trained on
the last 5 years of daily NEPSE closes. Evaluated chronologically.

## Success metric
F1 score above 0.55 on a chronological holdout, with no calendar-month
period showing F1 below 0.45 (consistent performance across regimes).

## Failure modes
1. The model becomes a tacit buy signal; mitigate by always showing
   probability + disclaimer + historical accuracy on the UI.
2. The model misses market regime changes (e.g. policy announcements);
   mitigate by retraining monthly and flagging large probability shifts.
3. The model could be used by hostile actors to time announcements;
   keep deployment to authenticated users only.

त्यो पूर्ण फ्रेमिङ हो। लेख्न आधा घण्टा। अल्मलिने हप्तौंको काम बचाउँछ।

आफ्नो बुझाइ जाँच्नुहोस्

Quick check

एक टिम सदस्यले परियोजना प्रस्ताव गर्छन्: 'हाम्रो अस्पताललाई मद्दत गर्न ML प्रयोग गर्नुहोस्।' यो खण्डको आत्मामा, सबैभन्दा उपयोगी अर्को प्रश्न के हो?

Quick check

एक टिमले आफ्नो loan-default परियोजना 'शुद्धता अधिकतम गर्नुहोस्' सफलता मेट्रिकसँग फ्रेम गर्छ। अध्याय 4 र 5 दिइयो, यो सफलता मेट्रिकसँग के गलत छ?

अब के आउँछ

फ्रेमिङ सकियो। अर्को खण्ड build आफै हो — फ्रेमिङ documentबाट काम गर्ने मोडेलसम्म, सुरुदेखि अन्त्यसम्म, तपाईंले छानेको जुनसुकै परियोजनामा। तपाईं Course 02 (डाटा तयारी) र Course 03 अध्याय 1-5 (तालिम, मूल्याङ्कन, ट्युनिङ) बाट सबै कुरा प्रयोग गर्नुहुनेछ। आकार परिचित लाग्नेछ किनभने यो हो।