书生大模型训练第4期之玩转HF/魔搭/魔乐社区

一:概述

        首先,很高兴,你可以看到这篇文章,本篇文章将基于书生大模型训练营第4期对HF/魔塔/魔乐社区进行介绍和本关的一些基本使用。

二:具体说明

        <1>HF/魔塔/魔乐社区的简单介绍

                Hugging Face(HF)社区是一个专注于自然语言处理(NLP)的开源社区,它提供了一个平台,让研究人员和开发者可以分享、发现和使用预训练的模型、数据集以及相关工具。

                魔搭社区(ModelScope)是阿里云推出的一个AI模型社区,它提供了模型即服务(Model as a Service)的平台,旨在帮助开发者和研究者零门槛体验和使用AI模型。

                魔乐社区(Modelers)是一个一体化开源平台,它集成了openMind Library和openMind Hub Client等工具套件,提供了模型库、数据集和体验空间等核心组件,覆盖了自然语言处理、视觉、音频等领域。

             <2>HF平台实践  

                                2.1 注册Hugging Face 平台 

                        注册Hugging Face平台需要魔法上网。

                        进入Hugging Face官网。
Hugging Face官网网址icon-default.png?t=O83Ahttps://huggingface.co/                 进入官网之后,进行注册。

                                2.2 InternLM模型下载

                        HF它有一个最核心的项目,就是Transformers库,这个库功能非常强大,它可以直接使用预训练模型进行推理,提供大量的预训练模型供使用,使用预训练模型进行迁移学习。所以使用HF前,需要下载Transformer等一些常用的依赖库。

                        训练营文档里是以internlm2_5-1_8b举例,查看Hugging Face上模型的地址。在这里我换为其他模型:internlm2_5-20b-chat。

internlm2_5-20b-chat模型地址icon-default.png?t=O83Ahttps://huggingface.co/internlm/internlm2_5-20b-chat        截图如下所示:

        

                                2.3 GitHub CodeSpace使用

                因为网络和磁盘有限,不建议在InternStudio上运行,因此在这里使用CodeSpace运行。
GitHub Codespace

### 关于书生大模型第四基础通关岛第三关 针对书生大模型第四基础通关岛第三关的任务,此阶段主要聚焦于通过不同参数量训练模型并结合多种微调技术来优化特定任务的表现。具体而言,在对比 xcomposer2-4khd、internVL1.5 和 llava-llama3-8b 这些具有不同参数规模的预训练模型时,采用 LORA(低秩自适应)、QLORA 及 FULL 训练方法可以有效增强模型处理少量样本学习(few-shot learning)以及专门领域内图纸识别的能力[^1]。 为了成功完成这一挑战,建议采取如下策略: #### 数据准备 确保拥有高质量的数据集用于训练和验证,特别是那些能够代表目标应用场景中的特征数据,比如工业设计图或其他形式的技术绘图。 #### 模型选择与调整 基于项目需求挑选合适的基线模型,并考虑其参数大小对性能的影响。较小的模型可能更适合资源受限环境下的部署;而较大的模型则通常能提供更好的泛化能力。 #### 微调技巧应用 利用LORA或QLORA等高效微调方式快速适配新任务,减少计算成本的同时保持较高的准确性。对于更复杂的要求,则可尝试FULL fine-tuning以获得最佳效果。 ```python from transformers import AutoModelForSequenceClassification, Trainer, TrainingArguments model_name = "path_to_pretrained_model" model = AutoModelForSequenceClassification.from_pretrained(model_name) training_args = TrainingArguments( output_dir="./results", evaluation_strategy="epoch", per_device_train_batch_size=8, per_device_eval_batch_size=8, num_train_epochs=3, weight_decay=0.01, ) trainer = Trainer( model=model, args=training_args, train_dataset=train_dataset, eval_dataset=val_dataset, ) ``` 上述代码片段展示了如何设置一个简单的`Trainer`对象来进行模型微调操作。实际实现过程中还需要根据具体的任务类型调整配置项。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值