ÎncepețiÎncepe gratuit

Partiții de antrenament/testare

De cele mai multe ori, când rulezi un model predictiv, trebuie să antrenezi modelul pe un subset al datelor tale (setul de „antrenament"), apoi să testezi predicțiile modelului pe restul datelor (setul de „testare").

sdf_random_split() oferă o modalitate de a împărți un data frame în seturi de antrenament și testare. Sintaxa de utilizare este următoarea.

a_tibble %>%
  sdf_random_split(training = 0.7, testing = 0.3)

Sunt două aspecte importante de reținut. În primul rând, dacă valorile partițiilor nu se adună la unu, ele vor fi scalate automat. Astfel, dacă transmiți training = 0.35 și testing = 0.15, vei obține de două ori mai mult decât ai cerut. În al doilea rând, poți folosi orice nume de seturi dorești și poți împărți datele în mai mult de două seturi. Prin urmare, și următoarea formă este validă.

a_tibble %>%
  sdf_random_split(a = 0.1, b = 0.2, c = 0.3, d = 0.4)

Valoarea returnată este o listă de tibble-uri. Poți accesa fiecare element folosind operatorii obișnuiți de indexare a listelor.

partitioned$a
partitioned[["b"]]

Acest exercițiu face parte din cursul

Introducere în Spark cu sparklyr în R

Vezi cursul

Instrucțiuni pentru exercițiu

O conexiune Spark a fost creată pentru tine sub numele spark_conn. Un tibble asociat metadatelor pistelor stocate în Spark a fost predefinit ca track_metadata_tbl.

  • Folosește sdf_random_split() pentru a împărți metadatele pistelor.
    • Plasează 70% într-un set numit training.
    • Plasează 30% într-un set numit testing.
  • Obține dimensiunile sdf_dim() ale tibble-ului de antrenament.
  • Obține dimensiunile tibble-ului de testare.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# track_metadata_tbl has been pre-defined
track_metadata_tbl

partitioned <- track_metadata_tbl %>%
  # Partition into training and testing sets
  ___

# Get the dimensions of the training set
___

# Get the dimensions of the testing set
___
Editează și rulează codul