Introducere

Support Vector Machines în R

Kailash Awati

Instructor

Preliminarii

  • Obiectiv: înțelegerea modului de funcționare a SVM-urilor; opțiunile disponibile în algoritm și situațiile în care funcționează cel mai bine.
  • Cerințe preliminare: cunoștințe intermediare de R; vizualizare de bază cu ggplot().
  • Abordare: începem cu un exemplu unidimensional și trecem treptat la exemple mai complexe.
Support Vector Machines în R

Conținutul de zahăr al băuturilor răcoritoare

  • Un producător de băuturi răcoritoare are două versiuni ale mărcii sale principale:
    • Choke - conținut de zahăr: 11 g/100 ml.
    • Choke-R - conținut de zahăr: 8 g/100 ml.
  • Conținutul real de zahăr variază în practică.
  • Pe baza a 25 de mostre alese aleatoriu, găsiți o regulă de decizie pentru a determina marca.
  • Primul pas: vizualizați datele!
Support Vector Machines în R

Conținutul de zahăr al băuturilor răcoritoare - cod de vizualizare

  • Datele se află în dataframe-ul drink_samples.
# Specify dataframe, set plot aesthetics in geom_point (note y = 0)
p <- ggplot(drink_samples) +
  geom_point(aes(sugar_content, 0))

# Label each point with sugar content value, adjust text size and location p <- p + geom_text(aes(sugar_content, 0, label = sugar_content), size = 2.5, vjust = 2, hjust = 0.5) # Display plot p
Support Vector Machines în R

Capitolul 1.1 - clustere de conținut de zahăr

Support Vector Machines în R

Frontiere de decizie

  • Să alegem două puncte din interval ca frontiere candidate:
    • 9,1 g/100 ml
    • 9,7 g/100 ml
  • Reguli de clasificare (decizie):
    • if (y < 9.1) then "Choke-R" else "Choke"
    • if (y < 9.7) then "Choke-R" else "Choke"
  • Să le vizualizăm pe graficul din diapozitivul anterior.
Support Vector Machines în R

Frontiere de decizie - cod de vizualizare

  • Creați un dataframe cu cele două frontiere de decizie.
# Define data frame containing decision boundaries
d_bounds <- data.frame(sep = c(9.1, 9.7))
Support Vector Machines în R

Frontiere de decizie - cod de vizualizare

  • Adăugați la grafic folosind geom_point()
# Add decision boundaries to previous plot
p <- p + 
  geom_point(data = d_bounds,
             aes(sep, 0),
             color = "red",
             size = 3) +
  geom_text(data = d_bounds,
            aes(sep, 0, label = sep),
            size = 2.5,
            vjust = 2,
            hjust = 0.5,
            color = "red") 
# Display plot
p
Support Vector Machines în R

Capitolul 1.1 - clustere de conținut de zahăr cu frontiere de decizie exemplu

Support Vector Machines în R

Separatorul cu marjă maximală

  • Cea mai bună frontieră de decizie maximizează marja: separatorul cu marjă maximală
  • Separatorul cu marjă maximală se află la mijlocul distanței dintre cele două clustere.
  • Vizualizați separatorul cu marjă maximală.
# Create data frame with maximal margin separator
mm_sep <- data.frame(sep = c((8.8 + 10) / 2))

# Add mm boundary to previous plot p <- p + geom_point(data = mm_sep, aes(sep, 0), color = "blue", size = 4) # Display plot p
Support Vector Machines în R

Capitolul 1.1 - separator cu marjă maximală

Support Vector Machines în R

Timp pentru practică!

Support Vector Machines în R

Preparing Video For Download...