Automatically Generate Textual Descriptions for Photographs with Deep Learning
Source code: https://github.com/lamtov/image-captioning-with-deep-learning-and-beam-search
27. Phụ lục 2: Sử dụng Word2vec trong bài
toán sinh mô tả ảnh
27
28. Phụ lục 2: Sử dụng Word2vec trong bài
toán sinh mô tả ảnh
29. Sử dụng Word2vec trong bài toán sinh
mô tả ảnh
Xử lý dữ liệu đầu vào cho bài toán sinh mô tả ảnh
■ Loại bỏ các stop word
30. Sử dụng Word2vec trong bài toán sinh
mô tả ảnh
Xử lý dữ liệu đầu vào cho bài toán sinh mô tả ảnh
■ Loại bỏ các từ có tần số xuất hiện quá thấp trong bộ dữ liệu
– Một ảnh đi kèm 5 mô tả chọn ngưỡng tần số là 5
– Bộ dữ liệu 30.000 từ giảm xuống còn 7.000, bộ dữ liệu 8.000 còn 3.000
A Husky dog jump into the blue sunny sky.
dog jump into the blue sky.
31. Sử dụng Word2vec trong bài toán sinh
mô tả ảnh
Xử lý dữ liệu đầu vào cho bài toán sinh mô tả ảnh
■ Chọn ngưỡng dài nhất cho câu:
– Bộ dữ liệu Flickr8K có 150.000 câu chỉ có hơn 100 câu dài hơn 50 từ nhưng
câu dài nhất lại có 90 từ
– Cắt phần đuôi của các câu dài.
32. Sử dụng Word2vec trong bài toán sinh
mô tả ảnh
Xử lý dữ liệu đầu vào cho bài toán sinh mô tả ảnh
■ Bổ xung ‘EOS’ vào cuối mỗi câu
– Vì lúc sinh câu không mong muốn sinh câu đủ 50 từ mà cần sinh có điểm dừng
tức là sinh đến từ ‘EOS’
A Husky dog jump into the blue sunny sky.
dog jump into the blue sky EOS.
33. Sử dụng Word2vec trong bài toán sinh
mô tả ảnh
Xử lý dữ liệu đầu vào cho bài toán sinh mô tả ảnh
■ Lựa chọn kích thước của vector mã hóa từ (100-300):
– Kích thước quá nhỏ không sinh được từ mới, chỉ lặp 1 2 từ ví dụ “the man is
the man is the ..”
– Kích thước quá lớn các từ tự sinh ra nhau
34. Sử dụng Word2vec trong bài toán sinh
mô tả ảnh
Xử lý dữ liệu đầu vào cho bài toán sinh mô tả ảnh
■ Loại bỏ các stop word
■ Loại bỏ các từ có tần số xuất hiện quá thấp trong bộ dữ liệu
■ Chọn ngưỡng dài nhất cho câu.
■ Bổ xung ‘EOS’ vào cuối mỗi câu
■ Lựa chọn kích thước của vector mã hóa từ (100-300)
■ Đánh số thứ tự các từ trong bộ dữ liệu theo thứ tự giảm dần của tần số xuất hiện
35. Huấn luyện đa mô hình CNN-RNN
■ Huấn luyện : “a dog jump to the blue sunny sky EOS”
■ Mã hóa : “STR dog jump to the blue sky”
■ Mong muốn : “dog jump to the sky EOS EOS EOS...”
STR luôn là vector không.
36. Phụ lục 3: Các vấn đề xung quanh
Beam Search
36
37. Áp dụng giải thuật Beam Search cho
quá trình sinh câu
■ Chỉ toàn các câu ngắn
■ Chỉ toàn sinh câu dài 50 từ.
38. Áp dụng giải thuật Beam Search cho
quá trình sinh câu
Sử dụng 2 phương pháp tham lam như sau:
■ Tham lam số từ trong câu: Không thêm các câu có chữ ‘EOS’ vào danh sách câu
ứng viên nếu số từ trong câu này ít ( nhỏ hơn 7).
Dog is jumping EOS. Dog is jumping into the sky EOS
The dog is jumping into the blue sky EOS.
39. Áp dụng giải thuật Beam Search cho
quá trình sinh câu
Sử dụng 2 phương pháp tham lam như sau:
■ Tham lam theo nội dung: Nếu trong danh sách câu ứng viên hiện tại xuất hiện một
câu có từ ‘EOS’ thì tiến hành kiểm tra xem câu này có phải là câu có điểm số cao
nhất hiện tại không.
– Nếu phải thì ngừng tìm kiếm, trả về câu mô tả là câu này.
– Nếu không phải thì bỏ câu này ra khỏi danh sách K câu ứng viên, tiếp tục tìm
kiếm tới khi tìm được câu có từ ‘EOS’ và là câu có điểm số cao nhất trong các
câu ứng viên. blue 0.2
sky 0.15
white 0.1
nice 0.05
EOS 0.03
… …
42. BLEU
42
• r là tổng số lượng cặp tương ứng từ ứng viên tới câu tham khảo
• C là tổng số phần từ trong câu ứng viên
43. METEOR
■ Khác với BLEU chỉ sử dụng precision thì METEOR sử dụng them cả recall.
■ METEOR chỉ tính toán dựa trên các cặp từ đôi.
44. METEOR
• p thể hiện số lượng các cặp từ có ánh xạ mà không kề nhau trong câu ứng viện.
• c là số lượng các cụm từ có ánh xạ trong câu ứng viên c càng nhỏ thì các cặp kề nhau
càng nhiều
45. Phụ lục 5: Mở rộng mô hình sinh đa mô
tả ảnh sử dụng RCNN