llama2数据

387 阅读6分钟

llama2 语料数据效果等预训练记录

一,训练后loss值

(未知)文档说0.3左右效果好

二,提词器

提词器介绍:

插播
数据清洗方式:
选择高质量数据源,规范化文本、去除HTML和标记、过滤停用词和噪声词,
处理拼写错误、清除敏感信息,检测和处理异常值,评估数据质量,并记录清洗过程。
与模型任务相关度高、具备多样性和高质量的数据。直接收集的海量数据并不能直接用于大模型,
需要经过清洗、标注等工序后,才能生成可供大模型使用的数据集。

现代洗清方式:
1,使用传统的代码脚本设置正则化过滤,筛选有用数据,清除“脏”数据
(重复,广告,省略句,短句,知识含量)
借助AI模型过滤有害数据
人工审查

2,关注数据的频率和质量
数据的频率依赖于聚类和去重。我们构建了一个支持 LSH-like 特征和密集嵌入特征的大规模去重和聚类系统。
基于聚类,个别文档、段落和句子都被去重并评分。这些评分然后用于预训练中的数据抽样。
绝对匹配去重 29.89% 数据,
启发式方法去除 1.77%,
句子级别的质量过滤 3%,
句子级别和段落级别去重 14.47%,
文档级别去重 19.13%
  • 筛选方式:略(术业有专攻,可以离线操作)
  • 提词器简说:数据标注,对无格式文本提取
  1. 高质量语料(语句通顺且包含一定知识)
  2. 低质量语料(语句不通顺)
  3. 广告语料(语句通顺但重复率过高,如广告、网站说明、免责声明等)
  • 使用效果:
以往,模型都是通过样本抽取batch批数据,训练同质异性模型
然后模型投票,生成超平面集合体

现在对样本抽取batch批数据,因为数据量大且杂,
分类为多种数据,然后进行训练
注意:大语言模型,模型占比20%
数据占比80%贡献
所以,可以套用一套模型,但是具体分类数据不同
  • 建议:姜子牙(未尝试,他人建议)
  • 知乎:AI公司的Ryan和Esan
  • 简单形式:QA问答数据集(已采用到本地)

???

  • 仅适用于单个记录
  • 达芬奇模型的'Completion'方法

三,为什么不用AI生成文本

理解:模型本身是探索超平面分类

AI文本导入不能在模型超平面建立中取得以下数据,
随机分布的有意义点,对模型超平面有相同贡献

只会强化超平面两侧的离散数据权重,数据集对平面贡献不一
使得模型趋于真实的模拟超平面,扭曲,偏差大
(模拟模型,真实,两者间偏差;模拟间,方差)

论文:

根据牛津大学、剑桥大学、伦敦帝国学院等机构的研究人员今年5月在预印本平台arXiv上发表的论文,AI用AI生成的数据进行训练,会导致AI模型存在不可逆转的缺陷,他们将其称之为模型崩溃(Model Collapse)。这意味着未来模型训练使用的高质量数据将会愈来愈昂贵,网络走向碎片化和封闭化,内容创作者将会竭尽全力防止其内容被免费抓取。 观察|大模型潮即将耗尽全宇宙文本,高质量数据从哪里来?_未来2%_澎湃新闻-The Paper

四,其他

感谢大佬们讨论分析思路

  • 底层为transformers pytorch(文本提取加深度)
  • 梯度下降并行运算


推测:多文本结果选优,情感分析?

  • rag+llama(多代理多结果排名强化效果)
  • langchain(rag)提示,langchain大而全但是细节考虑不够(放弃)
  • chatglm+langchain(已尝试,放弃)

  • 向量数据库(如相似度检测,milvus)
  • milvus(弱),百度pipeline(好、准),建的索引类型不太一样,边测边调

  • qwen 14B好像不给免费商用
  • embedding,高维数据映射到低维,降维
  • glm+langchain+milvus(第一版)
  • glm+langchain+es+百度飞桨(第二版)
  • qwen+langchain+ 下图(第三版)
  • es8,全文检索+向量检索+rrf+重排,rrf不免费,embdding用这两个(最新+第三版)
  • 其他.jpg

感谢大佬



  • 参数参考
  • 低配自嗨(3090弹射起步)

配置.jpg


P40的 GPU架构是两代前的,适合入门,便宜

4090 > 3090 > 22g 2080ti > P40

autodl 的 测试报告www.autodl.com/docs/gpu_pe…

1、跑大模型,一张不够,多张不差钱还是A6000好

2、跑普通图像类AI,3090足够了,4090快一倍,但是训练体会不明显。

3、a100 a6000 4090大致是这样排位

百川模型(260b):一台配备了八个 A800 GPU 的单机


对于实例化,跑例子慢

许多格式,其中QA问答是一小种

提速如下

  • generate_ids  = model.generate(**generate_input,maxnewtokens=50)
  • maxnewtokens=50

模型内参数

温度(temperature) 控制输出中的随机性

N值 希望有多个选择,我们可以使用2或者3。一般??,n=1(默认)会很好。

角色 可以是system(系统)、user(用户)或assistant(助手)

模型最大Token 这不一定是我们在请求中传递的参数,尽管另一个参数max_tokens限制了从聊天中获取的响应的总长度。

表情包会使用大量Token(6个)