전체 글 17

R tensorflow-gpu 설정하기

오늘은 R쓰시는 분들이 딥러닝 할 때 GPU세팅을 힘들어해서 R에서 tensorflow를 gpu로 돌리기 위한 세팅을 해보겠다. 지금은 tensorflow라이브러리에서 install_tensorflow()를 활용하면 쉽게 가능하다고 하는데, 내가 처음 사용할 때는 패키지가 잘 되어 있지 않았었다. 또한 환경문제로 깨지는 경우도 존재했다. reticulate는 r에서 python을 사용할 수 있게 해주는 패키지이다. 작업을 위해 miniconda를 설치해보자. library('reticulate') install_miniconda() reticulate::py_config() reticulate에서 내가 사용하는 python 환경이 r-reticulate라는 미니콘다 가상환경으로 자동 생성되었다. 내 콘다..

R의 시작

R의 시동파일 위치 1. R HOME 2. R profile 3. R environ R은 세션 당 하나의 R profile과 R environ을 사용한다. R HOME R_HOME은 R이 설치된 디렉터리로 R.home()이나 Sys.getenv('HOME')을 활용하여 확인 할 수 있다. Rprofile Rprofile은 특정 프로젝트 실행시 바로 로딩되는 스크립트를 만들고 싶을 때 사용하므로, 프로젝트 만드는 걸 할 줄 모르는 사람을 위해 간단히 프로젝트 만드는 방법을 나타냈다. 아래 그림에서 Console 글 위에 왼쪽 2번째 파란색 육면체를 클릭한다. 클릭하면 New Project 창이 열리는데 New Directory를 눌러준다. 그런 다음 New Project를 눌러 준다. directory n..

카테고리 없음 2021.02.28

트리모델과 더미화

우리는 범주로 구성되어 있는 자료를 분석할 때 흔히 더미화(원핫인코딩) 등을 통해 자료를 변화시킨다. 과연 이러한 더미화는 모델링에서 어떤 영향을 미칠까? 회귀모델에서의 더미화 회귀분석에서 주로 얘기되는 더미화는 해당 범주별로 y절편인 beta0를 다르게 주려고 사용한다. 예를 들어 회귀분석을 통해 몸무게를 예측할 때 성별이라는 변수가 고려되었다고 한다면, 다른 변수들의 기울기는 모두 같게 나타나지만, 성별이 남자일 때 beta0에 남성의 weight만큼 더해지고, 성별이 여성일 때 beta0에 여성의 weight 만큼 더해져 좀 더 정교하게 예측하게 된다. 트리모델에서의 더미화 Tree기반 모델에서는 과연 더미화는 어떤 역할을 할까? Tree 기반 모델에서는 더미화가 오히려 성능에 악영향을 주는경우가 ..

[SMOTE] 불균형 자료의 처리 알고리즘

SMOTE 알고리즘은 크게 오버 샘플링, 언더 샘플링, 취합 순으로 진행된다. 오버 샘플링 : 작은 표본을 크게 복원 추출하는 방법 언더 샘플링 : 큰 표본을 작게 복원 추출 하는 방법 [오버 샘플링] 문자형이나 범주형 자료를 KNN에 사용하기위해 숫자형으로 변경 빈도가 가장 작았던 자료의 관측치수( rare : 50 -> nT) 300 개에 대해서 관측치별로 KNN 진행 #default 옵션은 5개 분류로 진행 자료를 6배 해야하므로 KNN 5개중 랜덤하게 1개를 뽑고 I 번째 값과의 차이(difs)에 랜덤균등분포(min=0, max=1)을 뽑아서 I 번째 자료에 더하여 자료를 생성하는 작업을 6번 함. 이렇게 300개의 빈도가 가장 작았던 자료를 KNN기반으로 오버샘플링을 진행 [언더샘플링] 빈도가 ..