반응형

혼공머신 6

[혼공머신러닝] 7장 인공신경망 기본 정리

안녕하세요 Dibrary입니다. 이번에는 신경망 코드를 정리해보겠습니다. keras는 저도 안써봤었는데, 이번에 알고 꽤나 쉬울 수도 있겠다는 생각이 드는 좋은 라이브러리입니다. 해당 코드는 fashion_mnist 데이터를 사용했습니다. 데이터를 불러오는 코드는 아래와 같습니다. 정말 심플하죠? 핵심은 keras.datasets.fashion_mnist.load_data( ) 입니다. 꼭 fashion_mnist로 하지 않아도 되긴 합니다. 살펴보면, boston_housing 데이터도 있고, cifar10 등등 하나만 있는 것은 아닙니다. 데이터 크기를 확인해보면 아래와 같습니다. (60000, 28, 28) 에 의미는 28*28 크기로 구성된 데이터가 6만개 있다는 의미입니다. 즉, 하나의 데이터는..

[혼공머신러닝] 6장 k평균 알고리즘 정리

안녕하세요 Dibrary입니다. 이번에는 혼자공부하는 머신러닝의 6장 내용인 'k평균 알고리즘'에 대해 정리해보겠습니다. k평균 알고리즘은 아래와 같이 동작합니다. 무작위로 k개 클러스터의 중심을 정합니다. 각 샘플에서 가장 가까운 클러스터의 중심을 정합니다. 그게 곧 해당 클러스터의 샘플이 됩니다. 클러스터에 속함 샘플의 평균값으로 클러스터의 중심을 변경합니다. 클러스터 중심에 변화가 없을 때 까지 2번으로 돌아가서 반복합니다. 즉, 한 마디로 '인접 요소를 가장 잘 대변하는 점 하나를 찍고, 그게 맞으면 평균점이 되는데, 그게 아니라면 평균점이 될 때까지 이걸 반복한다' 는 것이죠. 파이썬은 굉장히 편리하다고 느끼는 게, 이 k평균 군집 역시 파이썬 sklearn 모듈을 사용해서 할 수 있습니다. 먼..

[혼공머신러닝] 5장 트리 알고리즘 정리

안녕하세요 Dibrary입니다. 이번에는 트리 알고리즘을 정리해보겠습니다. 먼저 트리라는 자료구조는 하나의 루트로부터 시작해서 계속 가지를 쳐 나가는 것입니다. 이렇게 말이죠. 다만 2개씩만 하는 경우에 한해서 이진트리라고 특별히 이름 짓습니다. (이는 데이터를 빠르게 찾는데 굉장히 유용하기 때문에 알고리즘에서 주로 사용됩니다.) 이 트리형태로 해답을 찾아 나가는데, 각 트리의 노드가 해답을 찾아나가는 '질문'으로 된 것이 결정트리 입니다. 이런 것이죠. 질문이 꼭 하나로만 구성될 필요도 없습니다. 파이썬은 sklearn 모듈을 사용해서 결정트리를 사용할 수 있습니다. 먼저 임의의 데이터를 가져와보겠습니다. 이 데이터 중에 class를 target으로 잡고, 나머지 3가지 항목을 해당 target을 구하..

[혼공머신러닝] 4장 로지스틱회귀 정리

안녕하세요 Dibrary입니다. 이번에는 혼자 공부하는 머신러닝의 4장, 로지스틱 회귀에 대해 정리해보겠습니다. 로지스틱 회귀는 '회귀'라는 단어가 들어가긴 하지만 분류 모델입니다. 학습하는 선형 방정식이 회귀처럼 생겼을 뿐이죠. 이 분류가 될 확률을 구한다고 할 때, 확률은 0~1 사이의 값이죠. (1은 100%를 의미.) 근데, 확률이 0인 경우는 잘 안나와야겠죠? 확률이 높을 수록 분류가 잘 될 것이구요. 그러한 특성을 가진 그래프를 '시그모이드 함수'라고 합니다. 그려보면 위와 같습니다. 잘 안보이신다구요? grid를 추가해 보겠습니다. x축의 0값을 기준으로 왼쪽으로 가면 0으로 수렴하고, 오른쪽으로 갈 수록 1에 수렴합니다. 임의 데이터를 가지고 로지스틱 회귀를 해 보겠습니다. 이렇게 입력하면..

[혼공머신러닝] 3장(최근접 이웃회귀, 선형회귀) 정리

안녕하세요 Dibrary입니다. 이번에는 혼자공부하는 머신러닝 책의 3 챕터, '회귀'에 대해 정리해보겠습니다. 회귀는 간단하게 클래스 중 하나로 분류하는 것이 아니라, 임의 숫자를 예측하는 것입니다. 두 변수 사이의 상관관계를 분석하는 방법이 회귀입니다. 1. k-최근접 이웃 회귀 예측하려는 샘플에 가까운 샘플 k개를 선택하는데, 샘플의 타겟은 '수치값'입니다. 간단히 예를 들자면, 이 수치값의 평균을 구하고 이를 예측 값으로 사용하는 것이 일종의 회귀 방법입니다. 2. 선형회귀 샘플 데이터들의 특성을 가장 잘 나타내는 직선을 구하고, 해당 선을 기준으로 예측값을 구하는 방법입니다. 과대적합 = 모델이 훈련에 너무 익숙해져 있는 상황입니다. 따라서, 실제 데이터가 주어지더라도 훈련과 다르면 틀리다고 판..

[혼공머신러닝] 1장, 2장 정리

안녕하세요 Dibrary입니다. 이번에는 '혼자 공부하는 머신러닝+딥러닝' 책을 공부하면서 간단히 내용을 정리해보겠습니다. 혼공학습단에 선정되기도 했고, 어차피 머신러닝, 딥러닝에 대해 간략한 개괄정도밖에 몰랐어서 이참에 좀 제대로 정리해두고자 합니다. 머신러닝 = 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야 딥러닝 = 머신러닝 알고리즘 중 인공신경망을 기반으로 한 방법들을 지칭 이 책은 구글의 Colab에서 실행해보는 것으로 구성되어 있습니다. 제가 띄운 화면인데, 정말 심플하죠? Jupyter를 띄운것이랑 거의 차이가 없습니다. 단지, 몇 가지 설정을 통해 GPU나 TPU 등을 써볼 수 있다는 장점이 있습니다. 간단하게, 데이터가 눈에 띄게 2가지로 분류된 것을 볼 수 있습니다. 즉,..

반응형