当前位置:   article > 正文

使用免费算力对gemma进行微调(以gemma 2b的LORA微调为例)

使用免费算力对gemma进行微调(以gemma 2b的LORA微调为例)

在这里插入图片描述

gemma介绍

Gemma是Google推出的一系列轻量级、最先进的开放模型,基于创建Gemini模型的相同研究和技术构建。提供了 2B 和 7B 两种不同规模的版本,每种都包含了预训练基础版本和经过指令优化的版本。所有版本均可在各类消费级硬件上运行,无需数据量化处理,拥有高达 8K tokens 的处理能力:

它们是文本到文本的、仅解码器的大型语言模型,提供英语版本,具有开放的权重、预训练的变体和指令调优的变体。

Gemma模型非常适合执行各种文本生成任务,包括问答、摘要和推理。它们相对较小的尺寸使得可以在资源有限的环境中部署,例如笔记本电脑、桌面电脑或您自己的云基础设施,使每个人都能获得最先进的AI模型,促进创新。

Github地址:https://github.com/google/gemma_pytorch

论文地址:https://storage.googleapis.com/deepmind-media/gemma/gemma-report.pdf

本次以Google的colab为例进行演示,当然以kaggle的免费算力也一样(本来打算用kaggle没有成功,后期更新)

前期准备

  • 在kaggle上使用Google的colab打开

在这里插入图片描述

  • 连接免费提供的T4 GPU 作为算力在这里插入图片描述

在这里插入图片描述

下载模型

在这里插入图片描述
下载依赖,不过版本冲突(该错误消息表明 tf-keras 版本 2.15.1 要求 TensorFlow 版本小于 2.16 但大于或等于 2.15,而您安装了 TensorFlow 版本 2.16.1,这与此要求不兼容。)先暂时不用管,看后续会不会有bug
在这里插入图片描述

  • 然后就是依次点击运行,代码块前后也会有注释在这里插入图片描述
    加载模型时报错,因为缺少身份验证而无法从kaggle获取资源,需要将kaggle的api密钥替换成自己的

在这里插入图片描述

进入kaggle登录自己账号,点击头像----Settings----Create new Token

在这里插入图片描述
在这里插入图片描述

创建.kaggle文件夹,并放入自己的密钥,如图

在这里插入图片描述

  • 在此之前要加入kaggle相关语句,如图
!pip install -q kaggle
!chomd 600 ~/.kaggle/kaggle.json
  • 1
  • 2

在这里插入图片描述

  • 然后要将图中所示位置的路径换成模型config文件所在的文件夹路径,否则报错
    在这里插入图片描述

  • 接下来就是微调前的推理了,我们可以看到gpu利用率显著升高

在这里插入图片描述

  • 再往下走就是微调了,这里是LoRA微调(请注意,启用 LoRA 会显着减少可训练参数的数量(从 25 亿减少到 130 万)。)在这里插入图片描述
  • 以下是官方给出的提示:
    *为了从模型中获得更好的响应,请使用 Databricks Dolly 15k 数据集通过低秩适应 (LoRA) 微调模型。 LoRA 等级决定了添加到 LLM 原始权重的可训练矩阵的维数。 它控制微调调整的表现力和精度。 更高的排名意味着可以进行更详细的更改,但也意味着更多可训练的参数。 较低的等级意味着较少的计算开销,但可能不太精确的适应。 本教程使用 LoRA 等级 4。在实践中,从相对较小的等级开始(例如 4、8、16)。 这对于实验来说计算效率很高。 使用此排名训练您的模型并评估您的任务的性能改进。 在后续试验中逐渐提高排名,看看是否会进一步提高性能。*

启用微调:

在这里插入图片描述
微调的参数,数据集等内容根据自己实际情况来替换即可
在这里插入图片描述

微调结束!!

在这里插入图片描述

微调之后的推理:

在这里插入图片描述

  • 完美运行!
    在这里插入图片描述
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号