본문 바로가기

Theory

(228)
전처리와 학습 과정을 하나의 과정으로 실행하는 sklearn의 pipeline 2020. 4. 6. 08:00 아마 Python으로 머신러닝을 공부하시는 분들은 scikit-learn을 많이들 사용하실텐데요. 보통 결정나무를 제외하면 대부분 전처리를 꼭 하게 됩니다. 하다못해 Scaler라도 적용을 하겠죠. 이 때 이런 과정 - Scaler와 모델의 fit 과정이라도 한 번에 진행하면 편할 수도 있습니다. 여러 방법이 있겠지만, 그 중 하나는 pipeline입니다.일단, 이번에는 wine 데이터를 사용해 보도록 하겠습니다. 이 데이터는 그렇게 중요하지 않구요. 그냥, pipeline 예제만 보일려고 하는 것입니다. 간단하게 red / white 와인을 분류해보려는 시도이지요^^간단하게 특성 X과 라벨 y을 잡았구요~pipeline을 StandardScaler를 통과하고 DecisionTreeClassifier를 ..
신종 코로나 바이러스 COVID-19 데이터 분석 2020. 3. 7. 22:17 본 글은 kaggle에 공개된 신종 코로나 관련 데이터를 단순히 들여다 보는 글일 뿐, 어떤 정치적, 종교적 의도가 없습니다. 특히 데이터만 가지고 객관적으로 관찰하려 노력했으며, 글 중간에 이야기하겠지만, 글 후반부의 내용은 단지 Kaggle의 Kernel의 내용중 관심있는 부분만 정리했을 뿐입니다. 특히 Kaggle에서 가져온 데이터는 현시점 대비 정리가 다되어 있지 않아서 실시간 뉴스와 차이가 큰 경우도 있습니다. 그리고 이 글은 PC와 같은 화면 비율이 약간 큰 환경에서 읽어야합니다. 코드를 일일이 붙여넣기 힘들어서 캡쳐했기 때문입니다. 국내 아니 전세계가 신종코로나 바이러스로 인해 엄청난 긴장상태를 너무 긴 시간 유지하고 있는 것 같습니다. 예전 여러 데이터 분석관련 글처럼 이번에도 데이터를 들..
구글 Colab에서 한글 문제 대응하기 2019. 11. 18. 08:00 Python의 matplotlib의 기본 폰트가 한글을 지원하지 않아서 한글 폰트로 설정을 해주어야 합니다. 아나콘다에서는 그렇게 한글을 지원하도록 설정만 하면 문제가 없습니다. 그런데 구글의 Colab에서는 조금 다릅니다. 일단 아래 코드를 보죠. 123456789101112import matplotlib as mplimport matplotlib.pyplot as plt %config InlineBackend.figure_format = 'retina' !apt -qq -y install fonts-nanum import matplotlib.font_manager as fmfontpath = '/usr/share/fonts/truetype/nanum/NanumBarunGothic.ttf'font = ..
머신러닝을 이용한 Human Activity Recognition 실습 2019. 10. 29. 08:00 사람의 몸에 스마트폰(에 있는 자이로, 가속도센서 데이터)을 붙여서 데이터를 얻어서 그로부터 사람의 행동을 센서데이터 확인하려는 연구가 있습니다. 이 연구는 대부분 (딥러닝을 포함한) 머신러닝 분야에서 활발한듯 합니다. 그런 데이터를 이번에 하나 가지고 살짝 실습해 보려고 합니다.UCI에서 방금이야기한 Human Activity Recognition (HAR) 데이터를 배포하고 있습니다. 읽어보면 2012년 데이터이고 이때 사용한 기기는 삼성 갤럭시2라고 되어 있습니다. 이 데이터가 zip으로 되어 있어서 이를 제 github 계정에 압축을 풀어서 다시 올려놓았습니다.왜냐면 오늘 글은 구글 Colab으로 읽을거여서 그냥 편하게 데이터를 url로 읽기 위해서 입니다.이 데이터는 위의 특징을 가집니다^^데이..
Scikit Learn을 이용한 라벨인코딩 - LabelEncode 2019. 9. 30. 08:00 라벨인코딩은 데이터사이언스, 머신러닝 과정에서 많이 사용하는 기능입니다. Scikit Learn에서는 간단한 라벨인코딩 기능을 제공하는데요. 오늘은 그 간단한 기능을 살짝 설명하려고 합니다.오늘은 아이리스 데이터를 대상으로 하겠습니다.아이리스 데이터를 불러와서 데이터는 value 위치에, feature_names는 컬럼이름으로 잡고, 아이리스의 품종을 의미하는 target 데이터도 컬럼으로 포함시켰습니다.target_names의 경우는 setosa, versicolor, virginica로 세 가지입니다. 라벨인코딩이라는 것은 이름으로 되어있는 것을 숫자로 혹은 그 반대로 변환하는 것입니다.그렇게 해주는 기능을 손쉽게 sklearn이 제공하는 것이지요.라벨인코딩 기능을 사용하기 위해서 sklearn의 p..
Scikit Learn (sklearn) SGDRegressor 사용할 떄 Loss 그래프 확인하는 방법 2019. 9. 23. 08:00 요즘 저는 한양대에서 본교와 에리카를 합쳐서 수업하는 머신러닝 수업을 교양으로 공동 수업 중이고, 한양대 에리카에서 로봇공학과 학생들을 대상으로 기계학습론이라는 과목도 공동 진행 중인데요. 그래서 수업용으로 자료를 만들다가, 한 가지 발견한 것이 있네요. 바로 scikit learn의 linear_model에 SGDRegressor에서 케라스나 텐서플로우 처럼 iteration마다 loss를 history로 저장해서 그래프로 확인하는 기능을 찾을 수 가 없더라구요ㅠㅠ. 그래서 역시 구글을 뒤졌죠^^ 이제 없던 옵션을 만들러 갑니다.^^ (아 근데 혹시 이것보다 더 간단한 방법이 있을 수 있죠.ㅠㅠ. 제가 들 찾아봤을 수 있으니까요ㅠㅠ) import numpy as np import matplotlib.p..
PinkWink 새 책, 누구나 파이썬 Python을 또 출판했습니다. 2019. 6. 7. 08:00 무대뽀로 파이썬으로 데이터를 다루는 내용을 엮어서 파이썬으로 데이터 주무르기라는 책을 인생 처음으로 출판했었습니다. 이 책이 너무나도 예상외로 많은 분들의 관심을 받아서 베스트셀러라는 창피한 이름을 달기도 했습니다. 바로 교보문고 선정 2018년 IT 분야 8위에 올랐죠. 그런데 또 한 편으로는 이 책이 너무 어렵다는 평가가 많았습니다. 그래서 기존의 제 책인 파이썬으로 데이터 주무르기보다 한 단계 정도 쉬운 주제와 설명을 가지게 해야겠다고 생각하고 편집한 책입니다.그래서 이름도 누구나 파이썬 Python인거죠^^ 저의 방식이 언제나 그렇듯, 주제 중심으로 예제 풀듯이 흘러갑니다. 당연히 파이썬의 깊고 중요한 내용들이 있지만, 책 한권으로 다 다룰수 있다고 생각하지 않고, 또 그건 훨씬 실력있는 분들이 ..
네이버 검색어 트렌드 API를 사용해 보죠.. 그리고 타다~ 2019. 5. 8. 07:00 아주 가끔은 추억이 생각날 떄가 있습니다. 정말 사소한 인연인데 그게 생각기 선명하게 나고, 또 그래서 그 추억의 고리를 함께한 사람들이 어떻게 지내고 있는지도 궁금해 질때가 있습니다. 나이를 먹어가고 있기 때문일까요^^이 때가 2009년 6월입니다. 이때는 블로거들이 어떤 주제를 정하고 서로에게 질문을 하던 릴레이 놀이가 자주 생겼습니다. 이 때는 편견타파 릴레이였습니다.^^그리고 제 앞에서 릴레이를 하신 주자가 VCNC라는 블로그를 운영하시던 분이었습니다. 많이 들어 보셨나요? 네 맞습니다. 요즘 핫한 타다/쏘카를 서비스하는 그~~~ VCNC입니다.^^.그리고, 이 분이 자신의 다음 릴레이 주자로 저를 지목하신거죠^^ 2009년 6월 25일 오전 11시에~~^^ 전 그 릴레이를 받아 그날 오후 3시쯤..

반응형