Đầu tiên của bước huấn luyện mơ hình ta tìm kiếm, lấy dữ liệu từ bước trích xuất đặc trưng bao gồm từ điển (all_words), tên ý định (tags), câu hỏi (patterns), câu trả lời (responese) và thiết lập số lần huấn luyện cho mơ hình (numEpoch) ở đây cho bằng 1000.
SVTH: LÊ TRUNG KIÊN
Ví dụ : Với dữ liệu ở hình 4.14 thì ta có từ điển câu hỏi với 24 từ: ["'s", 'a', 'anyon', 'are', 'bye', 'day', 'good', 'goodby', 'hello', 'help', 'hi', 'how', 'is', 'later', 'lot', 'name', 'see', 'thank', 'that', 'the', 'there', 'what', 'you', 'your'] tương ứng với với vector có chiều dài bằng 24.
Tiếp theo ta xử lý dữ liệu vào bằng thư viện numpy để tính tốn và trích xuất nhất, ta tiến hành tạo mảng ý định thì mảng sẽ là bốn ý định ['goodbye', 'greeting', 'my name', 'thanks'] và tạo mảng xy với x là câu hỏi (patterns) y là ý định (tags) thì mảng sẽ là [(['Hi'], 'greeting'), (['How', 'are', 'you'], 'greeting'), (['Is', 'anyone', 'there', '?'], 'greeting'), (['Hello'], 'greeting'), (['Good', 'day'], 'greeting'), (['Bye'], 'goodbye'), (['See', 'you', 'later'], 'goodbye'), (['Goodbye'], 'goodbye'), (['Thanks'], 'thanks'), (['Thank', 'you'], 'thanks'), (['That', "'s", 'helpful'], 'thanks'), (['Thanks', 'a', 'lot', '!'], 'thanks'), (['What', 'your', 'name', '?'], 'my name'), (['What', 'is', 'the', 'name'], 'my name')]. Đễ để nhìn ta xem (bảng 4.4)
Bảng 4.4: Bảng câu hỏi và ý định sau khi tạo mảng
Tiếp đến là tạo dữ liệu đào tạo:
SVTH: LÊ TRUNG KIÊN
- Tạo vector dữ liệu của từng câu hỏi (patterns) trên từ điển của từ (all_words) và đây cũng là dữ liệu đầu vào của huấn luyện mơ hình.
- Tạo vector dữ liệu của từng ý định (tags) trên từng câu hỏi.
Bảng 4.5: Dữ liệu đào tạo
x Hi How are you Is anyone there? Hello Good day Bye See you later Goodbye Thanks Thank you That's helpful Thanks a lot! What your name What is the name
Tiếp theo là bước huấn luyện với mơ hình DeepLearing và mạng Neaural và được hỗ trợ bởi thư viện Pytorch. Đầu vào với 24 nơ ron tương ứng với vector câu hỏi đầu ra là 4 nơ ron ứng với 4 ý định và lớp ẩn, bias là lớp sẽ được training