Randeng T5 Char 57M MultiTask Chinese
文字レベルT5アーキテクチャに基づく中国語マルチタスクモデルで、100以上の中国語データセットで微調整され、分類、推論、生成タスクをサポートします。
ダウンロード数 35
リリース時間 : 10/22/2022
モデル概要
このモデルは、燃灯-T5-文字レベル-57M-中国語版をベースに、100以上の中国語データセットで教師ありマルチタスク事前学習を行ったテキストからテキストへの生成モデルで、さまざまな自然言語処理タスクに適しています。
モデル特徴
マルチタスク学習
100以上の中国語データセットでマルチタスク事前学習を行い、分類、推論、生成タスクをカバーしています。
文字レベル処理
文字レベルT5アーキテクチャを採用し、中国語テキスト処理に適しています。
標準化promptテンプレート
異なるタスクのために標準化されたpromptテンプレートを設計し、統一処理を容易にしました。
モデル能力
テキスト分類
感情分析
要約生成
固有表現認識
キーワード抽出
読解
自然言語推論
意味マッチング
使用事例
テキスト分析
感情分析
テキストの感情傾向を分析(ポジティブ/ネガティブ)
入力例と出力例:入力'部屋は快適で、サービスも良好'、出力'ポジティブ'
ニュース分類
ニュース記事を分類
テキスト生成
要約生成
長文から簡潔な要約を生成
🚀 Randeng-T5-Char-57M-MultiTask-Chinese
Randeng-T5-Char-57M-MultiTask-Chineseは、Text2Text統一パラダイムの多言語多タスク事前学習モデルで、自然言語処理の様々なタスクに対応しています。
🚀 クイックスタート
- メインページ: Fengshenbang
- Github: Fengshenbang-LM
✨ 主な機能
Randeng-T5-Char-57M-Chineseをベースに、約100の中国語データセットを収集し、Text2Text統一パラダイムの教師ありタスク事前学習を行いました。
📦 インストール
このセクションでは、使用するライブラリのインストール方法を説明します。
pip install torch transformers
💻 使用例
基本的な使用法
import torch
from transformers import BertTokenizer, T5Config, T5ForConditionalGeneration
# load tokenizer and model
pretrained_model = "IDEA-CCNL/Randeng-T5-Char-57M-MultiTask-Chinese"
tokenizer = BertTokenizer.from_pretrained(pretrained_model)
config = T5Config.from_pretrained(pretrained_model)
model = T5ForConditionalGeneration.from_pretrained(pretrained_model, config=config)
model.resize_token_embeddings(len(tokenizer))
model.eval()
# tokenize
text = "情感分析任务:【房间还是比较舒适的,酒店服务良好】这篇文章的情感态度是什么?正面/负面"
encode_dict = tokenizer(text, max_length=512, padding='max_length',truncation=True)
inputs = {
"input_ids": torch.tensor([encode_dict['input_ids']]).long(),
"attention_mask": torch.tensor([encode_dict['attention_mask']]).long(),
}
# generate answer
logits = model.generate(
input_ids = inputs['input_ids'],
max_length=10,
early_stopping=True,
)
logits=logits[:,1:]
predict_label = [tokenizer.decode(i,skip_special_tokens=True) for i in logits]
print(predict_label)
# model output: 正面
高度な使用法
分類タスク以外のタスクのデータ構築例は以下の通りです。
example_dict={
"文本分类":{"text_a":"钢琴块3别踩白块儿3钢琴块3是一款简洁的钢琴模拟软件,在Android平台上,类似的软件还是比较多的。","choices":["相机","影视娱乐","棋牌中心","新闻","财经","策略","休闲益智","教育"]},
'新闻分类':{"text_a":"微软披露拓扑量子计算机计划!","choices":["故事","文化","娱乐","体育","财经","房产","汽车","教育","科技"]},
'情感分析':{"text_a":"刚买iphone13 pro 还不到一个月,天天死机最差的一次购物体验","choices":["好评","差评"]},
'意图识别':{"text_a":"打电话给吴小军。","choices":["放音乐","播放下一首","打电话","退出导航","开始导航","其他","暂停音乐","导航","开导航"]},
'语义匹配':{"text_a":"今天心情不好","text_b":"我很不开心","choices":["相似","不相似"]},
'自然语言推理':{"text_a":"小明正在上高中","text_b":"小明是一个初中生","choices":["无关","矛盾","蕴含"]},
'多项选择':{"text_a":"这大家千万不能着急,我们现在只是暂时输了7分。距离比赛结束还有20多分钟呢,我们是完全有机会转败为赢的,大家加油!","question":"说话人希望大家:","choices":["别得意","冷静一些","加快速度","提前预习"]},
'指代消解':{"text_a":"李鸣觉得董客这人,踏实得叫人难受。可因为孟野和森森太疯,他只好去找董客聊天,但在董客眼里,李鸣也是不正常,他竟然放着现成的大学不愿上。","question":"【他】指的是【李鸣】吗?","choices":["是","不是"]},
'实体识别':{"text_a":"北京大学是我国的一座历史名校,坐落在海淀区,蔡元培曾经担任校长","question":"机构"},
'抽取式阅读理解':{"text_a":"《H》正式定档3月7日下午两点整在京东商城独家平台开启第一批5000份预售,定价230元人民币,回馈最忠实的火星歌迷,意在用精品回馈三年来跟随华晨宇音乐不离不弃的粉丝们的支持与厚爱","question":"华晨宇专辑h预售价格是多少?"},
'关键词抽取':{"text_a":"今儿在大众点评,找到了口碑不错的老茶故事私房菜。"},
"生成式摘要":{"text_a":"针对传统的流量分类管理系统存在不稳定、结果反馈不及时、分类结果显示不直观等问题,设计一个基于web的在线的流量分类管理系统.该系统采用流中前5个包(排除3次握手包)所含信息作为特征值计算资源,集成一种或多种分类算法用于在线网络流量分类,应用数据可视化技术处理分类结果.实验表明:在采用适应在线分类的特征集和c4.5决策树算法做分类时,系统能快速做出分类,且精度达到94%以上;数据可视化有助于人机交互,改善分类指导."}
}
# 构造prompt的过程中,verbalizer这个占位key的内容,是通过 "/".join(choices) 拼接起来
dataset2instruction = {
"情感分析": {
"prompt": "{}任务:【{}】这篇文章的情感态度是什么?{}",
"keys_order": ["subtask_type","text_a", "verbalizer"],
"data_type": "classification",
},
"文本分类": {
"prompt": "{}任务:【{}】这篇文章的类别是什么?{}",
"keys_order": ["subtask_type","text_a", "verbalizer"],
"data_type": "classification",
},
"新闻分类": {
"prompt": "{}任务:【{}】这篇文章的类别是什么?{}",
"keys_order": ["subtask_type","text_a", "verbalizer"],
"data_type": "classification",
},
"意图识别": {
"prompt": "{}任务:【{}】这句话的意图是什么?{}",
"keys_order": ["subtask_type","text_a", "verbalizer"],
"data_type": "classification",
},
# --------------------
"自然语言推理": {
"prompt": "{}任务:【{}】和【{}】,以上两句话的逻辑关系是什么?{}",
"keys_order": ["subtask_type","text_a", "text_b", "verbalizer"],
"data_type": "classification",
},
"语义匹配": {
"prompt": "{}任务:【{}】和【{}】,以上两句话的内容是否相似?{}",
"keys_order": ["subtask_type","text_a", "text_b", "verbalizer"],
"data_type": "classification",
},
# -----------------------
"指代消解": {
"prompt": "{}任务:文章【{}】中{}{}",
"keys_order": ["subtask_type","text_a", "question", "verbalizer"],
"data_type": "classification",
},
"多项选择": {
"prompt": "{}任务:阅读文章【{}】问题【{}】?{}",
"keys_order": ["subtask_type","text_a", "question", "verbalizer"],
"data_type": "classification",
},
# ------------------------
"抽取式阅读理解": {
"prompt": "{}任务:阅读文章【{}】问题【{}】的答案是什么?",
"keys_order": ["subtask_type","text_a", "question"],
"data_type": "mrc",
},
"实体识别": {
"prompt": "{}任务:找出【{}】这篇文章中所有【{}】类型的实体?",
"keys_order": ["subtask_type","text_a", "question"],
"data_type": "ner",
},
# ------------------------
"关键词抽取": {
"prompt": "{}任务:【{}】这篇文章的关键词是什么?",
"keys_order": ["subtask_type","text_a"],
"data_type": "keys",
},
"关键词识别":{
"prompt": "{}任务:阅读文章【{}】问题【{}】{}",
"keys_order": ["subtask_type","text_a","question","verbalizer"],
"data_type": "classification",
},
"生成式摘要": {
"prompt": "{}任务:【{}】这篇文章的摘要是什么?",
"keys_order": ["subtask_type","text_a"],
"data_type": "summ",
},
}
def get_instruction(sample):
template = dataset2instruction[sample["subtask_type"]]
# print(template)
# print(sample)
sample["instruction"] = template["prompt"].format(*[
sample[k] for k in template["keys_order"]
])
print(sample["instruction"])
return sample["instruction"]
📚 ドキュメント
モデル分類
ニーズ | タスク | シリーズ | モデル | パラメータ | 追加情報 |
---|---|---|---|---|---|
汎用 | 自然言語変換 | 燃灯Randeng | マルチタスク | 57M | マルチタスク - 中国語 |
モデル情報
参考論文:Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer
Randeng-T5-Char-57M-Chineseをベースに、収集した100以上の中国語ドメインのマルチタスクデータセット(30万以上のサンプルをサンプリング)で微調整し、このマルチタスクバージョンを得ました。これらのマルチタスクには、感情分析、ニュース分類、テキスト分類、意図認識、自然言語推論、多肢選択、指示解消、抽出型読解、エンティティ認識、キーワード抽出、生成型要約が含まれます。
事前学習または微調整
Randeng-T5モデルの事前学習方法や、独自の下流タスクでRandengモデルを微調整したい場合は、Fengshenbang-LMプロジェクトをご利用ください。ここでは、以下の完全な例が提供されています。
📄 ライセンス
このプロジェクトは、Apache-2.0ライセンスの下で公開されています。
🔖 引用
もしあなたの研究や開発でこのモデルを使用した場合は、以下の論文を引用してください。
@article{fengshenbang,
author = {Jiaxing Zhang and Ruyi Gan and Junjie Wang and Yuxiang Zhang and Lin Zhang and Ping Yang and Xinyu Gao and Ziwei Wu and Xiaoqun Dong and Junqing He and Jianheng Zhuo and Qi Yang and Yongfeng Huang and Xiayu Li and Yanghan Wu and Junyu Lu and Xinyu Zhu and Weifeng Chen and Ting Han and Kunhao Pan and Rui Wang and Hao Wang and Xiaojun Wu and Zhongshen Zeng and Chongpei Chen},
title = {Fengshenbang 1.0: Being the Foundation of Chinese Cognitive Intelligence},
journal = {CoRR},
volume = {abs/2209.02970},
year = {2022}
}
また、以下のウェブサイトも引用できます。
@misc{Fengshenbang-LM,
title={Fengshenbang-LM},
author={IDEA-CCNL},
year={2021},
howpublished={\url{https://github.com/IDEA-CCNL/Fengshenbang-LM}},
}
Phi 2 GGUF
その他
Phi-2はマイクロソフトが開発した小型ながら強力な言語モデルで、27億のパラメータを持ち、効率的な推論と高品質なテキスト生成に特化しています。
大規模言語モデル 複数言語対応
P
TheBloke
41.5M
205
Roberta Large
MIT
マスク言語モデリングの目標で事前学習された大型英語言語モデルで、改良されたBERTの学習方法を採用しています。
大規模言語モデル 英語
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERTはBERT基礎モデルの蒸留バージョンで、同等の性能を維持しながら、より軽量で高効率です。シーケンス分類、タグ分類などの自然言語処理タスクに適しています。
大規模言語モデル 英語
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instructは多言語大規模言語モデルで、多言語対話ユースケースに最適化されており、一般的な業界ベンチマークで優れた性能を発揮します。
大規模言語モデル 英語
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM - RoBERTaは、100言語の2.5TBのフィルタリングされたCommonCrawlデータを使って事前学習された多言語モデルで、マスク言語モデリングの目標で学習されています。
大規模言語モデル 複数言語対応
X
FacebookAI
9.6M
664
Roberta Base
MIT
Transformerアーキテクチャに基づく英語の事前学習モデルで、マスク言語モデリングの目標を通じて大量のテキストでトレーニングされ、テキスト特徴抽出と下流タスクの微調整をサポートします。
大規模言語モデル 英語
R
FacebookAI
9.3M
488
Opt 125m
その他
OPTはMeta AIが公開したオープンプリトレーニングトランスフォーマー言語モデルスイートで、パラメータ数は1.25億から1750億まであり、GPT-3シリーズの性能に対抗することを目指しつつ、大規模言語モデルのオープンな研究を促進するものです。
大規模言語モデル 英語
O
facebook
6.3M
198
1
transformersライブラリに基づく事前学習モデルで、様々なNLPタスクに適用可能
大規模言語モデル
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1はMetaが発表した多言語大規模言語モデルシリーズで、8B、70B、405Bのパラメータ規模を持ち、8種類の言語とコード生成をサポートし、多言語対話シーンを最適化しています。
大規模言語モデル
Transformers 複数言語対応

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
T5ベーシック版はGoogleによって開発されたテキスト-to-テキスト変換Transformerモデルで、パラメータ規模は2.2億で、多言語NLPタスクをサポートしています。
大規模言語モデル 複数言語対応
T
google-t5
5.4M
702
おすすめAIモデル
Llama 3 Typhoon V1.5x 8b Instruct
タイ語専用に設計された80億パラメータの命令モデルで、GPT-3.5-turboに匹敵する性能を持ち、アプリケーションシナリオ、検索拡張生成、制限付き生成、推論タスクを最適化
大規模言語モデル
Transformers 複数言語対応

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-TinyはSODAデータセットでトレーニングされた超小型対話モデルで、エッジデバイス推論向けに設計されており、体積はCosmo-3Bモデルの約2%です。
対話システム
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
RoBERTaアーキテクチャに基づく中国語抽出型QAモデルで、与えられたテキストから回答を抽出するタスクに適しています。
質問応答システム 中国語
R
uer
2,694
98