上一章介绍了如何基于APE+SELF自动化构建指令微调样本.这一章咱就把微调跑起来,主要介绍以Lora为首的低参数微调原理,环境配置,微调代码,以及大模型训练中显存和耗时优化的相关技术细节 标题这样写是因为上周突然收到了一周内上线一版chatbo的命令,原因无它领导们都刷到了<一个小时你也可以拥有ChatGPT>,<100美金训练ChatGPT>,<仅训练3小时超越ChatGPT>,<人人都可以拥有ChatGPT>...领导说人人都有了为啥我没有呀?!!真诚…
上一章我们介绍了不同的指令微调方案, 这一章我们介绍如何降低指令数据集的人工标注成本!这样每个人都可以构建自己的专属指令集, 哈哈当然我也在造数据集进行时~ 介绍两种方案SELF Instruct和Automatic Prompt Engineer,前者是基于多样的种子指令,利用大模型的上下文和指令理解能力,以及生成的多样性来Bootstrap生成更多样的指令样本,后者是prompt逆向工程,基于输入和输出,使用LLM来生成和挑选最优的prompt指令. 于是我把这两个方法强行组了CP,用APE…
这一章我们介绍固定prompt微调LM的相关模型,他们的特点都是针对不同的下游任务设计不同的prompt模板,在微调过程中固定模板对预训练模型进行微调.以下按时间顺序介绍,支持任意NLP任务的T5,针对文本分类的两篇PET和LM-BFF. 在小样本场景,固定prompt微调LM对比常规微调的优点,在分类任务上比较直观我能想到的有三点(在下面PET中会细说) 无需额外的分类层的参数引入,微调成本低 标签词本身前置语义信息的引入,无需重头学习可类比MRC 微调和预训练的Gap更小,任务转化成LM任务…
这一章我们聊聊指令微调,指令微调和前3章介绍的prompt有什么关系呢?哈哈只要你细品,你就会发现大家对prompt和instruction的定义存在些出入,部分认为instruction是prompt的子集,部分认为instruction是句子类型的prompt. 对比前三章介绍过的主流prompt范式,指令微调有如下特点 面向大模型:指令微调任务的核心是释放模型已有的指令理解能力(GPT3中首次提出),因此指令微调是针对大模型设计的,因为指令理解是大模型的涌现能力之一.而prompt部分是面…
这一章我们介绍在下游任务微调中固定LM参数,只微调Prompt的相关模型.这类模型的优势很直观就是微调的参数量小,能大幅降低LLM的微调参数量,是轻量级的微调替代品.和前两章微调LM和全部冻结的prompt模板相比,微调Prompt范式最大的区别就是prompt模板都是连续型(Embedding),而非和Token对应的离散型模板.核心在于我们并不关心prompt本身是否是自然语言,只关心prompt作为探针能否引导出预训练模型在下游任务上的特定能力. 固定LM微调Prompt的范式有以下几个优…
人脸检测及识别python实现系列(3)——为模型训练准备人脸数据 机器学习最本质的地方就是基于海量数据统计的学习,说白了,机器学习其实就是在模拟人类儿童的学习行为.举一个简单的例子,成年人并没有主动教孩子学习语言,但随着孩子慢慢长大,自然而然就学会了说话.那么孩子们是怎么学会的呢?很简单,在人类出生之前,有了听觉开始,就开始不断听到各种声音.人类的大脑会自动组织.分类这些不同的声音,形成自己的认识.随着时间的推移,大脑接收到的声音数据越来越多.最终,大脑利用一种我们目前尚未知晓的机制建立了一个…
简介 加解密现状,编写此系列文章的背景: 需要考虑系统环境兼容性问题(Linux.Windows) 语言互通问题(如C#.Java等)(加解密本质上没有语言之分,所以原则上不存在互通性问题) 网上资料版本不一.或不全面 .NET官方库密码算法提供不全面,很难针对其他语言(Java)进行适配 本系列文章主要介绍如何在 .NET Core 中使用非对称加密算法.编码算法.消息摘要算法.签名算法.对称加密算法.国密算法等一系列算法,如有错误之处,还请大家批评指正. 本系列文章旨在引导大家能快速.轻松的…
Java 加解密技术系列之 总结 Java 加解密技术系列之 DH Java 加解密技术系列之 RSA Java 加解密技术系列之 PBE Java 加解密技术系列之 AES Java 加解密技术系列之 3DES Java 加解密技术系列之 DES Java 加解密技术系列之 HMAC Java 加解密技术系列之 SHA Java 加解密技术系列之 MD5 Java 加解密技术系列之 BASE64 常用加密算法的Java实现(一)——单向加密算法MD5和SHA 常用加密算法的Java实现(二)—…
<C++0x漫谈>系列之:多线程内存模型 By 刘未鹏(pongba) 刘言|C++的罗浮宫(http://blog.csdn.net/pongba) <C++0x漫谈>系列导言   这个系列其实早就想写了,断断续续关注C++0x也大约有两年余了,其间看着各个重要proposals一路review过来:rvalue-references.concepts.memory-model.variadic-templates.template-aliases.auto/decltype.G…
Java 加解密技术系列之 总结 序 背景 分类 常用算法 原理 关于代码 结束语 序 上一篇文章中简单的介绍了第二种非对称加密算法 — — DH,这种算法也经常被叫做密钥交换协议,它主要是针对密钥的保护.同时,由于水平的限制,打算这个系列就到此为止了,这篇文章就算是一个总结吧,回顾一下这几个月来都写了些什么. 背景 其 实,在开始写这个系列之前,我对于 Java 的加解密也并不是那么了解.之所以要写这些文章,还主要是由于工作的原因.记得几个月以前,当时项目要做一个数字证书,证书的生成.存储.传…