KorPatBERT (BERT สิทธิบัตรเกาหลี) คือโมเดลภาษา AI ที่วิจัยและพัฒนาโดย Korea Patent Information Service
เพื่อที่จะแก้ไขปัญหาการประมวลผลภาษาธรรมชาติของเกาหลีในสาขาสิทธิบัตรและเตรียมโครงสร้างพื้นฐานข้อมูลอัจฉริยะในอุตสาหกรรมสิทธิบัตร การฝึกอบรมล่วงหน้าเกี่ยวกับเอกสารสิทธิบัตรในประเทศจำนวนมาก (ฐาน: ประมาณ 4.06 ล้านเอกสาร ใหญ่: ประมาณ 5.06 ล้านเอกสาร) ขึ้นอยู่กับสถาปัตยกรรมของโมเดลพื้นฐานของ Google BERT ที่มีอยู่ (การฝึกอบรมล่วงหน้า) และให้บริการฟรี
เป็นโมเดลภาษาก่อนการฝึกอบรมประสิทธิภาพสูงที่เชี่ยวชาญเฉพาะด้านสิทธิบัตร และสามารถนำไปใช้ในงานประมวลผลภาษาธรรมชาติต่างๆ
[ฐาน KorPatBERT]
[KorPatBERT-ใหญ่]
[ฐาน KorPatBERT]
[KorPatBERT-ใหญ่]
คำนามหลักและคำนามประสมประมาณ 10 ล้านคำถูกดึงออกมาจากเอกสารสิทธิบัตรที่ใช้ในการเรียนรู้แบบจำลองภาษา และสิ่งเหล่านี้ถูกเพิ่มลงในพจนานุกรมผู้ใช้ของเครื่องวิเคราะห์หน่วยคำภาษาเกาหลี Mecab-ko จากนั้นจึงแบ่งออกเป็นคำย่อยผ่าน Google Sentence Piece นี่คือ MSP เฉพาะทาง tokenizer (เครื่องโทเค็นสิทธิบัตร Mecab-ko Sentencepiece)
แบบอย่าง | ท็อป@1(เอซีซี) |
---|---|
Google เบิร์ต | 72.33 |
คอร์เบิร์ต | 73.29 |
โคเบิร์ต | 33.75 |
ครูเบิร์ต | 72.39 |
KorPatBERT-ฐาน | 76.32 |
กพัทเบิร์ต-ใหญ่ | 77.06 |
แบบอย่าง | ท็อป@1(เอซีซี) | ท็อป@3(เอซีซี) | ท็อป@5(ACC) |
---|---|---|---|
KorPatBERT-ฐาน | 61.91 | 82.18 | 86.97 |
กพัทเบิร์ต-ใหญ่ | 62.89 | 82.18 | 87.26 |
ชื่อโปรแกรม | รุ่น | เส้นทางคู่มือการติดตั้ง | ที่จำเป็น? |
---|---|---|---|
หลาม | 3.6 และสูงกว่า | https://www.python.org/ | ย |
อนาคอนด้า | 4.6.8 และสูงกว่า | https://www.anaconda.com/ | เอ็น |
เทนเซอร์โฟลว์ | 2.2.0 และสูงกว่า | https://www.tensorflow.org/install/pip?hl=ko | ย |
ชิ้นส่วนประโยค | 0.1.96 หรือสูงกว่า | https://github.com/google/sentencepiece | เอ็น |
เมคับ-โค | 0.996-en-0.0.2 | https://bitbucket.org/eunjeon/mecab-ko-dic/src/master/ | ย |
mecab-โค-ดิก | 2.1.1 | https://bitbucket.org/eunjeon/mecab-ko-dic/src/master/ | ย |
mecab-หลาม | 0.996-en-0.9.2 | https://bitbucket.org/eunjeon/mecab-ko-dic/src/master/ | ย |
หลาม-mecab-ko | 1.0.11 หรือสูงกว่า | https://pypi.org/project/python-mecab-ko/ | ย |
เคราส | 2.4.3 และสูงกว่า | https://github.com/keras-team/keras | เอ็น |
bert_for_tf2 | 0.14.4 และสูงกว่า | https://github.com/kpe/bert-for-tf2 | เอ็น |
ทีคิวดีเอ็ม | 4.59.0 และสูงกว่า | https://github.com/tqdm/tqdm | เอ็น |
ซอยน์แอลพี | 0.0.493 หรือสูงกว่า | https://github.com/lovit/soynlp | เอ็น |
Installation URL: https://bitbucket.org/eunjeon/mecab-ko-dic/src/master/
mecab-ko > 0.996-ko-0.9.2
mecab-ko-dic > 2.1.1
mecab-python > 0.996-ko-0.9.2
from korpat_tokenizer import Tokenizer
# (vocab_path=Vocabulary 파일 경로, cased=한글->True, 영문-> False)
tokenizer = Tokenizer(vocab_path="./korpat_vocab.txt", cased=True)
# 테스트 샘플 문장
example = "본 고안은 주로 일회용 합성세제액을 집어넣어 밀봉하는 세제액포의 내부를 원호상으로 열중착하되 세제액이 배출되는 절단부 쪽으로 내벽을 협소하게 형성하여서 내부에 들어있는 세제액을 잘짜질 수 있도록 하는 합성세제 액포에 관한 것이다."
# 샘플 토크나이즈
tokens = tokenizer.tokenize(example)
# 샘플 인코딩 (max_len=토큰 최대 길이)
ids, _ = tokenizer.encode(example, max_len=256)
# 샘플 디코딩
decoded_tokens = tokenizer.decode(ids)
# 결과 출력
print("Length of Token dictionary ===>", len(tokenizer._token_dict.keys()))
print("Input example ===>", example)
print("Tokenized example ===>", tokens)
print("Converted example to IDs ===>", ids)
print("Converted IDs to example ===>", decoded_tokens)
Length of Token dictionary ===> 21400
Input example ===> 본 고안은 주로 일회용 합성세제액을 집어넣어 밀봉하는 세제액포의 내부를 원호상으로 열중착하되 세제액이 배출되는 절단부 쪽으로 내벽을 협소하게 형성하여서 내부에 들어있는 세제액을 잘짜질 수 있도록 하는 합성세제 액포에 관한 것이다.
Tokenized example ===> ['[CLS]', '본', '고안', '은', '주로', '일회용', '합성', '##세', '##제', '##액', '을', '집', '##어넣', '어', '밀봉', '하', '는', '세제', '##액', '##포', '의', '내부', '를', '원호', '상', '으로', '열', '##중', '착하', '되', '세제', '##액', '이', '배출', '되', '는', '절단부', '쪽', '으로', '내벽', '을', '협소', '하', '게', '형성', '하', '여서', '내부', '에', '들', '어', '있', '는', '세제', '##액', '을', '잘', '짜', '질', '수', '있', '도록', '하', '는', '합성', '##세', '##제', '액', '##포', '에', '관한', '것', '이', '다', '.', '[SEP]']
Converted example to IDs ===> [5, 58, 554, 32, 2716, 6554, 817, 20418, 20308, 20514, 15, 732, 15572, 39, 1634, 12, 11, 5934, 20514, 20367, 9, 315, 16, 5922, 17, 33, 279, 20399, 16971, 26, 5934, 20514, 13, 674, 26, 11, 10132, 1686, 33, 3781, 15, 11950, 12, 64, 87, 12, 3958, 315, 10, 51, 39, 25, 11, 5934, 20514, 15, 1803, 12889, 399, 24, 25, 118, 12, 11, 817, 20418, 20308, 299, 20367, 10, 439, 56, 13, 18, 14, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
Converted IDs to example ===> ['본', '고안', '은', '주로', '일회용', '합성', '##세', '##제', '##액', '을', '집', '##어넣', '어', '밀봉', '하', '는', '세제', '##액', '##포', '의', '내부', '를', '원호', '상', '으로', '열', '##중', '착하', '되', '세제', '##액', '이', '배출', '되', '는', '절단부', '쪽', '으로', '내벽', '을', '협소', '하', '게', '형성', '하', '여서', '내부', '에', '들', '어', '있', '는', '세제', '##액', '을', '잘', '짜', '질', '수', '있', '도록', '하', '는', '합성', '##세', '##제', '액', '##포', '에', '관한', '것', '이', '다', '.']
※ มันเหมือนกับวิธีการเรียนรู้พื้นฐานของ Google BERT และสำหรับตัวอย่างการใช้งาน โปรดดูส่วนที่ 2.3 특허분야 사전학습 언어모델(KorPatBERT) 사용자 매뉴얼
เรากำลังเผยแพร่แบบจำลองภาษาของสถาบันข้อมูลสิทธิบัตรเกาหลีผ่านขั้นตอนบางอย่างแก่องค์กร บริษัท และนักวิจัยที่สนใจ กรุณากรอกแบบฟอร์มใบสมัครและข้อตกลงตามขั้นตอนการสมัครด้านล่างและส่งใบสมัครทางอีเมลไปยังบุคคลที่รับผิดชอบ
ชื่อไฟล์ | คำอธิบาย |
---|---|
pat_all_mecab_dic.csv | พจนานุกรมผู้ใช้สิทธิบัตร Mecab |
lm_test_data.tsv | ชุดข้อมูลตัวอย่างการจำแนกประเภท |
korpat_tokenizer.py | โปรแกรม KorPat Tokenizer |
test_tokenize.py | ตัวอย่างการใช้งาน Tokenizer |
test_tokenize.ipynb | ตัวอย่างการใช้งาน Tokenizer (Jupiter) |
test_lm.py | ตัวอย่างการใช้โมเดลภาษา |
test_lm.ipynb | ตัวอย่างการใช้โมเดลภาษา (Jupyter) |
korpat_bert_config.json | ไฟล์กำหนดค่า KorPatBERT |
korpat_vocab.txt | ไฟล์คำศัพท์ KorPatBERT |
model.ckpt-381250.meta | ไฟล์โมเดล KorPatBERT |
model.ckpt-381250.index | ไฟล์โมเดล KorPatBERT |
model.ckpt-381250.data-00000-of-00001 | ไฟล์โมเดล KorPatBERT |