Loading views...

ReSRer GPT Reader 프롬프트 최적화

Date
Date
2024 Jan 17 0:0
Created by
Created by
Seonglae ChoSeonglae Cho
Created time
Created time
2024 Jan 17 4:55
Last edited by
Last edited by
Seonglae ChoSeonglae Cho
Last edited time
Last edited time
2024 Jan 18 9:1
Refs
Refs
오늘 목표는 GPT summarizer와 reader의 프롬프트를 최적화해서 성능을 최대로 높이는 것이다
  • 답안 제공시
  • 답안 미제공시
그러면서 답안에 두 모듈 진행 중 컨텍스트에 없는 비율 recall, precision을 확인하며 진행할 예정이다
 

GPT

baseline topk-1 gpt psgs_w100.dpr_nq.1_gpt-3.5-turbo
{'exact_match': 26.925207756232687, 'f1': 36.13242325784241, 'psgs_tokens': 135.95096952908588, 'read_fp': 21.689750692520775, 'read_tn': 1.10803324099723, 'ret_em': 47.50692520775623}
top-k2
{'exact_match': 29.61218836565097, 'f1': 39.97846382276714, 'psgs_tokens': 272.75650969529084, 'read_fp': 27.950138504155124, 'read_tn': 0.5817174515235457, 'ret_em': 56.98060941828255}
baseline topk-4 gpt
{'exact_match': 30.81967213114754, 'f1': 40.40037545072675, 'psgs_tokens': 544.1409836065574, 'read_fp': 33.9344262295082, 'read_tn': 0.6557377049180327, 'ret_em': 64.09836065573771}
baseline topk-8 gpt
{'exact_match': 31.606648199445985, 'f1': 42.93274362444592, 'psgs_tokens': 1094.1650969529087, 'read_fp': 41.52354570637119, 'read_tn': 0.221606648199446, 'ret_em': 72.90858725761773}
baseline topk-16 gpt
{'exact_match': 31.994459833795013, 'f1': 42.9381781336727, 'psgs_tokens': 2189.9739612188364, 'reader_fp': 59.541446208112866, 'reader_fn': 1.032258064516129}
32부터는 토큰 부족
baseline topk-10 gpt
{'exact_match': 33.22968605724839, 'f1': 43.10231143125888, 'psgs_tokens': 1368.1897506925209, 'read_fp': 41.13573407202216, 'read_tn': 0.08310249307479224, 'ret_em': 74.73684210526315}
 

GPT 1106

top-k1
{'exact_match': 30.41551246537396, 'f1': 40.33569098884983, 'tokens': 135.9382271468144, 'reader_fp': 0.2041551246537396, 'reader_fn': 0.03074792243767313, 'reader_precision': 0.5725058004640371, 'reader_recall': 0.8989071038251366}
top-k2
{'exact_match': 32.686980609418285, 'f1': 42.838019321398875, 'tokens': 272.75650969529084, 'reader_fp': 0.2598337950138504, 'reader_fn': 0.016897506925207757, 'reader_precision': 0.5439961108410306, 'reader_recall': 0.9483050847457627}
top-k4
{'exact_match': 33.29639889196676, 'f1': 44.4713305128544, 'tokens': 546.5484764542937, 'reader_fp': 0.33518005540166207, 'reader_fn': 0.009141274238227148, 'reader_precision': 0.49138293400588484, 'reader_recall': 0.9725457570715474}
top-k8
{'exact_match': 33.51800554016621, 'f1': 45.57744056497534, 'tokens': 1094.1670360110804, 'reader_fp': 0.39806094182825486, 'reader_fn': 0.004155124653739612, 'reader_precision': 0.4540273556231003, 'reader_recall': 0.987603305785124}
top-k16
{'exact_match': 33.961218836565095, 'f1': 46.26347198507874, 'tokens': 2189.9761772853185, 'reader_fp': 0.44930747922437675, 'reader_fn': 0.003601108033240997, 'reader_precision': 0.42786596119929454, 'reader_recall': 0.9893964110929854}
top-k32
{'exact_match': 34.51523545706371, 'f1': 46.73193531976337, 'tokens': 4382.209972299169, 'reader_fp': 0.489196675900277, 'reader_fn': 0.0019390581717451524, 'reader_precision': 0.4123128119800333, 'reader_recall': 0.9943820224719101}
 

결론

  • gpt 0613은 context 부족하고 32정도로 topk 늘려도 수렴
  • 1106이 토큰양은 훨씬 많지만 inference 속도는 같은 토큰양 기준 2~2.5배 느리고 성능은 상대적으로 꽤 좋다
  • 1106에서는 로그스케일로이지만 성능은 지속적으로 향상되는 걸로 보임
  • 걱정과 달리 reader hallucination은 거의 없다고 봐도 무방
  • 생각보다 답이 있는데 못찾는 경우가 많음 (40%). 하지만 짧은 단어의 답변이다 보니 evidence없이 단어만 포함된 경우가 많은데 비율상 얼마정도인지는 알기 어렵다
  • summarizer로
 
 
 
 

Recommendations