6.6 KiB
Auto Classes
多くの場合、from_pretrained()メソッドに与えられた事前学習済みモデルの名前やパスから、使用したいアーキテクチャを推測することができます。自動クラスはこの仕事をあなたに代わって行うためにここにありますので、事前学習済みの重み/設定/語彙への名前/パスを与えると自動的に関連するモデルを取得できます。
[AutoConfig]、[AutoModel]、[AutoTokenizer]のいずれかをインスタンス化すると、関連するアーキテクチャのクラスが直接作成されます。例えば、
model = AutoModel.from_pretrained("google-bert/bert-base-cased")
これは[BertModel]のインスタンスであるモデルを作成します。
各タスクごと、そして各バックエンド(PyTorch、TensorFlow、またはFlax)ごとにAutoModelのクラスが存在します。
自動クラスの拡張
それぞれの自動クラスには、カスタムクラスで拡張するためのメソッドがあります。例えば、NewModelというモデルのカスタムクラスを定義した場合、NewModelConfigを確保しておけばこのようにして自動クラスに追加することができます:
from transformers import AutoConfig, AutoModel
AutoConfig.register("new-model", NewModelConfig)
AutoModel.register(NewModelConfig, NewModel)
その後、通常どおりauto classesを使用することができるようになります!
あなたのNewModelConfigが[~transformers.PretrainedConfig]のサブクラスである場合、そのmodel_type属性がコンフィグを登録するときに使用するキー(ここでは"new-model")と同じに設定されていることを確認してください。
同様に、あなたのNewModelが[PreTrainedModel]のサブクラスである場合、そのconfig_class属性がモデルを登録する際に使用するクラス(ここではNewModelConfig)と同じに設定されていることを確認してください。
AutoConfig
autodoc AutoConfig
AutoTokenizer
autodoc AutoTokenizer
AutoFeatureExtractor
autodoc AutoFeatureExtractor
AutoImageProcessor
autodoc AutoImageProcessor
AutoProcessor
autodoc AutoProcessor
Generic model classes
以下の自動クラスは、特定のヘッドを持たないベースモデルクラスをインスタンス化するために利用可能です。
AutoModel
autodoc AutoModel
Generic pretraining classes
以下の自動クラスは、事前学習ヘッドを持つモデルをインスタンス化するために利用可能です。
AutoModelForPreTraining
autodoc AutoModelForPreTraining
Natural Language Processing
以下の自動クラスは、次の自然言語処理タスクに利用可能です。
AutoModelForCausalLM
autodoc AutoModelForCausalLM
AutoModelForMaskedLM
autodoc AutoModelForMaskedLM
AutoModelForMaskGeneration
autodoc AutoModelForMaskGeneration
AutoModelForSeq2SeqLM
autodoc AutoModelForSeq2SeqLM
AutoModelForSequenceClassification
autodoc AutoModelForSequenceClassification
AutoModelForMultipleChoice
autodoc AutoModelForMultipleChoice
AutoModelForNextSentencePrediction
autodoc AutoModelForNextSentencePrediction
AutoModelForTokenClassification
autodoc AutoModelForTokenClassification
AutoModelForQuestionAnswering
autodoc AutoModelForQuestionAnswering
AutoModelForTextEncoding
autodoc AutoModelForTextEncoding
Computer vision
以下の自動クラスは、次のコンピュータービジョンタスクに利用可能です。
AutoModelForDepthEstimation
autodoc AutoModelForDepthEstimation
AutoModelForImageClassification
autodoc AutoModelForImageClassification
AutoModelForVideoClassification
autodoc AutoModelForVideoClassification
AutoModelForMaskedImageModeling
autodoc AutoModelForMaskedImageModeling
AutoModelForObjectDetection
autodoc AutoModelForObjectDetection
AutoModelForImageSegmentation
autodoc AutoModelForImageSegmentation
AutoModelForImageToImage
autodoc AutoModelForImageToImage
AutoModelForSemanticSegmentation
autodoc AutoModelForSemanticSegmentation
AutoModelForInstanceSegmentation
autodoc AutoModelForInstanceSegmentation
AutoModelForUniversalSegmentation
autodoc AutoModelForUniversalSegmentation
AutoModelForZeroShotImageClassification
autodoc AutoModelForZeroShotImageClassification
AutoModelForZeroShotObjectDetection
autodoc AutoModelForZeroShotObjectDetection
Audio
以下の自動クラスは、次の音声タスクに利用可能です。
AutoModelForAudioClassification
autodoc AutoModelForAudioClassification
AutoModelForAudioFrameClassification
autodoc AutoModelForAudioFrameClassification
AutoModelForCTC
autodoc AutoModelForCTC
AutoModelForSpeechSeq2Seq
autodoc AutoModelForSpeechSeq2Seq
AutoModelForAudioXVector
autodoc AutoModelForAudioXVector
AutoModelForTextToSpectrogram
autodoc AutoModelForTextToSpectrogram
AutoModelForTextToWaveform
autodoc AutoModelForTextToWaveform
Multimodal
以下の自動クラスは、次のマルチモーダルタスクに利用可能です。
AutoModelForTableQuestionAnswering
autodoc AutoModelForTableQuestionAnswering
AutoModelForDocumentQuestionAnswering
autodoc AutoModelForDocumentQuestionAnswering
AutoModelForVisualQuestionAnswering
autodoc AutoModelForVisualQuestionAnswering
AutoModelForVision2Seq
autodoc AutoModelForVision2Seq
AutoModelForImageTextToText
autodoc AutoModelForImageTextToText
Time Series
AutoModelForTimeSeriesPrediction
autodoc AutoModelForTimeSeriesPrediction