본문 바로가기

AI

(6)
[AI] Teachable Machine Teachable Machine 코드 한 줄 없이 아주 간단하게 머신러닝 모델을 만들어볼 수 있습니다. Teachable Machine이라는 것을 사용하면 되는데요. * 패스트캠퍼스 '모두를 위한 딥러닝: 머신러닝부터 딥러닝까지' 강의의 내용을 바탕으로 작성하였습니다. 구글에서 만든 누구나 머신러닝 모델을 쉽고 빠르고 간단하게 만들 수 있도록 제작된 웹 기반의 도구입니다. 이미지, 사운드, 포즈를 인식하도록 컴퓨터를 훈련시킨 모델을 내보내서 사용할 수 있습니다. 이를 이용하면 다양하고 재밌는 결과물들을 만들어낼 수 있습니다. 다양한 유형의 이미지를 인식하도록 모델을 훈련할 수 있습니다. 예를 들어, 다양한 동물, 사물, 몸짓을 구별할 수 있습니다. 음성 명령이나 다양한 소리를 이해하고 응답하는 모델을 구..
[딥러닝개론] 순전파와 역전파 순전파와 역전파 순전파(forward propagation) 데이터를 입력으로 받아서, 예측을 출력하는 것. 역전파(back propagation) 모델이 출력한 예측과 실제 레이블(정답)이 얼마나 다른지 측정하고, 그에 대한 피드백을 모델에 전달하는 과정을 반복하는 것(학습) 학습을 통해 더 예측을 잘하는 모델(더 예측을 잘하는 가중치)로 변해가는 과정. 딥러닝 모델을 연구, 개발할 때 사용하는 PyTorch, TensorFlow 등의 딥러닝 프레임워크 - 이러한 프레임워크들은 대부분 Backpropagation을 위한 자동 미분 메서드를 제공 연쇄법칙(Chain Rule) 이 법칙을 활용한다면 아무리 복잡한 신경망 모델이라도 쉽게 역전파를 할 수 있다. 이미 계산된 기울기를 활용해서, 다른 기울기 값..
[딥러닝개론] 신경망 학습 - 경사하강법(gradient descent) 신경망 학습 - 경사하강법(gradient descent) 신경망을 학습시킨다는 것은 모델이 더 예측을 잘하는 방향으로 가중치를 업데이트해 가는 과정인데, 그렇다면 어떻게(어떤 방향으로, 얼마나) 가중치를 업데이트 해갈 것인지에 대한 방법에 대해서도 생각해보아야할 것이다. 경사하강법은 그 방법에 대한 것이다. 비용(예측한 결과가 실제 결과와 얼마나 다른 지를 나타내는 값)을 최소한으로 줄여나가는 것이 학습의 목적이다. 즉, 비용 함수를 일반적인 용어로 목적 함수라고 하는 이유라고도 할 수 있겠다. 다시 말해, 학습은 최적의 가중치 w(최적값, 최솟값)를 찾아가는 과정. 그러나 전체 그래프의 생김새를 알지 못하기 때문에, 기울기를 이용해서 조금씩 이동할 수밖에 없다. 기울기 = 순간 변화량 위의 그래프를 ..
[딥러닝개론] 신경망 기초 신경망 기초 신경망에서 '층을 쌓는다'는 것 선형회귀 과정을 통해, '이전 층의 특성들의 가중합으로 새로운 특성들을 만들어내는 것'이 층을 쌓는 이유이자 의미라고 할 수 있다. 이 과정을 반복해 여러 층을 쌓고 반복적으로 학습을 진행하면, 처음 입력으로 주어진 특성들의 조합으로부터 생성된 수많은 특징들이 추출(extract)되어 모델이 훨씬 더 상세한 정보를 학습할 수 있게 된다. 은닉층(hidden layer) 신경망에서 입력과 출력을 제외한 층들. 은닉층들을 여러 층으로 깊게(deep) 쌓을 때 주의할 점. 새로 만들어지는 특징들, 즉 노드(node)들이 각각 비선형(non-linear) 변환을 거치지 않는다면 아무리 깊게 층을 쌓더라도 단 하나의 은닉층보다 나은 효과를 내지 못한다. 비선형변환을 해..
[딥러닝개론] 선형회귀 선형회귀 머신러닝 데이터를 통해 학습시킨 모델을 가지고, 새로운 데이터를 예측하는 하나의 문제 해결 방법. 선형회귀(linear regression) 머신러닝이 등장하기 훨씬 전부터 통계학에서 데이터를 활용해 모델을 만들고, 모델을 활용해 새로운 데이터를 예측하는 방법으로 사용된 대표적인 방법. 선형회귀(선을 그어 예측하는 것)의 과정 1. 데이터를 일반화하는 선을 찾는다. 2. 그 선을 이용해 데이터를 예측한다. 집의 가격을 예측하는 모델 만들기 '집의 넓이', '건축연도', '집의 위치', '집의 가격' 이렇게 네 가지의 값을 각각 가지고 있는 1만 개의 집 데이터를 수집. 예측하고자 하는 변수(타겟)을 제외한 나머지 세 변수(타겟을 예측하는 데 사용되는 특징 변수: 특성, feature)를 통해 집..
[딥러닝 개론] 기본 개념 딥러닝 개론, 기본 개념 학습이란? 예측에 대한 답을 채점하고, 오답노트(정답과 예측 답을 비교)를 만들어가면서 발전해 나가는 것. 기계학습(머신러닝)이란? 기계가 데이터에 대해 예측을 진행하고, 레이블(정답)로 채점한 뒤 틀린 문제에 대해 스스로에게 피드백을 진행하는 것. 기계가 스스로 학습하지 못한다면, 문제에 대한 모든 경우의 수를 만족시킬 수 있는 조건을 일일이 지정해주어야 한다. 이를 규칙 기반(rule-based) 방법이라고 한다. 머신러닝의 진행 과정 학습 학습 시험(test): 학습이 잘되었는지 테스트하는 것. 추론: 학습된 모델을 가지고 새로운 데이터를 예측하는 것. 데이터셋(레이블링된 데이터) 학습을 위한 데이터셋(traning data)과 시험을 위한 데이터셋(test data)으로 ..