kaip sukurti dirbtinį intelektą savo kompiuteryje

Kaip sukurti dirbtinį intelektą kompiuteryje. Išsamus vadovas.

Gerai, taigi jus domina „DI“ kūrimas. Ne tokia, kokią įsivaizduojate kaip Holivudą, kur jis svarsto egzistenciją, o tokia, kurią galite paleisti savo nešiojamajame kompiuteryje ir kuri teikia prognozes, rūšiuoja informaciją, galbūt net šiek tiek bendrauja. Šis vadovas, kaip sukurti DI kompiuteryje, yra mano bandymas jus nutempti nuo nieko prie kažko, kas iš tikrųjų veikia lokaliai . Tikėkitės trumpesnių kelių, atvirų nuomonių ir retkarčiais pasitaikančių nukrypimų nuo kelio, nes, būkime atviri, meistravimas niekada nebūna švarus.

Straipsniai, kuriuos galbūt norėsite perskaityti po šio:

🔗 Kaip sukurti dirbtinio intelekto modelį: visi žingsniai paaiškinti
Aiškus dirbtinio intelekto modelio kūrimo proceso suskirstymas nuo pradžios iki pabaigos.

🔗 Kas yra simbolinis dirbtinis intelektas: viskas, ką reikia žinoti
Sužinokite simbolinio dirbtinio intelekto pagrindus, istoriją ir šiuolaikines taikymo galimybes.

🔗 Duomenų saugojimo reikalavimai dirbtiniam intelektui: ko jums reikia
Supraskite efektyvių ir keičiamo dydžio dirbtinio intelekto sistemų saugojimo poreikius.


Kam dabar vargti? 🧭

Nes era, kai „dirbtinį intelektą gali kurti tik „Google“ lygio laboratorijos“, baigėsi. Šiomis dienomis, turint įprastą nešiojamąjį kompiuterį, keletą atvirojo kodo įrankių ir užsispyrimą, galima sukurti mažus modelius, kurie klasifikuoja el. laiškus, apibendrina tekstą arba žymi vaizdus. Duomenų centro nereikia. Jums tereikia:

  • planą,

  • švari sąranga,

  • ir tikslas, kurį galite įvykdyti nenorėdami išmesti mašinos pro langą.


Kodėl verta sekti šį įrašą ✅

Žmonės, klausiantys „Kaip sukurti dirbtinį intelektą kompiuteryje“, dažniausiai nenori daktaro laipsnio. Jie nori kažko, ką iš tikrųjų galėtų valdyti. Geras planas apima kelis dalykus:

  • Pradėkite nuo mažų dalykų : klasifikuokite jausmus, o ne „spręskite problemas“.

  • Atkuriamumas : „conda“ arba „venv“ , kad galėtumėte atstatyti rytoj be panikos.

  • Aparatinės įrangos sąžiningumas : CPU puikiai tinka „scikit-learn“, GPU – giliesiems tinklams (jei pasiseka) [2][3].

  • Švarūs duomenys : nėra neteisingai paženklintų nereikalingų duomenų; visada suskirstyti į grupes: traukinys / galiojantys / bandomieji.

  • Reikšmingi rodikliai : tikslumas, preciziškumas, atkūrimas, F1. Disbalansui nustatyti naudokite ROC-AUC/PR-AUC [1].

  • Bendrinimo būdas : maža API, CLI arba demonstracinė programa.

  • Saugumas : jokių abejotinų duomenų rinkinių, jokių privačių duomenų nutekėjimų, aiškiai nurodykite riziką [4].

Teisingai juos pritaikius, net ir jūsų „mažasis“ modelis bus tikras.


Kelias, kuris neatrodo bauginančiai 🗺️

  1. Pasirinkite nedidelę problemą + vieną rodiklį.

  2. Įdiekite „Python“ ir kelias pagrindines bibliotekas.

  3. Sukurkite švarią aplinką (vėliau sau padėkosite).

  4. Įkelkite savo duomenų rinkinį, tinkamai jį padalinkite.

  5. Treniruokite kvailą, bet sąžiningą pradinį lygį.

  6. Neuroninį tinklą bandykite tik tuo atveju, jei jis prideda vertės.

  7. Supakuokite demonstracinę versiją.

  8. Užsirašykite ateičiai – būsite jums dėkingi.


Minimalus rinkinys: nepersistenkite 🧰

  • Python : parsisiųsti iš python.org.

  • Aplinka : „Conda“ arba „Venv“ su „Pip“.

  • Užrašų knygelės : „Jupyter“ žaidimams.

  • Redaktorius : VS Code, draugiškas ir galingas.

  • Pagrindinės bibliotekos

    • pandos + NumPy (duomenų ginčai)

    • scikit-learn (klasikinė mašininio mokymosi sistema)

    • „PyTorch“ arba „TensorFlow“ (gilusis mokymasis, GPU versijos svarbios) [2][3]

    • Apkabinančių veidų transformatoriai, „spaCy“, „OpenCV“ (NLP + vizija)

  • Pagreitis (neprivaloma)

    • NVIDIA → CUDA versijos [2]

    • AMD → ROCm versijos [2]

    • „Apple“ → „PyTorch“ su „Metal“ pagrindu (MPS) [2]

⚡ Pastaba: dauguma „diegimo vargų“ išnyksta, jei tiesiog leisite oficialiems diegimo programoms duoti tikslias jūsų sąrankos komandas. Nukopijuokite, įklijuokite ir viskas [2][3].

Nykščio taisyklė: pirmiausia šliaužti su procesoriumi, o vėliau sprintuoti su grafikos procesoriumi.


Rinkdamiesi savo krūvelę: venkite blizgančių dalykų 🧪

  • Lenteliniai duomenys → scikit-learn. Logistinė regresija, atsitiktiniai miškai, gradiento stiprinimas.

  • Tekstas arba vaizdai → „PyTorch“ arba „TensorFlow“. Tekstui labai naudinga tiksliai suderinti mažą „Transformer“.

  • Pokalbių robotų tipo programa „llama.cpp“ gali paleisti mažas teisės magijos programas nešiojamuosiuose kompiuteriuose. Nesitikėkite magijos, bet ji veikia su užrašais ir santraukomis [5].


Švarios aplinkos įrengimas 🧼

# Conda būdas conda create -n localai python=3.11 conda activate localai # ARBA venv python -m venv .venv šaltinis .venv/bin/activate # Windows: .venv\Scripts\activate

Tada įdiekite pagrindinius elementus:

pip diegti numpy pandas scikit-learn jupyter pip diegti torch torchvision torchaudio # arba tensorflow pip diegti transformers duomenų rinkiniai

(Rimtai, GPU kompiliacijoms tiesiog naudokite oficialų selektorių [2][3].)


Pirmasis veikiantis modelis: darykite jį mažytį 🏁

Pirmiausia bazinis lygis. CSV → funkcijos + žymės → logistinė regresija.

iš „sklearn.linear_model“ importuoti „LogisticRegression“ ... print("Tikslumas:", tikslumo_balas(y_testas, preds)) print(klasifikacijos_ataskaita(y_testas, preds))

Jei tai pranoksta atsitiktinumą, galite švęsti. Kava ar sausainis – jūsų pasirinkimas ☕.
Nesubalansuotoms klasėms vietoj neapdoroto tikslumo stebėkite tikslumo/atkūrimo + ROC/PR kreives [1].


Neuroniniai tinklai (tik jei jie padeda) 🧠

Turite tekstą ir norite klasifikuoti nuotaikas? Tiksliai suderinkite nedidelį iš anksto apmokytą „Transformer“. Greita, tvarkinga, nesugadina jūsų kompiuterio.

iš transformatorių importuokite „AutoModelForSequenceClassification“ ... trainer.train() print(trainer.evaluate())

Profesionalo patarimas: pradėkite nuo mažų pavyzdžių. Derinimas su 1% duomenų sutaupo valandas.


Duomenys: pagrindai, kurių negalima praleisti 📦

  • Vieši duomenų rinkiniai: „Kaggle“, „Hugging Face“, akademinės saugyklos (patikrinkite licencijas).

  • Etika: šluoti asmeninę informaciją, gerbti teises.

  • Padalijimai: mokymas, patvirtinimas, testavimas. Niekada neperžiūrima.

  • Etiketės: nuoseklumas svarbiau nei įmantrūs modeliai.

Tiesos bomba: 60 % rezultatų gaunama iš švarių etikečių, o ne iš architektūros magijos.


Metrikos, kurios padeda išlikti sąžiningiems 🎯

  • Klasifikavimas → tikslumas, preciziškumas, atkūrimas, F1.

  • Nesubalansuoti rinkiniai → ROC-AUC, PR-AUC yra svarbesni.

  • Regresija → MAE, RMSE, R².

  • Realybės patikrinimas → atkreipkite dėmesį į keletą rezultatų; skaičiai gali meluoti.

Patogi nuoroda: „scikit-learn“ metrikų vadovas [1].


Patarimai, kaip pagreitėti 🚀

  • NVIDIA → „PyTorch CUDA“ versija [2]

  • AMD → ROCm [2]

  • „Apple“ → MPS posistemė [2]

  • „TensorFlow“ → vadovaukitės oficialiu GPU diegimu + patikrinkite [3]

Bet neoptimizuokite, kol dar nepasiekėte pradinės linijos. Tai tas pats, kas poliruoti ratlankius, kol automobilis neįgijo ratų.


Vietiniai generatyviniai modeliai: drakonų jaunikliai 🐉

  • Kalba → kvantuoti LLM per llama.cpp [5]. Tinka pastaboms ar kodo užuominoms, o ne giliems pokalbiams.

  • „Images → Stabilios difuzijos“ variantų; atidžiai perskaitykite licencijas.

Kartais užduočiai pritaikytas tiksliai suderintas „Transformer“ mažoje įrangoje įveikia išsipūtusį LLM.


Pakuočių demonstracijos: leiskite žmonėms spustelėti 🖥️

  • Gradio → lengviausia vartotojo sąsaja.

  • „FastAPI“ → švari API.

  • Kolba → greiti scenarijai.

import gradio as gr clf = pipeline("nuotaikų-analizė") ... demo.launch()

Kai naršyklė tai rodo, tai atrodo magiška.


Įpročiai, kurie gelbsti sveiką protą 🧠

  • „Git“ versijų kontrolei.

  • „MLflow“ arba užrašinės eksperimentams sekti.

  • Duomenų versijų kūrimas naudojant DVC arba maišos kodus.

  • „Docker“, jei kitiems reikia paleisti jūsų duomenis.

  • Prisegti priklausomybes ( requirements.txt ).

Patikėk manimi, ateityje – būsi dėkingas.


Trikčių šalinimas: dažnos „ugh“ akimirkos 🧯

  • Diegimo klaidos? Tiesiog išvalykite aplinką ir perkurkite iš naujo.

  • Neaptikta GPU? Neatitinka tvarkyklės, patikrinkite versijas [2][3].

  • Modelis nesimoko? Sumažinkite mokymosi greitį, supaprastinkite arba išvalykite žymas.

  • Per didelis pritaikymas? Reguliarizuokite, išmeskite arba tiesiog gaukite daugiau duomenų.

  • Per geri rodikliai? Nutekėjote testų rinkinį (taip nutinka dažniau, nei manote).


Saugumas + atsakomybė 🛡️

  • Pašalinti asmens duomenis.

  • Gerbkite licencijas.

  • Vietinis pirmiausia = privatumas + kontrolė, bet su skaičiavimo apribojimais.

  • Dokumentų rizikos (sąžiningumas, saugumas, atsparumas ir kt.) [4].


Patogi palyginimo lentelė 📊

Įrankis Geriausiai tinka Kodėl tai naudoti
scikit-learn Lentelių duomenys Greitos pergalės, švari API 🙂
PyTorch Individualūs giluminiai tinklai Lanksti, didžiulė bendruomenė
TensorFlow Gamybos vamzdynai Ekosistema + patiekimo parinktys
Transformatoriai Tekstinės užduotys Iš anksto apmokyti modeliai taupo skaičiavimus
spaCy NLP vamzdynai Pramoninis pajėgumas, pragmatiškas
Gradio Demonstracijos / vartotojo sąsajos 1 failas → UI
FastAPI API Greitis + auto dokumentai
ONNX vykdymo aplinka Skirtingų sistemų naudojimas Nešiojamas + efektyvus
lama.cpp Mažos vietinės LLM studijos CPU pritaikytas kvantavimas [5]
Docker Bendrinimo aplinka „Veikia visur“

Trys gilesni nėrimai (kuriuos tikrai panaudosite) 🏊

  1. Lentelių funkcijų inžinerija → normalizavimas, vieno bandymo bandymas, medžio modelių bandymas, kryžminis patvirtinimas [1].

  2. Perkeliamasis mokymasis tekstui → tiksli mažų transformatorių derinimas, sekos ilgis išlaikomas vidutinis, F1 retoms klasėms [1].

  3. Optimizavimas vietinei išvadai → kvantavimas, ONNX eksportavimas, talpyklos tokenizeriai.


Klasikiniai spąstai 🪤

  • Per didelis statymas, per anksti.

  • Duomenų kokybės ignoravimas.

  • Praleidžiamas bandymo padalinys.

  • Aklas kopijavimas ir įklijavimas.

  • Nieko nedokumentuoja.

Net README failas išsaugo informaciją po kelių valandų.


Mokymosi ištekliai, verti laiko 📚

  • Oficialūs dokumentai („PyTorch“, „TensorFlow“, „scikit-learn“, „Transformers“).

  • „Google“ mašininio mokymosi greitasis kursas, „DeepLearning.AI“.

  • „OpenCV“ dokumentai apie regėjimo pagrindus.

  • „spaCy“ naudojimo vadovas NLP vamzdynams.

Mažas gudrumas: oficialūs diegimo įrankiai, generuojantys jūsų GPU diegimo komandą, iš tiesų išsigelbės [2][3].


Viską sudedu 🧩

  1. Tikslas → suskirstyti pagalbos užklausas į 3 tipus.

  2. Duomenys → CSV eksportas, anonimizuoti, padalinti.

  3. Bazinė linija → scikit-learn TF-IDF + logistinė regresija.

  4. Atnaujinimas → Tikslus transformatoriaus sureguliavimas, jei stringa bazinė linija.

  5. Demonstracinė versija → „Gradio“ teksto laukelio programėlė.

  6. Laivas → Docker + README.

  7. Kartoti → ištaisyti klaidas, pervadinti, pakartoti.

  8. Apsaugos priemonės → dokumentų rizika [4].

Tai nuobodžiai efektyvu.


TL;DR 🎂

Išmokti sukurti dirbtinį intelektą kompiuteryje = išsirink vieną nedidelę problemą, nusistatyk bazinę liniją, eskaluok ją tik tada, kai tai padeda, ir užtikrink, kad nustatymai būtų atkartojami. Pakartokite tai du kartus ir pasijusite kompetentingi. Pakartokite tai penkis kartus ir žmonės pradės prašyti jūsų pagalbos, o tai slapta yra smagiausia dalis.

Ir taip, kartais tai atrodo lyg mokytum skrudintuvą rašyti poeziją. Nieko tokio. Toliau tobulink. 🔌📝


Nuorodos

[1] scikit-learn — Metrikų ir modelio vertinimas: nuoroda
[2] PyTorch — Vietinio diegimo parinkiklis (CUDA/ROCm/Mac MPS): nuoroda
[3] TensorFlow — Diegimas + GPU patvirtinimas: nuoroda
[4] NIST — Dirbtinio intelekto rizikos valdymo sistema: nuoroda
[5] llama.cpp — Vietinė LLM saugykla: nuoroda


Raskite naujausią dirbtinį intelektą oficialioje dirbtinio intelekto asistentų parduotuvėje

Apie mus

Atgal į tinklaraštį