3일독학인데 지금은 첫째날에서 둘째날 넘어가는 새벽 2시다. 생각보다 굉장히 벅차다. 다시 시작! 다층 퍼셉트론을 구현하면 복잡한 함수도 표현할 수 있지만, 여전히 가중치는 사람이 수동적으로 설정해야 함. 신경망을 통해 이 단점을 극복한다. 1. 퍼셉트론에서 신경망으로 1.1 신경망의 예 신경망을 그림으로 나타내보자. 입력츠에서 출력층 방향으로 0층, 1층, 2층이라 하자. 아래 그림에서는 0층이 입력층, 1층이 은닉층, 2층이 출력층이 된다. 은닉층의 뉴런은 사람 눈에는 보이지 않음. 신경망에선 신호를 어떻게 전달할까? 1.2 활성화 함수 등장 앞서 배운 퍼셉트론의 그림에는 편향이 명시되어 있지 않았다. 편향을 명시한다면 다음과 같은 그림이 나옴. 입력이 항상 1인 뉴런의 가중치가 b이 된다. 그러면 ..
시작하기 전에... 처음 공부할 책은 밑바닥부터 시작하는 딥러닝이다. 이 책은 외부 라이브러리를 최소화하고 개념 이해를 위주로 작성된 책인 것 같다. 텐서플로, 케라스 같은 프레임워크는 다루지 않는다. 처음부터 개념에 대한 이해없이 텐서플로우를 사용해 어떻게든 돌려보면서 하는 것은 별로 도움이 되지 않는 것 같다. 프로그래밍 언어를 공부할 때도 C를 하고 파이썬을 하면 쉬운데 파이썬을 먼저하고 C를 하는 것은 다들 추천하지 않는 이유가 아닐까. 개념에 대한 이해가 먼저 선행되어야 한다고 생각해서 급한 건 텐서플로지만 이 책을 선택했다. 그래도 시간이 없으니 공부한다기보다는 훑는다는 표현이 맞을 것 같다. 블로그 포스팅은 공부하고 나서 정리용으로 작성하는 것이 아니라, 공부하면서 실시간으로 작성하는 중이다..
머신러닝 수업을 들었는데, 공부를 할 필요가 있다고 생각해서 도서관에서 책을 빌려왔다. 1. Deep learning from Scratch (밑바닥부터 시작하는 딥러닝) 1 2. Deep learning from Scratch (밑바닥부터 시작하는 딥러닝) 2 3. 딥러닝 텐서플로 교과서 현재 데이터청년 캠퍼스 활동을 하고 있다. 다음주부터 자연어처리 논문을 읽으면서 텐서플로우를 이용하여 머신러닝을 구현해야 하는데 사실 아직도 개념이 부족하고, 텐서플로우에 대한 베이직 지식이 없다보니까, 최대한 빠른시일내에 이 책들의 내용을 익혀야 될 것 같다. 그래야 다음 달부터 시작하는 심화 프로젝트에서 일인분을 할 수 있지 않을까 싶다. 짧은 시간안에 최대한 많은 내용을 머릿속에 집어 넣어야되니 나중에 찾아보기 ..
길고 귀찮았던 전처리 과정이 마무리 되었다. 이제 라벨링 된 값을 이용하여 긍/부정 키워드를 추출할 것이다. 시작하기 전에... 사실은 이제 긍정/부정을 나누는 모델을 만들어야한다. 어떤 리뷰가 있을 때, 이것이 긍정리뷰인가 부정리뷰인가 구분하는 모델이다. 그런데 이것은 우리가 실시간으로 크롤링하고 정제한 데이터를 가지고 만드는 것이아니다. 어떤 영화를 가져오냐에 따라 데이터 크기가 천차만별이고, 대부분의 데이터들은 긍정/부정비율이 편향되어있기 때문. 따라서, 분류모델은 https://github.com/e9t/nsmc/ 여기 있는 데이터를 가지고 나중에 따로 만들 것이다. 위의 데이터셋은 긍정 부정비율이 일정하고, 데이터셋의 크기도 충분히 크다. 그럼 지금 하는 일은, 분류 모델이 있고 그 모델로 분류..
전단계에서 못다한 전처리를 마무리하자. 이전까지는 데이터를 쪼개고, 필요없는 것을 걸러내는 작업을 했다면 지금부터는 그렇게 해서 남은 단어들을 벡터화하는 단계이다. 생각보다 전처리가 오래걸리고 힘들었다. 그냥 긍정/부정을 나누는 것만 했다면, 어느정도 정제만 하고 성능에 영향을 주지 않을 정도만 하면 되는데, 우리는 키워드 추출까지 해야한다. 추출한 키워드가 최대한 불용어가 되지 않도록 데이터를 많이 살펴보아야한다. 아무튼 시작한다. CountVectorizer from sklearn.feature_extraction.text import CountVectorizer CountVectorizer에 대해서는 강의 03 단어 카운트 (CountVectorizer) - 토닥토닥 파이썬 - 텍스트를 위한 머신러..
탐색 이제 데이터를 수집하는 것은 끝이 났다. 지금부터는 이 데이터를 가공하는 작업이다. 사실 이 데이터 전처리가 제일 중요하지만, 제일 귀찮고 번거롭다. 암튼 또 시작 ㅠㅠ 이번 단계에서 사용할 패키지는 다음과 같다. #import할 패키지 목록 import re import pandas as pd from tqdm import tqdm from konlpy.tag import Okt from pykospacing import Spacing from collections import Counter 일단, 이전에 만들어놓은 함수들을 사용해서 다시 데이터프레임을 생성해보자. url = search() data = crawl_review(url) data = save_and_load(data) 좋다. 아주 ..