본문 바로가기

728x90

AI

(12)
# 24.10.16_ 아키텍처 설계 사례 분석 : Netfilx 아키텍처 설계 사례 분석 : Netflix 넷플릭스 시스템 디자인 배너Netflix 시스템기능적 요구 사항사용자는 계정을 만들고 로그인하고 로그아웃할 수 있어야 함사용자를 위한 구독 관리사용자가 비디오를 재생하고 일시 정지, 재생, 되감기, 빨리 감기 기능을 사용할 수 있도록 함오프라인에서 볼 수 있도록 콘텐츠를 다운로드할 수 있는 기능사용자 선호도와 시청 기록에 따른 개인화된 콘텐츠 추천비기능적 요구 사항콘텐츠 재생 중 지연 시간이 짧고 반응성이 높아야 함많은 수의 동시 사용자를 처리할 수 있는 확장성 요구최소한의 다운타임으로 높은 가용성을 보장해야 함안전한 사용자 인증 및 권한 부여쉬운 탐색을 위한 직관적인 사용자 인터페이스Netflix 시스템 설계의 상위 수준 설계[고수준 시스템 아키텍처]기반 클라..
# 24.10.15_ ollama 로컬에서 사용 해당 글은 window에서 ollama를 사용해 보려고 하다가 오류를 반복한 끝에 실행하는 방법을 정리해서 작성한 것이다. (더 좋은 방법이 존재할 수 있음), 단편적으로 다른 글들을 보고 따라하다가는 오류가 많이 발생할 수 있으니 주위!오류 발생을 격다가 오류 계속 발생할꺼 같으니 가상환경 만들어서 하자해서 가상환경을 별도로 만들어서 진행window에서 ollama 사용ollama 홈페이지에서 window 버전 다운다운 후 실행하면 자동 실행됨(다음날 사용시 다시 실행시켜주어야함) 해당 이미지처럼 모델 부분 클릭위 이미지에 명령어를 cmd창에 입력자동으로 run llama3.2버전이 실행됨 위와같이 자동으로 잡아줘서 동작하고 내가 원하는 커멘드를 집어 넣으면 해당 내용에 대한 답변을 진행해줌이후 아래 ..
# 24.10.15_ 사전학습 모델 + GPT + BERT모델 사전 학습 모델 (Pre-trained Model)사전 학습이란자비어 방법 등을 통해 임의의 값으로 초기화하던 모델의 가중치들을 다른 문제에 학습시킨 가중치들로 초기화하는 방법텍스트 유사도 예측 모델을 만들기 전 감정 분석 문제를 학습한 모델의 가중치를 활용해 텍스트 유사도 모델의 가 중치로 활용하는 방법 → 즉, 감정 분석 문제를 학습하면서 얻은 언어에 대한 이해를 학습한 후 그 정보를 유사도 문제를 학습하는 데 활 용하는 방식사전 학습 모델사전 학습을 통해 학습이 완료된 가중치가 저장되어 있는 모델하위 문제 : 사전 학습한 가중치를 활용해 학습하고자 하는 본 문제상위문제 : 사전 학습한 모델인 감정 분석 문제 (하위 문제를 하기 위해 사전에 해야하는 문제)하위 문제: 사전 학습된 가중치를 활용해 본격..
# 24.10.14_ Attention 모델 실습 + Transformer 아키텍처 정리 및 실습 Transformer 아키텍처트랜스포머란?2017 구글이 제안한 Sequence-to-Sequence 모델의 하나Attention is all you need라는 논문에서 제안된 모델기존의 seq2seq 구조인 Encoder-Decoder 방식을 따르면서도 논문 제목처럼 Attention 만으로 구현한 모델임RNN 모델을 사용하지 않고 Encoder-Decoder를 설계 했음에도 번역 등 성능에서 더 우수한 성능 보임기존 seq2seq 모델 한계기존의 seq2seq 모델은 인코더-디코더 구조로 구성인코더는 입력 시퀀스를 하나의 벡터 표현으로 압축하고, 디코더는 이 벡터 표현을 통해서 출력 시퀀스를 만들어 냄 → 이러한 구조는인코더가 입력 시퀀스를 하나의 벡터(고정길이)로 압축하는 과정에서입력 시퀀스의 정..
# 24.10.11_언어모델의 이해 + Seq2Seq모델 + Attention 모델 언어모델이란?문장의 확률을 나타내는 모델문장은 단어들로 이루어진 시퀀셜 데이터이다.언어모델이란 단어 시퀀스에 확률을 부여하는 모델로, 단어 시퀀스를 입력받아서 해당 시퀀스가 얼마나 그럴듯한지 확률을 출력하는 것한국어 말뭉치로 학습된 언어모델은 자연스러운 한국어 문장에 높은 확률값을 부여한다(한국어 모델이 필요한 이유)자연스러운 표현 = 가장 많이 사용된 표현 = 카운트 값이 가장 높은것 = 확률이 가장 높은것 (확률을 부여하는 것이 언어모델로서의 기능이 높다)문장을 구성하는 단어의 조합은 매우 다양하지만 우리가 자연스럽게 받아들이는 조합은 동등한 확률보다는 평소에 자주 사용되는 단어나 표현의 조합이 훨씬 높은 확률로 발생한다.인간과 같은 능력의 언어 모델을 만들기 위해다양한 경로로 문장을 수집하고, 단어..
# 24.10.10_CBOW 임베딩 실습 + Skip-gram 임베딩 CBOW 임베딩CBOW 모델은 활성화 함수를 사용하지 않는 간단한 구성의 신경망 모델이다.다중 분류 작업으로, 단어 텍스트를 스캔하여 단어의 문맥 윈도우를 만든 후, 문맥 윈도우에서 중앙의 단어를 제거하고, 문맥 윈도우를 사용해 누락된 단어를 예측한다. 이를 통해서 단어의 의미를 벡터 공간에 효율적으로 표현할 수 있게 된다.CBOW 모델의 특징단순한 신경망 모델: CBOW 모델은 입력층과 출력층 사이에 하나의 은닉층만을 가지고 있으며, 활성화 함수 없이 선형 계산을 통해 단어 임베딩을 학습. 이는 매우 간단한 구조의 신경망으로 볼 수 있다.다중 분류 문제로 구성: CBOW 모델은 주변 단어들을 입력으로 받아, 중심 단어를 예측하는 다중 분류 작업을 수행. 예를 들어, 문장 "The quick brown ..
# 24.10.08_전처리:단어의 표현 + 임베딩 임베딩단어나 문장을 수치화 하여 벡터공간으로 표현하는 과정컴퓨터는 자연어를 직접적으로 처리할 수 없다컴퓨터는 수치 연산만 가능하다따라서 자연어를 숫자나 벡터 형태로 변환할 필요가 있다이때 사용되는 일련의 과정을 “임베딩”이라고 한다임베딩된 결과는 딥러닝 모델의 입력값으로 사용된다.임베딩 기법 종류문장 임베딩문장 전체를 벡터로 표현하는 방법전체 문장 흐름을 파악해 벡터로 변환(통으로) → 문맥적 의미를 지님단어 임베딩에 비해 품질이 좋음, 상용 시스템중 품질이 좋아야하거나 번역이 좋아야하는 경우 사용학습을 위한 수 많은 문장 데이터가 필요하며 학습 비용이 매우 높다.단어 임베딩개별 단어를 벡터로 표현하는 방법동음어 구분 하지 않음 → 의미가 달라도 단어의 형태가 같으면 동일한 벡터값을 가짐(단점)문장 임베..
# 24.10.07_자연어 처리 개요 + 전처리: 토큰화 자연어 처리 기술현재 일반적인 AI기술은 하나의 개체(인간)이 가지는 생물학적/기계적인 기능을 흉내 낸 것언어의 등장인간은 사회적인 동물 이다.인간은 크고 작은 사회, 조직 안에서 지식과 지혜를 세대를 거쳐가며 누적 시킴으로 문명을 이루며 본능과 다른 지성을 성립시켜 옴이 과정에서 사람 사이의 소통이 요구됨이 커뮤니케이션을 위해 발생한 언어, 즉 자연어(Natural Language)자연어의 발생인간이 스스로의 지식을 구조화 할 수 있게 진화 시킴인간의 사고 행위는 언어(자연어)로 구성됨언어의 발생 의의인간의 진화는 매우 더디게 진화 -> 언어의 발생과 함께 폭발적 진화언어 발생 이전 사고 -> 단순한 동물이 보이는 기계적 반응에 그침언어 사용 -> 지식 구조화 성립, 현대적인 의사소통 능력 발생인간의 ..
# 24.10.04_Yolo+RNN +LSTM 기본 이해 YOLO(You Only Look Once) 개요CNN 모델의 개선 노력CNN과 R-CNN(Regions with CNN)CNN은 너무 많은 연산을 요함으로 매우 처리 속도가 느림CNN 처리 이전에 인식하기 원하는 물체가 있을 가능성이 높은 후보 영역(적은 범위 영역)을 선택해 선택 영역에만 CNN을 적용해 성능 향상 효과를 보겠다는 것R-CNN 프로세스이미지 입력후보 영역 추출딥러닝 영역이 아닌 데이터 정규화 영역에 가까움(CNN 내부의 LCN과 비슷한 개념)후보영역 추출방법의 개선으로 Fast-RCNN/Faster-RCNN 모델 등장함CNN 특징 계산영역 분류성능비교CNN Faster-RCNNR-CNN 계열이 느린 이유제안하는 후보 영역의 수가 너무 많음후보 영역의 제안 과정에서의 부하가 큼경계박스를..
# 24.10.02_CNN모델의 이해 CNN모델의 이해CNN (Convolutional Neural Network) 모델최근의 영상 인식, 처리 분야에 있어서 가장 기본이 되는 모델눈과 뇌에서 처리되는 신경과학적 시각처리 방식에서 고안한 모델신경망 동작을 처리하기 위하여 합성곱 연산을 이용함합성곱: 두 개의 함수가 있을 때, 둘 중에서 하나의 함수를 반전, 이동(전이)시킨 후, 두 함수를 곱한(결합한) 결과 를 적분하여 그 파형(그래프)을 얻는 연산 방법CNN 모델에서는 합성곱 연산을 기반으로 각 영역(픽셀)이 서로 얼마나 일치하는지 계산하여 그 계산 결과를 활용함Convolution (합성곱)합성곱 신경망에서는 “하나의 함수가 다른 함수와 얼마나 일치하는가?”의 의미로 사용하나의 필터(커널)에 대하여 이미지의 각 부분들이 필터와 얼마나 일..
# 24.10.01_PyTorch+TensorFlow학습 PyTorch 학습PyTorch 프레임워크를 이용해 머신러닝 및 딥러닝 모델을 구현PyTorch 기본 설정 및 텐서 연산: 텐서(tensor)의 생성, 크기 변환, 연산 등 PyTorch의 기본적인 텐서 조작 방법을 다룸.신경망 모델 구축: torch.nn 모듈을 사용하여 간단한 신경망 모델을 구현하고, 다양한 층(layer)을 쌓는 방법을 설명함.데이터셋 및 데이터 로더 사용: torch.utils.data.Dataset과 torch.utils.data.DataLoader를 사용해 데이터셋을 로드하고 전처리하는 방법을 다룸.손실 함수와 옵티마이저 설정: torch.optim 모듈을 이용해 손실 함수와 옵티마이저를 설정하고, 모델 학습 과정을 구현함.모델 학습 및 평가: 학습 루프를 작성하여 모델을 훈련..
# 24.09.30_AI(인공지능) 개요 + 딥러닝 개요 AI란 무엇인가?인공지능이란? 무엇인가? 인공지능이란?다양한 기술을 이용해 사람이 하는 일을 흉내 내어 처리할 수 있는 시스템다양한 기술 : 기계, 전자, 컴퓨터 등 공학기술, 예술로 표현할 수 있는 창의성(목표)인간의 지능에 대해 명확하게 밝혀지거나 정의되지 않음인공지능의 구현 방향은 지능적인 것으로 보이는 것을 흉내 내어 보자 (인간을 흉내 내자로 귀결됨)인간을 흉내내기 위한 방향성기계적인 부분을 흉내내자그 외의 부분들도 최대한 흉내 내보자인간의 지능적(으로 보이는) 영역기계적인 영역 : 5감과 운동시각 : Computer Vision -> 영상 인식, 분류, 영역구분 등 (사람의 인식 성공률 95%, AI : 98%)청각 / 발성 -> Audio 처리 기술 -> AI Speaker 등촉각, 후각, ..

728x90