[대학원 강의]20240309 AI 프로그래밍 기초

Date:     Updated:

카테고리:

태그:

인공지능과 머신러닝의 차이

인공지능, 딥러닝, 머신러닝은 혼용되고 있지만, 엄연히 다릅니다. 구조적으로는 인공지능이라는 가장 큰 개념에 머신러닝 그 안에 딥러닝이라는 것이 포함되어 있습니다.

인공지능 다이어그램

머신러닝이란?

머신러닝은 컴퓨터가 데이터 속에서 다양한 것들을 학습하고 예측할 수 있도록 하는 인공지능의 한 형태 입니다.

머신러닝의 알고리즘은 일반적으로 데이터를 통해 훈련되고 이러한 훈련이 반복되며 정확도가 올라갑니다. 머신러닝은 간단하게는 텍스트 분류나 요약부터 주식시장 예측 등에서 사용되고 있습니다.

기존의 인공지능은 규칙과 데이터를 입력하면 답을 도출하는 방식입니다. 특정 개체의 규칙을 주고, 특정 개체의 이름을 입력하면, 그것이 무엇인지 도출할 수 있습니다.

강아지와 고양이를 예로 든다면, 둘의 특징은 비슷하기 때문에 강아지의 특징을 넣었을 때, 고양이 라는 답변이 나올 수 있습니다.

하지만 머신러닝은, 데이터와 정답을 입력하면 스스로 그 안의 규칙을 찾아내어 정답을 도출할 수 있습니다. 머신러닝이라는 학문은 명시적으로 코딩되지 않은 동작을 스스로 학습해 수행하는 것이라고 합니다. 수업이 다양한 강아지 사진을 학습하며 그 속에서 스스로 패턴을 찾아내어 정확도를 올리는 것이죠.

이런 머신러닝의 종류에는 지도학습, 비지도학습, 강화학습이 있습니다.

지도학습

입력값과 결과값을 함께 주고 학습을 시키는 방법으로, 과거의 데이터를 기반으로 미래의 이벤트를 예측할 때 유용하게 사용됩니다.

비지도학습

결과값 없이 입력값만 주고 학습시키는 방법으로, 데이터를 탐색하여 내부 구조와 유사한 속성들을 파악하여 분류하기 때문에 분류 기준들의 속성을 파악하는 데 효과적입니다.

강화학습

 결과값이 아닌, 어떤 일을 잘했을 때 보상을 주는 방식으로 어떠한 액션이 최선인지를 학습시키는 방법입니다. 게임, 네비게이션 등에서 활용되며 일정 시간 내에 예상되는 보상을 극대화시킬 수 있는 동작을 선택할 수 있도록 학습시킵니다.  

딥러닝

딥러닝은 머신러닝에 속하는 한 분야로, 인공신경망의 층을 연속적으로 깊게 쌓아올려 데이터를 학습하는 방식을 뜻합니다.

이름이 딥러닝인 이유도 층을 쌓아올렸기 때문이라고 합니다.

딥러닝

딥러닝은 머신러닝의 유형으로 나뉘었던, 지도학습, 비지도학습, 강화학습에 모두 이용이 가능합니다.

뉴런이 신경계 속에서 복잡한 구조로 얽혀 거대한 망을 구성하는 것처럼, 머신러닝 과학자들은 이 신경망의 구조에서 착안하여 인공 신경망이라는 개념을 만들어 냈습니다. ㅋㅋㅋ 참 변태스럽네요.

머신러닝이 학습에 필요한 데이터들을 수동으로 제공해야 하는 것과는 다르게, 딥러닝은 분류에 사용할 데이터를 스스로 학습할 수 있습니다. 딥페이크, 이미지 또는 영상 복원, LLM, 자율주행 자동차 등의 곳에서 활용할 수 있습니다.

요즘의 딥러닝은 특성추출을 하고, 미래까지 예측 해버릴 정도로 많이 발전했다고 합니다.

슈퍼바이저 러닝 / 언슈퍼바이저 러닝

슈퍼바이저 superviser일을 감독하는 사람을 뜻합니다.

즉, 간단하게 슈퍼바이저 러닝은 사람이 개입해서 옳고 그른 것을 미리 설명해주는 것을 말합니다.

반대로 언슈퍼바이저 러닝은 사람이 개입하지 않고, 소프트웨어가 주어진 정보에서 특징이나 패턴을 찾아나가는 것을 뜻합니다.

배치 사이즈(Batch Size)와 에폭(Epoch)

배치사이즈(Batch size)

배치사이즈란, 한 번에 모델이 학습하는 데이터 샘플의 개수를 의미합니다. 학습 데이터셋이 매우 클 경우, 전체 데이터셋을 한 번에 모델에 넣어 학습하는 것은 메모리와 게산적인 측면에서 불가능할 수 있습니다. 이러한 경우, 데이터셋을 작은 단위로 나누어 모델에 입력하게 되는데, 이때 단위를 배치라고 합니다.

예를 들어, 1000개의 학습 데이터가 있다고 합시다.
배치 사이즈가 100이라면 전체 데이터셋을 10개의 배치로 나누어 모델에 입력하게 됩니다.
각 배치는 100개의 데이터 샘플을 포함하므로, 모델은 100개의 데이터 샘플을 처리한 후에 가중치를 업데이트 합니다.

에폭(Epoch)

에폭(Epoch)이란, 전체 학습 데이터셋을 모델이 한번 학습하는 것을 의미합니다. 따라서 1에폭은 전체 데이터셋을 한번 사용하여 학습한 것입니다.

예를들어, 1000개의 학습 데이터가 있고 배치사이즈가 100 이라면, 1에폭은 10개의 배치를 처리한 후에 완료됩니다. 또한 이러한 가정에서 10에폭은 10번 돌았으니까 10000개의 데이터를 학습한 것이 됩니다.

Collage 카테고리 내 다른 글 보러가기

댓글 남기기