Views
No views yet
state_dict z emotion_model.pth,tokenizer_pytorch.pickle do przetwarzania tekstu i label_encoder.pickle do mapowania indeksów na etykiety.1import torch
2import pickle
3import numpy as np
4
5# 1) Zdefiniuj/zaimportuj klasę MyEmotionModel identyczną z tą z treningu
6# from model_def import MyEmotionModel
7
8device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
9model = MyEmotionModel(...)
10model.load_state_dict(torch.load("emotion_model.pth", map_location=device))
11model.eval()
12
13with open("tokenizer_pytorch.pickle", "rb") as f:
14 tokenizer = pickle.load(f)
15with open("label_encoder.pickle", "rb") as f:
16 label_encoder = pickle.load(f)
17
18text = "I am so happy today!"
19seq = tokenizer.texts_to_sequences([text]) # zależnie od implementacji tokenizera
20input_tensor = torch.tensor(np.array(seq), dtype=torch.long).to(device)
21with torch.no_grad():
22 logits = model(input_tensor)
23pred_idx = int(torch.argmax(logits, dim=1).cpu().item())
24print(label_encoder.inverse_transform([pred_idx])[0])