当前位置:   article > 正文

通用视觉大模型_视觉大模型 csdn

视觉大模型 csdn

ViT: Google
Swin-Transformer: Microsoft
V-MOE: Google
SAM: Meta
盘古CV: 华为
文心UFO: 百度

预训练大模型

# 导入必要的库和模块
import argparse
import json
import pathlib

# 定义 Stanford Alpaca 使用的 prompt 格式
PROMPT_DICT = {
    "prompt_input": "..."  # 包含 instruction 和 input 的 prompt 格式,
    "prompt_no_input": "..."  # 只包含 instruction 的 prompt 格式
}

# 主函数
def main(args_param):
    data_path = pathlib.Path(args_param.data_path)
    with data_path.open() as f:
        data = json.load(f)

    # 构造新的对话格式数据
    sources = [prompt_input.format_map(example) if example.get("input", "") != "" else prompt_no_input.format_map(example) for example in data]
    targets = [example["output"] for example in data]

    new_data = []
    cnt = 1
    for s, t in zip(sources, targets):
        new_data.append(
            {
                "id": str(cnt),
                "conversations": [
                    {"from": "human", "value": s},
                    {"from": "gpt", "value": t},
                ],
            }
        )
        cnt += 1

    # 将新的对话格式数据写入输出文件
    json.dump(new_data, open(args_param.output_path, "w"), indent=2)

if __name__ == "__main__":
    # 解析命令行参数
    parser = argparse.ArgumentParser()
    parser.add_argument("--data_path", type=str, default="alpaca-data.json")
    parser.add_argument("--output_path", type=str, default="alpaca-data-conversation.json")
    args = parser.parse_args()
    # 执行主函数
    main(args)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47

流程:

  1. 数据集准备: 首先需要收集大规模的文本图片数据作为预训练的训练集,数据量越大效果越好。大模型常用的数据集包括维基百科、书籍文集、网络新闻等。

  2. 数据预处理: 对采集的文本数据进行预处理,例如tokenize、建立词表等。

  3. 模型构建: 构建模型的网络结构, transformers类模型最为常用。选择合适的编码器,如BERT的Encoder。

  4. 预训练任务设计: 选择合适的预训练任务,让模型在大数据上进行自监督学习。常见的有 Masked Language Model、Next Sentence Prediction 等。

  5. 模型预训练: 在预训练数据上针对设定的预训练任务训练模型,取得最优的参数。一般在大规模集群中训练,模型大小会非常大。

  6. Fine-tuning: 在下游任务数据集上,Freeze部分预训练参数,仅 Fine-tune 部分任务相关参数,从而快速让模型适应新任务。

  7. 模型部署: 选择合适的方式部署训练好的模型,进行文本生成、文本分类等生产应用。

     通过预训练,模型可以学习到通用的语言表示,然后迁移至下游任务中,以提高效果、减少人工标注需求。这就是预训练语言模型的全流程。
    
    • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/897866
推荐阅读
相关标签
  

闽ICP备14008679号