Das CLIP-Modell aus dem Modul „open_clip“ gibt eine einzelne Einbettung für 77 Token zurückPython

Python-Programme
Anonymous
 Das CLIP-Modell aus dem Modul „open_clip“ gibt eine einzelne Einbettung für 77 Token zurück

Post by Anonymous »

Ich verwende das Modul open_clip, um Texteinbettungen aus dem CLIP-Modell zu erhalten. Wenn ich eine Liste einer einzelnen Textsequenz tokenisiere und sie an die Methode encode_text des Modells übergebe, erwarte ich Einbettungen mit der Form [77, 1024]. Ich erhalte jedoch eine Ausgabeform von [1, 1024].
Hier ist der relevante Code:

Code: Select all

import open_clip

model, preprocess_train, preprocess_val = open_clip.create_model_and_transforms('hf-hub:laion/CLIP-ViT-H-14-laion2B-s32B-b79K')
tokenizer = open_clip.get_tokenizer('hf-hub:laion/CLIP-ViT-H-14-laion2B-s32B-b79K')

text_inputs = ["cat"]
tokenized_inputs = tokenizer(text_inputs)
print(len(tokenized_inputs))  # This prints 77

text_embeddings = model.encode_text(tokenized_inputs)
print(text_embeddings.shape)  # This prints [1, 1024]
Übersehe ich etwas bei der Verwendung des Tokenizers oder der encode_text-Methode des Modells? Wie kann ich für jede der 77 Token-Sequenzen individuelle Einbettungen erhalten? Ich erwarte [77, 1024]

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post