본문 바로가기
반응형

Programming/MachineLearning17

머신러닝 지도학습 비지도 학습 딥러닝 강화학습 차이점 아직도 모름? 1. 머신러닝 머신러닝은 경험을 통해 자동으로 알고리즘을 개선해서 유의미한 결과값을 도출해내는 컴퓨팅 기술이다. 머신러닝은 다양한 인공지능 분야 중 하나로 분류된다. 머신러닝의 학문적 정의는 "기계가 코드로 명시하지 않은 동작을 데이터로 부터 학습하여 실행할 수 있도록 하는 알고리즘 개발을 연구하는 분야"다. 머신러닝은 크게 기계학습 분야와 데이터마이닝 분야로 구분된다. 기계학습이란 훈련데이터를 통해 학습된 알려진 속성을 기반을 주어지지 않은 예측값을 계산해낸다. 데이터마이닝은 데이터의 발견되지 않은 속성을 발견하는데 집중한다. 방대한 양의 데이터베이스에서 특징량을 추출해낸다. 머신러닝의 알고리즘은 지도학습, 비지도학습, 강화학습, 그리고 딥러닝으로 구분된다. 2. 지도학습 VS 비지도 학습 지도학습은 .. 2021. 12. 17.
딥러닝 순환 신경망 RNN 10분 만에 이해하기 인공 지능의 시대 우리는 인공지능 시대에 살고 있다. 인간의 감정을 이해하고, 인간의 삶을 위협하는 인공지능이 아니라, 비서로써 혹은 검색의 어시스턴트로 인공지능 기술이 도입되고 있다. 인공지능 서비스의 가장 대표적인 사례는 인공지능 비서다. 애플의 시리, 마이크로소프트의 코타나, 아마존의 알렉스 등등 스피커의 형태로 우리 옆에 다가와있다. 애플의 시리가 어떻게 사람의 말을 이해하고, 이에 맞는 문장을 만들어서 음성으로 출력하는지 궁금해본적 있는가? 이런 인공지능 비서들이 사람말을 이해한다는 것은 이미 인간이 사용하는 언어를 상당부분 습득하고, 학습을 진행했다는 뜻이다. 인간의 문장은 여러개의 단어로 구성이 되고, 전체적인 문장의 의미를 이해하기 위해서는 앞에서 입력된 단어가 저장이 되어 있다는 것이다... 2021. 12. 17.
딥러닝 CNN 컨볼루션 신경망 10분만에 이해하기 딥러닝이 사용되는 분야는 다양하다. 그 중에서도 많은 딥러닝 모델들이 도전하는 분야가 바로 이미지 인식 분야다. 이미지 인식을 하기 위해서는 프레임을 이해하고 분해하고 해석할 수 있어야 한다. 딥러닝 이미지 인식분야에서 강력한 성능을 보이는 알고리즘이 바로 컨볼루션 신경망(Convolution Neural Network)이다. 컨볼루션 신경망(CNN) 컨볼루션 신경망은 입력된 이미지에서 특징을 한번더 추출해낸다. 특징을 추출하기 위해서 마스크(혹은 필터, 윈도, 커널이라고도 부른다.) 를 도입한다. 임의의 2x2 마스크를 만들고, 마스크에 임의의 가중치를 설정한다. 이미지를 기존 이미지에 순회하면서 적용하면 컨볼루션이라고 불리는 새로운 합성곱층이 만들어진다. 이 컨볼루션을 가지고 기존 이미지에서 더욱 정.. 2021. 12. 16.
딥러닝 손글씨 예측 모델 만들어보기 (feat 데이터정규화) 딥러닝 손글씨 인식하기 딥러닝을 공부하면 가장 유명한 도전과제가 손글씨를 인식하는 것이다. 컴퓨터가 사람이 쓴 글을 읽고 의미를 데이터화 하기 위해서 필수적인 과정이다. 손글씨를 이해하기 위해서는 먼저 글씨를 1차 배열로 변경하는 작업이 필요하다. mnist에서 지원하는 손글씨 데이터는 6000개의 학습셋을 가지고 있다. 각 데이터는 28x28 픽셀크기를 가지고 있다. 1 2 3 4 5 from keras.datasets import mnist (X_train, Y_class_train),(X_test, Y_class_test)=mnist.load_data() print("학습셋 이미지 수 : {0} 개".format(X_train.shape)) print("테스트셋 이 수 : {0} 개".format(.. 2021. 12. 16.
딥러닝 수치를 예측해보자 (feat 선형 회귀 분석) 딥러닝 수치 예측 모델 참 거짓을 판별하는 모델에서 한발 더 나아가서 수치를 예측하는 모델이 필요하다. 현실에서 수치를 예측하는 것이 더 필요한 경우가 많다. 구체적인 수치를 예측하기 위해서 우리한테 필요한 알고리즘은 선현회귀 분석이다. 선형회귀분석이란? 복잡하게 생각할 필요 없다. 독립변수 x와 기울기 a 그리고 절편 b를 더한 종속변수 y를 구하는 1차 방정식이 선형회귀분석이다. 우리가 딥러닝에서 조정해야 하는건, 이 기울이 a와 절편 b의 값이다. 학습 데이터를 가지고 두개의 변수를 계속 조정하면서 오차를 줄여나가는 과정, 이게 딥러닝의 핵심이다. 딥러닝 예제 중 가장 유명한 보스턴 집값 예측 모형을 가지고 실제 모델을 설계해보자. 데이터를 로드해서, 데이터셋을 구분하고, 학습데이터와 테스트데이터를.. 2021. 12. 16.
딥러닝 최적의 모델결과 뽑아내기 (feat 와인 데이터) 딥러닝 모델 자동 성능개선 모델을 설계하고, 출력값을 확인해보면, 출력할 때마다 결과값이 달라지는 것을 확인할 수 있다. 사람이 컴퓨터 옆에 앉아서 일일이 결과값을 비교해보고 가장 높은 결과값이 나오는 것을 확인하기에는 시간이 많이 소요된다. 많은 결과값 중에 향상된 결과값을 보여주는 모델만 정리해서 저장하는 기능이 있으면 결과값 관리가 더 편리해지겠다. keras에는 ModelCheckpoint 함수를 제공한다. 테스트오차, 학습 정확도, 테스트셋 정확도, 학습셋 오차등을 기준으로 해서 더 나아진 결과만 저장할 수 있도록 하는 함수다. 또한 성능이 개선되지 않는 지점에 도달하면 자동으로 학습을 멈춰주는 함수도 keras에서 지원한다. 바로 EarlyStopping()함수다. 실전 예제 케라스에서 데이터.. 2021. 12. 16.
반응형