Oppikaa tekoälyä Pythonilla · Oppitunti

Ammattimaisen tekoälyprojektin hakemistorakenne

data/, notebooks/, src/, models/ ja tests/ -rakenne sekä cookiecutter-data-science-malli.

Oppitunti 1/413 vaihetta

Ammattimaisen tekoälyprojektin hakemistorakenne on ilmainen Oppikaa tekoälyä Pythonilla-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Oppikaa tekoälyä Pythonilla-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Oppikaa tekoälyä Pythonilla-kurssilla on yhteensä 4 oppituntia.

Miksi rakenne on tärkeä

Muistikirjojen kasa, jossa tiedostojen nimet ovat final.ipynb, final2.ipynb ja really_final.ipynb, on tapa, jolla tekoälyprojektit kuolevat. Yhtenäinen hakemistorakenne tekee projekteista selkeitä, toistettavia ja yhteistyöhön sopivia.

Tässä oppitunnissa käsitellään laajalti käytettyä Cookiecutter Data Science -rakennetta.

data-kansio

Jakakaa data käsittelyvaiheiden mukaan, jotta raakadatan päälle ei koskaan kirjoiteta:

  • data/raw/ — alkuperäinen, muuttumaton lähdedata
  • data/processed/ — puhdistettu, mallille valmis data
  • data/interim/ — käsittelyn välivaiheiden tulokset

Käsitelkää data/raw-kansiota vain luku -tilassa: kaikki muu pitäisi aina voida luoda uudelleen sen perusteella.

Miksi raw on muuttumaton

Jos puhdistuksessa oleva virhe turmelee ainoan datakopionne, projekti on menetetty. Kun data/raw säilytetään muuttumattomana, kaikki käsitellyt tiedostot voidaan luoda uudelleen suorittamalla putki uudelleen.

Käsitellyt tulokset ovat korvattavissa; raakadata on pyhää.

notebooks-kansio

notebooks/ sisältää tutkimiseen ja raportointiin käytettävät notebookit. Yleinen käytäntö on numeroida ne vaiheen mukaan ja lisätä nimikirjaimet, esimerkiksi 1.0-mk-eda.ipynb.

Notebookit on tarkoitettu tutkimiseen; uudelleenkäytettävä logiikka kannattaa siirtää src/-kansioon.

src-paketti

src/ sisältää importattavan Python-koodin, joka on jaettu vastuualueittain:

  • src/data/ — lataus- ja käsittelyskriptit
  • src/features/ — piirteiden muodostaminen
  • src/models/ — koulutus- ja ennustekoodi
  • src/visualization/ — kuvaajat ja raportit

src/features ja src/models

Piirteiden muodostamisen ja mallintamisen pitäminen erillisissä moduuleissa kannattaa: piirteiden muodostamisen koodi voidaan yksikkötestata ja sitä voidaan käyttää uudelleen eri notebookeissa. Lisäksi malleja voi vaihtaa kirjoittamatta datan valmistelua uudelleen.

from src.features.build_features import make_features
from src.models.train import train_model

X = make_features(df)
model = train_model(X, y)

models-kansio

models/ sisältää serialisoidut koulutetut artefaktit, kuten model.pkl- ja model.joblib-tiedostot. Ne ovat tuloksia, eivät lähdekoodia.

Suuria mallitiedostoja ei yleensä pidä tallentaa Gitiin. Seuratkaa niitä sen sijaan DVC:llä tai objektitallennuksessa; tätä käsitellään seuraavalla oppitunnilla.

reports-kansio

reports/ sisältää ihmisille tarkoitetut tuotetut tulokset: reports/figures/ on kuvaajille ja projektin juuressa on raporttidokumentti. Koodinne tuottaa nämä, joten ne voidaan luoda uudelleen.

Asetus- ja ympäristötiedostot

Viimeistelkää projekti projektitason tiedostoilla:

  • requirements.txt tai environment.yml — riippuvuudet
  • config.yaml — hyperparametrit ja polut
  • README.md — mikä projekti on ja miten se suoritetaan
  • .gitignore — mitä Gitin tulee ohittaa

Koko hakemistorakenne

Yhdistettynä siisti tekoälyprojekti näyttää tältä:

project/
  data/
    raw/
    interim/
    processed/
  notebooks/
  src/
    data/
    features/
    models/
    visualization/
  models/
  reports/
    figures/
  config.yaml
  requirements.txt
  README.md

Rakenteen luominen Cookiecutterilla

Rakennetta ei tarvitse luoda joka kerta käsin. cookiecutter-data-science-malli luo koko rakenteen yhdellä komennolla.

# pip install cookiecutter
# cookiecutter -c v1 https://github.com/drivendata/cookiecutter-data-science
# Answer a few prompts -> full project tree created

Pikatarkistus: minne raakadata tallennetaan?

Lataatte datantarjoajalta alkuperäisen CSV-tiedoston.

Kertaus: projektin rakenne

Opitte ammattimaisen tekoälyprojektin rakenteen:

  • data/raw (muuttumaton) ja data/processed käsittelyvaiheiden tuloksille
  • notebooks/ tutkimiseen sekä src/features ja src/models uudelleenkäytettävälle koodille
  • models/ artefakteille ja reports/ tuloksille
  • Asetukset, riippuvuudet, README ja .gitignore projektin juuressa
  • cookiecutter-data-science rakenteen luomiseen hetkessä

Seuraavaksi: Gitin tehokas käyttö tekoälyprojekteissa.

Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
53
Oppitunnit
225

Usein kysytyt kysymykset

Onko oppitunti ”Ammattimaisen tekoälyprojektin hakemistorakenne” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Oppikaa tekoälyä Pythonilla-oppimispolun 3 oppituntia, myös oppitunnin “Ammattimaisen tekoälyprojektin hakemistorakenne”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppikaa tekoälyä Pythonilla-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Ammattimaisen tekoälyprojektin hakemistorakenne”?

data/, notebooks/, src/, models/ ja tests/ -rakenne sekä cookiecutter-data-science-malli. Harjoittelet Oppikaa tekoälyä Pythonilla-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Oppikaa tekoälyä Pythonilla-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Oppikaa tekoälyä Pythonilla-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.

Kuinka kauan ”Ammattimaisen tekoälyprojektin hakemistorakenne”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Oppikaa tekoälyä Pythonilla-oppitunnilla?

Kyllä. Jokainen Oppikaa tekoälyä Pythonilla-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Ammattimaisen tekoälyprojektin hakemistorakenne
  2. Git tekoälyprojekteissa
  3. Toistettavuus: siemenluvut, asetukset ja ympäristöt
  4. Jupyter Notebookien parhaat käytännöt
← Takaisin: Oppikaa tekoälyä Pythonilla