목록공부 (172)
꿈 많은 사람의 이야기
이번 커널 필사편은 자연어 처리 부분입니다.당분간은 자연어 처리 위주로 글을 올릴 예정입니다캐글에 있는 자연어 처리 데이터 중 쉬운 편에 속하는 스팸(sparm or ham) 데이터를 가지고 해당 글이 스팸인지 아닌지를 딥러닝으로 처리해보겠습니다.https://www.kaggle.com/uciml/sms-spam-collection-dataset캐글 데이터는 여기서 구할 수 있습니다! 먼저 필요한 라이브러리를 불러옵니다파이썬의 판다스(pandas), numpy와 그래프를 그릴 matplotlib, seaborn을 불러옵니다.그리고 머신러닝 라이브러리 scikit learn(사이킷런)과 딥러닝 라이브러리인 keras(케라스)를 불러옵니다 데이터는 v1, v2 컬럼으로 각각 라벨, 문장으로 되어있습니다.하지..
안녕하세요. 이번 포스팅은 파이썬 업무 자동화 편입니다. 지난 포스팅에서 파이썬으로 pdf를 엑셀로 만드는 자동화에 대해서 포스팅을 했었는데요이번 포스팅은 엑셀 데이터를 자동으로 데이터 흐름도(data flow chart)로 만들어주는 것을 해보려고 합니다.데이터 흐름도가 무엇인지, 어떻게 활용될 수 있는지 등 차근히 알아보죠 단순히 구글에 데이터 흐름도라고 검색하시면 이렇게 그림이 나오는 것을 볼 수 있습니다.음 이렇게 보니까 이번에 진행하는 것은 데이터 흐름도와 100% 일치한다고는 볼 수 없네요하지만 100% 일치하도록 만들 수도 있습니다 살짝 dot format에 가깝습니다.dot은 graph description language라고 불리는데요텍스트 데이터를 흐름도 처럼 그려주는 것입니다.단순히 ..
어느덧 설이 끝나고 한 주가 지났네요몸도 안좋았고 좀 정신이 없습니다 이번 포스팅은 apahce flume(아파치 플럼)과 apache kafka에 대해서 알아봅니다.빅데이터와 관련된 공부를 하게 되면 당연히 apache open source project에 대해서 많이 공부하게 되는데요대표적인게 하둡이죠.저장 하기 전에 수집 단계에서 많이 사용되는 소프트웨어가 플럼과 카프카입니다.먼저 플럼을 알아보고 그 다음 카프카(kafka)에 대해서 알아봅니다.이번 포스팅은 지난 게시글(하둡과 주키퍼, 얀 설치) 이후의 글입니다.https://lsjsj92.tistory.com/432https://lsjsj92.tistory.com/433을 참고하시면 되겠습니다.그리고 이 내용은 실무로 배우는 빅데이터 기술 책의 ..
안녕하세요! 이 글을 쓰는 현재 설 연휴가 시작되었네요모두들 새해 복 많이 받으세요!올 한해 건강하시고 하는 일 다 잘 되시길 바랍니다! 어느덧 새벽 5시 캐글 필사 5주차입니다.벌써 5주차네요이제 3번째 주제로 넘어갔습니다.처음은 타이타닉, 두 번째는 porto 데이터였습니다.이제는 home credit 대회를 기준으로 진행해보려고 합니다.근데 여기까지 하면서 느낀점이 있다면 캐글 필사를 하면서 진짜 하나를 제대로 해야겠다는 느낌이 드네요계속 주제는 넘어가지만 porto 데이터와 타이타닉 데이터는 계속 중간중간 복습을 하고 있습니다.안그러면 계속 까먹네요 ㅠ 아무튼 시작하겠습니다. 이 데이터 셋의 배경은 위 설명과 같습니다.신용기록이 없는 사람들에게도 대출이 가능하도록 이 사람이 상환 능력이 되는가? ..
회사에서 프로젝트를 하면서현재 html div 영역에 그러져 있는 이미지나, 그래프를 이미지(image)로 다운로드 가능하도록 해달라는 요구가 있었다그래서 '이게 되나?' 이러면서 찾아봤었는데처음에는 node js로 div image download 기능만 보이다가 더 찾아보니까html2canvas라는 js 라이브러리가 있었다 만약 이런 사진이 있다면 이렇게 이미지를 올리고이미지로 다운로드를 클릭을 하면 파일이 다운로드가 된다.파일명은 바꿀 수 있다 이렇게 png 파일로 다운로드가 된 것을 볼 수 있다.사용법은 의외로 정말 간단했다(물론 별의 별 오류를 다 겪었지만..) 버튼 하나 만들고 버튼 클릭 시 printdiv 함수를 호출하는데 $('#div_id')를 넘겨주면 된다.자바스크립트로 하실꺼면 doc..
지난 포스팅에서 클라우데라(cloudera) 환경에서 아파치 하둡을 설치했습니다. 더불어서 주키퍼(zookeeper), 얀(yarn)도 설치했죠.https://lsjsj92.tistory.com/432이제 이후의 기본적인 설정 방법입니다.아무래도 vm 환경이다 보니 높은 퍼포먼스로 진행하기 힘듭니다.저는 램이 16G인데도 각 노드 램을 4, 4, 2로 주니까 죽을라고 하네요 ㅋㅋㅋㅋㅋ 그래서 필요한 설정 등을 할 수 있습니다. 먼저 호스트에 들어가서 역할에 들어가봅니다 그러면 클러스터에서 각 노드들의 역할을 볼 수 있습니다~어떤 노드에 무엇이 설치되어 있는지 한 눈에 볼 수 있죠 그리고 클라우데라 매니저 메인으로 가서 HDFS 오른쪽의 화살표 버튼을 누르면 역할 인스턴스 추가가 보입니다.이걸 누르시면 위..
빅데이터 분석과 적재를 위한 하둡 아키텍처 설치는 다양한 방법으로 설치할 수 있습니다.뭐 그냥 일반적인 방법은 단순히 3~4대의 centos7 등을 설치해서 거기에 자바 설치하고, 하둡 설치하고하나하나 다 설치하는 방법이 있습니다.저도 예전에는 계속 이 방법으로 설치했고, 도커 환경에서도 설치를 해봤었습니다. 하지만 이 과정이 하둡, 주키퍼, 스파크, 제플린 등의 설치까진 그래도 괜찮은데플럼, 카프카, 스쿱 등의 다양한 하둡 에코시스템을 설치하다보면 설치가 굉장히 까다로워지고 복잡해집니다.그래서 이러한 과정을 좀 단순하고, 명확하게 해주면서 설치를 쉽게 해주는 방법이 있는데요그 중 하나가 클라우데라를 이용하는 방법입니다.클라우데라는 빅데이터 아키텍처 오픈 소스들을 한데 모아서 잘 조립해주기도 하고, 제품..
최근에 캐글을 하면서 가장 많이 헷갈렸던 부분이바로 StratifiedKFold와 pandas에서 axis=0, 1의 대한 개념이었다. 아무것도 모르는 상태도 아니었고 개념적으로는 알고 있었는데막상 코드를 필사하면서 보니까 정말 헷갈렸었다그래서 정리를 간단하게 해보려고 한다. 먼저 간단하게 데이터셋을 만들어본다.pd.DataFrame을 통해서 만든다 자, 처음으로는 StratifiedKFold를 해본다.from sklearn.model_selection import StratifiedKFold를 통해 라이브러리를 가져온다.사용법은 정말 간단하다. StratifiedKFold를 선언하고 splits 개수와 shuffle 여부, random_state 등을 설정해준다.그리고 저 상태에서 바로 .split(x..
https://lsjsj92.tistory.com/429지난 3주차 포스팅 글입니다. 3주차에 이은 4주차입니다. (말이 n주차지.. 글이 밀려서 한 번에 올리네욯ㅎㅎㅎㅎ). 4주차에서도 저는 porto 데이터 셋을 가지고 다른 커널을 필사했습니다. 솔직히 타이타닉 다음으로 porto를 하는데 있어 너무 어려웠습니다. 그래서 이 데이터는 몇 번 더 해봐야겠네요 ㅠ 지난 커널에서는 모르는 내용이 너무 많았습니다. 왜 데이터를 그렇게 복잡하게 조합하고 그러는지 이해도 안되고요. 하지만 이 커널은 정말 명확하더라구요! 시작하겠습니다. 맨 위에 커널 주소가 나와있습니다. 저 주소로 진행했습니다.먼저 필요한 라이브러리를 import 합니다. Numpy, pandas는 기본이고, sklearn에서 model_sel..
안녕하세요.새벽 5시 캐글 필사하기 3주차입니다.사실 캐글 필사는 계속 하고 있는데 블로그에 올리기가 너무 힘드네요요즘 바빠서 퇴근 시간이 늦다 보니(집오면 10시 ㅠ) 블로그에 올릴 시간이 없네요 ㅠ 3주차 주제는 porto 데이터 셋으로 진행합니다. 안전하게 운전을 하는 운전자를 예측하는 데이터입니다.데이터는 https://www.kaggle.com/c/porto-seguro-safe-driver-prediction 에 있습니다. 이번 주제도 1, 2주차에 걸쳐서 진행합니다. 1주차는 먼저 머신러닝 탐구생활이라는 책의 EDA 과정을 볼 것이고, 좀 이해하기 힘든 커널을 1개 필사했습니다.(아직도 이해가 안갑니다…) 시작해봅니다! 머신러닝 탐구생활 책을 기준으로 진행합니다. 역시 데이터부터 살펴보기 위..