🚀 KoSOLAR-10.7B-v0.2
KoSOLAR-10.7B-v0.2 是 upstage/SOLAR-10.7B-v1.0 的韓語詞彙擴展版本,在多種韓語網絡爬取數據集上進行了微調,提升了模型對韓語的理解和處理能力。

🚀 快速開始
加入我們的 Discord 社區!
如果您對大語言模型領域充滿熱情,希望交流知識和見解,我們熱烈邀請您加入我們的 Discord 服務器。需要注意的是,該服務器主要使用韓語交流。大語言模型領域發展迅速,如果不積極分享,我們的知識很快就會過時。讓我們一起合作,產生更大的影響!點擊鏈接加入:Discord 鏈接。
✨ 主要特性
- 韓語詞彙擴展:基於 upstage/SOLAR-10.7B-v1.0 擴展了韓語詞彙,增強了對韓語的理解。
- 微調優化:在多種韓語網絡爬取數據集上進行微調,提升了韓語任務的性能。
👥 團隊成員
研究人員 |
工程師 |
產品管理 |
用戶體驗設計 |
Myeongho Jeong |
Geon Kim |
Bokyung Huh |
Eunsue Choi |
Seungduk Kim |
Rifqi Alfi |
|
|
Seungtaek Choi |
Sanghoon Han |
|
|
|
Suhyun Kang |
|
|
📚 詳細文檔
模型介紹
此模型是 upstage/SOLAR-10.7B-v1.0 的韓語詞彙擴展版本,專門在 HuggingFace 上可用的各種韓語網絡爬取數據集上進行了微調。我們的方法是通過預訓練新標記的嵌入,並在保留基礎模型原始參數的同時,部分微調已有標記的 lm_head
嵌入,來擴展模型對韓語的理解。
🔧 技術細節
以下是我們的技術實現細節:
def freeze_partial_embedding_hook(grad):
grad[:32000] = 0
return grad
for name, param in model.named_parameters():
if ("lm_head" in name or "embed_tokens" in name) and "original" not in name:
param.requires_grad = True
if "embed_tokens" in name:
param.register_hook(freeze_partial_embedding_hook)
else:
param.requires_grad = False
我們的策略是選擇性地凍結模型參數。具體來說,我們保持基礎模型的大多數參數不變,同時專注於增強韓語能力。通過實驗,我們發現:
- 凍結已有標記的
embed_tokens
層對於維持整體性能至關重要。
- 解凍已有標記的
lm_head
層實際上可以提高性能。
因此,我們凍結了內部層和前 32,000 個 embed_tokens
,並在豐富的韓語和多語言語料庫上進行訓練。這種平衡的方法顯著提高了模型的韓語能力,同時不影響其原始語言能力。
使用與限制
請記住,此模型未經過基於指令的訓練。雖然它在韓語任務中表現出色,但我們建議在特定應用中進行仔細考慮和進一步訓練。
訓練詳情
我們的模型訓練全面且多樣化:
- 數據來源:
- 英韓段落對:5.86%
- 多語言語料庫(主要是英語):10.69%
- 韓語網頁內容:83.46%
- 詞彙擴展:
我們根據韓語網絡語料庫中的出現頻率,精心選擇了 8,960 個韓語標記。這個過程涉及多輪分詞器訓練、手動篩選和標記頻率分析,以確保為我們的模型提供豐富且相關的詞彙。
- 初始分詞器訓練:在韓語網絡語料庫上訓練一箇中間分詞器,詞彙量為 40,000 個標記。
- 提取新的韓語標記:從中間分詞器中識別出原始 SOLAR 分詞器中不存在的所有韓語標記。
- 手動構建分詞器:然後構建目標分詞器,專注於這些新的韓語標記。
- 頻率分析:使用目標分詞器處理 100GB 的韓語語料庫,統計每個標記的出現頻率。
- 標記列表優化:移除出現次數少於 6,000 次的標記,確保有足夠的標記用於後續模型訓練。
- 單字母字符處理:統計缺失的韓語單字母字符,並將出現次數超過 6,000 次的字符添加到目標分詞器中。
- 迭代優化:重複步驟 2 到 6,直到沒有可刪除或添加的標記。
- 新標記訓練偏差:我們的訓練數據偏向於包含更多帶有新標記的文本,以實現有效學習。
📄 許可證
本項目採用 Apache-2.0 許可證。