(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 자세히 넣지 않았습니다. 본 글의 코드는 제 깃허브에서 보실 수 있습니다.) 합성곱convolution을 이용한 딥러닝 합성곱을 간단하게 설명하기는 쉽지 않습니다. 책에서는 도장에 비유하고 있는데, 찰떡같이 와닿는 느낌은 아닙니다. 그래도 굳이 설명하자면, 두 함수의 합성곱을 계산하는 방법은 아래와 같습니다. 두 함수 $f(x)$와 $g(x)$의 곱을 전체 영역에서 적분합니다...
바쁜 현대인을 위한 세줄코드 import tensorflow_datasets as tfds # 코랩 외에서는 설치 필요 (tensorflow와 다른 모듈임) bldr = tfds.builder('fashion_mnist') bldr._info().features['label'].names ['T-shirt/top', 'Trouser', 'Pullover', 'Dress', 'Coat', 'Sandal', 'Shirt', 'Sneaker', 'Bag', 'Ankle boot'] 일러두기 본 글의 코드는 여기에서 보실 수 있습니다. 본 글은 패션 MNIST의 레이블명(“T-shirt/top”, “Pullover” 등)이 데이터셋 안에 들어있지 않을까 하는 궁금증에서 출발했습니다. 궁금증 해결에 도움 주신 파..
요약문 한빛미디어의 혼공학습단 활동으로 박해선님의 ‘혼자 공부하는 머신러닝+딥러닝’을 공부했습니다. 수학 베이스는 어느 정도 있지만 머신러닝을 잘 몰라서 입문하고 싶은 분들에게 강력히 추천하는 책입니다. 책의 목적은 머신러닝 입문자에게 머신러닝의 감각을 훈련시키는 것입니다. 매 주제마다 흥미로운 실전 예시로 호기심을 유발하고, 간단한 코드를 통해 1차적인 결과물을 도출합니다. 그리고 발생할 수 있는 여러 문제들을 소개하고 해결책을 제시합니다. 용어 설명도 소홀히 하지 않고 지면을 적절히 사용했습니다. 책의 난이도는 고등학교 수학과 약간의 선형대수를 필요로 하는 정도입니다. 주제마다 기본 해결책을 설명하고 문제점 및 추가 해결책을 순서대로 제시하는 방식으로 되어 있어 강의 교재로도 훌륭하다고 생각합니다. ..
(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 자세히 넣지 않았습니다. 본 글의 코드는 제 깃허브에서 보실 수 있습니다.) 패션 MNIST 드디어 딥러닝입니다. 7장에서 이용할 데이터는 6장에 다룬 과일 이미지와 비슷한 패션잡화 이미지입니다. 패션 MNIST 데이터셋이라고 부릅니다. 딥러닝에서 많이 사용하는 데이터셋으로, 워낙 유명하기 때문에 케라스에는 이미 데이터를 불러올 메서드가 준비되어 있습니다. 데이터를 불러와서 어..
(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 자세히 넣지 않았습니다. 본 글의 코드는 제 깃허브에서 보실 수 있습니다.) 군집화란? 2장에서 다루었던 생선 데이터를 오랜만에 다시 꺼내보겠습니다. 깃허브에 있는 .py 파일을 wget으로 가져올 수 있습니다. 단 이 방식으로 코랩 드라이브에 저장한 파일은 코랩 연결이 끊기면 없어지므로 매번 다시 가져와야 하는 단점은 있습니다. 아래는 저자 박해선님의 깃허브에 있는 파일 ht..
(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 자세히 넣지 않았습니다. 본 글의 코드는 제 깃허브에서 보실 수 있습니다.) 5장은 지금까지와 다르게 참 많은 내용이 나옵니다. 대부분은 공식 문서에 굉장히 잘 설명되어 있습니다. 아래는 본 글을 쓰면서 참고한 공식 문서들입니다. sklearn.tree.DecisionTreeClassifier sklearn.tree.plot_tree Decision Trees Cross-val..
(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 자세히 넣지 않았습니다. 본 글의 코드는 제 깃허브에서 보실 수 있습니다.) 목차 1. 분류의 정확도 2. 로지스틱 회귀 - 이진 분류 3. 로지스틱 회귀 - 다중 분류 4. 확률적 경사 하강법: 분류 모델의 계수를 찾는 방법 5. 손실 함수: 분류 모델의 목적 함수 6. 확률적 경사 하강법 실습 7. 에포크와 과대/과소적합 8. 기본 미션: 04-1 확인 문제 2번 풀이과정 ..
(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 자세히 넣지 않았습니다. 본 글의 코드는 제 깃허브에서 보실 수 있습니다.) 회귀回歸? 지난 1-2장에서는 길이와 무게로부터 샘플을 분류하는 방법을 배웠습니다. 즉, 주어진 특성feature값으로부터 샘플이 어느 클래스class에 속하는지를 찾아내는 방법이었죠. 그래서 사이킷런의 KNeighborsClassifier를 사용했습니다. 특성은 생선의 길이와 무게였고, 이로부터 생선..
(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 넣지 않았습니다.) 수상한 100점 1장에서 생선 데이터(fish_data)와 정답(fish_target)을 이용해서 K-NN을 훈련시켰습니다. 그리고 동일한 데이터로 평가까지 진행했습니다. 스코어가 1.0이 나와서 행복했었죠. 그런데 조금만 생각해보면 이상하다는 걸 알 수 있습니다. 훈련과 평가를 같은 데이터로 해도 될까요? 외계인에게 사진만 보고 개인지 고양이인지 맞추게 하..
(한빛미디어에서 모집하는 혼공학습단 활동의 일환으로 혼자 공부하는 머신러닝+딥러닝 책을 공부하고 작성한 글입니다. 책은 제 돈으로 샀습니다. 본문의 코드는 책의 소스코드를 기반으로 하되 글 흐름에 맞게 수정한 것입니다. 원본 코드는 저자 박해선 님의 깃허브에서 보실 수 있습니다. 책에 나오는 넘파이, 판다스 등의 내용은 본 글에는 넣지 않았습니다.) 머신러닝은 어떻게 시작되었나? 머신러닝에서 가장 유명한 문제는 아마 고양이와 개를 구별하는 문제일 것입니다. 사람은 태어나서 고작(?) 몇 년의 훈련만 거치면 사진을 보고 개인지 고양이인지 알 수 있습니다. 실제로 몇 년이 걸리는지 언급한 기사나 연구가 있는지 찾아봤는데 안타깝게도 잘 찾아지지 않네요. 저만 궁금한가 봅니다. 정확히 정의된 작업을 처리하는 속..