自定义模型继承 Hugging 的 PreTrainedModel

问题背景

使用 HuggingFace 的 Trainer 进行训练,自定义模型继承 PreTrainedModel,希望能够通过 from_pretrained 容易地实现:从上次保存的 checkpoint 处继续训练。

问题描述

Traceback (most recent call last):
  File "D:\PycharmProjects\gaze\SPIGA\train\train.py", line 60, in <module>
    .from_pretrained('checkpoint-1175')
  File "D:\Anaconda3\envs\transformers\lib\site-packages\transformers\modeling_utils.py", line 2535, in from_pretrained
    config, model_kwargs = cls.config_class.from_pretrained(
AttributeError: 'NoneType' object has no attribute 'from_pretrained'

问题分析

问题定位为:cls.config_class 为 None,结果导致 'NoneType' object has no attribute 'from_pretrained'

问题解决

自定义模型时,声明 config_class

python 复制代码
from transformers.configuration_utils import PretrainedConfig
from transformers.modeling)utils import PreTrainedModel

class CustomModel(PreTrainedModel):
	# 注意 1:在这里声明 config_class
    config_class = PretrainedConfig
    # 注意 2:重写的 __init__ 方法需要有 config 参数,不然会报错
    def __init__(self, config=PretrainedConfig(), num_landmarks=98, num_edges=15, steps=3, **kwargs):
        super().__init__(config=config)
        # .......
相关推荐
这可就有点麻烦了7 分钟前
强化学习笔记之【TD3算法】
linux·笔记·算法·机器学习
A_lvvx11 分钟前
OpenCV透视变换
人工智能·opencv·计算机视觉
百锦再18 分钟前
自动驾驶的技术实现及原理
人工智能·机器学习·自动驾驶
AcademicIdeas学境思源21 分钟前
避免学术欺诈!在ChatGPT帮助下实现严格引用并避免抄袭
人工智能
鲸~屿35 分钟前
计算机视觉 第十章OpenCV
人工智能·opencv·计算机视觉
小红红的学习笔记35 分钟前
银从初级个人理财_25_第七章第五节
人工智能·银从初级·个人理财
一只在学习的瓶子1 小时前
【大模型 AI 学习】大模型 AI 部署硬件配置方案(本地硬件配置 | 在线GPU)
深度学习·阿里云·ai
管二狗赶快去工作!1 小时前
体系结构论文(五十四):Reliability-Aware Runahead 【22‘ HPCA】
人工智能·神经网络·dnn·体系结构·实时系统
AI绘画君1 小时前
Stable Diffusion绘画 | AI 图片智能扩充,超越PS扩图的AI扩图功能(附安装包)
人工智能·ai作画·stable diffusion·aigc·ai绘画·ai扩图
AAI机器之心1 小时前
LLM大模型:开源RAG框架汇总
人工智能·chatgpt·开源·大模型·llm·大语言模型·rag