ինչպես ստեղծել արհեստական ​​ինտելեկտ ձեր համակարգչում

Ինչպես ստեղծել արհեստական ​​ինտելեկտ ձեր համակարգչում։ Լրիվ ուղեցույց։

Լավ, ուրեմն դուք հետաքրքրված եք «արհեստական ​​բանականություն» կառուցելով։ Ոչ թե Հոլիվուդյան իմաստով, որտեղ այն դիտարկում է գոյությունը, այլ այնպիսին, որը կարող եք աշխատեցնել ձեր նոութբուքի վրա և որը կանխատեսումներ է անում, տեսակավորում է իրերը, գուցե նույնիսկ մի փոքր զրուցում է։ Այս ուղեցույցը՝ « Ինչպես ստեղծել արհեստական ​​բանականություն ձեր համակարգչում» , իմ փորձն է ձեզ ոչնչից տանել դեպի այն, ինչը իրականում աշխատում է տեղական մակարդակով ։ Ակնկալեք կարճ ճանապարհներ, անկեղծ կարծիքներ և երբեմն շեղումներ, քանի որ, եկեք իրատես լինենք, մանրուքներ մշակելը երբեք մաքուր չէ։

Հոդվածներ, որոնք կարող են ձեզ դուր գալ կարդալ սրանից հետո

🔗 Ինչպես ստեղծել արհեստական ​​բանականության մոդել. ամբողջական քայլերի բացատրություն
Արհեստական ​​բանականության մոդելի ստեղծման հստակ վերլուծություն՝ սկզբից մինչև վերջ։

🔗 Ի՞նչ է խորհրդանշական արհեստական ​​բանականությունը. ամեն ինչ, ինչ դուք պետք է իմանաք
Սովորեք խորհրդանշական արհեստական ​​բանականության հիմունքները, պատմությունը և ժամանակակից կիրառությունները։

🔗 Արհեստական ​​բանականության տվյալների պահպանման պահանջները. ինչ է ձեզ անհրաժեշտ
Հասկացեք արդյունավետ և մասշտաբային արհեստական ​​բանականության համակարգերի համար պահեստավորման կարիքները։


Ինչո՞ւ հիմա անհանգստանալ։ 🧭

Որովհետև «միայն Google-ի մասշտաբի լաբորատորիաները կարող են արհեստական ​​ինտելեկտով զբաղվել» դարաշրջանն անցել է։ Այսօր, սովորական նոութբուքի, որոշ բաց կոդով գործիքների և համառության շնորհիվ, դուք կարող եք ստեղծել փոքր մոդելներ, որոնք դասակարգում են էլեկտրոնային նամակները, ամփոփում տեքստը կամ պիտակավորում պատկերները։ Տվյալների կենտրոնի կարիք չկա։ Ձեզ պարզապես անհրաժեշտ է.

  • մի ծրագիր,

  • մաքուր կարգավորում,

  • և նպատակ, որը կարող եք ավարտել առանց մեքենան պատուհանից դուրս նետելու ցանկության։


Ի՞նչն է դարձնում սա արժանի հետևելու ✅

«Ինչպե՞ս ստեղծել արհեստական ​​ինտելեկտ ձեր համակարգչում» հարցնող մարդիկ սովորաբար չեն ուզում դոկտորի աստիճան։ Նրանք ուզում են մի բան, որը կարող են իրականում աշխատեցնել։ Լավ պլանը մի քանի բան է պարունակում.

  • Սկսեք փոքրից. դասակարգեք զգացմունքները, այլ ոչ թե «լուծեք ինտելեկտը»։

  • Վերարտադրելիություն՝ կոնդա կամ վենվ , որպեսզի կարողանաք վաղը վերակառուցել առանց խուճապի։

  • Սարքավորումների ճշգրտություն. պրոցեսորները հարմար են scikit-learn-ի համար, գրաֆիկական պրոցեսորները՝ խորը ցանցերի համար (եթե բախտավոր լինեք) [2][3]:

  • Մաքուր տվյալներ՝ սխալ պիտակավորված անպետք տվյալներ չկան, միշտ բաժանված են train/valid/test տարբերակների։

  • Ինչ-որ բան նշանակող չափանիշներ՝ ճշգրտություն, ճշգրտություն, հետկանչ, F1: Անհավասարակշռության համար՝ ROC-AUC/PR-AUC [1]:

  • Կիսվելու միջոց՝ փոքրիկ API, CLI կամ ցուցադրական հավելված։

  • Անվտանգություն. կասկածելի տվյալների հավաքածուներ չկան, անձնական տեղեկատվության արտահոսքեր չկան, հստակ նշեք ռիսկերը [4]:

Ճիշտ արեք դրանք, և նույնիսկ ձեր «փոքր» մոդելը իրական կլինի։


Ճանապարհային քարտեզ, որը վախեցնող չի թվում 🗺️

  1. Ընտրեք փոքր խնդիր + մեկ չափանիշ։

  2. Տեղադրեք Python-ը և մի քանի հիմնական գրադարաններ։

  3. Ստեղծեք մաքուր միջավայր (հետագայում ինքներդ ձեզ շնորհակալ կլինեք):

  4. Բեռնեք ձեր տվյալների բազմությունը, ճիշտ բաժանեք։

  5. Մարզեք հիմար, բայց ազնիվ բազային գիծ։

  6. Փորձեք նեյրոնային ցանցը միայն այն դեպքում, եթե այն արժեք է ավելացնում։

  7. Փաթեթավորեք դեմո տարբերակը։

  8. Հետագայում մի քանի նշումներ պահեք, դուք շնորհակալ կլինեք։


Նվազագույն հավաքածու. չափազանց մի՛ բարդացրեք 🧰

  • Python: վերցրեք python.org կայքից։

  • Միջավայր՝ Կոնդա կամ վենվ ՝ կորիզով։

  • Նոթատետրեր՝ Յուպիտեր խաղի համար։

  • Խմբագիր՝ VS Code, բարեկամական և հզոր։

  • Հիմնական գրադարաններ

    • պանդաներ + NumPy (տվյալների հավաքագրում)

    • scikit-learn (դասական մեքենայական ուսուցում)

    • PyTorch կամ TensorFlow (խորը ուսուցում, գրաֆիկական պրոցեսորների կառուցվածքները կարևոր են) [2][3]

    • Գրկախառնվող դեմքի տրանսֆորմերներ, spaCy, OpenCV (NLP + տեսողություն)

  • Արագացում (ըստ ցանկության)

    • NVIDIA → CUDA կառուցվածքներ [2]

    • AMD → ROCm կառուցվածքներ [2]

    • Apple → PyTorch մետաղական backend-ով (MPS) [2]

⚡ Նշում. «Տեղադրման հետ կապված դժվարությունների» մեծ մասը կանհետանա, եթե պարզապես թույլ տաք պաշտոնական տեղադրողներին տալ ձեզ տեղադրման ճշգրիտ հրամանը: Պատճենեք, տեղադրեք, պատրաստ է [2][3]:

Հիմնական կանոն՝ նախ սողալ պրոցեսորի վրա, ապա՝ գրաֆիկական պրոցեսորի վրա։


Ընտրելով ձեր կույտը. դիմադրեք փայլուն իրերին 🧪

  • Աղյուսակային տվյալներ → scikit-learn: Լոգիստիկ ռեգրեսիա, պատահական անտառներ, գրադիենտային ուժեղացում:

  • Տեքստ կամ պատկերներ → PyTorch կամ TensorFlow: Տեքստի համար փոքր Transformer-ի նուրբ կարգավորումը մեծ հաղթանակ է:

  • Չաթբոտի նման → llama.cpp-ը կարող է փոքր LLM-ներ աշխատեցնել նոութբուքերի վրա: Մի սպասեք հրաշքների, բայց այն աշխատում է նշումների և ամփոփագրերի համար [5]:


Մաքուր միջավայրի կազմակերպում 🧼

# Conda way conda create -n localai python=3.11 conda activate localai # OR venv python -m venv .venv source .venv/bin/activate # Windows՝ .venv\Scripts\activate

Այնուհետև տեղադրեք անհրաժեշտ բաղադրիչները՝

pip install numpy pandas scikit-learn jupyter pip install torch torchvision torchaudio # կամ tensorflow pip install transformers տվյալների հավաքածուներ

(GPU-ի համադրությունների համար, լրջորեն, պարզապես օգտագործեք պաշտոնական ընտրիչը [2][3]:)


Առաջին աշխատող մոդելը՝ պահեք այն փոքրիկ 🏁

Առաջինը բազային գիծն է։ CSV → հատկանիշներ + պիտակներ → լոգիստիկ ռեգրեսիա։

sklearn.linear_model ներմուծումից՝ ԼոգիստիկՌեգրեսիա ... print("Ճշգրտություն:", accuracy_score(y_test, preds)) print(classification_report(y_test, preds))

Եթե ​​սա գերազանցում է պատահականությանը, դուք տոնում եք։ Սուրճ, թե թխվածքաբլիթ, ձեր որոշումն է ☕։
Անհավասարակշիռ դասերի համար ուշադրություն դարձրեք ճշգրտության/հիշողության + ROC/PR կորերին՝ հում ճշգրտության փոխարեն [1]:


Նեյրոնային ցանցեր (միայն եթե օգնում են) 🧠

Տեքստ ունե՞ք և ցանկանում եք դասակարգել տրամադրությունները: Կարգավորեք փոքրիկ, նախապես պատրաստված Transformer-ը: Արագ, հարմար, չի այրում ձեր սարքը:

տրանսֆորմերների ներմուծումից AutoModelForSequenceClassification ... trainer.train() print(trainer.evaluate())

Մասնագիտական ​​խորհուրդ. սկսեք փոքր նմուշներից: Տվյալների 1%-ի վրիպազերծումը խնայում է ժամեր:


Տվյալներ. հիմունքներ, որոնք չեք կարող անտեսել 📦

  • Հանրային տվյալների հավաքածուներ՝ Kaggle, Hugging Face, ակադեմիական պահոցներ (ստուգեք լիցենզիաները):

  • Էթիկա՝ անձնական տվյալների մաքրում, իրավունքների հարգում։

  • Բաժանումներ՝ մարզում, վավերացում, փորձարկում։ Երբեք մի՛ նայեք։

  • Պիտակներ՝ հետևողականությունն ավելի կարևոր է, քան շքեղ մոդելները։

Ճշմարտության ռումբ. արդյունքների 60%-ը մաքուր պիտակներից են, այլ ոչ թե ճարտարապետական ​​կախարդանքից։


Չափանիշներ, որոնք ձեզ ազնիվ կպահեն 🎯

  • Դասակարգում → ճշգրտություն, ճշգրտություն, հիշելիություն, F1.

  • Անհավասարակշիռ բազմություններ → ROC-AUC, PR-AUC-ն ավելի կարևոր են։

  • Ռեգրեսիա → MAE, RMSE, R²։

  • Իրականության ստուգում → աչքի մի քանի արդյունք. թվերը կարող են ստել։

Հարմար հղում՝ scikit-learn չափանիշների ուղեցույց [1]:


Արագացման խորհուրդներ 🚀

  • NVIDIA → PyTorch CUDA կառուցվածք [2]

  • AMD → ROCm [2]

  • Apple → MPS ներքին համակարգ [2]

  • TensorFlow → հետևեք GPU-ի պաշտոնական տեղադրմանը + հաստատեք [3]

Բայց մի՛ օպտիմալացրեք նախքան ձեր բազային գիծը գործարկվի։ Դա նույնն է, թե անվահեծերը փայլեցնել նախքան մեքենան անվահեծեր կունենա։


Տեղական գեներատիվ մոդելներ՝ փոքրիկ վիշապներ 🐉

  • Լեզու → քվանտացված իրավունքի կառավարման դասընթացներ llama.cpp [5] ֆայլի միջոցով: Հարմար է նշումների կամ կոդի հուշումների համար, այլ ոչ թե խորը զրույցի համար:

  • Պատկերներ → Կայուն դիֆուզիայի տարբերակներ գոյություն ունեն. ուշադիր կարդացեք լիցենզիաները։

Երբեմն փոքր սարքավորումների վրա ստեղծված, որոշակի առաջադրանքի համար հատուկ կարգավորված Transformer-ը գերազանցում է գերծանրաբեռնված LLM-ին։


Փաթեթավորման ցուցադրություններ. թող մարդիկ սեղմեն 🖥️

  • Gradio → ամենահեշտ ինտերֆեյսը։

  • FastAPI → մաքուր API։

  • Ֆլասկ → արագ սկրիպտներ։

ներմուծել gradio որպես gr clf = pipeline("զգացմունքների վերլուծություն") ... demo.launch()

Կախարդական զգացողություն է, երբ ձեր զննարկիչը ցույց է տալիս այն։


Սովորություններ, որոնք փրկում են բանականությունը 🧠

  • Git-ը՝ տարբերակի կառավարման համար։

  • MLflow կամ տետրեր՝ փորձերի հետևման համար։

  • Տվյալների տարբերակում DVC-ի կամ հեշերի միջոցով։

  • Docker-ը միացրեք, եթե ուրիշները պետք է աշխատեցնեն ձեր տվյալները։

  • Կախվածությունները ամրացնել (requirements.txt):

Հավատացեք ինձ, ապագա, դուք շնորհակալ կլինեք։


Խնդիրների լուծում. հաճախակի «ուֆ» պահեր 🧯

  • Տեղադրման սխալներ՞։ Պարզապես մաքրեք միջավայրը և վերակառուցեք այն։

  • Գրաֆիկական պրոցեսորը չի՞ հայտնաբերվել։ Դրայվերների անհամապատասխանություն, ստուգեք տարբերակները [2][3]:

  • Մոդելը չի՞ սովորում։ Նվազեցրեք ուսուցման մակարդակը, պարզեցրեք կամ մաքրեք պիտակները։

  • Չափից շատ տվյալներ՞։ Կանոնավորե՞լ, դուրս մղե՞լ, թե՞ պարզապես ավելի շատ տվյալներ։

  • Չափազանց լավ չափանիշներ են՞։ Դուք արտահոսեցիք թեստային հավաքածուն (դա տեղի է ունենում ավելի հաճախ, քան դուք կարծում եք)։


Անվտանգություն + պատասխանատվություն 🛡️

  • Անձնական տվյալների պաշտպանության մասին տեղեկատվությունը (PII) հեռացնելը։

  • Հարգեք լիցենզիաները։

  • Տեղականը նախ = գաղտնիություն + վերահսկողություն, բայց հաշվողական սահմանափակումներով։

  • Փաստաթղթավորեք ռիսկերը (արդարություն, անվտանգություն, դիմադրողականություն և այլն) [4]:


Հարմար համեմատական ​​աղյուսակ 📊

Գործիք Լավագույնը Ինչու՞ օգտագործել այն
scikit-learn Աղյուսակային տվյալներ Արագ հաղթանակներ, մաքուր API 🙂
PyTorch Պատվերով պատրաստված խորը ցանցեր Ճկուն, հսկայական համայնք
TensorFlow Արտադրական խողովակաշարեր Էկոհամակարգ + մատուցման տարբերակներ
Տրանսֆորմերներ Տեքստային առաջադրանքներ Նախապես պատրաստված մոդելները խնայում են հաշվարկները
ՍպաՍի NLP խողովակաշարեր Արդյունաբերական հզորություն, պրագմատիկ
Գրադիո Դեմոներ/Օպերատորներ 1 ֆայլ → UI
Արագ API API-ներ Արագություն + ավտոմատ փաստաթղթեր
ONNX-ի աշխատանքային ժամանակ Խաչաձև շրջանակների օգտագործումը Փոխադրելի + արդյունավետ
լամա.cpp Փոքր տեղական իրավունքի մագիստրոսներ Պրոցեսորի համար հարմար քվանտացում [5]
Դոկեր Համօգտագործման միջավայրեր «Աշխատում է ամենուր»

Երեք ավելի խորը սուզում (դուք իրականում կօգտագործեք) 🏊

  1. Աղյուսակների համար հատկանիշների ինժեներիա → նորմալացում, մեկանգամյա օգտագործում, ծառի մոդելների փորձարկում, խաչաձև վավերացում [1]:

  2. Տեքստի համար ուսուցման փոխանցում → փոքր տրանսֆորմերների նուրբ կարգավորում, հաջորդականության երկարությունը պահպանել համեստ, F1՝ հազվագյուտ դասերի համար [1]:

  3. Տեղական եզրակացության օպտիմալացում → քվանտացում, ONNX-ի արտահանում, քեշավորման տոկենիզատորներ։


Դասական թակարդներ 🪤

  • Շինարարությունը չափազանց մեծ է, չափազանց վաղ։

  • Անտեսելով տվյալների որակը։

  • Թեստի բաժանումը բաց թողնելը։

  • Կույր պատճեն-տեղադրման կոդավորում։

  • Ոչինչ չփաստաթղթավորելով։

Նույնիսկ README-ն խնայում է ժամեր անց։


Ժամանակի արժանի ուսումնական ռեսուրսներ 📚

  • Պաշտոնական փաստաթղթեր (PyTorch, TensorFlow, scikit-learn, Transformers):

  • Google ML արագացված դասընթաց, DeepLearning.AI։

  • OpenCV փաստաթղթեր տեսողության հիմունքների համար։

  • spaCy-ի օգտագործման ուղեցույց NLP խողովակաշարերի համար։

Փոքրիկ կյանքի հնարք. ձեր GPU տեղադրման հրամանը ստեղծող պաշտոնական տեղադրողները կյանք փրկողներ են [2][3]:


Ամբողջը միասին հավաքելով 🧩

  1. Նպատակ → դասակարգել աջակցության տոմսերը 3 տեսակի։

  2. Տվյալներ → CSV արտահանում, անանունացում, բաժանում։

  3. Բազային → scikit-learn TF-IDF + լոգիստիկ ռեգրեսիա։

  4. Թարմացում → Տրանսֆորմատորի նուրբ կարգավորում, եթե բազային գիծը կանգ է առնում։

  5. Դեմո → Gradio տեքստային տուփի հավելված։

  6. Նավ → Docker + README։

  7. Իտերատ → սխալների ուղղում, վերանվանում, կրկնություն:

  8. Պաշտպանություն → փաստաթղթերի ռիսկեր [4]:

Դա ձանձրալիորեն արդյունավետ է։


Անկեղծ ասած 🎂

Սովորեք, թե ինչպես ստեղծել արհեստական ​​բանականություն ձեր համակարգչի վրա = ընտրեք մեկ փոքրիկ խնդիր, կառուցեք սկզբնական գիծ, ​​զարգացրեք միայն այն դեպքում, երբ դա կօգնի, և պահպանեք ձեր կարգավորումը վերարտադրելի։ Կատարեք դա երկու անգամ, և դուք ձեզ կզգաք կոմպետենտ։ Կատարեք դա հինգ անգամ, և մարդիկ կսկսեն ձեզանից օգնություն խնդրել, ինչը գաղտնիորեն զվարճալի մասն է։

Եվ այո, երբեմն դա նման է տոստերին բանաստեղծություն գրել սովորեցնելուն։ Ոչինչ։ Շարունակեք փորձել։ 🔌📝


Հղումներ

[1] scikit-learn — Չափորոշիչներ և մոդելի գնահատում. հղում
[2] PyTorch — Տեղական տեղադրման ընտրիչ (CUDA/ROCm/Mac MPS). հղում
[3] TensorFlow — Տեղադրում + GPU ստուգում. հղում
[4] NIST — Արհեստական ​​բանականության ռիսկերի կառավարման շրջանակ. հղում
[5] llama.cpp — Տեղական LLM պահոց. հղում


Գտեք արհեստական ​​բանականության վերջին նորույթները պաշտոնական արհեստական ​​բանականության օգնականների խանութում

Մեր մասին

Վերադառնալ բլոգ