목록머신러닝 (89)
꿈 많은 사람의 이야기
이번 포스팅은 파이썬을 이용해서 공공데이터를 분석합니다. 매년 마다 우리나라에 입국하는 입국자 데이터가 있는데요!뭐 여행으로, 의료목적으로 등등 다양하게 들어옵니다. 그래서 어떤 나라에서, 얼마만큼 사람들이 들어왔는지 분석해봅니다 파이썬(python)을 사용했구요.numpy, pandas, matplot, seaborn 라이브러리를 이용합니다.그리고 간단한 머신러닝 데이터로 로지스틱 회귀(logistic regression)을 사용합니다.이건 사이킷런(scikit learn)을 사용하구요. 자 그럼 시작해볼까요 데이터는 이렇게 되어 있습니다.안에 엑셀 파일을 가지고 데이터를 분석해야 하는데요.먼저 pandas를 이용해 데이터를 불러옵니다. 근데 이 컬럼이 별로 좋지 않아요.분석하기가 쉽지 않습니다.저는 ..
캐글에서 커널을 추가하는 방법에 대해서 알아봅니다 먼저 캐글 사이트로 이동합니다당연히 회원가입 및 로그인은 하셔야겠죠? 캐글 메인으로 접속하면 위 처럼 화면이 나올겁니다~이제 검색에서 원하는 데이터를 찾아봅시다 저는 캐글에서 가장 기본적인 타이타닉(titanic)데이터를 추가하기로 합니다캐글(kaggle) 뉴비분들이 자주 이용하는 데이터죠저걸 클릭해서 들어갑니다 그러면 저기 kernels이 보일겁니다 저기로 들어갑니다 그러면 여기에서 오른쪽에 new kernel이 보이시죠?저기를 클릭합니다~ 그러면 커널을 선택하라고 창이 나오는데요본인이 원하시는 창을 선택하시면 됩니다스크립트는 마치 파이참(pycharm)과 같구요 오른쪽 notebook은 주피터 노트북(jupyter notebook)과 비슷합니다저는 주..
모든 코드는 아래 깃허브에 올려놓았습니다. https://github.com/lsjsj92/keras_basic 지난번까지 multi classification 이미지 분류를 해봤습니다 하지만 모든 카테고리 분류가 multi이지는 않죠~ 그래서 이번에는 이진 분류(binary classification)을 해보겠습니다 cat dog로 해볼게요 개냐 고양이냐?를 판단하는 이미지 분류 작업입니다 폴더는 2개입니다 cat, dog 즉, 고양이 강아지 이렇게 입니다. 그리고 각 폴더 아래에 이렇게 고양이 사진들이 있죠. 고양이와 강아지(개) 사진은 크롤링해서 긁어 왔습니다 그리고 각 사진은 25000개 정도 있습니다. 데이터는 충분한 것 같네요 keras의 ImageDataGenerator를 굳이 사용안해도 될..
해당 코드는 https://github.com/lsjsj92 에 있습니다. 참고하시고 스타도 주시면 감사하겠습니다 :) 파이썬으로 케라스(keras)와 사이킷런(scikit-learn)을 독학한지 어느덧 1달이 조금 넘었습니다. 그 동안 카테고리 분류도 해보고, 감정 분석도 해보고(실패....) 여러가지 해보면서 일반적인 머신러닝 알고리즘(서포트 벡터 머신(SVM), 랜덤 포레스트(random forest) 등)이 아닌 케라스로 다층 퍼셉트론(MLP)을 구현해서 해봤습니다. 뭐 아직 다음 단계로 넘어갈 실력은 아니었지만 일단은 여러가지 경험을 쌓고자 이젠 컨볼루션 뉴런 네트워크(convolutional neural networks)를 해보려고 합니다. 컨볼루션 신경망이라고도 불리는데요 케라스에선 컨볼루션..
상당히 피곤하다대전에서 방금 올라와서 그런지 더 피곤하다딥러닝에 입문한지 1달. 나의 짧은 지식과 독학으로는 힘든 부분이 너무 많았다. 머신러닝과 딥러닝이 어려울줄은 알았지만 이정도 일줄은 몰랐다그러다가 도저히 몰라서 이분 저분 이메일을 드리면서 물어봤었다. 우연치 않게 간 이메일 1개가인스페이스 김태영 기술이사님이셨다.페이스북 케라스 코리아를 운영중이시고 이 대회를 주최하신 분이셨다. 김태영씨의 조언으로 컨퍼런스에 참가하게 되었고너무 유익했다 많은 분들이 세미나를 해주셨다.이미지 인식의 CNN부터 Generative Adversarial Network(GAN), 강화학습(RI)까지 다양한 주제로 진행되었다. 장소는 과학기술연합대학원대학교(UST)에서 진행되었다인스페이스와 케라스 코리아, 대딥사, 한국원..
머신러닝과 딥러닝을 혼자서 독학하면서 여러가지 상황에 맞닥드리게 되고 있다. 어찌저찌 해결을 해나가고 있지만, 어제 같은 경우는 도저히 혼자서 해결이 안되었다. val_loss가 나아지지 않았고, val_acc 즉 정확도가 높아지지 않은 문제가 있었다. 과적합(오버피팅, overfitting) 문제도 아니었다. 케라스에서는 오버피팅을 방지할 수 있다. Dropout이나 callbacks 라이브러리의 modelcheckpoint, earlystopping을 통해서 overfitting을 방지하기 때문이다. 근데 참 웃긴게 아래와 같은 상황이었다. 나는 데이터 셋을 2개로 나누어서 진행했다. 데이터가 너무 커서 경량화를 하나 추가했다. 예를 들어, 기존 데이터가 1G 짜리라면 경량화는 200MB짜리이다. 데..
이전 글인http://lsjsj92.tistory.com/350 에서 파이썬으로 머신러닝을 진행해 뉴스 카테고리 분석을 만들었다.keras(케라스)와 scikit learn(사이킷런)을 이용해서 만든 카테고리 분류이다 이번에는 이 데이터를 이용해서파이썬에서 wordcloud(워드클라우드)로 시각화를 진행할 것이다.또한, gensim의 word2vec를 이용해서 연관 단어를 추출해보려고 한다 일단 워드클라우드가 되려면 mapreduce(맵리듀스)가 되어 있어야 한다.즉, word count(워드 카운트)가 되어 있어야 한다. 그리고 그 워드 카운트는 가장 많이 카운트 된 단어가 위쪽으로 나오게 할 것이다.이 과정에선 hadoop hdfs와 spark를 이용할 것이다하둡은 2.7 버전, 스파크는 2.0.3 ..
최근 네이버 뉴스 기사를 토대로 카테고리를 분류하는 머신러닝을 진행해봤다먼저 정치, 경제, 사회, IT 등을 파이썬으로 크롤링했다 데이터는 아래와 같이 모아졌다 각 카테고리별 폴더로 데이터를 떨궜다.문화, 경제, it, 오피니언, 정치, 사회 총 6개의 카테고리를 크롤링했으며 위와 같이 엑셀파일에 날짜, 제목, 내용을 긁어왔다. 이제 이 내용들을 전처리 작업 및 형태소 분석을 해야했다.왜냐하면 content에 보면 위와 같이 flash 오류를 우회하기 위한 함수 추가 등 이런 문구가 있다.또한, 특수 문자를 제거할 것이었고, 숫자, 영어도 제거하려고 했다.왜냐하면 한글을 기준으로 하려고 했기 때문이다 형태소 분석기는 은전한닢(mecab)으로 진행했다.은전한닢은 한글 형태소 분석기로 정말 좋다 konlpy..
요즘 머신러닝과 딥러닝을 공부하고 있습니다 블로그에 다 정리해서 올리고 싶은데 처음부터.. 너무 복잡하고 올리는데 시간적 소모가 커서 감히 엄두가 안나네요 ㅠㅠ그래서 중간중간 만든 결과를 올려보려고 합니다저는 주로 케라스(keras)와 사이킷런(scikit learn)으로 공부하고 있습니다사이킷런이야 파이썬에서 머신러닝으로 유명한 라이브러리죠. 케라스는 딥러닝에서 많이 쓰는데요 (물론 머신러닝도 가능합니다.)텐서플로우(tensorflow)보단 사용법도 쉽고 접근성이 좋아서 케라스를 선택해서 공부하고 있습니다.(물론 keras 내부는 tensorflow가 동작됩니다.) 아무튼 저는 그 동안 공부한 것으로 비만도 측정을 해봤습니다!1. 데이터 수집2. 훈련3. 모델 생성4. 모델을 이용한 예측 크게 4가지 ..