학습주제
- Gen AI란?
- ChatGPT 발전 살펴보기
- Gen AI 적용 케이스
- 실습 : Gen AI를 활용한 업무 자동화
주요 메모 사항 소개
- 딥러닝 ⊂ 머신러닝 ⊂ 인공지능
- Gen AI
- 학습된 컨텐츠 바탕으로 새로운 컨텐츠를 만드는 딥러닝 기술 (ex : GPT)
- 프롬프트를 바탕으로 대답을 예측하던지 새로운 컨텐츠를 생성 - 딥러닝과 Gen AI와 LLM의 관계
- LLM ⊂ Gen AI ⊂ 딥러닝
- 딥러닝은 인공신경망을 사용해서 기존 머신러닝 알고리즘이 처리못하는 복잡한 패턴을 처리 가능하다. - 딥러닝의 모델 타입
- Discriminative
- 분류 / 예측을 하는 것이다.
- 피처들과 레이블들간의 관계를 학습 - Generative
- 훈련된 데이터와 비슷하지만 새로운 데이터를 생성
- 훈련된 데이터의 통계적 특성을 이해한다
- 비지도 학습에 해
- Discriminative
- Gen AI 모델과 일반 ML 모델의 동작방식
- 일반 ML 모델에서 y = 숫자, 카테고리, 확률, ...
- Gen AI 모델에서 y = 자연어 문장, 이미지, 오디오, ...
y = f (X)
출력 모델(입력) - Gen AI의 파운데이션 모델
- 1. 광범위한 데이터 세트에 대해 학습된 대규모 머신 러닝 모델의 한 유형
- 이미 일반적인 지식이 학습되어 있다 (Pre-trained)
- Unsupervised Learning (or Self Supervised Learning)
- 대용량 데이터로 학습하기에 엄청난 시간과 돈, 인력이 필요하다
- 트랜스포머 아키텍처를 사용한다 (Attention is AII You Need)
2. 특별한 학습 없이 다양한 작업에 적용 가능 ( "파운데이션"이라 불리는 이유)
- GPT-3, GPT-4, BERT, T5, DALL-E, ...
- 1. 광범위한 데이터 세트에 대해 학습된 대규모 머신 러닝 모델의 한 유형
- 파운데이션 모델을 파인튜닝(Fine-Tuning)의 형태로 특정 지식을 학습
- Gen AI 모델들
- Generative Language Models
- 훈련 데이터로 제공된 문장들로부터 언어 패턴을 학습한 모델이다.
- 문자의 일부를 입력으로받으면 다음단어를 예측한다. - Generative Image models
- 프롬프트를 입력으로 받아서 이미지 생성한다.
- 이미지를 입력으로 받아 여기에 특정 노이즈를 추가하여 이미지를 반환한다.
- Generative Language Models
- Gen AI 모델의 헛소리 / 환각 (Hallucination)
- 모델이 부정확하거나, 무의미하거나, 완전히 조작된 정보를 생성하는 경우가 있기에 사실확인이 항상 필요하다.
- 훈련 데이터의 불충분, 최신성 부족, 품질 이슈, 모델에게 충분한 컨텍스트가 주어지지않을시 발생확률이 높다. - 파인 튜닝 (Fine Tuning)
- 이미 만들어진 모델 (Pre-trained Model) 위에 새로운 레이어를 얹히고 다른 용도의 데이터로 훈련하는 것
- GPT는 이를 API로 지원한다. - 멀티모달 파운데이션 모델
- Gen AI 사용시 주의점
- 시험이나 숙제 부정행위를 위해 사용하지 않기
- AI가 말하는 모든 것을 액면 그대로 받아 들이지 않기
- AI를 사용하여 다른 아티스트의 작품을 표절하지 않기 (저작권 침해) - GPT의 발전
- GRT(Generative Pre-trained Transformer)
- OpenAI에서 만든 초거대 언어 모델 이며 훈련과 예측에 전용 하드웨어를 사용한다.(Large Language Mode) - GPT 3
- 175B 파라미터 = 800GB (훈련 비용 $4.6M)
- Context Window 크기 2,048 + 1
- 12,288개의 워드벡터 사용 - GPT 4 (2023.3)
- 1T 파라미터
- Context Window zmrl 8,192+1
- 32,768개의 워드백터 사용
- Multi-modal (이미지 인식)
- charGPT 플러그인 기능 추가 - GPT 4 Turbo
- Context Window 128K (대략 300 pages)
- API 기능 개선 (JSON 모드, 시드 제어, 다수 함수 동시 호출)
- RAG 기능 제공 (외부 문서나 데이터베이스를 가져올 수 있음)
- 2023년 4월 정보 업데이트
- GRT(Generative Pre-trained Transformer)
- GPT 사용 팁
- 문장을 [Role], [Task], [Format], [Tone] [Objective], [Restriction] 순으로 구성하면 효과적입니다.
- 단계별로 생각하고 알려달라고 하기 & 칭찬 많이하기 - 유료로 판매하는 API들 입니다. 새로운 시장이 되고 있습니다.
- https://platform.openai.com/docs/overview
- 적용 케이스들을 알아 보겠습니다.
- Quizlet
- ChatGPT로 구축된 Q-chat이라는 AI 개인 튜터
- 다양한 토픽에 대해 일대일 채팅을 통한 학습 기능 - Duolingo
- Roleplay : AI 대화 파트너
- Explain my Answer : 실수할 때 문법 규칙을 세분화하여 설명 - Morgan Stanly
- 내부 직원용 챗봇으로 PDF등의 다양한 포맷으로 구성된 데이터 검색 수행한다. - Viable
- 자연언어 데이터 분석 - Buzzfeed
- 즉석 퀴즈 콘텐츠 생성 및 레시피 추천
- ChatGPT Code Interpreter를 사용한 데이터 분석을 해보겠습니다.
https://www.kaggle.com/datasets/tklimonova/gapminder-datacamp-2007
Gapminder World
Dataset from Gapminder World website from 1952 to 2007.
www.kaggle.com
위쪽 데이터를 가지고 한번 해보겠습니다.
- GPT 4 를 구매하여 사용하신다면 클립 모양을 눌러 .scv 파일을 찾아 넣으시거나 드래그 앤 드랍하여 인식합니다.
- 이후 질문을 하시면 그래프를 보여 줄 것입니다. - 저는 GPT 3.5를 사용하여 한번 해보겠습니다.
1. .csv 파일을 켜서 칼럼의 개수와 해당하는 이름을 GPT에게 입력해 줍니다 (여기서는 6개)
2. 이후 칼럼에 해당하는 Row들을 긁어서 하나하나 입력해 줍니다
3. 원하는 질문을 해줍니다 저는 "평균수명에 영향을 주는 가장 큰 변수가 무엇인지 상관관계 분석을 해주고 그래프도 그리는 코드를 출력해줘" 라고했습니다 (포인트는 코드를 알려달라 해야합니다)
4. 이후 jupyter notebook 을 이용해 파이썬 코드를 붙여넣기하면 그래프를 그려줍니다.
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# 데이터 로드
# 여기서는 데이터의 형식과 변수들의 이름을 가정하고 코드를 작성하였습니다. 실제 데이터와 변수에 따라 코드를 수정해주세요.
data = pd.read_csv('your_data.csv')
# 상관관계 분석
correlation_matrix = data.corr()
# 상관관계 히트맵
plt.figure(figsize=(10, 8))
sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm', fmt=".2f")
plt.title('Correlation Heatmap')
plt.show()
# 산점도 행렬
sns.pairplot(data, vars=['Age', 'BMI', 'BloodPressure', 'SmokingStatus', 'PhysicalActivity'], hue='LifeExpectancy')
plt.suptitle('Pairplot of Variables')
plt.show()
# 상자그림 (Box Plot) - 범주형 변수와 수치형 변수 간 관계 시각화
plt.figure(figsize=(12, 8))
sns.boxplot(x='SmokingStatus', y='LifeExpectancy', data=data)
plt.title('Box Plot of Life Expectancy by Smoking Status')
plt.show()
여기서 your_data.csv 파일을 가지고 있는 파일 이름으로 바꿔야 작동합니다
저는 이런 코드가 나와서 붙여넣기 하려했지만 현재 cmd에서 jupyter install에 오류가 생겨 씨름중입니다.
이후 그래프를 그리면 추가로 업데이트 하겠습니다.

공부하며 어려웠던 내용
- jupyter note를 정말 쓰고싶어 몇 시간째 환경변수랑, python, vscode PATH 뒤적이고 있어서 어렵습니다.. 꼭 성공해서 그래프를 올리고 싶네요
반응형
'데이터분석' 카테고리의 다른 글
6. 공공데이터 포털 소개 (0) | 2023.11.27 |
---|---|
5. 개인정보 보호 (2) | 2023.11.24 |
3. 머신러닝 기초 (1) | 2023.11.22 |
2. 지표(KPI) (4) | 2023.11.21 |
1. 데이터란? (0) | 2023.11.20 |