1. Large Language Models(LLMs) on Tabular Data: Prediction, Generation, and Understanding - A Survey
[중요내용 정리]
TABULAR 특징
- 데이터의 다양성 ( 이진,수치형,텍스트같은 다양한 유형포함)
- 불균형한 레이블과 없는값들이 많을수도
- 전처리 필요성
- 컨텍스트기반의 상호연결(예를들어 나이,교육수준,음주는 연결된)
- 순서 무관
- 사전지식의 부재 - 종종 이미지나 오디오데이터는 사전지식이 필요하다.
전통적인 tabular data과 딥러닝 활용
- Gradient Boosted Decision Trees
- 부스팅앙상블
- 한계점1 : 범주형특징같은것에 민감할수있으며, 암묵적 학습 수행이 가능
- 한계점2 : 시계열 데이터의 경우 처리하기 적합하지않다
- 한계점3 : 전체 분포가 골고루지 않을경우 일반화하기 어려울수 있다
- CNN방법론은 여러가지로 발전
- 데이터변환
- 미분가능트리
- 어텐션기반(TABNET)
- 정규화
- 여러가지 시도가 있었음에도 XGBoost, LightGBM, CatBoost 등을 포함한 GBDT 알고리즘 들이 여전히 우수함
- 베이지안 네트워크같은 딥러닝 적급낭버보가 LLM같은 생성모델의 발전
- LLM의 가장 전통적인 건 QA
- QA : TAPAS (Herzig et al., 2020), TABERT (Yin et al., 2020b), TURL (Deng et al., 2022a), TUTA (Wang et al., 2021), TABBIE (Iida et al., 2021)
LLM의 간단설명(여기선 대형 PLM이라고도 부름)
- 모델은 텍스트 말뭉치의 일반적인 문법 및 의미적 이해를 얻은 후, 과제별 목적에 맞추어 훈련됩니다
- 이전 연구에서는 표형식 데이터의 표현 학습을 위해 LM을 사용하였으나 이는 제한적이었습니다. 향후 연구에서는 표 데이터를 텍스트로 변환하여 PLM을 활용하여 의미 정보와 헤더 정보를 고려한 문맥적 표현을 학습하는 방법을 제안하였습니다. 이를 통해 크로스 테이블 학습과 특성 열의 순열 불변성을 지니는 모델을 구축하는 것이 가능해졌습니다.
현재 LLM의 잠재력에 대해 계속 탐구하고 있음.
- 딥 러닝 방법은 초기 훈련에서 사용되지 않은 데이터셋에서는 최적의 성능을 보이지 않는 경우가 많기 때문에, 사전 훈련과 세밀 조정 패러다임을 활용한 전이 학습이 매우 유망합니다. (= 파인튜닝)
- 표 데이터를 LLM에서 읽을 수 있는 자연 언어로 변환함으로써, 고차원 범주형 데이터의 one-hot 인코딩에 따른 차원의 저주(curse of dimensionality)를 피할 수 있습니다. (테뷸러 데이터를 txt로 변환해서 고차원문제를 해결)
- CoT를 통한 단계적인 추론과 같은 신생 능력은 LM을 언어 모델링에서 보다 일반적인 작업 해결 도구로 변형시켰습니다. LLM의 신생 능력이 표 데이터 모델링에서 얼마나 작동하는지 테스트하기 위해 더 많은 연구가 필요합니다.(cot 단계적 구성성/ 단계적 추론은 다양한 작업에 적용할수있게 해준다)
Contribtion
- LLM을 타블로 데이터 예측, 타블로 데이터 합성, 타블로 데이터 질문 답변, 테이블 이해와 같은 분야들을 세분화하여 분류
- 타블로 데이터에 LLM을 적용한 방법을 평가하는 다양한 측정 항목에 대한 현황과 분류법을 조사 (한마디로 정확도 측정 방법을 조사)
- 많이들 사용되는데이터셋에 대한 현황과 분류법을 조사
- Table data + llm 의 현황과 분류법
- 도전과제와 개요
Key techniques for LLMs’ applications on tabular data
- 직렬화
- Tabular -> text (text/json/xml...)
- 표를 쉼표같은 구분기호로 변환도 가능
- 마크다운 형식으로 변환도 가능
- Tabular -> text (text/json/xml...)
- Embedding based (직렬화 한걸 벡터화)
- Bert를 기반으로 하는 다양한 테이블 인코더들이 있다.
- 그래프기반,트리기반 데이터구조로 변환
- 하지만 직렬화를 해줘야 한다고
- 데이터 형식이 정확도에 매우 민감
- 예를 들어, DFLoader와 JSON 형식이 테이블 변환 작업에 더 적합하다는 연구 결과와 HTML 또는 XML 테이블 형식이 GPT 모델에서 더 잘 이해되는 것을 보여주는 연구 결과가 있습니다.
- 추가정보
- 직렬화+임베딩을 한번에 하는 방법들도 있다고함 (표에대한설명을 문장으로생성)
- LMs (Fine-tuned BLOOM on ToTTo (Parikh et al., 2020b), T0++ (Sanh et al., 2022), GPT-3 (Ouyang et al., 2022))
- Few-shot분류시 전통적인 리스트와 텍스트 템플릿이 llm 직렬화보다 성능이 더 좋았다고함
- 복잡하고 큰 LLM일수록 성능이좋다
- 직렬화+임베딩을 한번에 하는 방법들도 있다고함 (표에대한설명을 문장으로생성)
Table 조작(고려해야할 사항)
- LLM모델은 인풋시 텍스트 제한이 있다. 2048토큰까지 처리가능. Llama2는 4048토큰지원. 만약 테이블이 너무 크면부족할수가있다
- 길이는 문제가 없어도 긴문장을 처리시에 비효율적이다. '
- 1000토큰이상일경우 GPT3에서 성능저하를 확인
- 긴 프롬프트는 LLM 기반에서 너무 비싸다
Prompt engineering
- 프롬프트 = llm에 입력되는 텍스트
- 가장간단한 형식은 문자열
- IN-CONTEXT LEARNING = 유사한예를 통합하여 LLM이 원하는 결과를 이해하는데 도움이 되는걸 의미
- In-Context Learning은 특정한 맥락(context) 내에서 필요한 정보를 바탕으로 학습하는 방식을 말합니다. 이는 기존의 대규모 데이터 세트를 통해 사전 학습(pre-training)하는 과정 없이, 제한된 정보 내에서 바로 학습하고 적용할 수 있는 방식을 의미합니다.
- 프롬프트 엔지니어링을 통해 이루어진다.
- 사용자가 프롬프트를 입력하면 gpt3는 텍스트를 분석해서 컨텍스트를 이해하고 관련출력을 생성하는것. 사용자가 오늘 기분이 슬퍼 라는 프롬프트를 입력하면 gpt3가 그것참 유감이군요 제가 도와드릴일이 있을까요 라는 출력을 생성하는걸 의미합니다.
- 한마디로 프롬프트의 내용만으로 하고자하는 task를 수행하는것을 말한다. promt안의 맥락적의미(in context)를 이해하고 답변을 생성하는것. 프리트레이닝이나 파인튜닝같은 작업업이 별도의 학습과정이 존재하지않는다
- Zero shot
- Prompt: 빨간 사과가 영어로 뭐야?
- GPT: "Red Apple"
- One shot
- Prompt: 빨간 사과는 red 사과라고 할께. 노란 바나나는?
- GPT: 노란 바나나는 "yellow 바나나"입니다.
- Few shot
- Prompt: 빨간 사과는 red 사과라고 할께, 노란 바나나는 yellow 바나나야, 그럼 노란 사과는?
- GPT: 노란 사과는 "yellow 사과"입니다.
- Zero shot
- 예시는 CoT, SC 임
- 전자는 단계별 사고로 분해해서 더 나은 추론을 만들어내는 전략
- 다양한 사고방식을 허용한다는 직관을 바탕으로함
- Retrieval-augmented generation(rag / 검색증강생성)
- Llm모델의 출력을 최적화 하여 응답을 생성하기 전에 학습 데이터 소스 외부의 신뢰할 수 있는 지식 베이스를 참조하도록 하는 프로세스
- 이런 지식소스를 참조하여 다양한 환경에서 사용자 질문에 답변이 가능한 봇을 만드는것
- 1)검색모듈로 주어진 검색어나 질의에 따라 정보검색하고 문맥추출
- 2) 생성모듈로 앞서서 검색된정보들을 바탕으로 문장을 생성함.
- ROLE-PLAY
- 예를 들어, Zhao 등 (2023a)은 프롬프트 "통계 분석 전문가로 가정해보세요."로 실험을 진행했다고함
Preprocessing (테뷸러 데이터를 활용하여 데이터 직렬화 하는 방법)
- LIFT (Dinh et al., 2022)는 초기 노력 중 하나로, "열 이름은 값(Value)입니다"와 같은 자연어 문장 또는 "col1 = val1, col2 = val2, ..."와 같은 여러 방정식과 같은 직렬화 방법을 시도
- 동일한 결론은 TabLLM (Hegselmann et al., 2023)에서도 확인되었으며, 그들은 9가지 다른 직렬화 방법을 평가
- 텍스트로 구성된 모든 피처의 열거가 가장 우수한 성능을 발휘한다고 함(3번째 논문)
- TABLET논문방법을 사용하면 F1스코어가 매우 높게 오른다는걸 확인
- 스키마 기반의 프롬프트 엔지니어링은 데이터셋의 배경 정보, 작업 설명, 요약 및 예시 데이터 포인트를 포함한다고 함
- Summary Boosting (Manikandan et al., 2023)은 데이터+메타데이터를 텍스트 프롬프트로 직렬화하여 요약을 생성
- Serilize-LM (Jaitly et al., 2023)는 도메인 특정 데이터셋에서 LLM 성능을 향상시키기 위해 3가지 혁신적인 직렬화 기술을 소개
- 차량 분류를 예로 들면, 제조사, 색상 및 차체 유형과 같은 속성이 이제 단일한 더 풍부한 문장으로 결합
- 또한, 가장 관련성이 높은 피처를 식별하기 위해 공분산을 활용하고, 해당 피처를 중요하다고 라벨링하거나 가장 중요한 피처를 설명하는 문장을 추가 (데이터의 경중을 판단한다는 뜻 같다)
- 마지막으로, 테이블 데이터를 LaTeX 코드 형식으로 변환
- UniPredict (Wang et al., 2023a)는 임의의 입력 M을 대상 설명과 피처의 의미론적 설명으로 통합하여 메타데이터를 형식화
- ….
Time Series Forecasting (테이블 데이터 중에서도 시계열 예측 !!!!!!)
- ZeroTS (Gruver et al., 2023)은 GPT-3 (Brown et al., 2020)와 LLaMA-70B Touvron et al. (2023a)와 같은 LLM을 직접 시계열 예측에 사용
- 이 연구는 평균 절대 오차(MAE), 스케일 MAE 및 연속된 순위 확률 점수(CRPS)를 사용하여 모델을 평가하며, LLM은 간단한 규칙 기반의 완성을 선호하고 반복 및 추세를 캡처하는 경향이 있다고 언급
- => llm은 시계열 예측에도 매우 효율적이다.
- 이 연구는 평균 절대 오차(MAE), 스케일 MAE 및 연속된 순위 확률 점수(CRPS)를 사용하여 모델을 평가하며, LLM은 간단한 규칙 기반의 완성을 선호하고 반복 및 추세를 캡처하는 경향이 있다고 언급
- Finetuning시 일반적으로, 현재 LLaMa가 가장 일반적으로 사용되는 모델이며, fine-tuning에는 soft prompt가 적합한 접근 방식이라고 함
- 메트릭으로는 MAE가 가장 일반적인 메트릭
LLMs for tabular data generation (Tabular 데이터를 보완하는 새로운 방법론을 탐구-뉴데이터를 생성해서 활용)
- tabular데이터를 보완하는 새로운 방법론을 탐구
- Llm을 활용해서 새로운 tabular데이터를 생성하고 활용할 수 있는 방법들을 연구
- 한마디로 llm을 활용해서 데이터를 생성해서 활용한다!
- Borisov et al. (2023b)은 원본 tabular 데이터의 특성을 가진 합성 샘플을 생성하기 위해 GReaT11 (Generation of Realistic Tabular data)를 제안. GReaT 데이터 파이프라인은 문장 직렬화 방법을 사용하여 tabular 데이터를 의미 있는 텍스트로 변환하는 텍스트 인코딩 단계와 관련. 이후에는 GPT-2 또는 GPT-2 distill 모델을 미세 조정하는 과정이 이어짐.
- REaLTabFormer (Solatorio & Dupriez, 2023)은 GReaT를 확장하여 비관계형 및 관계형 타블러 데이터를 생성
- 등등....
++ figure4 참조
- 이러한 합성 데이터의 평가방법 4가지
- 저차원 통계: 열별 밀도와 열 간의 상관관계를 평가하여 개별 열의 분포와 열 간의 관계를 파악 (열별 데이터분포를 살펴봄으로써 다양성과 일관성을 평가한다. 예를들면 열값이 균일하게 분포되어있는지확인가능. 또 상관관계를 통해서 음의 상관관계이니지 직선적인 상관관계인지 등등 파악가능)
- 고차원 측정: 합성 데이터의 전체적인 신뢰성과 다양성을 측정하는 지표를 사용합니다. (=다양한 관점에서데이터품질과 다양성을 측정. 예를들어 실제데이터와 얼마나 유사한가 같은 지표)
- 개인 정보 보호: 원본 데이터의 개인 정보 보호 수준을 평가하기 위해 최근접 레코드와의 거리를 계산하는 지표를 사용합니다.(개인식별 가능성을 평가함, 원본데이터랑 유사도를 평가해서 유사할수록 개인정보 식별 가능서이 높아지고, 유사도가 낮을수록 개인정보수준이 높아진다))
- 하위 작업 성능: 합성 데이터를 사용하여 학습한 모델이 실제 데이터에서 얼마나 잘 작동하는지 평가합니다.
LLMs for table understanding
- TABLE QA
- Table and Conversation QA = QA인데 테이블만 사용하는게 아니라 다른 형식의 정보들도 같이 사용하여 대화를 진행
- Table Classification = 테이블을 종류별로 분류하는것
- Text2SQL = sql 생성
- Table NLG = 원본 테이블에 대한 설명을 생성
- Table NLI = 테이블안의 관계에 대해 분석(2019에 많이 팔린 상품은 무엇)
- Domain Specific = 영역별로 특화. 항공업계는 AIT-QA (Katsis et al., 2022)를 사용하는 것을 권장, 금융 관련 테이블 질문 답변 작업에는 TAT-QA (Zhu et al., 2021a)를 사용하는 것을 추천. 대략적으로 업계별로 추천하는것이 다르다는것으로 이해
- Pretraining = 테이블+영어문맥설명으로 프리트레이닝하면 테이블 이해해 더 좋은 결과를 볼수 있다라고 함
General ability of LLMs in QA
- Numerical QA = 수학 추론을 필요로 하는 질문(American Express의 평균 거래 별 결제량은 얼마입니까?)
- Text2SQL = Liu et al. (2023c)은 세 가지 유형의 키워드를 식별하는 질문 매처를 설계: 1) 열 이름과 관련된 용어, 2) 제한과 관련된 구절(예: "상위 10개"), 3) 알고리즘 또는 모듈 키워드.
- Impact of model size on performance=WebTableQuestions에서 6.7B 대 175B GPT-3 모델을 비교할 때, 작은 모델은 더 큰 모델의 점수의 절반만 달성
- Finetuning or No finetuning? LLMs(>70B 파라미터)를 파인튜닝하는 것에는 매우 제한적인 연구가 진행
QA 관련 논문들
- Chain-of-command (CoC)-사용자입력을 중간명령작업의 순서열로 변환
- Deng et al. (2022b)는 QA 작업을 세 가지 하위 작업으로 분할
- 불확실성을 명확히 하기 위해 질문을 할 것인지를 결정하는 Clarification Need Prediction (CNP)
- 명확히 하기 위해 질문을 생성하는 Clarification Question Generation (CQG)
- 질문에 대한 명확히가 필요하지 않은 경우 바로 답변을 생성하는 Conversational Question Answering (CQA)
- 검색능력도 중요함. 검색능력은 아래와같이 두가지 유형으로 나뉨
- 질문과 관련된 정보를 찾기 ( 예를들어 무슨열의 무슨행의 값을 구해줘(
- 추가정보와 예제를 얻는것
- 데이터 메인테이블 관련
- Zhao et al. (2023d)는 최상위-n개의 가장 관련성이 높은 문서를 반환하는 검색 모듈 (retriever module)의 성능 향상이 수치적 QA에서 최종 정확도를 일관되게 향상시킨다는 것을 관찰
- . Sui et al. (2023c)는 여러 개의 테이블 샘플링 방법 (행과 열)과 토큰 제한 매개변수를 기반으로 한 테이블 패킹을 탐구(질문과 가장 의미적으로 유사한 행을 검색)
- Dong et al. (2023)는 SC(Self-consistency, 또다른논문이다)를 사용하여 질문과 관련성에 따라 테이블을 순위 매김하기 위해 ChatGPT를 사용. 그 결과 10개세트의 검색결과를 생성한다음, 가장 자주보이는 세트를 선택. 이때도 SC방법이 사용되었다고함.
- cTBLS Sundar & Heck (2023)는 검색된 테이블 정보에 기반한 대화 응답을 검색하고 생성하기 위한 세 단계 아키텍처를 설계함
- RoBERTa (Liu et al., 2019)에서 유도된 양방향 인코더 기반의 Dense Table Retrieval (DTR) 모델을 사용해서 연관성이 가장높은 테이블을 식별(인코더만 사용한다)
- 두 번째 단계에서 트리플릿 손실을 사용하여 행을 순위 매기기 위한 Coarse System State Tracking 시스템을 사용 (??)
- 마지막으로, GPT-3.5는 그룹화된 지식 원본을 기준으로 한 쿼리와 관련성이 가장 높은 셀을 조건으로 하는 추가 질문에 대한 자연어 응답을 생성
- INPUT = 질의 기록, 순위 매김된 지식 원본 및 답변해야 할 질문이 포함된 프롬프트가 입력으로 제공
- . Zhao et al. (2023d)은 OpenAI의 Ada Embedding4과 Contriever (Izacard et al., 2022)를 검색기로 사용하고 BM25 (Robertson et al., 1995)를 희소 검색기로 사용. 여기서 말하는 검색기란 가장 관련성이 높은 텍스트랑 테이블을 추출하는데 도움을 주는것. 이 추출된 정보는 질문에 대한 입력 컨텍스트로 제공됩니다.
- 예제선별관련
- Gao et al. (2023)는 1) 무작위로 K개 선택 2) 질문의 유사성을 선택(유사성기준은 유클리드거리같은 사전에 정의된 기준을 사용) 3) 마스킹된 질문 유사성을 선택한다.(=질문과 예제간의 유사성을 평가해서 예제를 선택하는것) 4) 대상 SQL 쿼리 s∗와 유사한 k개의 예제를 선택.
Multi-turn tasks
LLM을 반복적으로 호출하는 파이프라인을 설계
3가지 카테고리로 분류된다
(1) 어려운 작업을 처리 가능한 하위 작업으로 분해하기 위해 (너무 복잡한 요청을 작은 여러개 작업으로 나눔)
- Suiet al. (2023b)은 하류 테이블 추론을 개선하기 위해 두 단계의 self-augmented prompting approach를 제안. 첫 번째로 프롬프트를 사용하여 LLM에게 테이블에 대한 중간 출력을 생성하도록 요청한 다음, 응답을 두 번째 프롬프트로 통합하여 하류 작업의 최종 답변을 요청한다.
- Ye et al.(2023b)은 또한 대량의 테이블을 작은 테이블로 분해하고 복잡한 질문을 텍스트 추론을 위해 단순한 하위 질문들로 변환하도록 LLM에게 안내
- Liu 등(2023e)의 경우, 상징적인 CoT 추론 경로를 촉진하기 위해, 모델이 명령을 실행하고 데이터를 처리하며 결과를 검토할 수 있는 Python 셸과 상호작용하도록 허용
(2) 새로운 사용자 입력에 기반하여 모델 출력을 업데이트하기 위해
- SParC의 경우, Spider (Yu 등, 2018b)를 기반으로 연이어 따르는 질문을 설계
(3) 특정 제약 조건을 해결하거나 오류를 수정하기 위해
- Zhao 등(2023a)은 테이블이 API 입력 제한을 초과하는 경우 다중 턴 프롬프트를 사용하여 이를 해결. 잘못된 부분이 생성되었을 경우 잘못된 경우를 LLM을 되돌려주는 반복적인 과정이 도움이 될수 있다고함.
아웃풋 평가 방식
- F1이 일반적이긴함
- ROUGE
- BLEU
- 시각화..
한계점과 미래방안
- Bias and fairness llm의 내재적인 편향 완화
- Hallucination 실제가 아닌값을 생성할 위험 (의료계쪽에서는 치명적)
- Numerical representation 숫자는 임베딩이 꼭 필요
- Categorical representation 컨텍스트 제한 초과시 데이터 일부가 날라가서 성능에 부정적이어짐. 이를 커버할수있는 인코딩방식이 필요
- Standard benchmark 너무 다양하기 때문에 표준화된 벤치마크의 필요성
- Model interpretability 데이터 이해능력의 탐구
- Easy to use 대부분 데이터 직렬화가 필요해서 모델 엑세스가 쉽지않음. 다른사람들이 사용하기 쉬워야함.(자동전처리나 직렬화를 통합시킨다면 훨씬 쉬울것)
- Fine-tuning strategy design llm모델의 적합한 모델과 학습전략
- Model grafting 특화된 인코더를 사용해서 비문자 데이터를 매핑..한마디로 텍스트가 아닌 다른 유형의 데이터를 모델이 자체적으로 인코딩할수있다..
[중요내용 정리]
TABULAR 특징
- 데이터의 다양성 ( 이진,수치형,텍스트같은 다양한 유형포함)
- 불균형한 레이블과 없는값들이 많을수도
- 전처리 필요성
- 컨텍스트기반의 상호연결(예를들어 나이,교육수준,음주는 연결된)
- 순서 무관
- 사전지식의 부재 - 종종 이미지나 오디오데이터는 사전지식이 필요하다.
전통적인 tabular data과 딥러닝 활용
- Gradient Boosted Decision Trees
- 부스팅앙상블
- 한계점1 : 범주형특징같은것에 민감할수있으며, 암묵적 학습 수행이 가능
- 한계점2 : 시계열 데이터의 경우 처리하기 적합하지않다
- 한계점3 : 전체 분포가 골고루지 않을경우 일반화하기 어려울수 있다
- CNN방법론은 여러가지로 발전
- 데이터변환
- 미분가능트리
- 어텐션기반(TABNET)
- 정규화
- 여러가지 시도가 있었음에도 XGBoost, LightGBM, CatBoost 등을 포함한 GBDT 알고리즘 들이 여전히 우수함
- 베이지안 네트워크같은 딥러닝 적급낭버보가 LLM같은 생성모델의 발전
- LLM의 가장 전통적인 건 QA
- QA : TAPAS (Herzig et al., 2020), TABERT (Yin et al., 2020b), TURL (Deng et al., 2022a), TUTA (Wang et al., 2021), TABBIE (Iida et al., 2021)
LLM의 간단설명(여기선 대형 PLM이라고도 부름)
- 모델은 텍스트 말뭉치의 일반적인 문법 및 의미적 이해를 얻은 후, 과제별 목적에 맞추어 훈련됩니다
- 이전 연구에서는 표형식 데이터의 표현 학습을 위해 LM을 사용하였으나 이는 제한적이었습니다. 향후 연구에서는 표 데이터를 텍스트로 변환하여 PLM을 활용하여 의미 정보와 헤더 정보를 고려한 문맥적 표현을 학습하는 방법을 제안하였습니다. 이를 통해 크로스 테이블 학습과 특성 열의 순열 불변성을 지니는 모델을 구축하는 것이 가능해졌습니다.
현재 LLM의 잠재력에 대해 계속 탐구하고 있음.
- 딥 러닝 방법은 초기 훈련에서 사용되지 않은 데이터셋에서는 최적의 성능을 보이지 않는 경우가 많기 때문에, 사전 훈련과 세밀 조정 패러다임을 활용한 전이 학습이 매우 유망합니다. (= 파인튜닝)
- 표 데이터를 LLM에서 읽을 수 있는 자연 언어로 변환함으로써, 고차원 범주형 데이터의 one-hot 인코딩에 따른 차원의 저주(curse of dimensionality)를 피할 수 있습니다. (테뷸러 데이터를 txt로 변환해서 고차원문제를 해결)
- CoT를 통한 단계적인 추론과 같은 신생 능력은 LM을 언어 모델링에서 보다 일반적인 작업 해결 도구로 변형시켰습니다. LLM의 신생 능력이 표 데이터 모델링에서 얼마나 작동하는지 테스트하기 위해 더 많은 연구가 필요합니다.(cot 단계적 구성성/ 단계적 추론은 다양한 작업에 적용할수있게 해준다)
Contribtion
- LLM을 타블로 데이터 예측, 타블로 데이터 합성, 타블로 데이터 질문 답변, 테이블 이해와 같은 분야들을 세분화하여 분류
- 타블로 데이터에 LLM을 적용한 방법을 평가하는 다양한 측정 항목에 대한 현황과 분류법을 조사 (한마디로 정확도 측정 방법을 조사)
- 많이들 사용되는데이터셋에 대한 현황과 분류법을 조사
- Table data + llm 의 현황과 분류법
- 도전과제와 개요
Key techniques for LLMs’ applications on tabular data
- 직렬화
- Tabular -> text (text/json/xml...)
- 표를 쉼표같은 구분기호로 변환도 가능
- 마크다운 형식으로 변환도 가능
- Tabular -> text (text/json/xml...)
- Embedding based (직렬화 한걸 벡터화)
- Bert를 기반으로 하는 다양한 테이블 인코더들이 있다.
- 그래프기반,트리기반 데이터구조로 변환
- 하지만 직렬화를 해줘야 한다고
- 데이터 형식이 정확도에 매우 민감
- 예를 들어, DFLoader와 JSON 형식이 테이블 변환 작업에 더 적합하다는 연구 결과와 HTML 또는 XML 테이블 형식이 GPT 모델에서 더 잘 이해되는 것을 보여주는 연구 결과가 있습니다.
- 추가정보
- 직렬화+임베딩을 한번에 하는 방법들도 있다고함 (표에대한설명을 문장으로생성)
- LMs (Fine-tuned BLOOM on ToTTo (Parikh et al., 2020b), T0++ (Sanh et al., 2022), GPT-3 (Ouyang et al., 2022))
- Few-shot분류시 전통적인 리스트와 텍스트 템플릿이 llm 직렬화보다 성능이 더 좋았다고함
- 복잡하고 큰 LLM일수록 성능이좋다
- 직렬화+임베딩을 한번에 하는 방법들도 있다고함 (표에대한설명을 문장으로생성)
Table 조작(고려해야할 사항)
- LLM모델은 인풋시 텍스트 제한이 있다. 2048토큰까지 처리가능. Llama2는 4048토큰지원. 만약 테이블이 너무 크면부족할수가있다
- 길이는 문제가 없어도 긴문장을 처리시에 비효율적이다. '
- 1000토큰이상일경우 GPT3에서 성능저하를 확인
- 긴 프롬프트는 LLM 기반에서 너무 비싸다
Prompt engineering
- 프롬프트 = llm에 입력되는 텍스트
- 가장간단한 형식은 문자열
- IN-CONTEXT LEARNING = 유사한예를 통합하여 LLM이 원하는 결과를 이해하는데 도움이 되는걸 의미
- In-Context Learning은 특정한 맥락(context) 내에서 필요한 정보를 바탕으로 학습하는 방식을 말합니다. 이는 기존의 대규모 데이터 세트를 통해 사전 학습(pre-training)하는 과정 없이, 제한된 정보 내에서 바로 학습하고 적용할 수 있는 방식을 의미합니다.
- 프롬프트 엔지니어링을 통해 이루어진다.
- 사용자가 프롬프트를 입력하면 gpt3는 텍스트를 분석해서 컨텍스트를 이해하고 관련출력을 생성하는것. 사용자가 오늘 기분이 슬퍼 라는 프롬프트를 입력하면 gpt3가 그것참 유감이군요 제가 도와드릴일이 있을까요 라는 출력을 생성하는걸 의미합니다.
- 한마디로 프롬프트의 내용만으로 하고자하는 task를 수행하는것을 말한다. promt안의 맥락적의미(in context)를 이해하고 답변을 생성하는것. 프리트레이닝이나 파인튜닝같은 작업업이 별도의 학습과정이 존재하지않는다
- Zero shot
- Prompt: 빨간 사과가 영어로 뭐야?
- GPT: "Red Apple"
- One shot
- Prompt: 빨간 사과는 red 사과라고 할께. 노란 바나나는?
- GPT: 노란 바나나는 "yellow 바나나"입니다.
- Few shot
- Prompt: 빨간 사과는 red 사과라고 할께, 노란 바나나는 yellow 바나나야, 그럼 노란 사과는?
- GPT: 노란 사과는 "yellow 사과"입니다.
- Zero shot
- 예시는 CoT, SC 임
- 전자는 단계별 사고로 분해해서 더 나은 추론을 만들어내는 전략
- 다양한 사고방식을 허용한다는 직관을 바탕으로함
- Retrieval-augmented generation(rag / 검색증강생성)
- Llm모델의 출력을 최적화 하여 응답을 생성하기 전에 학습 데이터 소스 외부의 신뢰할 수 있는 지식 베이스를 참조하도록 하는 프로세스
- 이런 지식소스를 참조하여 다양한 환경에서 사용자 질문에 답변이 가능한 봇을 만드는것
- 1)검색모듈로 주어진 검색어나 질의에 따라 정보검색하고 문맥추출
- 2) 생성모듈로 앞서서 검색된정보들을 바탕으로 문장을 생성함.
- ROLE-PLAY
- 예를 들어, Zhao 등 (2023a)은 프롬프트 "통계 분석 전문가로 가정해보세요."로 실험을 진행했다고함
Preprocessing (테뷸러 데이터를 활용하여 데이터 직렬화 하는 방법)
- LIFT (Dinh et al., 2022)는 초기 노력 중 하나로, "열 이름은 값(Value)입니다"와 같은 자연어 문장 또는 "col1 = val1, col2 = val2, ..."와 같은 여러 방정식과 같은 직렬화 방법을 시도
- 동일한 결론은 TabLLM (Hegselmann et al., 2023)에서도 확인되었으며, 그들은 9가지 다른 직렬화 방법을 평가
- 텍스트로 구성된 모든 피처의 열거가 가장 우수한 성능을 발휘한다고 함(3번째 논문)
- TABLET논문방법을 사용하면 F1스코어가 매우 높게 오른다는걸 확인
- 스키마 기반의 프롬프트 엔지니어링은 데이터셋의 배경 정보, 작업 설명, 요약 및 예시 데이터 포인트를 포함한다고 함
- Summary Boosting (Manikandan et al., 2023)은 데이터+메타데이터를 텍스트 프롬프트로 직렬화하여 요약을 생성
- Serilize-LM (Jaitly et al., 2023)는 도메인 특정 데이터셋에서 LLM 성능을 향상시키기 위해 3가지 혁신적인 직렬화 기술을 소개
- 차량 분류를 예로 들면, 제조사, 색상 및 차체 유형과 같은 속성이 이제 단일한 더 풍부한 문장으로 결합
- 또한, 가장 관련성이 높은 피처를 식별하기 위해 공분산을 활용하고, 해당 피처를 중요하다고 라벨링하거나 가장 중요한 피처를 설명하는 문장을 추가 (데이터의 경중을 판단한다는 뜻 같다)
- 마지막으로, 테이블 데이터를 LaTeX 코드 형식으로 변환
- UniPredict (Wang et al., 2023a)는 임의의 입력 M을 대상 설명과 피처의 의미론적 설명으로 통합하여 메타데이터를 형식화
- ….
Time Series Forecasting (테이블 데이터 중에서도 시계열 예측 !!!!!!)
- ZeroTS (Gruver et al., 2023)은 GPT-3 (Brown et al., 2020)와 LLaMA-70B Touvron et al. (2023a)와 같은 LLM을 직접 시계열 예측에 사용
- 이 연구는 평균 절대 오차(MAE), 스케일 MAE 및 연속된 순위 확률 점수(CRPS)를 사용하여 모델을 평가하며, LLM은 간단한 규칙 기반의 완성을 선호하고 반복 및 추세를 캡처하는 경향이 있다고 언급
- => llm은 시계열 예측에도 매우 효율적이다.
- 이 연구는 평균 절대 오차(MAE), 스케일 MAE 및 연속된 순위 확률 점수(CRPS)를 사용하여 모델을 평가하며, LLM은 간단한 규칙 기반의 완성을 선호하고 반복 및 추세를 캡처하는 경향이 있다고 언급
- Finetuning시 일반적으로, 현재 LLaMa가 가장 일반적으로 사용되는 모델이며, fine-tuning에는 soft prompt가 적합한 접근 방식이라고 함
- 메트릭으로는 MAE가 가장 일반적인 메트릭
LLMs for tabular data generation (Tabular 데이터를 보완하는 새로운 방법론을 탐구-뉴데이터를 생성해서 활용)
- tabular데이터를 보완하는 새로운 방법론을 탐구
- Llm을 활용해서 새로운 tabular데이터를 생성하고 활용할 수 있는 방법들을 연구
- 한마디로 llm을 활용해서 데이터를 생성해서 활용한다!
- Borisov et al. (2023b)은 원본 tabular 데이터의 특성을 가진 합성 샘플을 생성하기 위해 GReaT11 (Generation of Realistic Tabular data)를 제안. GReaT 데이터 파이프라인은 문장 직렬화 방법을 사용하여 tabular 데이터를 의미 있는 텍스트로 변환하는 텍스트 인코딩 단계와 관련. 이후에는 GPT-2 또는 GPT-2 distill 모델을 미세 조정하는 과정이 이어짐.
- REaLTabFormer (Solatorio & Dupriez, 2023)은 GReaT를 확장하여 비관계형 및 관계형 타블러 데이터를 생성
- 등등....
++ figure4 참조
- 이러한 합성 데이터의 평가방법 4가지
- 저차원 통계: 열별 밀도와 열 간의 상관관계를 평가하여 개별 열의 분포와 열 간의 관계를 파악 (열별 데이터분포를 살펴봄으로써 다양성과 일관성을 평가한다. 예를들면 열값이 균일하게 분포되어있는지확인가능. 또 상관관계를 통해서 음의 상관관계이니지 직선적인 상관관계인지 등등 파악가능)
- 고차원 측정: 합성 데이터의 전체적인 신뢰성과 다양성을 측정하는 지표를 사용합니다. (=다양한 관점에서데이터품질과 다양성을 측정. 예를들어 실제데이터와 얼마나 유사한가 같은 지표)
- 개인 정보 보호: 원본 데이터의 개인 정보 보호 수준을 평가하기 위해 최근접 레코드와의 거리를 계산하는 지표를 사용합니다.(개인식별 가능성을 평가함, 원본데이터랑 유사도를 평가해서 유사할수록 개인정보 식별 가능서이 높아지고, 유사도가 낮을수록 개인정보수준이 높아진다))
- 하위 작업 성능: 합성 데이터를 사용하여 학습한 모델이 실제 데이터에서 얼마나 잘 작동하는지 평가합니다.
LLMs for table understanding
- TABLE QA
- Table and Conversation QA = QA인데 테이블만 사용하는게 아니라 다른 형식의 정보들도 같이 사용하여 대화를 진행
- Table Classification = 테이블을 종류별로 분류하는것
- Text2SQL = sql 생성
- Table NLG = 원본 테이블에 대한 설명을 생성
- Table NLI = 테이블안의 관계에 대해 분석(2019에 많이 팔린 상품은 무엇)
- Domain Specific = 영역별로 특화. 항공업계는 AIT-QA (Katsis et al., 2022)를 사용하는 것을 권장, 금융 관련 테이블 질문 답변 작업에는 TAT-QA (Zhu et al., 2021a)를 사용하는 것을 추천. 대략적으로 업계별로 추천하는것이 다르다는것으로 이해
- Pretraining = 테이블+영어문맥설명으로 프리트레이닝하면 테이블 이해해 더 좋은 결과를 볼수 있다라고 함
General ability of LLMs in QA
- Numerical QA = 수학 추론을 필요로 하는 질문(American Express의 평균 거래 별 결제량은 얼마입니까?)
- Text2SQL = Liu et al. (2023c)은 세 가지 유형의 키워드를 식별하는 질문 매처를 설계: 1) 열 이름과 관련된 용어, 2) 제한과 관련된 구절(예: "상위 10개"), 3) 알고리즘 또는 모듈 키워드.
- Impact of model size on performance=WebTableQuestions에서 6.7B 대 175B GPT-3 모델을 비교할 때, 작은 모델은 더 큰 모델의 점수의 절반만 달성
- Finetuning or No finetuning? LLMs(>70B 파라미터)를 파인튜닝하는 것에는 매우 제한적인 연구가 진행
QA 관련 논문들
- Chain-of-command (CoC)-사용자입력을 중간명령작업의 순서열로 변환
- Deng et al. (2022b)는 QA 작업을 세 가지 하위 작업으로 분할
- 불확실성을 명확히 하기 위해 질문을 할 것인지를 결정하는 Clarification Need Prediction (CNP)
- 명확히 하기 위해 질문을 생성하는 Clarification Question Generation (CQG)
- 질문에 대한 명확히가 필요하지 않은 경우 바로 답변을 생성하는 Conversational Question Answering (CQA)
- 검색능력도 중요함. 검색능력은 아래와같이 두가지 유형으로 나뉨
- 질문과 관련된 정보를 찾기 ( 예를들어 무슨열의 무슨행의 값을 구해줘(
- 추가정보와 예제를 얻는것
- 데이터 메인테이블 관련
- Zhao et al. (2023d)는 최상위-n개의 가장 관련성이 높은 문서를 반환하는 검색 모듈 (retriever module)의 성능 향상이 수치적 QA에서 최종 정확도를 일관되게 향상시킨다는 것을 관찰
- . Sui et al. (2023c)는 여러 개의 테이블 샘플링 방법 (행과 열)과 토큰 제한 매개변수를 기반으로 한 테이블 패킹을 탐구(질문과 가장 의미적으로 유사한 행을 검색)
- Dong et al. (2023)는 SC(Self-consistency, 또다른논문이다)를 사용하여 질문과 관련성에 따라 테이블을 순위 매김하기 위해 ChatGPT를 사용. 그 결과 10개세트의 검색결과를 생성한다음, 가장 자주보이는 세트를 선택. 이때도 SC방법이 사용되었다고함.
- cTBLS Sundar & Heck (2023)는 검색된 테이블 정보에 기반한 대화 응답을 검색하고 생성하기 위한 세 단계 아키텍처를 설계함
- RoBERTa (Liu et al., 2019)에서 유도된 양방향 인코더 기반의 Dense Table Retrieval (DTR) 모델을 사용해서 연관성이 가장높은 테이블을 식별(인코더만 사용한다)
- 두 번째 단계에서 트리플릿 손실을 사용하여 행을 순위 매기기 위한 Coarse System State Tracking 시스템을 사용 (??)
- 마지막으로, GPT-3.5는 그룹화된 지식 원본을 기준으로 한 쿼리와 관련성이 가장 높은 셀을 조건으로 하는 추가 질문에 대한 자연어 응답을 생성
- INPUT = 질의 기록, 순위 매김된 지식 원본 및 답변해야 할 질문이 포함된 프롬프트가 입력으로 제공
- . Zhao et al. (2023d)은 OpenAI의 Ada Embedding4과 Contriever (Izacard et al., 2022)를 검색기로 사용하고 BM25 (Robertson et al., 1995)를 희소 검색기로 사용. 여기서 말하는 검색기란 가장 관련성이 높은 텍스트랑 테이블을 추출하는데 도움을 주는것. 이 추출된 정보는 질문에 대한 입력 컨텍스트로 제공됩니다.
- 예제선별관련
- Gao et al. (2023)는 1) 무작위로 K개 선택 2) 질문의 유사성을 선택(유사성기준은 유클리드거리같은 사전에 정의된 기준을 사용) 3) 마스킹된 질문 유사성을 선택한다.(=질문과 예제간의 유사성을 평가해서 예제를 선택하는것) 4) 대상 SQL 쿼리 s∗와 유사한 k개의 예제를 선택.
Multi-turn tasks
LLM을 반복적으로 호출하는 파이프라인을 설계
3가지 카테고리로 분류된다
(1) 어려운 작업을 처리 가능한 하위 작업으로 분해하기 위해 (너무 복잡한 요청을 작은 여러개 작업으로 나눔)
- Suiet al. (2023b)은 하류 테이블 추론을 개선하기 위해 두 단계의 self-augmented prompting approach를 제안. 첫 번째로 프롬프트를 사용하여 LLM에게 테이블에 대한 중간 출력을 생성하도록 요청한 다음, 응답을 두 번째 프롬프트로 통합하여 하류 작업의 최종 답변을 요청한다.
- Ye et al.(2023b)은 또한 대량의 테이블을 작은 테이블로 분해하고 복잡한 질문을 텍스트 추론을 위해 단순한 하위 질문들로 변환하도록 LLM에게 안내
- Liu 등(2023e)의 경우, 상징적인 CoT 추론 경로를 촉진하기 위해, 모델이 명령을 실행하고 데이터를 처리하며 결과를 검토할 수 있는 Python 셸과 상호작용하도록 허용
(2) 새로운 사용자 입력에 기반하여 모델 출력을 업데이트하기 위해
- SParC의 경우, Spider (Yu 등, 2018b)를 기반으로 연이어 따르는 질문을 설계
(3) 특정 제약 조건을 해결하거나 오류를 수정하기 위해
- Zhao 등(2023a)은 테이블이 API 입력 제한을 초과하는 경우 다중 턴 프롬프트를 사용하여 이를 해결. 잘못된 부분이 생성되었을 경우 잘못된 경우를 LLM을 되돌려주는 반복적인 과정이 도움이 될수 있다고함.
아웃풋 평가 방식
- F1이 일반적이긴함
- ROUGE
- BLEU
- 시각화..
한계점과 미래방안
- Bias and fairness llm의 내재적인 편향 완화
- Hallucination 실제가 아닌값을 생성할 위험 (의료계쪽에서는 치명적)
- Numerical representation 숫자는 임베딩이 꼭 필요
- Categorical representation 컨텍스트 제한 초과시 데이터 일부가 날라가서 성능에 부정적이어짐. 이를 커버할수있는 인코딩방식이 필요
- Standard benchmark 너무 다양하기 때문에 표준화된 벤치마크의 필요성
- Model interpretability 데이터 이해능력의 탐구
- Easy to use 대부분 데이터 직렬화가 필요해서 모델 엑세스가 쉽지않음. 다른사람들이 사용하기 쉬워야함.(자동전처리나 직렬화를 통합시킨다면 훨씬 쉬울것)
- Fine-tuning strategy design llm모델의 적합한 모델과 학습전략
- Model grafting 특화된 인코더를 사용해서 비문자 데이터를 매핑..한마디로 텍스트가 아닌 다른 유형의 데이터를 모델이 자체적으로 인코딩할수있다..
[중요내용 정리]
TABULAR 특징
- 데이터의 다양성 ( 이진,수치형,텍스트같은 다양한 유형포함)
- 불균형한 레이블과 없는값들이 많을수도
- 전처리 필요성
- 컨텍스트기반의 상호연결(예를들어 나이,교육수준,음주는 연결된)
- 순서 무관
- 사전지식의 부재 - 종종 이미지나 오디오데이터는 사전지식이 필요하다.
전통적인 tabular data과 딥러닝 활용
- Gradient Boosted Decision Trees
- 부스팅앙상블
- 한계점1 : 범주형특징같은것에 민감할수있으며, 암묵적 학습 수행이 가능
- 한계점2 : 시계열 데이터의 경우 처리하기 적합하지않다
- 한계점3 : 전체 분포가 골고루지 않을경우 일반화하기 어려울수 있다
- CNN방법론은 여러가지로 발전
- 데이터변환
- 미분가능트리
- 어텐션기반(TABNET)
- 정규화
- 여러가지 시도가 있었음에도 XGBoost, LightGBM, CatBoost 등을 포함한 GBDT 알고리즘 들이 여전히 우수함
- 베이지안 네트워크같은 딥러닝 적급낭버보가 LLM같은 생성모델의 발전
- LLM의 가장 전통적인 건 QA
- QA : TAPAS (Herzig et al., 2020), TABERT (Yin et al., 2020b), TURL (Deng et al., 2022a), TUTA (Wang et al., 2021), TABBIE (Iida et al., 2021)
LLM의 간단설명(여기선 대형 PLM이라고도 부름)
- 모델은 텍스트 말뭉치의 일반적인 문법 및 의미적 이해를 얻은 후, 과제별 목적에 맞추어 훈련됩니다
- 이전 연구에서는 표형식 데이터의 표현 학습을 위해 LM을 사용하였으나 이는 제한적이었습니다. 향후 연구에서는 표 데이터를 텍스트로 변환하여 PLM을 활용하여 의미 정보와 헤더 정보를 고려한 문맥적 표현을 학습하는 방법을 제안하였습니다. 이를 통해 크로스 테이블 학습과 특성 열의 순열 불변성을 지니는 모델을 구축하는 것이 가능해졌습니다.
현재 LLM의 잠재력에 대해 계속 탐구하고 있음.
- 딥 러닝 방법은 초기 훈련에서 사용되지 않은 데이터셋에서는 최적의 성능을 보이지 않는 경우가 많기 때문에, 사전 훈련과 세밀 조정 패러다임을 활용한 전이 학습이 매우 유망합니다. (= 파인튜닝)
- 표 데이터를 LLM에서 읽을 수 있는 자연 언어로 변환함으로써, 고차원 범주형 데이터의 one-hot 인코딩에 따른 차원의 저주(curse of dimensionality)를 피할 수 있습니다. (테뷸러 데이터를 txt로 변환해서 고차원문제를 해결)
- CoT를 통한 단계적인 추론과 같은 신생 능력은 LM을 언어 모델링에서 보다 일반적인 작업 해결 도구로 변형시켰습니다. LLM의 신생 능력이 표 데이터 모델링에서 얼마나 작동하는지 테스트하기 위해 더 많은 연구가 필요합니다.(cot 단계적 구성성/ 단계적 추론은 다양한 작업에 적용할수있게 해준다)
Contribtion
- LLM을 타블로 데이터 예측, 타블로 데이터 합성, 타블로 데이터 질문 답변, 테이블 이해와 같은 분야들을 세분화하여 분류
- 타블로 데이터에 LLM을 적용한 방법을 평가하는 다양한 측정 항목에 대한 현황과 분류법을 조사 (한마디로 정확도 측정 방법을 조사)
- 많이들 사용되는데이터셋에 대한 현황과 분류법을 조사
- Table data + llm 의 현황과 분류법
- 도전과제와 개요
Key techniques for LLMs’ applications on tabular data
- 직렬화
- Tabular -> text (text/json/xml...)
- 표를 쉼표같은 구분기호로 변환도 가능
- 마크다운 형식으로 변환도 가능
- Tabular -> text (text/json/xml...)
- Embedding based (직렬화 한걸 벡터화)
- Bert를 기반으로 하는 다양한 테이블 인코더들이 있다.
- 그래프기반,트리기반 데이터구조로 변환
- 하지만 직렬화를 해줘야 한다고
- 데이터 형식이 정확도에 매우 민감
- 예를 들어, DFLoader와 JSON 형식이 테이블 변환 작업에 더 적합하다는 연구 결과와 HTML 또는 XML 테이블 형식이 GPT 모델에서 더 잘 이해되는 것을 보여주는 연구 결과가 있습니다.
- 추가정보
- 직렬화+임베딩을 한번에 하는 방법들도 있다고함 (표에대한설명을 문장으로생성)
- LMs (Fine-tuned BLOOM on ToTTo (Parikh et al., 2020b), T0++ (Sanh et al., 2022), GPT-3 (Ouyang et al., 2022))
- Few-shot분류시 전통적인 리스트와 텍스트 템플릿이 llm 직렬화보다 성능이 더 좋았다고함
- 복잡하고 큰 LLM일수록 성능이좋다
- 직렬화+임베딩을 한번에 하는 방법들도 있다고함 (표에대한설명을 문장으로생성)
Table 조작(고려해야할 사항)
- LLM모델은 인풋시 텍스트 제한이 있다. 2048토큰까지 처리가능. Llama2는 4048토큰지원. 만약 테이블이 너무 크면부족할수가있다
- 길이는 문제가 없어도 긴문장을 처리시에 비효율적이다. '
- 1000토큰이상일경우 GPT3에서 성능저하를 확인
- 긴 프롬프트는 LLM 기반에서 너무 비싸다
Prompt engineering
- 프롬프트 = llm에 입력되는 텍스트
- 가장간단한 형식은 문자열
- IN-CONTEXT LEARNING = 유사한예를 통합하여 LLM이 원하는 결과를 이해하는데 도움이 되는걸 의미
- In-Context Learning은 특정한 맥락(context) 내에서 필요한 정보를 바탕으로 학습하는 방식을 말합니다. 이는 기존의 대규모 데이터 세트를 통해 사전 학습(pre-training)하는 과정 없이, 제한된 정보 내에서 바로 학습하고 적용할 수 있는 방식을 의미합니다.
- 프롬프트 엔지니어링을 통해 이루어진다.
- 사용자가 프롬프트를 입력하면 gpt3는 텍스트를 분석해서 컨텍스트를 이해하고 관련출력을 생성하는것. 사용자가 오늘 기분이 슬퍼 라는 프롬프트를 입력하면 gpt3가 그것참 유감이군요 제가 도와드릴일이 있을까요 라는 출력을 생성하는걸 의미합니다.
- 한마디로 프롬프트의 내용만으로 하고자하는 task를 수행하는것을 말한다. promt안의 맥락적의미(in context)를 이해하고 답변을 생성하는것. 프리트레이닝이나 파인튜닝같은 작업업이 별도의 학습과정이 존재하지않는다
- Zero shot
- Prompt: 빨간 사과가 영어로 뭐야?
- GPT: "Red Apple"
- One shot
- Prompt: 빨간 사과는 red 사과라고 할께. 노란 바나나는?
- GPT: 노란 바나나는 "yellow 바나나"입니다.
- Few shot
- Prompt: 빨간 사과는 red 사과라고 할께, 노란 바나나는 yellow 바나나야, 그럼 노란 사과는?
- GPT: 노란 사과는 "yellow 사과"입니다.
- Zero shot
- 예시는 CoT, SC 임
- 전자는 단계별 사고로 분해해서 더 나은 추론을 만들어내는 전략
- 다양한 사고방식을 허용한다는 직관을 바탕으로함
- Retrieval-augmented generation(rag / 검색증강생성)
- Llm모델의 출력을 최적화 하여 응답을 생성하기 전에 학습 데이터 소스 외부의 신뢰할 수 있는 지식 베이스를 참조하도록 하는 프로세스
- 이런 지식소스를 참조하여 다양한 환경에서 사용자 질문에 답변이 가능한 봇을 만드는것
- 1)검색모듈로 주어진 검색어나 질의에 따라 정보검색하고 문맥추출
- 2) 생성모듈로 앞서서 검색된정보들을 바탕으로 문장을 생성함.
- ROLE-PLAY
- 예를 들어, Zhao 등 (2023a)은 프롬프트 "통계 분석 전문가로 가정해보세요."로 실험을 진행했다고함
Preprocessing (테뷸러 데이터를 활용하여 데이터 직렬화 하는 방법)
- LIFT (Dinh et al., 2022)는 초기 노력 중 하나로, "열 이름은 값(Value)입니다"와 같은 자연어 문장 또는 "col1 = val1, col2 = val2, ..."와 같은 여러 방정식과 같은 직렬화 방법을 시도
- 동일한 결론은 TabLLM (Hegselmann et al., 2023)에서도 확인되었으며, 그들은 9가지 다른 직렬화 방법을 평가
- 텍스트로 구성된 모든 피처의 열거가 가장 우수한 성능을 발휘한다고 함(3번째 논문)
- TABLET논문방법을 사용하면 F1스코어가 매우 높게 오른다는걸 확인
- 스키마 기반의 프롬프트 엔지니어링은 데이터셋의 배경 정보, 작업 설명, 요약 및 예시 데이터 포인트를 포함한다고 함
- Summary Boosting (Manikandan et al., 2023)은 데이터+메타데이터를 텍스트 프롬프트로 직렬화하여 요약을 생성
- Serilize-LM (Jaitly et al., 2023)는 도메인 특정 데이터셋에서 LLM 성능을 향상시키기 위해 3가지 혁신적인 직렬화 기술을 소개
- 차량 분류를 예로 들면, 제조사, 색상 및 차체 유형과 같은 속성이 이제 단일한 더 풍부한 문장으로 결합
- 또한, 가장 관련성이 높은 피처를 식별하기 위해 공분산을 활용하고, 해당 피처를 중요하다고 라벨링하거나 가장 중요한 피처를 설명하는 문장을 추가 (데이터의 경중을 판단한다는 뜻 같다)
- 마지막으로, 테이블 데이터를 LaTeX 코드 형식으로 변환
- UniPredict (Wang et al., 2023a)는 임의의 입력 M을 대상 설명과 피처의 의미론적 설명으로 통합하여 메타데이터를 형식화
- ….
Time Series Forecasting (테이블 데이터 중에서도 시계열 예측 !!!!!!)
- ZeroTS (Gruver et al., 2023)은 GPT-3 (Brown et al., 2020)와 LLaMA-70B Touvron et al. (2023a)와 같은 LLM을 직접 시계열 예측에 사용
- 이 연구는 평균 절대 오차(MAE), 스케일 MAE 및 연속된 순위 확률 점수(CRPS)를 사용하여 모델을 평가하며, LLM은 간단한 규칙 기반의 완성을 선호하고 반복 및 추세를 캡처하는 경향이 있다고 언급
- => llm은 시계열 예측에도 매우 효율적이다.
- 이 연구는 평균 절대 오차(MAE), 스케일 MAE 및 연속된 순위 확률 점수(CRPS)를 사용하여 모델을 평가하며, LLM은 간단한 규칙 기반의 완성을 선호하고 반복 및 추세를 캡처하는 경향이 있다고 언급
- Finetuning시 일반적으로, 현재 LLaMa가 가장 일반적으로 사용되는 모델이며, fine-tuning에는 soft prompt가 적합한 접근 방식이라고 함
- 메트릭으로는 MAE가 가장 일반적인 메트릭
LLMs for tabular data generation (Tabular 데이터를 보완하는 새로운 방법론을 탐구-뉴데이터를 생성해서 활용)
- tabular데이터를 보완하는 새로운 방법론을 탐구
- Llm을 활용해서 새로운 tabular데이터를 생성하고 활용할 수 있는 방법들을 연구
- 한마디로 llm을 활용해서 데이터를 생성해서 활용한다!
- Borisov et al. (2023b)은 원본 tabular 데이터의 특성을 가진 합성 샘플을 생성하기 위해 GReaT11 (Generation of Realistic Tabular data)를 제안. GReaT 데이터 파이프라인은 문장 직렬화 방법을 사용하여 tabular 데이터를 의미 있는 텍스트로 변환하는 텍스트 인코딩 단계와 관련. 이후에는 GPT-2 또는 GPT-2 distill 모델을 미세 조정하는 과정이 이어짐.
- REaLTabFormer (Solatorio & Dupriez, 2023)은 GReaT를 확장하여 비관계형 및 관계형 타블러 데이터를 생성
- 등등....
++ figure4 참조
- 이러한 합성 데이터의 평가방법 4가지
- 저차원 통계: 열별 밀도와 열 간의 상관관계를 평가하여 개별 열의 분포와 열 간의 관계를 파악 (열별 데이터분포를 살펴봄으로써 다양성과 일관성을 평가한다. 예를들면 열값이 균일하게 분포되어있는지확인가능. 또 상관관계를 통해서 음의 상관관계이니지 직선적인 상관관계인지 등등 파악가능)
- 고차원 측정: 합성 데이터의 전체적인 신뢰성과 다양성을 측정하는 지표를 사용합니다. (=다양한 관점에서데이터품질과 다양성을 측정. 예를들어 실제데이터와 얼마나 유사한가 같은 지표)
- 개인 정보 보호: 원본 데이터의 개인 정보 보호 수준을 평가하기 위해 최근접 레코드와의 거리를 계산하는 지표를 사용합니다.(개인식별 가능성을 평가함, 원본데이터랑 유사도를 평가해서 유사할수록 개인정보 식별 가능서이 높아지고, 유사도가 낮을수록 개인정보수준이 높아진다))
- 하위 작업 성능: 합성 데이터를 사용하여 학습한 모델이 실제 데이터에서 얼마나 잘 작동하는지 평가합니다.
LLMs for table understanding
- TABLE QA
- Table and Conversation QA = QA인데 테이블만 사용하는게 아니라 다른 형식의 정보들도 같이 사용하여 대화를 진행
- Table Classification = 테이블을 종류별로 분류하는것
- Text2SQL = sql 생성
- Table NLG = 원본 테이블에 대한 설명을 생성
- Table NLI = 테이블안의 관계에 대해 분석(2019에 많이 팔린 상품은 무엇)
- Domain Specific = 영역별로 특화. 항공업계는 AIT-QA (Katsis et al., 2022)를 사용하는 것을 권장, 금융 관련 테이블 질문 답변 작업에는 TAT-QA (Zhu et al., 2021a)를 사용하는 것을 추천. 대략적으로 업계별로 추천하는것이 다르다는것으로 이해
- Pretraining = 테이블+영어문맥설명으로 프리트레이닝하면 테이블 이해해 더 좋은 결과를 볼수 있다라고 함
General ability of LLMs in QA
- Numerical QA = 수학 추론을 필요로 하는 질문(American Express의 평균 거래 별 결제량은 얼마입니까?)
- Text2SQL = Liu et al. (2023c)은 세 가지 유형의 키워드를 식별하는 질문 매처를 설계: 1) 열 이름과 관련된 용어, 2) 제한과 관련된 구절(예: "상위 10개"), 3) 알고리즘 또는 모듈 키워드.
- Impact of model size on performance=WebTableQuestions에서 6.7B 대 175B GPT-3 모델을 비교할 때, 작은 모델은 더 큰 모델의 점수의 절반만 달성
- Finetuning or No finetuning? LLMs(>70B 파라미터)를 파인튜닝하는 것에는 매우 제한적인 연구가 진행
QA 관련 논문들
- Chain-of-command (CoC)-사용자입력을 중간명령작업의 순서열로 변환
- Deng et al. (2022b)는 QA 작업을 세 가지 하위 작업으로 분할
- 불확실성을 명확히 하기 위해 질문을 할 것인지를 결정하는 Clarification Need Prediction (CNP)
- 명확히 하기 위해 질문을 생성하는 Clarification Question Generation (CQG)
- 질문에 대한 명확히가 필요하지 않은 경우 바로 답변을 생성하는 Conversational Question Answering (CQA)
- 검색능력도 중요함. 검색능력은 아래와같이 두가지 유형으로 나뉨
- 질문과 관련된 정보를 찾기 ( 예를들어 무슨열의 무슨행의 값을 구해줘(
- 추가정보와 예제를 얻는것
- 데이터 메인테이블 관련
- Zhao et al. (2023d)는 최상위-n개의 가장 관련성이 높은 문서를 반환하는 검색 모듈 (retriever module)의 성능 향상이 수치적 QA에서 최종 정확도를 일관되게 향상시킨다는 것을 관찰
- . Sui et al. (2023c)는 여러 개의 테이블 샘플링 방법 (행과 열)과 토큰 제한 매개변수를 기반으로 한 테이블 패킹을 탐구(질문과 가장 의미적으로 유사한 행을 검색)
- Dong et al. (2023)는 SC(Self-consistency, 또다른논문이다)를 사용하여 질문과 관련성에 따라 테이블을 순위 매김하기 위해 ChatGPT를 사용. 그 결과 10개세트의 검색결과를 생성한다음, 가장 자주보이는 세트를 선택. 이때도 SC방법이 사용되었다고함.
- cTBLS Sundar & Heck (2023)는 검색된 테이블 정보에 기반한 대화 응답을 검색하고 생성하기 위한 세 단계 아키텍처를 설계함
- RoBERTa (Liu et al., 2019)에서 유도된 양방향 인코더 기반의 Dense Table Retrieval (DTR) 모델을 사용해서 연관성이 가장높은 테이블을 식별(인코더만 사용한다)
- 두 번째 단계에서 트리플릿 손실을 사용하여 행을 순위 매기기 위한 Coarse System State Tracking 시스템을 사용 (??)
- 마지막으로, GPT-3.5는 그룹화된 지식 원본을 기준으로 한 쿼리와 관련성이 가장 높은 셀을 조건으로 하는 추가 질문에 대한 자연어 응답을 생성
- INPUT = 질의 기록, 순위 매김된 지식 원본 및 답변해야 할 질문이 포함된 프롬프트가 입력으로 제공
- . Zhao et al. (2023d)은 OpenAI의 Ada Embedding4과 Contriever (Izacard et al., 2022)를 검색기로 사용하고 BM25 (Robertson et al., 1995)를 희소 검색기로 사용. 여기서 말하는 검색기란 가장 관련성이 높은 텍스트랑 테이블을 추출하는데 도움을 주는것. 이 추출된 정보는 질문에 대한 입력 컨텍스트로 제공됩니다.
- 예제선별관련
- Gao et al. (2023)는 1) 무작위로 K개 선택 2) 질문의 유사성을 선택(유사성기준은 유클리드거리같은 사전에 정의된 기준을 사용) 3) 마스킹된 질문 유사성을 선택한다.(=질문과 예제간의 유사성을 평가해서 예제를 선택하는것) 4) 대상 SQL 쿼리 s∗와 유사한 k개의 예제를 선택.
Multi-turn tasks
LLM을 반복적으로 호출하는 파이프라인을 설계
3가지 카테고리로 분류된다
(1) 어려운 작업을 처리 가능한 하위 작업으로 분해하기 위해 (너무 복잡한 요청을 작은 여러개 작업으로 나눔)
- Suiet al. (2023b)은 하류 테이블 추론을 개선하기 위해 두 단계의 self-augmented prompting approach를 제안. 첫 번째로 프롬프트를 사용하여 LLM에게 테이블에 대한 중간 출력을 생성하도록 요청한 다음, 응답을 두 번째 프롬프트로 통합하여 하류 작업의 최종 답변을 요청한다.
- Ye et al.(2023b)은 또한 대량의 테이블을 작은 테이블로 분해하고 복잡한 질문을 텍스트 추론을 위해 단순한 하위 질문들로 변환하도록 LLM에게 안내
- Liu 등(2023e)의 경우, 상징적인 CoT 추론 경로를 촉진하기 위해, 모델이 명령을 실행하고 데이터를 처리하며 결과를 검토할 수 있는 Python 셸과 상호작용하도록 허용
(2) 새로운 사용자 입력에 기반하여 모델 출력을 업데이트하기 위해
- SParC의 경우, Spider (Yu 등, 2018b)를 기반으로 연이어 따르는 질문을 설계
(3) 특정 제약 조건을 해결하거나 오류를 수정하기 위해
- Zhao 등(2023a)은 테이블이 API 입력 제한을 초과하는 경우 다중 턴 프롬프트를 사용하여 이를 해결. 잘못된 부분이 생성되었을 경우 잘못된 경우를 LLM을 되돌려주는 반복적인 과정이 도움이 될수 있다고함.
아웃풋 평가 방식
- F1이 일반적이긴함
- ROUGE
- BLEU
- 시각화..
한계점과 미래방안
- Bias and fairness llm의 내재적인 편향 완화
- Hallucination 실제가 아닌값을 생성할 위험 (의료계쪽에서는 치명적)
- Numerical representation 숫자는 임베딩이 꼭 필요
- Categorical representation 컨텍스트 제한 초과시 데이터 일부가 날라가서 성능에 부정적이어짐. 이를 커버할수있는 인코딩방식이 필요
- Standard benchmark 너무 다양하기 때문에 표준화된 벤치마크의 필요성
- Model interpretability 데이터 이해능력의 탐구
- Easy to use 대부분 데이터 직렬화가 필요해서 모델 엑세스가 쉽지않음. 다른사람들이 사용하기 쉬워야함.(자동전처리나 직렬화를 통합시킨다면 훨씬 쉬울것)
- Fine-tuning strategy design llm모델의 적합한 모델과 학습전략
- Model grafting 특화된 인코더를 사용해서 비문자 데이터를 매핑..한마디로 텍스트가 아닌 다른 유형의 데이터를 모델이 자체적으로 인코딩할수있다
2. Large Language Model for Table Processing: A Survey
3.TabLLM: Few-shot Classification of Tabular Data with Large Language Models
4. Large Language Models Can Automatically Engineer Features for Few-Shot Tabular Learning
'<눈문,학회>' 카테고리의 다른 글
Retrieval Augmented Generation (RAG) and Beyond: A Comprehensive Survey on ... (5) | 2024.10.27 |
---|---|
논문쓰기 TIP (0) | 2023.07.17 |
Habitat Wave Scaling (0) | 2022.05.31 |
Beyond Peak Performance: Comparing the Real Performance of AI-Optimized FPGAs and GPUs (0) | 2022.02.28 |
AI Gauge: Runtime Estimation for Deep Learning in the Cloud (0) | 2021.09.09 |