2 Nền tảng và các cơng trình liên quan
4.9 Các lớp phân loại
Tương tự như giai đoạn 1, việc phân loại các component cũng chia ra làm 2 bước là phân loại các element dạng non-text và phân loại element dạng text mà cụ thể là lớp TextView.
Phân loại các vùng đề xuất thuộc dạng non-text
Với mỗi vùng đề xuất cho các component trong ảnh, nhóm sẽ dùng một bộ phân loại ảnh ResNet50 để dự đoán nhãn của vùng component đề xuất. Bộ phân loại Resnet50 đã được pretrain với tập dữ liệu ImageNet( một tập dữ liệu phổ biến cho các cuộc thi phát hiện và phân loại đối tượng) và được train tiếp với dữ liệu là ảnh các GUI elements.
Cách mà một ảnh được phân loại bên trong một mạng học sâu được diễn tả(hình 4.10) như sau:
• Với mỗi ảnh đầu vào, ảnh sẽ đi qua các lớp convolution và down sampling để thu được các đặc trưng ở mức chi tiết nhất. Các đặc trưng này có thể là các đường viền, góc cạnh, etc cấu tạo nên các đối tượng trong ảnh. Kết quả của bước này là cho ra một feature map biểu diễn các chi tiết trong ảnh ở một chiều khơng gian đơn giản hơn. Đối với bài tốn phát hiện các GUI-components trong ảnh, ở bước trước là phát hiện các component ta nhận được kết quả trả về là tập các bouding box đề xuất cho các component có thể xuất hiện trong ảnh. Sau khi cắt các component này dựa vào các bouding box đề xuất trên ảnh gốc, các ảnh cắt sẽ được đưa vào mạng học sâu để trích xuất đặc trưng, phục vụ cho việc dự đốn nhãn của component.
• Khi đã có tập các feature map, các feature map này sẽ được kết nối lại với nhau ở tầng fully connected để mạng tổng hợp lại các thông tin của các đối tượng trong ảnh và dự đốn xem với mỗi lớp định sẵn thì xác suất đối tượng đang phân loại thuộc lớp này là bao nhiêu. Ở đây nhóm đã định sẵn 14 lớp đối tượng non-text cần phân loại và kết quả mà lớp fully connected trả về sẽ là một vector (14, 1) biểu thị xác suất mà đối tượng thuộc từng lớp.
• Sau khi đã gán nhãn cho đối tượng, mạng đối chiếu nhãn được dự đoán với nhãn thật(ground-truth) của đối tượng. Nếu có sự sai sót trong việc dự đốn, mạng sẽ tiến hành cập nhật trọng số bằng cơ chế lan truyền ngược.
Phân loại các vùng đề xuất thuộc dạng text
Ở đây không cần phân loại vì component dạng text chỉ có 1 lớp. Nhóm sẽ sử dụng lại các vùng đề xuất là text đã được phát hiện ở bước trước kết hợp với kết quả nhận diện các component dạng non-text. Nếu như phần component dạng text có bounding box nằm bên trong bounding box của element dạng non-text thì component này sẽ bị lược bỏ.