딥러닝
-
Few-shot Learning Few-shot Learning은 매우 적은 양의 dataset으로 이루어진 support set을 기반으로 query를 분류 및 예측하는 것이다. Few-shot Learning은 n-way k-shot learning이라고도 부른다. (n은 Support set의 class의 개수, k는 support set의 각 class 당 갖고 있는 데이터 개수) Support set은 Query를 분류할 때 사용되는 데이터셋으로, 모델이 test 시에 사용되는 데이터셋이다. 위 그림은 3-way-2-shots classification task이다. "3-way"는 3 classes를 의미하고 "2-shots"는 2 example per class를 의미한다. 대부분의 few-..
Prototypcial Networks for Few-shot LearningFew-shot Learning Few-shot Learning은 매우 적은 양의 dataset으로 이루어진 support set을 기반으로 query를 분류 및 예측하는 것이다. Few-shot Learning은 n-way k-shot learning이라고도 부른다. (n은 Support set의 class의 개수, k는 support set의 각 class 당 갖고 있는 데이터 개수) Support set은 Query를 분류할 때 사용되는 데이터셋으로, 모델이 test 시에 사용되는 데이터셋이다. 위 그림은 3-way-2-shots classification task이다. "3-way"는 3 classes를 의미하고 "2-shots"는 2 example per class를 의미한다. 대부분의 few-..
2023.06.22 -
네이쳐 article을 읽고 정리 Main 의사들은 환자 병력 정보, 영상 검사 결과 등 다양한 기록들을 보고 궁극적으로 note에 문서화하게 된다. EHR 같은 정형화된 데이터는 데이터 프로세싱이 어렵고 학습을 해도 실제로 사용할만한 결과를 얻기 어렵다. (last mile problem) LLM은 자연어에 대해 독해와 해석에 있어서 영향력있는 결과를 얻을 수 있는 정도까지의 발전이 이루어졌다. ⇒ 본 article을 작성한 저자들은 LLM이 의사가 작성한 note를 읽음을 통해 광범위한 임상 및 운영 업무 전반에 걸쳐 의사 결정을 지원할 수 있을 것이라고 바라보았다. 저자들은 note들과 electronic order이 중심이 되는 clinical 워크 플로우와 실시간으로 통합될 수 있는 LLM 기반..
Health system-scale language models are all-purpose prediction engines네이쳐 article을 읽고 정리 Main 의사들은 환자 병력 정보, 영상 검사 결과 등 다양한 기록들을 보고 궁극적으로 note에 문서화하게 된다. EHR 같은 정형화된 데이터는 데이터 프로세싱이 어렵고 학습을 해도 실제로 사용할만한 결과를 얻기 어렵다. (last mile problem) LLM은 자연어에 대해 독해와 해석에 있어서 영향력있는 결과를 얻을 수 있는 정도까지의 발전이 이루어졌다. ⇒ 본 article을 작성한 저자들은 LLM이 의사가 작성한 note를 읽음을 통해 광범위한 임상 및 운영 업무 전반에 걸쳐 의사 결정을 지원할 수 있을 것이라고 바라보았다. 저자들은 note들과 electronic order이 중심이 되는 clinical 워크 플로우와 실시간으로 통합될 수 있는 LLM 기반..
2023.06.11 -
Inductive bias for Image Modality Biomedical 분야에서는 이미지 deep learning 연구가 활발하게 이루어지고 있다. 하나의 이미지는 3차원 (C, H, W)으로 구성되어 있다. 이미지는 0-255의 값으로 구성되어 있다. 보통 255로 나누어 Min-max Normalize 하거나 Normal Distribution 기반으로 normalization한다. CNN은 local 한 feature를 잘 잡는다는 Inductive bias를 갖고 있다. CNN layer의 특징은 weight sharing을 한다는 것인데, 그렇기 때문에 아래에 있는 3이라는 글자를 보면, 3이라는 글씨에는 꺾이는 부분이 있고 이런 꺾임 현상이 여러 곳에서 나타난다. 이렇게 꺾인 곳(반복..
CNN for Biomedical ImageInductive bias for Image Modality Biomedical 분야에서는 이미지 deep learning 연구가 활발하게 이루어지고 있다. 하나의 이미지는 3차원 (C, H, W)으로 구성되어 있다. 이미지는 0-255의 값으로 구성되어 있다. 보통 255로 나누어 Min-max Normalize 하거나 Normal Distribution 기반으로 normalization한다. CNN은 local 한 feature를 잘 잡는다는 Inductive bias를 갖고 있다. CNN layer의 특징은 weight sharing을 한다는 것인데, 그렇기 때문에 아래에 있는 3이라는 글자를 보면, 3이라는 글씨에는 꺾이는 부분이 있고 이런 꺾임 현상이 여러 곳에서 나타난다. 이렇게 꺾인 곳(반복..
2023.06.10 -
Data Modality Modality가 무엇일까? Multi-Modal 이라는 말을 많이 들어봤을 것이다. Modality란 각각의 데이터 타입의 특징에 맞게 분류하는 것 ⇒ 이에 맞게 모델을 선택한다. = Inductive bias를 고려한다. 따라서 Modality의 특징을 잘 정의하고 모델을 선택하는 과정이 중요하다. 다시 Multi Modal로 돌아와서 살펴보면 아래 그림처럼 모델의 input으로 음성, 텍스트, 비디오 등 다양하게 넣기 때문에 다양한 관점(Multi Modality)에서 볼 수 있다. 또한 중요한 것은 Modality에 맞는 모델을 각각 만들어서 넣어주어야 한다는 점이다. Biomedical data modality One-hot encoding 원-핫 인코딩은 단어 집합의 ..
Data Modality of Biomedical dataData Modality Modality가 무엇일까? Multi-Modal 이라는 말을 많이 들어봤을 것이다. Modality란 각각의 데이터 타입의 특징에 맞게 분류하는 것 ⇒ 이에 맞게 모델을 선택한다. = Inductive bias를 고려한다. 따라서 Modality의 특징을 잘 정의하고 모델을 선택하는 과정이 중요하다. 다시 Multi Modal로 돌아와서 살펴보면 아래 그림처럼 모델의 input으로 음성, 텍스트, 비디오 등 다양하게 넣기 때문에 다양한 관점(Multi Modality)에서 볼 수 있다. 또한 중요한 것은 Modality에 맞는 모델을 각각 만들어서 넣어주어야 한다는 점이다. Biomedical data modality One-hot encoding 원-핫 인코딩은 단어 집합의 ..
2023.06.08 -
FAISS = Facebook AI Similarity Search 유사한 벡터를 검색해서 가져오는 Facebook 라이브러리 이다. 벡터화된 데이터를 인덱싱하고 이를 효율적으로 검색할 수 있도록 도와주는 C++ 기반 라이브러리이다. 라이브러리를 사용해보기 위해 해당 링크에서 sentence embedding 파일을 다운받았다. import os import numpy as np import faiss import requests from io import StringIO import pandas as pd # download sentence embedding files os.mkdir("./data") data_url = "https://raw.githubusercontent.com/jamescalam..
[Vector Similarity Search] FAISSFAISS = Facebook AI Similarity Search 유사한 벡터를 검색해서 가져오는 Facebook 라이브러리 이다. 벡터화된 데이터를 인덱싱하고 이를 효율적으로 검색할 수 있도록 도와주는 C++ 기반 라이브러리이다. 라이브러리를 사용해보기 위해 해당 링크에서 sentence embedding 파일을 다운받았다. import os import numpy as np import faiss import requests from io import StringIO import pandas as pd # download sentence embedding files os.mkdir("./data") data_url = "https://raw.githubusercontent.com/jamescalam..
2023.06.04 -
Vector-based Search. 방식에는 대표적으로 TF-IDF, BM25, 그리고 BERT 기반 방식들이 있다. TF-IDF / BM25 → Sparse Vector SBERT → Dense Vector 1. TF-IDF TF-IDF 은 명칭처럼 Term Frequency (TF: 단어의 빈도)와 Inverse Document Frequency (IDF: 역 문서 빈도)라는 두 가지를 이용한다. TF : 특정 문서 D에서 특정 단어 q의 등장 횟수 "바나나"라는 단어에 대한 TF를 위와 같이 "바나나" 단어 등장 횟수 / 전체 단어 수로 나타낼 수 있다. 그러나 TF만으로는 흔한 단어와 흔하지 않은 단어에 차별점을 둘 수 가 없다. 위 예시에서 "the'라는 단어의 TF를 구해도 "바나나"와 같기..
[Vector Similarity Search] 3 Vector-based Methods for Similarity Search - TF-IDF / BM25 / SBERTVector-based Search. 방식에는 대표적으로 TF-IDF, BM25, 그리고 BERT 기반 방식들이 있다. TF-IDF / BM25 → Sparse Vector SBERT → Dense Vector 1. TF-IDF TF-IDF 은 명칭처럼 Term Frequency (TF: 단어의 빈도)와 Inverse Document Frequency (IDF: 역 문서 빈도)라는 두 가지를 이용한다. TF : 특정 문서 D에서 특정 단어 q의 등장 횟수 "바나나"라는 단어에 대한 TF를 위와 같이 "바나나" 단어 등장 횟수 / 전체 단어 수로 나타낼 수 있다. 그러나 TF만으로는 흔한 단어와 흔하지 않은 단어에 차별점을 둘 수 가 없다. 위 예시에서 "the'라는 단어의 TF를 구해도 "바나나"와 같기..
2023.05.28 -
Jaccard Jaccard 유사도는 두 개체간의 유사성을 계산한다. 예를 들어 두 텍스트 문서의 유사성을 계산하는데 활용할 수 있다. 계산 방식은 교집합을 합집합으로 나눈 것이다. def jaccard(x: str, y: str): # convert to sets x = set(x.split()) y = set(y.split()) # calculate intersection = x.intersection(y) union = x.union(y) return len(intersection)/len(union) 다음 두 문장의 Jaccard 유사도를 계산해본다고 하자. b와 c의 교집합은 위 하이라이트가 되어있는 단어 6개이다. 합집합은 21개의 단어이므로 6/21이 Jaccard Similarity가 될 ..
[Vector Similarity Search] 3 Traditional Methods for Similarity Search - Jaccard / w-shingling / LevenshteinJaccard Jaccard 유사도는 두 개체간의 유사성을 계산한다. 예를 들어 두 텍스트 문서의 유사성을 계산하는데 활용할 수 있다. 계산 방식은 교집합을 합집합으로 나눈 것이다. def jaccard(x: str, y: str): # convert to sets x = set(x.split()) y = set(y.split()) # calculate intersection = x.intersection(y) union = x.union(y) return len(intersection)/len(union) 다음 두 문장의 Jaccard 유사도를 계산해본다고 하자. b와 c의 교집합은 위 하이라이트가 되어있는 단어 6개이다. 합집합은 21개의 단어이므로 6/21이 Jaccard Similarity가 될 ..
2023.05.13 -
LLM API를 Developer Tool로 활용할 수 있는 가능성은 무궁무진하다. DeepLearning.AI에서 ChatGPT Prompt Engineering Course를 듣고 정리하였다. 1. Introduction Two Types of Large Language Models Base LLM 학습 데이터를 기반으로 다음 단어를 예측 그렇기 떄문에 학습 데이터에 여러 질문을 나열한 글이 있다면 LLM은 다음과 같이 문장을 완성한다. input : "What is the capital of France?" output : "What is France's largest city?" Instruction Tuned LLM Base LLM에 추가 학습(RLHF)을 하여 유용한 답변을 할 수 있도록 함 ..
ChatGPT Prompt Engineering for DevelopersLLM API를 Developer Tool로 활용할 수 있는 가능성은 무궁무진하다. DeepLearning.AI에서 ChatGPT Prompt Engineering Course를 듣고 정리하였다. 1. Introduction Two Types of Large Language Models Base LLM 학습 데이터를 기반으로 다음 단어를 예측 그렇기 떄문에 학습 데이터에 여러 질문을 나열한 글이 있다면 LLM은 다음과 같이 문장을 완성한다. input : "What is the capital of France?" output : "What is France's largest city?" Instruction Tuned LLM Base LLM에 추가 학습(RLHF)을 하여 유용한 답변을 할 수 있도록 함 ..
2023.05.01