-
[지도학습] 의사결정나무/랜덤포레스트/그래디언트 부스팅Study/Statistics 2019. 5. 24. 12:28
나무 모양으로 지도학습을 하는 모델 3가지 소개 트리의 복잡도 = 훈련데이터를 학습하기 위해 나무가 커지는 정도 의사결정나무(Decision Tree) 단계별로 예/아니오로 질문을 이어 나가면서 학습하는 모델, 스무고개마냥 리프 : 마지막 노드 순수 노드 : 0또는1로 완전히 분리 된 노드 원리 종속변수를 가장 잘 나눠주는 독립변수의 특징을 가지고 데이터를 예/아니오로 분리 (변수가 이항이라면 A인지B인지로, 변수가 연속형이라면 이상이하) 만약 완전히 분리 되지 않았다면 둘 중 다수에 속한 것을 예측 결과로 함 목표 : 정답에 가장 빨리 도착하는 나무 학습 => 간단하게 예측 가능하도록! 결정 트리의 복잡도 제어하기 트리 모델의 기본값은 모든 리프 노드가 순수 노드가 될 때까지 생성한 트리 => 모든 리..
-
[오류/python] graphviz 오류Information/Error 2019. 5. 23. 17:29
파이썬으로 의사결정나무 시각화할 때 graphviz패키지를 이용하면 예쁘게 시각화 할 수 있습니다,,, 그러나,,,,, 오류가,,, pip install graphviz로 설치했는데 안되는게 이상해서 파일 확인해보니까 bin폴더가 없더라고요,,, 재설치 해야겠죠,, 1. graphviz.2.38.msi 파일 설치 https://graphviz.gitlab.io/_pages/Download/Download_windows.html 2. 시스템 환경변수에 추가하기 시스템환경변수 > path 추가 C:\Program Files (x86)\Graphviz2.38\bin 시스템환경변수 > GRAPHVIZ_DOT 새로만들기 C:\Program Files (x86)\Graphviz2.38\bin\dot.exe 3. j..
-
[오류/python] python cp949에러Information/Error 2019. 5. 23. 17:27
아래 코드를 실행시켰더니,,, unicode에러가,,,,, import graphviz with open("tree.dot") as f: dot_graph = f.read() display(graphviz.Source(dot_graph)) cp949 코덱으로 인코딩 된 파일을 읽어들일때 발생하는 에러입니다. UnicodeDecodeError: 'cp949' codec can't decode byte 0xec in position 144: illegal multibyte sequence 인코딩을 utf-8로 바꿔주시면 됩니다. open("tree.dot",encoding='UTF-8')
-
[오류/python] 파이썬에서 글자 깨짐 오류Information/Error 2019. 5. 23. 13:59
jupyter에서 python연동에서 쓰는 경우 글이 깨지는 오류가 발생할수도 있는데 이는 한글글꼴이 저장되어 있지 않아서 입니다! 아래 코드로 해결할 수 있습니다! # 그래프에서 마이너스 폰트 깨지는 문제에 대한 대처 import matplotlib as mpl mpl.rcParams['axes.unicode_minus'] = False # 그래프에서 한글 폰트 깨지는 문제에 대한 대처(전역 글꼴 설정) from matplotlib import font_manager, rc font_name = font_manager.FontProperties(fname='c:/Windows/Fonts/malgun.ttf').get_name() rc('font', family=font_name)
-
[지도학습] KNNStudy/Statistics 2019. 5. 23. 09:52
지도학습 중 가장 간단하다고 볼 수 있는 거리를 이용하여 예측하는 모델 테스트 데이터와 가장 가까운 k개의 특징을 보고 테스트 데이터 예측 k-최근접 이웃(K-Nearest Neighbors, KNN) 거리가 가장 가까운 데이터포인트를 찾고, 가장 많은 클래스가 예측 결과가 됨 훈련방법 : 훈련데이터 저장 예측방법 : 궁금한 데이터에서 가장 가까운 훈련 데이터를 찾아 선택 이웃을 몇개 찾을 지 몰라서 k! 이웃개수는 내가 정하면 됨~ 이웃수는 홀수로 정하기 예측 결과는 가장 많은 이웃의 상태가 됨! knn 과정 1. 데이터셋 나누기(train/test) 2. 이웃 수(= k) 정하기 3. 훈련 : 훈련데이터 저장 4. 예측 : 테스트 데이터에서 가장 가까운 k개 데이터 포인트가 속한 클래스 중 과반수에 ..
-
[용어/SQL] 에스큐엘? 시퀄?Information/IT 2019. 5. 22. 18:31
저는 원래 SQL만 알고있었는데 이번에 교육을 받던중에 시퀄이라는 단어를 계속 말씀하시더라고요 이게 뭔가 하고 검색해 봤더니 에스큐엘 = 시퀄 = 시큐엘 전부다 SQL SQL을 발음할 때 차이라고 합니다! 왜 이런 차이가 나는지 검색해보니 역사적, 언어학적인 이유가 있더라고요! 먼저 역사적인 이유를 살펴보면, 1970년대에 IBM은 SEQUEL(Structured English QUEry Language을 축약한 약어)이라는 새로운 언어를 개발하여 시퀄이라고 부르게 되었는데,,,, 후에, SEQUEL이라는 축약어를 상표권 분쟁을 피하기 위해 SQL로 다시 더 줄여서 사용하게 되었습니다. 이를 1968년에 ANSI에서 표준으로 채택했고, 그 다음 1987년 ISO 표준으로 채택했습니다 ANSI에서는 SQL..