23 KiB
AGENTS.md
Project Overview
ఇది Machine Learning for Beginners, పాఠ్యాంశాల 26తో కూడిన 12 వారాల సమగ్ర పాఠ్యక్రమం, ఇది Python (ప్రధానంగా Scikit-learn తో) మరియు R ఉపయోగించి క్లాసిక్ మెషీన్ లెర్నింగ్ కాన్సెప్ట్లను కవర్ చేస్తుంది. ఈ రిపోజిటరీ స్వీయ-గతిలో నేర్చుకునే వనరుగా రూపొందించబడింది, ఇందులో ప్రాక్టికల్ ప్రాజెక్టులు, క్విజ్లు మరియు అసైన్మెంట్లు ఉన్నాయి. ప్రతి పాఠం ప్రపంచవ్యాప్తంగా వివిధ సంస్కృతులు మరియు ప్రాంతాల నుండి వాస్తవ డేటా ద్వారా ML కాన్సెప్ట్లను అన్వేషిస్తుంది.
ప్రధాన భాగాలు:
- విద్యా విషయాలు: ML పరిచయం, రిగ్రెషన్, క్లాసిఫికేషన్, క్లస్టరింగ్, NLP, టైమ్ సిరీస్, మరియు రీఇన్ఫోర్స్మెంట్ లెర్నింగ్ను కవర్ చేసే 26 పాఠాలు
- క్విజ్ అప్లికేషన్: Vue.js ఆధారిత క్విజ్ యాప్, పాఠం ముందు మరియు తర్వాత అంచనాలతో
- బహుభాషా మద్దతు: GitHub Actions ద్వారా 40+ భాషలకు ఆటోమేటెడ్ అనువాదాలు
- రెండు భాషల మద్దతు: పాఠాలు Python (Jupyter నోట్బుక్స్) మరియు R (R Markdown ఫైళ్లలో) అందుబాటులో ఉన్నాయి
- ప్రాజెక్ట్ ఆధారిత నేర్చుకోవడం: ప్రతి అంశం ప్రాక్టికల్ ప్రాజెక్టులు మరియు అసైన్మెంట్లను కలిగి ఉంటుంది
Repository Structure
ML-For-Beginners/
├── 1-Introduction/ # ML basics, history, fairness, techniques
├── 2-Regression/ # Regression models with Python/R
├── 3-Web-App/ # Flask web app for ML model deployment
├── 4-Classification/ # Classification algorithms
├── 5-Clustering/ # Clustering techniques
├── 6-NLP/ # Natural Language Processing
├── 7-TimeSeries/ # Time series forecasting
├── 8-Reinforcement/ # Reinforcement learning
├── 9-Real-World/ # Real-world ML applications
├── quiz-app/ # Vue.js quiz application
├── translations/ # Auto-generated translations
└── sketchnotes/ # Visual learning aids
ప్రతి పాఠం ఫోల్డర్ సాధారణంగా కలిగి ఉంటుంది:
README.md- ప్రధాన పాఠ్యాంశంnotebook.ipynb- Python Jupyter నోట్బుక్solution/- సొల్యూషన్ కోడ్ (Python మరియు R వెర్షన్లు)assignment.md- ప్రాక్టీస్ వ్యాయామాలుimages/- విజువల్ వనరులు
Setup Commands
For Python Lessons
అధిక భాగం పాఠాలు Jupyter నోట్బుక్స్ ఉపయోగిస్తాయి. అవసరమైన డిపెండెన్సీలను ఇన్స్టాల్ చేయండి:
# ఇప్పటికే ఇన్స్టాల్ చేయకపోతే Python 3.8+ ఇన్స్టాల్ చేయండి
python --version
# Jupyter ఇన్స్టాల్ చేయండి
pip install jupyter
# సాధారణ ML లైబ్రరీలను ఇన్స్టాల్ చేయండి
pip install scikit-learn pandas numpy matplotlib seaborn
# నిర్దిష్ట పాఠాల కోసం, పాఠం-స్పెసిఫిక్ అవసరాలను తనిఖీ చేయండి
# ఉదాహరణ: వెబ్ యాప్ పాఠం
pip install flask
For R Lessons
R పాఠాలు solution/R/ ఫోల్డర్లలో .rmd లేదా .ipynb ఫైళ్లుగా ఉంటాయి:
# R మరియు అవసరమైన ప్యాకేజీలను ఇన్స్టాల్ చేయండి
# R కన్సోల్లో:
install.packages(c("tidyverse", "tidymodels", "caret"))
For Quiz Application
క్విజ్ యాప్ quiz-app/ డైరెక్టరీలో ఉన్న Vue.js అప్లికేషన్:
cd quiz-app
npm install
For Documentation Site
డాక్యుమెంటేషన్ స్థానికంగా నడపడానికి:
# డాక్సిఫైని ఇన్స్టాల్ చేయండి
npm install -g docsify-cli
# రిపోజిటరీ రూట్ నుండి సర్వ్ చేయండి
docsify serve
# http://localhost:3000 వద్ద యాక్సెస్ చేయండి
Development Workflow
Working with Lesson Notebooks
- పాఠం డైరెక్టరీకి వెళ్లండి (ఉదా:
2-Regression/1-Tools/) - Jupyter నోట్బుక్ తెరవండి:
jupyter notebook notebook.ipynb - పాఠ్యాంశం మరియు వ్యాయామాలపై పని చేయండి
- అవసరమైతే
solution/ఫోల్డర్లో సొల్యూషన్లను తనిఖీ చేయండి
Python Development
- పాఠాలు ప్రామాణిక Python డేటా సైన్స్ లైబ్రరీలను ఉపయోగిస్తాయి
- ఇంటరాక్టివ్ నేర్చుకోవడానికి Jupyter నోట్బుక్స్
- ప్రతి పాఠం
solution/ఫోల్డర్లో సొల్యూషన్ కోడ్ అందుబాటులో ఉంటుంది
R Development
- R పాఠాలు
.rmdఫార్మాట్ (R Markdown)లో ఉంటాయి - సొల్యూషన్లు
solution/R/ఉపడైరెక్టరీలలో ఉంటాయి - R నోట్బుక్స్ నడపడానికి RStudio లేదా R కర్నెల్తో Jupyter ఉపయోగించండి
Quiz Application Development
cd quiz-app
# అభివృద్ధి సర్వర్ ప్రారంభించండి
npm run serve
# http://localhost:8080 వద్ద యాక్సెస్ చేయండి
# ఉత్పత్తి కోసం నిర్మించండి
npm run build
# ఫైళ్లను లింట్ చేసి సరిచేయండి
npm run lint
Testing Instructions
Quiz Application Testing
cd quiz-app
# కోడ్ను లింట్ చేయండి
npm run lint
# ఎటువంటి లోపాలు లేవని నిర్ధారించడానికి నిర్మించండి
npm run build
గమనిక: ఇది ప్రధానంగా విద్యా పాఠ్యక్రమం రిపోజిటరీ. పాఠ్యాంశం కోసం ఆటోమేటెడ్ టెస్టులు లేవు. ధృవీకరణ ఈ విధంగా జరుగుతుంది:
- పాఠం వ్యాయామాలు పూర్తి చేయడం
- నోట్బుక్ సెల్స్ విజయవంతంగా నడపడం
- సొల్యూషన్లలో అంచనా ఫలితాలతో అవుట్పుట్ తనిఖీ చేయడం
Code Style Guidelines
Python Code
- PEP 8 స్టైల్ మార్గదర్శకాలను అనుసరించండి
- స్పష్టమైన, వివరణాత్మక వేరియబుల్ పేర్లను ఉపయోగించండి
- క్లిష్టమైన ఆపరేషన్లకు వ్యాఖ్యలు చేర్చండి
- Jupyter నోట్బుక్స్లో కాన్సెప్ట్లను వివరించే మార్క్డౌన్ సెల్స్ ఉండాలి
JavaScript/Vue.js (Quiz App)
- Vue.js స్టైల్ గైడ్ను అనుసరిస్తుంది
quiz-app/package.jsonలో ESLint కాన్ఫిగరేషన్- సమస్యలను తనిఖీ చేయడానికి మరియు ఆటో-ఫిక్స్ చేయడానికి
npm run lintనడపండి
Documentation
- మార్క్డౌన్ ఫైళ్లు స్పష్టంగా మరియు బాగా నిర్మించబడాలి
- కోడ్ ఉదాహరణలను fenced కోడ్ బ్లాక్స్లో చేర్చండి
- అంతర్గత సూచనలకు సంబంధిత లింకులను ఉపయోగించండి
- ఉన్న ఫార్మాటింగ్ సంప్రదాయాలను అనుసరించండి
Build and Deployment
Quiz Application Deployment
క్విజ్ యాప్ను Azure Static Web Apps కు డిప్లాయ్ చేయవచ్చు:
-
అవసరాలు:
- Azure ఖాతా
- GitHub రిపోజిటరీ (ఇప్పటికే ఫోర్క్ చేయబడింది)
-
Azure కు డిప్లాయ్ చేయండి:
- Azure Static Web App వనరును సృష్టించండి
- GitHub రిపోజిటరీకి కనెక్ట్ చేయండి
- యాప్ లొకేషన్:
/quiz-appగా సెట్ చేయండి - అవుట్పుట్ లొకేషన్:
distగా సెట్ చేయండి - Azure ఆటోమేటిక్గా GitHub Actions వర్క్ఫ్లో సృష్టిస్తుంది
-
GitHub Actions Workflow:
.github/workflows/azure-static-web-apps-*.ymlవద్ద వర్క్ఫ్లో ఫైల్ సృష్టించబడుతుంది- ప్రధాన బ్రాంచ్కు పుష్ చేసినప్పుడు ఆటోమేటిక్గా బిల్డ్ చేసి డిప్లాయ్ చేస్తుంది
Documentation PDF
డాక్యుమెంటేషన్ నుండి PDF రూపొందించండి:
npm install
npm run convert
Translation Workflow
ముఖ్యమైనది: అనువాదాలు GitHub Actions ద్వారా Co-op Translator ఉపయోగించి ఆటోమేటెడ్గా జరుగుతాయి.
- మార్పులు
mainబ్రాంచ్కు పుష్ చేసినప్పుడు అనువాదాలు ఆటోమేటిక్గా ఉత్పత్తి అవుతాయి - కంటెంట్ను మానవీయంగా అనువదించవద్దు - సిస్టమ్ దీనిని నిర్వహిస్తుంది
- వర్క్ఫ్లో
.github/workflows/co-op-translator.ymlలో నిర్వచించబడింది - అనువాదానికి Azure AI/OpenAI సేవలను ఉపయోగిస్తుంది
- 40+ భాషలకు మద్దతు ఇస్తుంది
Contributing Guidelines
For Content Contributors
- రిపోజిటరీని ఫోర్క్ చేసి ఫీచర్ బ్రాంచ్ సృష్టించండి
- పాఠ్యాంశం మార్చండి లేదా కొత్త పాఠాలు జోడించండి
- అనువదించిన ఫైళ్లను మార్చవద్దు - అవి ఆటోమేటెడ్గా ఉత్పత్తి అవుతాయి
- మీ కోడ్ను పరీక్షించండి - అన్ని నోట్బుక్ సెల్స్ విజయవంతంగా నడవాలి
- లింకులు మరియు చిత్రాలు సరిచూసుకోండి
- స్పష్టమైన వివరణతో పుల్ రిక్వెస్ట్ సమర్పించండి
Pull Request Guidelines
- శీర్షిక ఫార్మాట్:
[Section] మార్పుల సంక్షిప్త వివరణ- ఉదా:
[Regression] పాఠం 5లో టైపో సరిచేయండి - ఉదా:
[Quiz-App] డిపెండెన్సీలను నవీకరించండి
- ఉదా:
- సమర్పించే ముందు:
- అన్ని నోట్బుక్ సెల్స్ ఎర్రర్ల లేకుండా నడవాలి
- quiz-app మార్చినట్లయితే
npm run lintనడపండి - మార్క్డౌన్ ఫార్మాటింగ్ తనిఖీ చేయండి
- కొత్త కోడ్ ఉదాహరణలను పరీక్షించండి
- PRలో ఉండవలసినవి:
- మార్పుల వివరణ
- మార్పుల కారణం
- UI మార్పులుంటే స్క్రీన్షాట్లు
- Code of Conduct: Microsoft Open Source Code of Conduct అనుసరించండి
- CLA: Contributor License Agreement సంతకం చేయాలి
Lesson Structure
ప్రతి పాఠం ఒక సుస్పష్టమైన నమూనాను అనుసరిస్తుంది:
- పాఠం ముందు క్విజ్ - ప్రాథమిక జ్ఞానాన్ని పరీక్షించండి
- పాఠ్యాంశం - వ్రాత సూచనలు మరియు వివరణలు
- కోడ్ డెమోస్ - నోట్బుక్స్లో ప్రాక్టికల్ ఉదాహరణలు
- జ్ఞాన తనిఖీలు - అర్థం చేసుకున్నదాన్ని నిర్ధారించండి
- చాలెంజ్ - స్వతంత్రంగా కాన్సెప్ట్లను వర్తించండి
- అసైన్మెంట్ - విస్తృత ప్రాక్టీస్
- పాఠం తర్వాత క్విజ్ - నేర్చుకున్న ఫలితాలను అంచనా వేయండి
Common Commands Reference
# Python/Jupyter
jupyter notebook # Jupyter సర్వర్ ప్రారంభించండి
jupyter notebook notebook.ipynb # నిర్దిష్ట నోట్బుక్ తెరవండి
pip install -r requirements.txt # ఆధారాలు ఇన్స్టాల్ చేయండి (అక్కడ అందుబాటులో ఉంటే)
# క్విజ్ యాప్
cd quiz-app
npm install # ఆధారాలు ఇన్స్టాల్ చేయండి
npm run serve # అభివృద్ధి సర్వర్
npm run build # ఉత్పత్తి బిల్డ్
npm run lint # లింట్ చేసి సరిచేయండి
# డాక్యుమెంటేషన్
docsify serve # డాక్యుమెంటేషన్ను స్థానికంగా సర్వ్ చేయండి
npm run convert # PDF రూపొందించండి
# Git వర్క్ఫ్లో
git checkout -b feature/my-change # ఫీచర్ బ్రాంచ్ సృష్టించండి
git add . # మార్పులను స్టేజ్ చేయండి
git commit -m "Description" # మార్పులను కమిట్ చేయండి
git push origin feature/my-change # రిమోట్కు పుష్ చేయండి
Additional Resources
- Microsoft Learn Collection: ML for Beginners modules
- Quiz App: Online quizzes
- Discussion Board: GitHub Discussions
- Video Walkthroughs: YouTube Playlist
Key Technologies
- Python: ML పాఠాల కోసం ప్రాథమిక భాష (Scikit-learn, Pandas, NumPy, Matplotlib)
- R: tidyverse, tidymodels, caret ఉపయోగించి ప్రత్యామ్నాయ అమలు
- Jupyter: Python పాఠాల కోసం ఇంటరాక్టివ్ నోట్బుక్స్
- R Markdown: R పాఠాల డాక్యుమెంట్లు
- Vue.js 3: క్విజ్ అప్లికేషన్ ఫ్రేమ్వర్క్
- Flask: ML మోడల్ డిప్లాయ్మెంట్ కోసం వెబ్ అప్లికేషన్ ఫ్రేమ్వర్క్
- Docsify: డాక్యుమెంటేషన్ సైట్ జనరేటర్
- GitHub Actions: CI/CD మరియు ఆటోమేటెడ్ అనువాదాలు
Security Considerations
- కోడ్లో రహస్యాలు లేవు: API కీలు లేదా క్రెడెన్షియల్స్ ఎప్పుడూ కమిట్ చేయవద్దు
- డిపెండెన్సీలు: npm మరియు pip ప్యాకేజీలను నవీకరించండి
- వినియోగదారు ఇన్పుట్: Flask వెబ్ యాప్ ఉదాహరణలు ప్రాథమిక ఇన్పుట్ ధృవీకరణను కలిగి ఉంటాయి
- సున్నితమైన డేటా: ఉదాహరణ డేటాసెట్లు పబ్లిక్ మరియు సున్నితమైనవి కావు
Troubleshooting
Jupyter Notebooks
- కర్నెల్ సమస్యలు: సెల్స్ హ్యాంగ్ అయితే కర్నెల్ రీస్టార్ట్ చేయండి: Kernel → Restart
- ఇంపోర్ట్ లోపాలు: అవసరమైన అన్ని ప్యాకేజీలు pip తో ఇన్స్టాల్ చేయండి
- పాత్ సమస్యలు: నోట్బుక్స్ను వాటి ఉన్న డైరెక్టరీ నుండి నడపండి
Quiz Application
- npm install విఫలమైతే: npm క్యాష్ క్లియర్ చేయండి:
npm cache clean --force - పోర్ట్ సంకర్షణలు: పోర్ట్ మార్చండి:
npm run serve -- --port 8081 - బిల్డ్ లోపాలు:
node_modulesతొలగించి మళ్లీ ఇన్స్టాల్ చేయండి:rm -rf node_modules && npm install
R Lessons
- ప్యాకేజీ కనుగొనబడకపోతే: ఇన్స్టాల్ చేయండి:
install.packages("package-name") - RMarkdown రెండరింగ్: rmarkdown ప్యాకేజీ ఇన్స్టాల్ ఉందని నిర్ధారించండి
- కర్నెల్ సమస్యలు: Jupyter కోసం IRkernel ఇన్స్టాల్ చేయవలసి ఉండవచ్చు
Project-Specific Notes
- ఇది ప్రధానంగా నెర్చుకునే పాఠ్యక్రమం, ప్రొడక్షన్ కోడ్ కాదు
- ప్రాధాన్యం ML కాన్సెప్ట్లను అర్థం చేసుకోవడంలో ఉంది, ప్రాక్టికల్ ద్వారా
- కోడ్ ఉదాహరణలు స్పష్టతపై ఎక్కువ దృష్టి పెట్టాయి, ఆప్టిమైజేషన్ కంటే
- ఎక్కువ భాగం పాఠాలు స్వతంత్రంగా పూర్తి చేయగలవు
- సొల్యూషన్లు అందుబాటులో ఉన్నాయి, కానీ నేర్చుకునేవారు ముందుగా వ్యాయామాలు ప్రయత్నించాలి
- రిపోజిటరీ Docsify ఉపయోగించి వెబ్ డాక్యుమెంటేషన్ అందిస్తుంది, బిల్డ్ స్టెప్ అవసరం లేదు
- స్కెచ్నోట్లు కాన్సెప్ట్ల విజువల్ సారాంశాలను అందిస్తాయి
- బహుభాషా మద్దతు కంటెంట్ను ప్రపంచవ్యాప్తంగా అందుబాటులో ఉంచుతుంది
అస్పష్టత:
ఈ పత్రాన్ని AI అనువాద సేవ Co-op Translator ఉపయోగించి అనువదించబడింది. మేము ఖచ్చితత్వానికి ప్రయత్నించినప్పటికీ, ఆటోమేటెడ్ అనువాదాల్లో పొరపాట్లు లేదా తప్పిదాలు ఉండవచ్చు. అసలు పత్రం దాని స్వదేశీ భాషలో ఉన్నది అధికారిక మూలంగా పరిగణించాలి. ముఖ్యమైన సమాచారానికి, ప్రొఫెషనల్ మానవ అనువాదం సిఫార్సు చేయబడుతుంది. ఈ అనువాదం వాడకంలో ఏర్పడిన ఏవైనా అపార్థాలు లేదా తప్పుదారుల కోసం మేము బాధ్యత వహించము.