본문 바로가기

ML-DL

(20)
SSE 방식과 일반 API 호출 방식 확인 방법 1. 브라우저 개발자 도구 [F12] -> Network tab 확인  2. 동작 수행 3. filter 에서 Fetch/XHR 클릭  4. Header -> Request Method , Accept  확인  Method : SSE 방식 = GET / API 방식 = GET or POSTAccept : SSE 방식 = text/event-stream / API 방식 = application/json
wsl2 로 docker 실행하기 쿠버네티스 실험 전 wsl2 로 docker 실행을 하기 위해 아래 작업을 진행했다 사전 필요 작업- docker.desktop 설치- wsl2 설치  1. General > Use the WSL 2 based engine 체크 되어있는지 확인   Resources > WSL integration 1. > Enable integration with my default WSL distro 체크2. > Enable integration with additional distros: > Ubuntu 체크3. Apply & restart docker --version 설치해준 ubuntu 에서 위의 코드로 도커 확인
cmd 로 파일 이동 [윈도우 버전] cmd를 통해 파일 이동시키는 코드는 다음과 같다. C:\Users\user\project_name\project_1\data> scp data.jpg name@ip_address:/home/위치/1. 해당 데이터가 있는 폴더로 이동한 후2. scp data_name name@ip_address:/home/위치명/3. password 기입
Massage passing 1. GNNGNN은 그래프 구조의 데이터를 처리하기 위한 딥러닝 모델이다. 그래프의 노드, 엣지, 속성을 입력으로 받아 노드 혹은 특징 벡터를 학습한다. 기본적으로 메시지 패싱 기법을 사용하여 노드의 정보를 받아 특징 벡터를 업데이트하며 일반적으로 손실 함수를 정의하고 역전파를 통해 학습된다. 2. 그래프 데이터노드와 엣지[노드 간 관계 혹은 상호작용]로 이루어 자료 구조이다. 이 구조는 네트워크 형태의 관계나 연결성을 설명하는데 사용된다.   1) 그래프 예시1. 추천 시스템의 경우노드 : 유저 / 아이템엣지 : 유저와 아이템의 관계 [조회 / 클릭 / 구매 등] 2. sns의 경우노드 : 유저엣지 : 유저의 관계 [팔로우 등] 3. 생물의 경우노드 : 단백질, 유전자 등의 분자엣지 : 단백질 간의 상..
텍스트 생성 모델 평가 지표 [Perplexity, BLEU, ROUGE, METEOR] 생성 모델을 평가하는 지표는 Automatic Evaluation 과 Human Evaluation 으로 나눠지는데 이 페이지에서는 텍스트 생성 모델에 대한 Automatic Evaluation 을 살펴보고자 한다. 1. Perplexity [PPL]언어 모델이 샘플을 얼마나 잘 예측하는지 정량화 하는 모델로, 모델이 예측한 확률의 불확실성을 측정하기 때문에 점수가 낮을수록 모델의 성능이 우수하다고 평가한다. 수식은 아래와 같다.$PPL(W) = P(w_1, w_2, w_3, ..., w_N)^{-frac{1}{N}} = N\sqrt{\frac{1}{P(w_1, w_2, ...,w_N)}}$  2. BLEU [Bilingual Evaluation Understudy]생성된 텍스트와 정답 텍스트 간의 n-..
[개인 프로젝트] S-Walk 논문 모델로 추천 모델 구현해보기 -2 [모델 구현] 1. Input"S-Walk: Accurate and Scalable Session-based Recommendation with Random Walks" 에서 Input x는 사용자의 세션 데이터[시퀀스], 즉 아이템의 순차적 목록이다. 그래서 저번 1편에서 x를 만드는 작업까지 진행했다.  이 중 user_id 한 개를 x로 설정하고 random walks를 진행할 예정이다. 이를 통해 아이템간 연관성을 추출하고 관심사나 패턴을 파악한 후 추천할 아이템을 예측하는 형태이다.  2. 모델 구현먼저 엣지와 가중치를 설정하여 그래프를 구성한다. graph = nx.DiGraph()for session in sessions: for i in range(len(session) - 1): it..
Transformer Model [트랜스포머 모델] 정리 - [3] 이 글은 Transformer 에 대해 직관적으로 이해하고 이해한 바를 잊지 않기 위해 여러 글을 참고하여 작성 / 정리해둔 글입니다.  1. Transformer 의 주요 하이퍼파라미터1) 입력과 출력의 크기 [= 임베딩 크기, Embedding Size]모델이 학습할 단어 표현의 차원을 결정한다.임베딩 크기가 클수록 더 넓은 표현이 가능하지만 모델 복잡도와 메모리 사용량도 함께 증가한다.2) 인코더와 디코더의 층 [= 레이어 수, Num of Layers]층이 많을수록 모델이 복잡한 패턴을 학습할 수 있지만 과적합이 발생할 수 있다.BERT 나 GPT 모델에서는 12, 24, 48 레이어를 사용하는 경우가 많다.3) 어텐션 헤드의 수 [= Num of Attention Heads]멀티헤드 어테션 ㅅ레..
Transformer Model [트랜스포머 모델] 정리 - [2] 이 글은 Transformer 에 대해 직관적으로 이해하고 이해한 바를 잊지 않기 위해 여러 글을 참고하여 작성 / 정리해둔 글입니다. 1. 인코더의 셀프 어텐션 트랜스포머는 하이퍼파라미터인 num_layers 의 수만큼 인코더 층을 쌓는다. 논문에서는 6개의 인코더 층을 사용했다. 인코더를 하나의 층이라는 개념으로 생각한다면, 인코더 한 개의 층은 셀프 어텐션과 피드 포워드 신경망 총 2개의 서브층으로 나눠진다. 위의 그림에서멀티 헤드 셀프 어텐션 = 셀프 어텐션을 병렬적으로 사용포지션 와이즈 피드 포워드 신경망 = 피드 포워드 신경망 을 뜻한다. 2. 포지션-와이즈 피드 포워드 신경망 [Position-wise FFNN]1) 셀프 어텐션더보기어텐션 함수 :1. 주어진 쿼리에 대해 모든 키와 유사도를 ..