cl-nagoya/ruri-pt-base ã RetroMAE ã§äºååŠç¿ããã¢ãã«ã§ãã
以äžã¯èšäºæ¥æ¬èª BERT RetroMAE ã¢ãã«ã®å ¬éãšãåŸç¶æ€çŽ¢ã¿ã¹ã¯ã§ã®è©äŸ¡ããã®è»¢èŒãšãªããŸãã
æ¥æ¬èª BERT RetroMAE ã¢ãã«ã®å ¬éãšãåŸç¶æ€çŽ¢ã¿ã¹ã¯ã§ã®è©äŸ¡
æ€çŽ¢ã¿ã¹ã¯ã«ãããŠãã¯ãšãªãšææžã®æå³çãªé¡äŒŒæ§ãæãããã¥ãŒã©ã«ãããã¯ãŒã¯ãçšããæ€çŽ¢ã¯éèŠãªæè¡ã§ãããããããåŸæ¥ã®BERTãªã©ã®èšèªã¢ãã«ã¯ãäž»ã«ããŒã¯ã³ã¬ãã«ã®ã¿ã¹ã¯ã§äºååŠç¿ãããŠãããæã¬ãã«ã®è¡šçŸåãååã«çºéããŠããªããšãã課é¡ããã£ãããã®èª²é¡ã解決ãããããæ€çŽ¢ã«ç¹åããäºååŠç¿ã®æ°ããææ³ãšã㊠RetroMAE: Pre-Training Retrieval-oriented Language Models Via Masked Auto-Encoder ãææ¡ãããŠããã
æ¬èšäºã§ã¯ãRetroMAEãçšããŠæ¥æ¬èªBERTãäºååŠç¿ããã¢ãã«ãäœæã»å ¬éããåŸç¶ã®æ€çŽ¢ã¿ã¹ã¯(JMTEB)ã§è©äŸ¡ãè¡ã£ãŠããã
| model_name | Avg. | jagovfaqs 22k |
jaqket | mrtydi | nlp_journal abs_intro |
nlp_journal title_abs |
nlp_journal title_intro |
|---|---|---|---|---|---|---|---|
| bert-base-japanese-v3 | 0.7266 | 0.6532 | 0.6236 | 0.4521 | 0.8774 | 0.9732 | 0.7803 |
| bert-base-japanese-v3 retromae |
0.7352 | 0.6631 | 0.6632 | 0.4526 | 0.8893 | 0.9722 | 0.7708 |
| ruri-pt-base retromae |
0.7397 | 0.6678 | 0.6691 | 0.4667 | 0.8931 | 0.9605 | 0.7812 |
çµæãšããŠãã»ãŒå šãŠã®ã¹ã³ã¢ã«ãããŠæ§èœåäžã確èªãããŠãããRetroMAEã®æçæ§ã確èªãããããŸãåŠç¿æ¹æ³ããæåž«ãªãã§ããã¹ãã®ã¿ãäžããã°è¯ããšããæè»œããå®çšæ§ãé«ãã§ãããã
RetroMAE ã«ã€ããŠ
RetroMAEã®ç¹åŸŽã¯ãMasked Auto-Encoderã®ææ³ãæ¡çšããªããã以äžã®3ã€ã®èšèšãåãå ¥ããç¹ã§ããã
- å ¥åæã«å¯ŸããŠç°ãªããã¹ã¯ãé©çšããæ°ããã¯ãŒã¯ãããŒ
- ãšã³ã³ãŒããŒãšãã³ãŒããŒã§éå¯Ÿç§°ãªæ§é ãæ¡çš
- ãšã³ã³ãŒããŒãšãã³ãŒããŒã§ç°ãªããã¹ã¯çã䜿çš
ãããã®å·¥å€«ã«ãããææžã®æå³ãããæ·±ãçè§£ãã广çãªæ€çŽ¢ãå¯èœã«ãã衚çŸåŠç¿ãå®çŸããŠãããå®éã®è©äŸ¡ã«ãããŠããBEIRãMS MARCOãªã©ã®ãã³ãããŒã¯ã§åªããæ§èœã瀺ããŠããããŸã髿§èœã®ãã«ããªã³ã¬ã«å¯ãã¯ãã«ã¢ãã«ã® BAAI/bge-m3 ã RetroMAE ãçšããäºååŠç¿ãè¡ãªã£ãŠãããšããå®çžŸãããã
ãªããRetroMAE ã¯ãããªãé²åçãªææ³ã§ãã RetroMAE v2: Duplex Masked Auto-Encoder For Pre-Training Retrieval-Oriented Language Models (DupMAE) ãææ¡ãããŠããããæ¬å 容ã§ã¯ RetroMAE ãæ±ã£ãŠããã
ç°ãªããã¹ã¯ãé©çšããã¯ãŒã¯ãããŒ
RetroMAE ã§ã¯ãå ¥åæã«å¯ŸããŠ2ã€ã®ç°ãªããã¹ã¯ãé©çšããã1ã€ç®ã®ãã¹ã¯ãé©çšããå ¥åãããšã³ã³ãŒããŒãæåã蟌ã¿ãçæãã2ã€ç®ã®ãã¹ã¯ãé©çšããå ¥åãšãã®æåã蟌ã¿ãçµã¿åãããŠãã³ãŒããŒãå ã®æã埩å ããã
ãšã³ã³ãŒããŒãšãã³ãŒããŒã§éå¯Ÿç§°ãªæ§é
RetroMAEã¯ããšã³ã³ãŒããŒãšãã³ãŒããŒã§æå³çã«éå¯Ÿç§°ãªæ§é ãæ¡çšããŠããããšã³ã³ãŒããŒã«ã¯å ¥åæã®æå³ãååã«æãããããBERTã®ãã©ã³ã¹ãã©ãŒããŒïŒ12å±€ïŒã䜿çšãããäžæ¹ããã³ãŒããŒã¯æ¥µããŠã·ã³ãã«ãª1å±€ã®ãã©ã³ã¹ãã©ãŒããŒã®ã¿ãæ¡çšããŠããããã®ã·ã³ãã«ãªãã³ãŒããŒæ§é ã«ãããæã®åŸ©å ã¿ã¹ã¯ãããå°é£ã«ãªããçµæãšããŠãšã³ã³ãŒããŒããã質ã®é«ãæåã蟌ã¿ãçæå¯èœã«åŠç¿ãããã
ããã«ã1å±€ã®ãã³ãŒããŒã«ã¯ Enhanced decoding ãšããç¹æ®ãªä»çµã¿ãå°å ¥ãããŠãããããã¯ãæåã蟌ã¿ãšäœçœ®åã蟌ã¿ãçµã¿åãããã¯ãšãªãšãæåã蟌ã¿ã»ããŒã¯ã³åã蟌ã¿ã»äœçœ®åã蟌ã¿ãçµã¿åãããã³ã³ããã¹ãã®2ã€ãçšæããäœçœ®ã«å¿ãã attention mask ãé©çšããæ¹åŒã§ããããã®ä»çµã¿ã«ããããã¹ãŠã®å ¥åããŒã¯ã³ããã³ãŒãã®åŸ©å 察象ãšããŠäœ¿çšã§ãããã€åããŒã¯ã³ãç¬èªã®ã³ã³ããã¹ããã埩å ãããããã«ãªããããã«ãããéããããã³ãŒããŒå±€æ°ã§ãå¹ççãªåŠç¿ãå¯èœãšãªã£ãŠããã
ãšã³ã³ãŒããŒãšãã³ãŒããŒã§ç°ãªããã¹ã¯çã䜿çš
ãšã³ã³ãŒããŒã«ã¯é©åºŠãªãã¹ã¯çïŒ15ã30%ïŒãé©çšããå ¥åæã®å€§éšåã®æ å ±ãä¿æã§ããããã«ããŠãããäžæ¹ããã³ãŒããŒã«ã¯ç©æ¥µçãªãã¹ã¯çïŒ50ã70%ïŒãé©çšããããã®é«ããã¹ã¯çã«ããããã³ãŒããŒã¯å ¥åã®ã¿ã§ã¯ååãªåŸ©å ãé£ãããªãããšã³ã³ãŒããŒãçæããæåã蟌ã¿ã«å€§ããäŸåããããåŸãªããªããçµæãšããŠããšã³ã³ãŒããŒã¯ããæ·±ãæå³çè§£ã匷å¶ãããä»çµã¿ãšãªã£ãŠããã
RetroMAE æ¥æ¬èªã¢ãã«ã®äºååŠç¿
å è«æã§ã¯ãè±èªã®wikipedia, BookCorpus, MS MarcoãããŒã¿ã»ãããšããŠåŠç¿ãããŠããããã®ãããæ¥æ¬èªããŒã¿ã»ãããšããŠã¯é¡äŒŒã¿ã¹ã¯ãå«ãã以äžã®ããŒã¿ã»ãããçšããã
- (A) wikipedia æ¥æ¬èª - hpprc/jawiki-paragraphs
- (A) jawiki-books - hpprc/jawiki-books-paragraphs
- (B) MQA æ¥æ¬èª - hpprc/mqa-ja
- (B) JSNLI - shunk031/jsnli
wikipedia, jawiki-books ã¯ãã©ã°ã©ãã®ã¿(ã¿ã€ãã«ã¯å«ãŸã)ãMQA㯠query ãš doc ãé£çµããæç« ãJSNLIã¯ç©ºçœãåé€ããæç« ãçšããŠããã
ãŸãããŒãã®éã¿ããåŠç¿ãè¡ãã®ã§ã¯ãªããRetroMAEãåŠç¿ãããããã®ã¢ãã«ãšã㊠tohoku-nlp/bert-base-japanese-v3ãš cl-nagoya/ruri-pt-baseãçšãããruri-pt-base 㯠bert-base-japanese-v3 ãå ã«ãå¯Ÿç §åŠç¿ãè¡ãªã£ãäºååŠç¿ã¢ãã«ã§ããããã®éçšã§ MLM ã®ãã³ãŒãå±€ã倱ãããããããã³ãŒãå±€ã®éã¿ãšããŠbert-base-japanese-v3ããã³ããŒãè¡ã£ãã¢ãã«ãå©çšããã
åŠç¿çšã¹ã¯ãªããã¯OSS(MITã©ã€ã»ã³ã¹)ã§å ¬éãããŠãããretromae_pretrain ãçšãããåŠç¿ãã©ã¡ãŒã¿ã¯ãšã³ã³ãŒãã®ãã¹ã¯çã 30%ããã³ãŒãã®ãã¹ã¯çã50%ãšããŠããããã®ä» Trainer ã®ãã€ããŒãã©ã¡ãŒã¿ã¯ä»¥äžã§ããã
"learning_rate": 1e-4,
"num_train_epochs": 2,
"per_device_train_batch_size": 16,
"gradient_accumulation_steps": 32,
"warmup_ratio": 0.05,
"lr_scheduler_type": "cosine",
"bf16": true,
"dataloader_drop_last": true,
"dataloader_num_workers": 12
ããããçšããŠãããŒã¿ã»ããã® (A) ã®ã¿ãš (A) + (B) ã䜿ã£ãŠ RetroMAE äºååŠç¿ã¢ãã«ãäœæããã
åŸç¶æ€çŽ¢ã¿ã¹ã¯ã§ã®è©äŸ¡
åŸç¶æ€çŽ¢ã¿ã¹ã¯ãšããŠãæ¥æ¬èªSPLADEã¢ãã«ã mmacro ããŒã¿ã»ããã®ã¿ã§åŠç¿ãããŠè©äŸ¡ãè¡ã£ãããã©ã¡ãŒã¿ã¯ japanese-splade-base-v1-mmarco-only ã® model ã®ãšããã¯æ°ã12ãã10ã«åæžããmodel_name ãä»åè©äŸ¡ãããã®ã«å·®ãæ¿ãããã®ã§ããã
ãŸããè©äŸ¡ã«ã¯ JMTEB ã®ã¹ããŒã¹ãã¯ãã«ãè©äŸ¡ã§ããããã«å€æŽããforkçãçšããæ€çŽ¢ã¿ã¹ã¯(retrieval)ã§è¡ã£ãã
è©äŸ¡çµæã¹ã³ã¢ã¯ä»¥äžã§ããã
| model_name | Avg. | jagovfaqs 22k |
jaqket | mrtydi | nlp_journal abs_intro |
nlp_journal title_abs |
nlp_journal title_intro |
|---|---|---|---|---|---|---|---|
| bert-base-japanese-v3 | 0.7266 | 0.6532 | 0.6236 | 0.4521 | 0.8774 | 0.9732 | 0.7803 |
| bert-base-japanese-v3 retromae(A) |
0.7361 | 0.6655 | 0.6621 | 0.4557 | 0.888 | 0.9604 | 0.7848 |
| ruri-pt-base retromae(A) |
0.737 | 0.6657 | 0.6541 | 0.4608 | 0.8823 | 0.9768 | 0.7821 |
| bert-base-japanese-v3 retromae(A+B) |
0.7352 | 0.6631 | 0.6632 | 0.4526 | 0.8893 | 0.9722 | 0.7708 |
| ruri-pt-base retromae(A+B) |
0.7397 | 0.6678 | 0.6691 | 0.4667 | 0.8931 | 0.9605 | 0.7812 |
ã»ãŒå šãŠã®è©äŸ¡ã«ãããŠãRetroMAE ã§åŠç¿ãããŠããªãã¢ãã«ããããRetroMAEã§åŠç¿ãããã¢ãã«ã®æ¹ãã¹ã³ã¢ãé«ãããšãèšæž¬ããããæãè©äŸ¡ãè¯ãã£ã ruri-pt-base retromae(A+B) ã«ãããŠã¯ãbert-base-japanese-v3 ãããçŽ2%ã»ã©æ§èœãåäžããã
ãŸãåŠç¿ããŒã¿ã»ããã (A) ã®ã¿ããããåºæ¬çã«(A) + (B) äž¡æ¹ã®ããŒã¿ã»ãããåŠç¿ãããæ¹ãã¹ã³ã¢ãé«ãã£ããããã¯ãããã«ããŒã¿ã»ããã远å ããããç¹å®ãã¡ã€ã³ã®ããã¹ããåŠç¿ãããããšã§ãæ§èœåäžã«å¯äžããããªçµæã§ããã
ãªãã(A+B)ã®ããŒã¿ã»ããã§åŠç¿ããã RetroMAE ã¢ãã«ããHuggingFace ã§å ¬éããŠããã
- https://huggingface.co/hotchpotch/ruri-pt-base-retromae
- https://huggingface.co/hotchpotch/bert-base-japanese-v3-retromae
ãããã«
æ¬èšäºã§ã¯ãæ€çŽ¢ã¿ã¹ã¯ã«ç¹åããäºååŠç¿ææ³ã§ããRetroMAEãæ¥æ¬èªBERTã¢ãã«ã«é©çšãããã®å¹æãæ€èšŒãããåŸç¶ã¿ã¹ã¯ã®SPLADEã¢ãã«ã§ã®è©äŸ¡ã®çµæãRetroMAEã§åŠç¿ãããã¢ãã«ã¯ãããŒã¹ã©ã€ã³ãšãªãbert-base-japanese-v3ãšæ¯èŒããŠãã»ãŒãã¹ãŠã®æ€çŽ¢ã¿ã¹ã¯ã§æ§èœåäžã確èªããããç¹ã«ãå¯Ÿç §åŠç¿æžã¿ã®ruri-pt-baseãããŒã¹ã«ãWikipediaãæžç±ã質åå¿çããŒã¿ãªã©è€æ°ã®ããŒã¿ã»ããã§åŠç¿ãããã¢ãã«ã§ã¯ãå¹³åçŽ2%ã®æ§èœåäžãéæãããã
ãŸããRetroMAEã®å©ç¹ãšããŠãæåž«ãªãã§ããã¹ãããŒã¿ã®ã¿ãçšããŠåŠç¿ã§ããæè»œããæ³šç®ã«å€ãããããã¯ãç¹å®ãã¡ã€ã³ãæ¥ååãã«ã¢ãã«ãã«ã¹ã¿ãã€ãºããéã«ãæçšã§ãããå®çšæ§ãé«ããšèšãããä»åŸã¯ããããªãåŠç¿ããŒã¿ã®è¿œå ããç¹å®ãã¡ã€ã³ã®ããã¹ããçšãã远å åŠç¿ã«ããæ§èœåäžã®å¯èœæ§ãæåŸ ã§ããã
ãªãäœæããRetroMAEã¢ãã«ã¯HuggingFaceäžã§å ¬éããŠããå©çšå¯èœãšãªã£ãŠãããæ¬èšäºããæ¥æ¬èªã®æ€çŽ¢ã¿ã¹ã¯ã®æ§èœåäžã«è²¢ç®ã§ããã°å¹žãã§ããã