본문 바로가기

Data

[SVM] 2. svm 사이의 최대 거리값 찾기 다시 그래프로 돌아오자.svm의 가장 기본적인 목표는 경계(decision boundary)에 가장 가까운 서로 다른 클래스 두 점의 '거리 최대값'을 찾는 것이다.위 그래프에서 초록색 선은 x-클래스 벡터, 하늘색 선은 x+클래스 벡터이다.뺄셈으로 두 벡터의 거리를 찾고, 벡터값을 스칼라로 바꾸기 위해 w벡터의 단위벡터값을 내적해준다. 왜 하필 w벡터일까? SVM 조건식을 통해 도출한 X와 W의 내적값을 1과 b에 대한 상수식으로 치환하면,아래와 같이 아주 깔끔한 식이 도출된다. ||w||가 분모에 있다는 것은 다시말해 최대값을 찾기위해서는 가장 작은 w를 찾아야한다는 얘기가 된다.수학적 편의에 차원에서 w의 최솟값을 찾기 위해 아래와같이 식을 변형한다. '왜 이렇게 변형해야 하는가'는 또 다른 문제이..
[SVM] 1. yi(x·w+b) >= 1 도출하기 위 그래프는 두개의 그룹을 나누는 가장 최단의 경계가 되는 서포트 벡터 라인 두개와,두 그룹의 경계가 되는 점선라인(dicision boundary)을 표현하고 있다. 여기서 dicision boundary를 통과하는 범선 벡터 w와(파란색), 특정할 수 없는 어떤 벡터 u(주황색)가 있다. 이 둘의 내적(dot product) 값은 상수 c보다 크다고 할 수 있다고 했을때,c를 이항하여 b(c=-b)로 치환하면 다음과 같다. 여기서 벡터 u가 decision boundary에 위치한 벡터 X중 하나라고 했을 때,w와 X의 정의에 따라 직교하는 벡터의 내적은 0이 되므로, 아래와 같다. 나아가, w와 X의 내적과 좌표계상의 위치를 조정하는 편향값(bias, Decision Boundary 그래프가 원점에..
[R] 인코딩 옵션 추론 및 한글 변환하기 맥에서 설치하는 R은 기본 utf8설정인경우로 데이터 변환을 할 필요가 없지만, 윈도우는 그렇지 않을 수 있기 때문에 데이터 타입 추론과 변환이 필요한 경우가 있다. 이때 readr라이브러리의 guess_encoding 함수를 호출하면 데이터타입 추론이 아래와 같은 결과로 나온다.library(readr) guess_encoding(someday) # A tibble: 1 x 2 encoding confidence 1 ASCII 1 이때, 한국어 데이타의 경우 kormaps2014 라이브러리의 changeCode 함수를 통해 타입을 쉽게 변환할 수 있다.library(kormaps2014) encoded
[R] factor 자료형에 대하여 Factor는 인덱스와 같은 제한된 숫자값을 갖고있는 자료형이다. 통계적 모델링(그래프 요소의 순서처리 등)을 위해 주로 사용되고, 같은 value값을 지닌 데이터간의 안정성이 보장되는 이점이 있다. 또, 그만큼 데이터 복사/처리 등이 쉽게 이뤄지지 않으므로 일반적으로 가공과정에서는 사용하지 말것을 권장한다. csv, excel등의 데이터를 R데이터 타입으로 변환하거나 생성할때 stringAsFactors 옵션을 통해 해당 데이터를 Factor로 다룰것인지 옵션을 줄 수 있다.credit_rating