소개

R에서의 Support Vector Machine

Kailash Awati

Instructor

사전 안내

  • 목표: SVM의 작동 원리, 알고리즘 옵션, 최적 활용 상황 이해.
  • 사전 요건: R 중급 지식; ggplot()을 이용한 기본 시각화.
  • 접근 방식: 1차원 예제에서 시작하여 점차 복잡한 예제로 진행.
R에서의 Support Vector Machine

음료의 당도

  • 음료 제조사에는 두 가지 주력 제품이 있습니다:
    • Choke - 당도 11g/100ml.
    • Choke-R - 당도 8g/100ml.
  • 실제 당도는 경우에 따라 다를 수 있습니다.
  • 무작위로 선택한 25개 샘플로 브랜드 판별 규칙을 찾습니다.
  • 첫 단계: 데이터 시각화!
R에서의 Support Vector Machine

음료의 당도 - 시각화 코드

  • 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
R에서의 Support Vector Machine

1장 1절 - 당도 클러스터

R에서의 Support Vector Machine

결정 경계

  • 구간 내 두 점을 후보 경계로 선택합니다:
    • 9.1 g/100 ml
    • 9.7 g/100 ml
  • 분류(결정) 규칙:
    • if (y < 9.1) then "Choke-R" else "Choke"
    • if (y < 9.7) then "Choke-R" else "Choke"
  • 이전 슬라이드의 플롯에 시각화합니다.
R에서의 Support Vector Machine

결정 경계 - 시각화 코드

  • 두 개의 결정 경계를 포함하는 데이터프레임을 생성합니다.
# Define data frame containing decision boundaries
d_bounds <- data.frame(sep = c(9.1, 9.7))
R에서의 Support Vector Machine

결정 경계 - 시각화 코드

  • geom_point(){{1}}을 사용하여 플롯에 추가
# 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
R에서의 Support Vector Machine

1장 1절 - 예시 결정 경계가 포함된 당도 클러스터

R에서의 Support Vector Machine

최대 마진 분리자

  • 마진을 최대화하는 결정 경계: 최대 마진 분리자
  • 최대 마진 분리자는 두 클러스터의 중간에 위치합니다.
  • 최대 마진 분리자를 시각화합니다.
# 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
R에서의 Support Vector Machine

1장 1절 - 최대 마진 분리자

R에서의 Support Vector Machine

연습할 시간입니다!

R에서의 Support Vector Machine

Preparing Video For Download...