학부 과정에서 배웠던 내용을 전체적으로 정리할 수 있어서 너무 좋은 수업이었다..
새삼 갓영준.. 교수님이 가르쳐주신거 다 나옴
기억이 새록새록이다 .. 🙂↕️
기존 프로그래밍 방식
{input & 프로그램} ⇒ 컴퓨터 ⇒ output
머신러닝
{input&output} ⇒ 알고리즘 ⇒ model(프로그램)
: data driven method
모델의 목적 : 일반화된 프로그램을 만드는 것
model
와 값의 저장, input 값에 대해 output 값이 정확히 나오도록 와 값을 찾아나가는 과정
파라미터( 와 )를 어떻게 조절해야, 우리가 output이라고 하는 값과 가장 가까운 값이 나올 것인가
Loss function : 예측값과 실제값과의 차이
차이가 너무 많이 나면 ⇒ 다시 돌려보내서 최적화를 통해 업데이트
이 과정을 반복하면서, 그 차이가 가장 적게 나는 순간을 찾아내는 것이 ⇒ training
Supervised learning
답이 있는 것 (레이블이 있는 데이터를 쓴다)
Unsupervised learning
레이블이 없는 데이터를 쓴다 (특징을 가지고 나눠준다고 생각하면 된다)
Reinforcement learning
환경 값을 제공하고, 정답을 반환할 때 보상을 줌 (reward)
→ reward가 최대가 되는 길이 최적의 길이 되는 것
주요 용어
parameter
hyper-parameter
예를 들어, 10000개 데이터가 있다고 할 때
batch size = 1000
10번 돌아가서 → 전체 10000개가 한번 돌면 ⇒ epoch 1
딥러닝 안에, generative AI가 있다
파이프라인
1. 데이터 처리
- 수집 + 정제
2. 훈련
3. 평가
4. 추론
AI/ML을 위한 AWS 인프라 정리
(이부분 ppt를 저작권 때문에 가져올 수가 없어서 글로 설명하고자 한다.)
AWS에서는 다양한 AI/ML 서비스를 단계별로 제공한다. 상위에는 Bedrock, Amazon Q와 같은 생성형 AI 서비스가 있고, 그 아래로 Personalize, Forecast, Lex, Rekognition 등 다양한 비즈니스 도메인에 특화된 AI 서비스들이 있다.
모델 개발은 SageMaker를 중심으로 구성되며, Jumpstart, Canvas, Studio IDE, Ground Truth 등을 통해 손쉽게 모델을 만들고 학습부터 배포까지 가능하다.
가장 하단에는 ML 프레임워크 및 인프라 계층이 있는데
GPU가 포함된 EC2 인스턴스
PyTorch, TensorFlow 등의 프레임워크
그리고 AWS 자체 칩인 Trainium(학습용), Inferentia(추론용) 도 함께 제공되어 모델 성능과 비용 최적화를 지원한다.
머신러닝과 전체 흐름은 동일하나, feature engineering과 algorithm 에서 두번의 정확도 하락이 발생하니까 이 부분을 한번만 일어나게 합쳐주는 알고리즘으로 깊어진 것이다.
Feature engineering
라는 input 값들이 잘 나누어지게, 알고리즘에 넣기 전에 정리해주는 부분
selection
차원 축소 (변경)
+
algorithm (ML)
이 두가지를 한번에 처리하는 알고리즘이 생겨났다 ⇒ 인공신경망
algorithm (DL)
model
← 활성함수 (activation function)
Activation Function
🧠 인간 :
뉴런 하나가 다른 뉴런 하나로 넘어갈 때 모든 신호를 넘겨주면, 신호가 너무 복잡해져서,
특정 임계값을 넘기는 뉴런만을 살린다
한 레이어 → 다른 레이어로 값을 넘겨줄 때 활성함수를 사용
(레이어마다 activation function을 적용해주는 것이다.)
수식으로 따져서, 계속 값을 넘기고 넘기하면, 어차피 x가 하나인 1차함수로 볼 수 있다.
그래서 우리가 보고자 하는 꼬아진, 복잡한 함수를 볼 수가 없게 된다.
그래서 특정 함수의 값에 넣어서 선형함수를 비선형 함수로 만든다. 좀 더 함수를 복잡하게 만들어주는 것이다.
sigmoid
tanh
⇒ 이 두가지는 (0,1) or (-1,1)에 도달했을 때 → 기울기가 0으로 되면서 값이 없어지는 기울기 소실 문제가 있음
Relu (속도가 빠르다)
⇒ 0 밑으로 값을 날리는 것을 보완한 것이 Leacky Relu
Leaky Relu
Loss function
optimization 최적화

ANN
과거에는 hidden layer가 하나만 있었다.
지금은 그 은닉층이 많아지고 깊어지면서 → DNN
순전파
우리가 원래 하듯이, 앞에서부터 가중치와 특징을 곱하고 더해가면서 output을 낸다
역전파
output과 실제값의 차이(오차)에 대해서 미분을 하면서 어느부분이 영향을 많이 미쳤는가를 확인하면서 가중치 없데이트를 실행
(순전파 한번 + 역전파 한번) 이게 1 epoch
CNN (Convolution Neural Network)
filter
이미지의 주요 특징이 잘 살아나, 구분할 수 있도록 하는 하는 filter(숫자값)를 만들어줘야 한다.
그 filter를 찾아나가는 과정을 CNN이라고 생각하면 된다.
NLP의 흐름 (NLP : NLU + NLG)
RNN

앞에 계산했던 가중치도 뒤의 계산에서 참조해서 뒤의 출력을 계산 (이걸 쭉쭉.. 연결)
ex. 기계 번역 시 나는 강아지를 좋아합니다.
나를 계산할 때 나오는 걸 출력도 하고, 뒷 계산에 넘기는 것
Seq2Seq
문제점 : 시퀀스가 길어지면, 앞의 내용이 누락되는 문제가 발생함
Attention
문제점 : 생성형 AI 시대에서는 너무 텍스트가 길어지니까 계산 시간이 너무 길어지는 문제가 발생
Transformer
기능
데이터 처리 (기능 일부)
모델 개발
훈련
배포
domain
우리가 작업을 할 공간을 생성 : 도메인 생성
도메인 하나에 디폴트로 EC2가 최소 두개가 뜨기 때문에 비용이 자동으로 나감
data wrangler로 데이터 준비 및 정리
data wrangler와 관련해서는 따로 정리해놓은 실습 글을 확인하면 좋을 것 같다훈련
ECR에 자주 사용되는 알고리즘이 들어가 있으므로, 그 내에서 사용하고자 하는 알고리즘을 가져와서 정의만 해주면 사용할 수 있다. (esimator 지정)
직접 코딩
물론, tensorFlow 나 pytorch로 알고리즘 짜서 사용해도 된다 (python 형식)
BYOC
내가 이미지를 만들어 놓았다면, ECR에 이미지 올리고 불러와서 사용할 수도 있다.
학습 fit
배포 deploy
추론 predictor
Amazon Sagemaker canvas
지도 학습에 대부분 맞춰서 돌릴 수 있다
이미 있는 모델 가져와서 한다?
❓ studio랑 어떻게 다름..?
- studio는 완전히 처음부터 코딩을 할 수 있는 환경
- canvas는 aws가 가지고 있는 알고리즘 중에 가져와서 모델을 알아서 만들어주는 환경
정의 :
문제점:
이를 해결하기 위하여, 생성형 AI를 foundation model로 깔고 customizing 한다
커스터마이징 방법
prompt engineering
: 내가 원하는게 뭔지 정확하게 입력해줘야 한다.
RAG
Agentic AI
Fine-tuning
모델 직접 설계
2, 3번은 모델을 바꾸지 않고, 무언가를 연결하는 것
4, 5번은 모델에 무언가를 바꾸는 것
prompt engineering
RAG

우리 문서를 chunk 단위로 DB에 저장, 저장하기 전에 자연어로 넣으면 컴퓨터는 이해하지 못하기 때문에 자연어를 숫자로 바꾸는 embedding 변환 과정이 필요하다.
그래서 RAG가 잘 작동하려면, embedding 모델이 무엇을 사용하느냐가 매우매우 중요하다.
사용자 요청시,
R : 가장 처음! 우리의 벡터 DB로 가서 질문과 가장 가까운 값을 가지는 값이 있는 chunk를 가져온다
A : 다음, 받은 chunk를 foundation 모델에 준다. 그 모델은 원래 알고 있는 데이터에 그 데이터가 붙는다
G : 마지막에 이제 답변을 생성
하지만, 모델이 너무 많이 붙으니까 정확도가 떨어지게 된다
그래서 나온 것이 advanced rag
advanced rag
chunking
retrieval
Agentic AI
수업을 들으면서, 요즘 가장 유행하는 기술을 무엇인지를 다시 한 번 업데이트할 수 있어서 좋았다. 그리고 지금까지 내가 배워온 이론들이 어떤 흐름으로 적용되는 건지 한 번 더 복습할 수 있는 시간이었다. 덕분에 한층 더 단단히 기본이 다져진 것 같다! 💪
그리고 강사님께서 생성해주신 bedrock을 이용한 rag 챗봇 만들기 워크샵 실습을 진행했다. 아마존 서비스 내에서 손쉽게 클로드를 연결하고, 우리가 가진 문서를 s3 버킷에 업로드하고 그 둘을 연결해 streamlit으로 사용해보는 실습이었다. (그동안은 api 끌고오고.. 이랬는데 그냥 ui 클릭 클릭만으로 만들어지는게 신기하고 편리했다)
이론뿐만이 아니라, 진짜 실무에서 바로 실행할 수 있는 부분이라는 생각이 들어서 열심히 따라갔던 것 같다 ❤️🩹