DataTrainingArguments에 embedding_type이라는 argument를 추가하여, 사용자가 원하는 Sparse Embedding 방식(Tfidf, Count 등)을 선택할 수 있도록 구현. 선택된 방식에 따라 SparseRetriever 클래스에서 해당 Embedding 방식으로 Passage Embedding을 진행하고, 그에 맞춰 문서 검색을 수행함.
고안 배경
다양한 Sparse Embedding 방식을 실험해볼 수 있도록 Sparse Embedding 방식을 쉽게 변경할 수 있게 하여, 성능 평가 및 비교 실험을 할 수 있도록 함. 이를 통해 다양한 Retrieval 방식(Tfidf, Count 등)을 하나의 코드 구조 내에서 쉽게 테스트할 수 있음.
기능 상세 플로우
embedding_type argument를 추가: DataTrainingArguments에 embedding_type argument를 추가하여 사용자에게 선택지를 제공. (기존에 이 기능을 하던 retrieval_type은 sparse, dense 중에 선택하는 것으로 수정)
Passage Embedding 수행: SparseRetriever 클래스는 embedding_type을 기반으로 자동으로 적절한 임베딩 방식을 선택(TfidfVectorizer 또는 Count, Hash)하여 Passage Embedding을 수행.
Retrieve 수행: 선택된 임베딩 방식으로 Passage Embedding이 끝난 후, 해당 방식에 맞춰 유사도를 계산하고 문서 검색을 수행.
예상 결과
사용자는 embedding_type을 통해 간단히 Sparse Embedding 방식을 설정 가능.
각 방식(Tfidf, Count 등)의 성능을 하나의 통합된 코드 구조 안에서 실험 가능.
기능 요약
DataTrainingArguments
에embedding_type
이라는 argument를 추가하여, 사용자가 원하는 Sparse Embedding 방식(Tfidf, Count 등)을 선택할 수 있도록 구현. 선택된 방식에 따라SparseRetriever
클래스에서 해당 Embedding 방식으로 Passage Embedding을 진행하고, 그에 맞춰 문서 검색을 수행함.고안 배경
다양한 Sparse Embedding 방식을 실험해볼 수 있도록 Sparse Embedding 방식을 쉽게 변경할 수 있게 하여, 성능 평가 및 비교 실험을 할 수 있도록 함. 이를 통해 다양한 Retrieval 방식(Tfidf, Count 등)을 하나의 코드 구조 내에서 쉽게 테스트할 수 있음.
기능 상세 플로우
DataTrainingArguments
에embedding_type
argument를 추가하여 사용자에게 선택지를 제공. (기존에 이 기능을 하던 retrieval_type은 sparse, dense 중에 선택하는 것으로 수정)SparseRetriever
클래스는embedding_type
을 기반으로 자동으로 적절한 임베딩 방식을 선택(TfidfVectorizer 또는 Count, Hash)하여 Passage Embedding을 수행.예상 결과
embedding_type
을 통해 간단히 Sparse Embedding 방식을 설정 가능.기타 사항
bm25 구현도 추가할 예정입니다