Các phương pháp đề xuất

Một phần của tài liệu Khóa luận tốt nghiệp Khoa học dữ liệu: Xây dựng hệ thống mô tả ảnh theo thời gian thực cho ứng dụng dữ liệu lớn (Trang 22 - 49)

3.1. Tổng quan phương pháp đề xuất

Phần này sẽ trình bày phương pháp tiếp cận độc đáo và hiệu quả mà chúng tôi đề xuất

để giải quyết thách thức của bài toán mô tả hình ảnh tự động và mang lại hiệu suất tốt. Việc áp dụng, điều chỉnh các mô hình học sâu có độ phức tạp cao sẽ giúp mô hình đưa ra các câu mô tả chính xác và có ngữ nghĩa tốt. Tuy vậy, nhận thấy rằng những phương pháp và mô hình trên chưa thực sự đáp ứng toàn diện các yêu cầu của bài toán là mô tả ảnh trên nhiều lĩnh vực trong khi lượng nguồn dữ liệu ở tiếng Việt đang còn rất hạn chế. Bắt đầu từ khó khăn này nhóm chúng tôi đã chọn ứng dụng công

nghệ dữ liệu lớn phục vụ cho việc thu thập giúp tăng cường sự đa dạng cho dữ liệu

từ đó cho phép mô hình học và đưa ra câu mô tả cho hình ảnh ở đa lĩnh vực.

Áp dụng chiến lược phối hợp sử dụng các công nghệ mới, chúng tôi sẽ sử dụng những thế mạnh của các mô hình học sâu có độ phức tạp cao như Object Relation

Transformer, Meshed-Memory Transformer, ... Cùng với việc xử lý dữ liệu lớn và

chúng tôi thiết lập cho phép mô hình học liên tục từ những hình anh mới từ đó cho phép xây dựng mô hình tạo sinh câu mô tả chính xác nhất cho hình ảnh.

15

THU THẬP XỬ LÝ DỮ LIỆU WIKI

Tăng cường Thu thập, xử lý dữ

dữ liệu liệu

Huan luyện mô Quản lý luồng hình liên tục và tạo

dữ liệu sinh câu mô tả

DỊCH VỤ ỨNG DỤNG

Bunp JomÔu jọu ueud

Người dùng

cung cấp ảnh

Hình 3.1: Sơ đồ tổng quan cách hệ thống vận hành

3.2. Phương pháp Streaming dữ liệu

Như ở Hình 3.1, ta có thé ở quá trình thu thập và xử lý dữ liệu Wiki thì giai đoạn streaming dit liệu bắt đầu với dir liệu được thu thập, xử lý và tăng cường. Đầu vào của dit liệu là Producer, nó sẽ giao tiếp với consumer băng topic ở Kafka broker rồi lưu lại vào cơ sở dữ liệu đưới dang JSON bao gồm url va caption tương ứng cho ảnh như ở Hình 3.2. Mục dich của này là dé quản lý hiệu quả một lượng lớn dữ liệu đô về

16

cùng một lúc, từ đó phục vụ cho khả năng mở rộng và phát triển bài toán trong tương

lai.

Ngoài ra dé phục vu bài toán thì chúng tôi còn dùng 2 bộ dit liệu dé phục vụ bài toán

cho huân luyện và kiêm thử bài toán.

© UIT-ViIC [26] : Bộ dữ liệu chứa 3.850 hình ảnh thé thao được lay từ phiên ban

năm 2017 của bộ dữ liệu Microsoft COCO. Tương tự như Microsoft COCO,

nó cung cấp năm phụ đề tiếng Việt cho mỗi hình ảnh, tổng cộng là 19.250 phụ

đề. Đặc biệt, các mô tả hình ảnh này được tạo thủ công, với tham chiếu từ các

mô tả gốc các hình ảnh tương ứng trên MSCOCO.

e Bộ dữ liệu kiểm thử: Bộ dữ liệu chứa 769 hình ảnh va câu mô tả tương ứng.

Bộ dữ liệu được xây dựng thủ công thông qua những hình ảnh thu thập và

chọn lọc ngẫu nhiên từ Wikipedia. Với nhãn là những câu mô tả được gán

nhan thủ công bằng công cụ nhóm tự phát trién.

Hai bộ dữ liệu này cũng trải qua quy trình lưu trữ như dữ liệu được thu thập từ

Wikipedia để phục vụ bài toán.

3.2.1. Phương pháp thu thập và xử lý dữ liệu

Trong quá trình thu thập dữ liệu, chúng tôi đã có nhiều nguồn đề thu thập ảnh và câu

mô tả, bao gồm các trang báo, mạng xã hội, thư viện học thuật và nhiều nguồn khác. Tuy nhiên, chúng tôi đã quyết định chỉ sử dụng nguồn dữ liệu từ Wikipedia vì các lý

do sau:

e Một trong những nguồn dữ liệu dồi dào, da dang và dễ tiếp cận chính là mạng

xã hội. Nhưng ở trên nền tảng này các câu mô tả ảnh thường không mô tả nội

dung ảnh mà câu mô tả này thường là suy nghĩ cảm xúc của họ. Chính vì vậy

nó không phù hợp va không có giá tri cho bài toán.

17

e Các trang báo cũng là nguồn dữ liệu rất lớn và tiềm năng. Nhưng sau khi tìm

hiểu thì chúng tôi nhận ra ở các trang này các câu mô tả tập trung vào miêu tả một người một sự việc một địa danh cụ thể và câu mô tả cũng chứa đựng quá nhiều cảm xúc ảnh hưởng bởi bối cảnh bài báo. Chính vì vậy nguồn dữ liệu

này cũng không phù hợp.

e Wikipedia có da dạng lĩnh vực trong đời sống đặc biệt nó tồn tại các hình ảnh

và câu mô tả thích hợp cho bài toán, các câu mô tả không lang mang mà miêu

tả trực tiếp chủ thé trong ảnh và sự kiện đang diễn ra. Đây là nguồn dữ liệu lý tưởng dé phát triển bài toán.

Nhìn Hình 3.2 ta có thé thay tổng quan về quy trình streaming dữ liệu dé có được nguồn dữ liệu chất lượng.

đc Return Page = ,

oC. 15 re Beautifulfoup

Saxe" Get Request

WIKIPEDIA

GIAI DOAN XỬ LY DỮ LIEU

Tang cường dữ liệu Hình ảnh Mô tả bằng cách chuyên

đối câu mô tả

Producer MONGODE

ALAST

Consumer

Hình 3.2: Tổng quan quy trình xử ly dữ liệu được thu thập từ Wikipedia

18

Quy trình có thể miêu tả qua các bước chính: Chúng tôi xây dựng một mã nguồn thu thập dữ liệu từ Wikipedia, tiếp theo tiến hành xử lý dit liệu. Tiếp đến dữ liệu trải qua công đoạn streaming rồi được lưu trữ vào kho dữ liệu để làm đầu vào cho mô hình.

Quy trình trên cho phép mô hình học liên tục từ dữ liệu mới. Chúng tôi tinh chỉnh

cho mô hình sẽ tiếp tục học mỗi khi có điểm dữ liệu mới được gửi về.

3.2.1.1. Phương pháp thu thập dữ liệu

Chúng tôi đã áp dụng ngôn ngữ lập trình Python và thư viện BeautifulSoup trong việc

thu thập thông tin từ trang Wikipedia - một quá trình và phương pháp sẽ được giới

thiệu trong phan này. Sử dụng BeautifulSoup, một thư viện phổ biến của Python, chúng tôi đã có thê phân tích và rút trích thông tin từ các trang web. Đồng thời, dé hỗ trợ việc giao tiếp với trang web thông qua các giao thức HTTP, chúng tôi đã tận dụng

thư viện 'requests' cua Python.

Nhu có thé thay ở Hình 3.2, chúng tôi gửi yêu cầu GET đến Wikipedia thông qua thư viện request cùng với từ khoá đã được chỉ định. Từ khoá sẽ đóng vai trò tìm kiếm tất

cả những trang Wikipedia có dính tới từ khoá được chỉ định. Việc này giúp cho quá

trình thu thập diễn ra đơn giản và nhanh chóng hơn. Sau khi nhận phản hồi từ Wikipedia, chúng tôi dùng thư viện BeautifulSoup dé phân tích cú pháp HTML của trang web và tìm các phần tử HTML chứa thông tin url của hình ảnh và mô tả của ảnh tương ứng. Cuối cùng, chúng tôi trích xuất các url và mô tả của hình ảnh từ các phần tử HTML đã tìm được và chuyền sang giai đoạn tiếp theo.

3.2.1.2. Phương pháp xử lý dữ liệu

Như được biết, Wikipedia [27] là một website hỗ trợ các tính năng đăng tải và điều chỉnh nội dung về khái niệm, hay mô tả của những đối tượng trên thế giới, và tổng lượng thông tin không lỗ trên trang web được đóng góp từ nhiều người, dù vậy các trang web không hé đưa rat bat kì quy tắc nào về cấu trúc hay nội dung của trên trang

19

web. Bởi thế số lượng ảnh và câu mô tả được lấy từ trang web cần phải được làm sạch và chuyên đổi dé tăng cường khả năng học của các thuật toán mô tả ảnh tự động trên dữ liệu được thu thập. Với các dữ liệu được lấy từ hệ thống streaming tự động

của chúng tôi trên trang web Wikipedia, việc xây dựng phương pháp xử lý dữ liệu

với mục tiêu vượt qua những vấn đề xảy ra trong việc chú thích hình ảnh, như sự không chính xác và không rõ ràng của các chú thích hiện tại. Kết quả từ phương pháp này sẽ cải thiện chất lượng và tính hợp lý của các chú thích, giúp hệ thống dòng dữ liệu hoạt động một cách tối ưu hơn, và các mô hình cũng sẽ được học những câu chú thích mô tả phù hợp hơn về các đối tượng của hình ảnh.

Pelé (áo xanh dương), người được mệnh danh là © Albert Camus, nhà văn, triết gia nổi #!

"Trường xuân bách từ do" (Rae ¿1 a ` = £ . tiéng, một thời từng là thủ môn bóng

FW) \§ vào thời Tông mỡ eve một trong những ngôi sao bóng đá vĩ đại nhât mọi đá

Trung Quốc chơi môn xúc cúc. thời đại.

Hình 3.3: Những câu mô tả không phù hợp

Từ ví dụ trên ảnh, chúng tôi có thể cho thấy rằng các mẫu dữ liệu này không thích hop dé đưa vào huấn luyện cho các mô hình mô tả ảnh tự động với các dẫn chứng sau. Thứ nhất, với câu mô tả (1) thực chất là câu diễn giải khái niệm đặc trưng cho bức tranh, thậm chí còn chứa tiếng Trung Quốc sẽ gây nhiễu nặng cho mô hình học máy. Bên cạnh đó, câu mô tả của hình (2) và hình (3) không nhằm mục đích miêu tả đối tượng hay hành động diễn ra trong bức hình mà đưa ra thông tin của một người nổi tiếng trong hình, mô hình học máy hiện tại vẫn chưa thể năm bắt và dự đoán những thông tin cụ thể đến chủ thể như thế này. Cho nên, kỹ thuật xử lý trên các loại

20

dữ liệu này được chúng tôi thiết kế dựa trên các nguyên tắc cụ thê và lấy cảm hứng

từ [28]. Đầu tiên, để phương pháp lọc và chuyên đổi dữ liệu có được kết quả cao và tối ưu nhất, nhóm chúng tôi tiến hành đưa ra các nguyên tắc nghiêm khắc dé chọn lọc cho ảnh và câu mô tả. Riêng về ảnh, tat cả các bức hình trước khi được lưu vào cơ sở

dữ liệu thông qua hệ thống streaming sẽ phải trải qua bước lọc ảnh để lượt bớt các ảnh không phù hợp hoặc không đủ chất lượng. Kỹ thuật này năm giữ vai trò then chốt trong quá trình phát triên một bộ dữ liệu và đảm bảo răng chỉ có những ảnh chất lượng cao và liên quan có đủ điều kiện cho các bước tiếp theo của hệ thống như đảo tạo mô hình hay đánh gia dir liệu. Bên cạnh đó, các nguyên tắc lọc dựa trên câu mô tả cũng được áp dụng, để loại bỏ các nội dung không phù hợp hoặc không cần thiết. Bước này có ảnh hưởng then chốt trong quá trình tiền xử lý các chú thích đưới dạng văn bản, giúp tăng cường chất lượng và độ tin cậy của các câu mô tả được khai thác cho các mục tiêu tiếp theo như phân loại, trích xuất thông tin, hay xây dựng mô hình dự đoán. Bước kế đến của quá trình lọc là bước kết hợp đặc điểm của cả bức hình và câu chú thích dé tiến hành nhận định liệu cặp dữ liệu này có kết nối và thích hợp dé tiễn hành huấn luyện cho mô hình hay không, quá trình này nhằm loại trừ các thông tin không phù hợp hoặc không cần thiết từ cả hình ảnh và văn bản mô tả liên quan. Cuối cùng, sau khi trải qua các bước lọc với những nguyên tắc khắc khe đối với cả ảnh và câu mô tả, dữ liệu được đưa vào hệ thông sẽ đảm bảo là những câu mô tả có cấu trúc

và hình ảnh chất lượng cho các mô hình, dù vậy quá trình thay thế các thuật ngữ cụ thê (như tên riêng, số, đơn vị) trong văn bản băng các thuật ngữ toàn cục vẫn rất cần thiết. Những tên riêng hay số liệu về ngày tháng năm cần được thay thế và loại bỏ.

Ví dụ như câu mô tả thường thấy về chủ đề thể thao như “Messi đang đá quả bóng về phía khung thành”, sẽ được thay đỗi thành “cầu thủ bóng đá đang đá quả bóng về phía khung thành”. Quá trình này giúp tạo ra một biéu diễn văn bản được tinh chỉnh,

sử dụng các thuật ngữ chung hơn, giúp tập trung vào khái niệm toàn cục và giảm sự

chi tiết không cần thiết. Điều này cung cấp một cách tiếp cận trừu tượng hơn và cho phép các nhiệm vụ xử lí dữ liệu va phân tích tiếp theo trở nên dé dang hơn, như huấn

luyện các mô hình dự đoán.

21

Dữ liệu sau khi được lọc và xử lý

Dữ liệu thực tế từ wiki Thông qua

4 TT N á À r S26 N

Hình ảnh Hình ảnh

` ke Loc dữ liệu |

thông qua ảnh

Lọc dữ liệu dựa trên sự `.

NINH tương quan IEE)

Bee AGNES chuyền đôi

F. ——.. giữa hình ảnh pets

Câu mô tả và nội dung mô Cau mô ta

Iker Casilas bay người ` ip tả ae ios oe

can pha banh khdi |__;__, | Loc dữ liệu trên LÊ Hạc Ranh khung thành câu mô tả eae

àn|

il

Hình 3.4: Quy trình xử lý dữ liệu được thu thập từ Wikipedia

a. Phương pháp lọc dựa trên ảnh.

Ở mục này, thư viện PIL sẽ được sử dụng cho việc kiểm tra tất cả bức hình được tìm thấy trên Wikipedia có đáp ứng được chất lượng hay không. Với các hình với chiều dài và chiều rộng tương ứng không vượt qua mức 300 pixel sẽ được loại trừ. Giúp cho hệ thống chọn lọc ra những tắm hình chat lượng và day đủ thông tin.

b. Phương pháp lọc dựa trên câu mô tả.

Ở phần này, chúng tôi sẽ thực nghiệm phương pháp dựa trên thư viện spacy [29] được cung cấp bởi Python, với mô hình ngôn ngữ đã huấn luyện trước trên dữ liệu tiếng Việt tên là "vi core news_Ig” [30] dé phân tích cú pháp và tách từ cho các từ trong câu chú thích. Đầu tiên, ứng với mỗi câu mô tả sẽ được tách từ dựa trên bộ tách từ

của mô hình ngôn ngữ đã tải lên thư viện spacy cho việc phân tích các từ trong câu

trở nên dễ dàng hơn.

Vi dụ : ứng với câu “một người đàn ông đang di bộ ra khỏi căn nha” sẽ được tach thành danh sỏch cỏc từ như sau [(một, 'M), (ngườù, 'Nc’), (đàn ụng', N), (đang,

'R), (dit, 'V), (bội, 'N}), (ra, 'V), (khỏi', 'V), can’, 'Ne'), (nhàt, ND]

22

Dựa trên các danh sách tách từ của các câu mô tả, chúng tôi sẽ đưa ra 5 nguyên tac sau đê kiêm tra liệu rang một câu mô tả đủ tiêu chuân hay chưa:

‹ Kiểm tra các tỷ lệ các từ lặp lại trong câu: Chúng tôi sẽ kiểm tra điều kiện này bằng cách tính từ lặp lại nhiều nhất trong câu, và chia nó với tổng số lượng

từ trong câu sẽ được tỷ lệ các từ lặp, miễn là tỷ lệ này không quá 0.5 thì câu

mô tả được cho là đạt tiêu chuẩn cho điều kiện này. Tiêu chuan này giúp chúng tôi lọc được những câu mô tả bị lỗi hoặc thiếu tính chính xác. Ý nghĩa của việc tính tỷ lệ này dùng để đo lường mức độ đa dạng ngôn ngữ. Một câu mô tả tốt nên có một tỷ lệ lặp từ thấp, điều này cho thấy câu mô tả tận dụng nhiều từ vựng đa dạng hơn đề diễn đạt.

Ví dụ : “Cầu thủ giao cầu” = tỷ lệ từ lặp là 0.5

+ Kiểm tra tỷ lệ loại từ cho phép trong câu: Một đoạn mô tả được xem là có cau trúc tốt khi ty lệ từ duy nhất trong đó cao và bao gồm các loại từ ngữ (POS

tags) khác nhau. Các đoạn mô tả không chứa từ chỉ định, không chứa danh từ

hoặc không chứa giới từ sẽ bị loại bỏ. Đồng thời, các đoạn mô tả có tỷ lệ từ danh từ quá cao cũng sẽ bị loại bỏ. Điều này nhăm đảm bảo rằng các đoạn mô

ta được chọn lọc phải có cau trúc ngôn ngữ đúng đắn và đáp ứng các yêu cầu

về đa dạng từ ngữ. Bằng việc tuân thủ các ràng buộc trên, điều kiện này tìm kiếm các đoạn chú thích phủ hợp và có khả năng miêu tả bức hình đầy đủ và

chính xác nhất. Vận dụng dựa trên các thực nghiệm, kỹ thuật này sẽ xác định

trước với những loại từ ngữ hợp lệ sẽ thuộc vào 5 loại bao gồm: danh từ, động

từ, tính từ, danh từ riêng và pho từ. Đầu tiên số lượng các từ có POS tag thuộc vào tập hợp các loại từ cho phép được đếm. Đây là số lượng các từ trong có loại nằm trong tập hợp 5 loại được định nghĩa trước va là những loại phù hợp

dé cấu thành một câu hoàn chỉnh. Từ đó, tỷ lệ này được tính băng cách chia số lượng các từ có loại từ thuộc vào tập hợp loại từ cho phép chia cho tổng số

lượng các từ trong câu và sao cho tỷ lệ không được nhỏ hơn 0.5.

23

Một phần của tài liệu Khóa luận tốt nghiệp Khoa học dữ liệu: Xây dựng hệ thống mô tả ảnh theo thời gian thực cho ứng dụng dữ liệu lớn (Trang 22 - 49)

Tải bản đầy đủ (PDF)

(84 trang)