https://arxiv.org/abs/2309.15217 RAGAS: Automated Evaluation of Retrieval Augmented GenerationWe introduce RAGAs (Retrieval Augmented Generation Assessment), a framework for reference-free evaluation of Retrieval Augmented Generation (RAG) pipelines. RAG systems are composed of a retrieval and an LLM based generation module, and provide LLMs with karxiv.orghttps://github.com/explodinggradients/r..
주로 RAG로 불리는 모델을 제시한 논문입니다. https://arxiv.org/abs/2005.11401 Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks Large pre-trained language models have been shown to store factual knowledge in their parameters, and achieve state-of-the-art results when fine-tuned on downstream NLP tasks. However, their ability to access and precisely manipulate knowledge is still lim arxiv.org Abstra..
12장 텐서플로를 사용한 사용자 정의 모델과 훈련 텐서플로란? 텐서플로는 강력한 수치 계산용 라이브러리입니다. 케라스가 고수준의 API를 제공하지만 더 높은 자유도를 위해서 저수준 파이썬 API를 사용할 수 있습니다. 이제 텐서를 직접 다루어 봅시다. 텐서 상수 텐서: tf.constant() shape과 dtype을 가진다. 모든 종류의 텐서 연산이 가능하다. 텐서의 값을 바꿀 수 없다. mean, sum, max 함수를 reduce_mean, reduce_sum, reduce_max와 같이 사용한다. GPU 커널(연산 구현)이 원소가 추가된 순서를 고려하지 않는 리듀스 알고리즘을 사용하기 때문이다. 어떠한 타입변환도 자동으로 수행하지 않는다. tf.cast() 함수를 사용한다. 변수 텐서: tf.Va..
얼마 전 나갔던 경진대회에서 베이스라인으로 받은 코드를 살펴보던 중 이상한 점을 발견했습니다. validation 과정에서 f1-score를 계산할 때 배치별로 f1-score를 계산하고 평균을 내어 출력하는 것이었습니다. 반면 제가 생각하는 방식은 전체 데이터 셋에 대해 한 번에 f1-score를 계산하는 방식이었습니다. 두 방식 간에 결괏값 차이가 있을 것이라고 생각했습니다. 배치별로 f1-score를 계산하고 평균을 내는 방식 vs 전체 데이터셋에 대해 한 번에 f1-score를 계산하는 방식 배치별로 f1-score를 계산하고 평균을 내는 방식 장점 대용량 데이터를 사용할때 메모리 사용량이 줄어듭니다. 단점 배치 크기에 따라 스코어가 변하여 불안정합니다. 전체 데이터셋에 대해 한 번에 f1-sco..
얼마 전 나갔던 경진대회에서는 평가 메트릭으로 macro f1-score를 사용하였습니다. macro f1-score는 각각의 클래스에 대해 f1-score를 계산한 다음 각각의 값의 평균으로 계산합니다. 여기서 F1-score는 어떻게 계산할 수 있을까요? F1-score = 2 * (precision * recall) / (precision + recall) Precision 이란 정밀도라고 해석되며 true라고 예측한 것 중 실제 true 인 것의 비율로 계산합니다. Precision = tp / tn + tp Recall 이란 재현율이라고 해석되며 실제 true 인 것 중 true로 예측한 것의 비율로 계산합니다. Recall = tp / fn + tp scikit learn 라이브러리에서 f1..