Tìm kiếm sản phẩm theo ảnh bằng học sâu
Tìm kiếm thông tin là một trong những nhu
cầu cần thiết của con người. Trước kia, hình thức tìm kiếm
chủ đạo là tìm kiếm bằng từ khóa, với ưu điểm là đơn giản
và dễ dùng, tuy nhiên đôi khi lại không đủ khả năng để
diễn tả toàn bộ ý muốn của con người. Trong những năm
gần đây, nhận biết được nhược điểm trên, cùng với sự phát
triển của khoa học công nghệ, việc tìm kiếm bằng ảnh đã
bắt đầu được nghiên cứu và áp dụng. Bài báo này trình bày
một phương pháp tìm kiếm sản phẩm thông qua ảnh sử
dụng thuật toán học sâu và kỹ thuật so sánh ảnh tương tự
trên tập dữ liệu tự thu thập từ Internet. Các kết qủa cho
thấy phương pháp có tiềm năng ứng dụng trong thực tế
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Bạn đang xem tài liệu "Tìm kiếm sản phẩm theo ảnh bằng học sâu", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Tìm kiếm sản phẩm theo ảnh bằng học sâu
ng hơn. Tuy nhiên, việc đánh giá một hình ảnh nhìn có “giống” một hình ảnh khác không lại mang nhiều tính chủ quan, trong khi kết quả tìm kiếm hình ảnh liên quan đến việc đánh giá bề ngoài Hình 1. Kiến trúc mạng CNN [mathworks.com] của hình ảnh. Do đó, việc đánh giá độ chính xác trong tác Để thực hiện huấn luyện cho mạng CNN, có thể sử dụng vụ này được thực hiện qua các thao tác lấy mẫu và đánh giá tập dữ liệu riêng và thực hiện huấn luyện mạng từ đầu, tối mang tính chủ quan. ưu các tham số để mạng đạt kết quả phân loại tốt nhất. Phương pháp này cần một tập dữ liệu khá lớn và tài nguyên IV. THỰC NGHIỆM VÀ KẾT QUẢ tính toán lớn, tỷ lệ với độ sâu của mạng. Đây là phương án A. Dữ liệu và môi trường thực nghiệm cơ bản của các bài toán phân loại nói chung và sử dụng Trong nghiên cứu này, chúng tôi sử dụng tập dữ liệu tự mạng nơ ron nói riêng: tự huấn luyện một bộ phân loại và thu thập từ các trang ảnh và thương mại điện tử phổ biến tối ưu tham số. Tuy nhiên, đối với mạng CNN cho phân như Pinterest, Mediamart, Hoà Phát,, Canifa v.v. Các ảnh loại ảnh, phương pháp này không thật sự hiệu quả do dữ được thu thập đa dạng nguồn nhằm tăng tính khách quan liệu đầu vào thường không được chuẩn bị tốt. Phương pháp cho vấn đề phân loại và tính toán độ tương tự hình ảnh. tiếp cận khác là sử dụng một mạng CNN đã huấn luyện từ Tổng số 11.539 ảnh với 11 nhãn được phân bố như sau: trước, và tối ưu lại tham số trên tập dữ liệu riêng theo phương pháp học chuyển giao (transfer learning) [10]. Bảng 1. Thống kê về tập dữ liệu thực nghiệm Phương pháp này vẫn cần thực hiện khối lượng xử lý khá lớn, nhưng có thể chấp nhận một tập dữ liệu huấn luyện nhỏ Nhãn Số lượng Nguồn ảnh hơn, do phần lớn khối lượng xử lý đã được thực hiện trong Điều hoà 1.080 Pinterest, Mediamart quá trình huấn luyện mạng trước đó. Khối lượng xử lý còn lại được thực hiện trong quá trình học chuyển giao trên tập Quần 679 Pinterest, Canifa.com dữ liệu riêng. Pinterest, Hòa Phát, Xuân Ghế 721 Hòa Việc đánh giá độ chính xác của một mạng CNN cũng Pinterest, Nội thất Hòa khá đơn giản. Sử dụng một tập dữ liệu kiểm tra, có thể đánh Bàn 1.129 giá mạng tạo ra các kết qủa có độ chính xác như thế nào Phát nhờ các chỉ số đo thông thường như độ đo chính xác Váy 1.219 Pinterest, Loza.vn (accuracy). Để đảm bảo tính khách quan khi đánh giá Tủ lạnh 1.465 Pinterest, Mediamart mạng, tập dữ liệu kiểm tra sẽ được trích ngẫu nhiên từ tập dữ liệu ban đầu và không được dùng để huấn luyện mạng. Lò vi sóng 415 Pinterest, Mediamart B. Thu thập ảnh tương tự XÁC ĐỊNH ĐẶC ĐIỂM TÁC GIẢ VĂN BẢN TIẾNG VIỆT BẰNG HỌC SÂU Pinterest, Thiên Long Flex • Mỗi khối conv_block bao gồm hàng loạt các lớp Bút 946 Office CONV nhỏ, cùng với hàm kích hoạt ReLU và lớp Nồi cơm điện 514 Pinterest, Mediamart chuẩn hoá theo lô. Áo 2.206 Pinterest, Canifa.com • Ngoài ra, khối này còn có sử dụng skip connection Máy giặt 1.165 Pinterest, Mediamart (nhằm tránh giảm hiệu năng khi mạng quá sâu). • Identity block có trật tự thực hiện gần giống như conv_block, tuy nhiên skip connection của nó Các ảnh được phân bố với tỉ lệ 80% để huấn luyện, 20% không bao gồm tích chập 1x1 và chuẩn hoá theo lô, để kiểm chứng mô hình. Ngoài ra, mỗi nhãn còn có thêm và quan trọng nhất, là các hàm tích chập của nó đều 200 ảnh với nguồn từ Google Images để làm bộ dữ liệu test. được chỉnh kích thước đệm sao cho kích thước của Các thực nghiệm được thực hiện trên 2 hệ thống, dành khối 3D trước và sau khi qua các lớp này vẫn không cho 2 loại tác vụ khác nhau. đổi. 1) Môi trường thực hiện quá trình học máy: Sử dụng ResNet có nhiều biến thể như ResNet50, ResNet101, Google Colab: ResNet152, Trong bài báo này, hệ thống sử dụng mạng • CPU: 1x Single core hyper threaded Xeon ResNet50 để có thể có thời gian huấn luyện cũng như tìm kiếm ở mức vừa phải, hơn nữa tránh vấn đề quá khớp do Processor @2.3Ghz lượng dữ liệu không lớn. • GPU: 1x Tesla K80, 12GB GDDR5 VRAM • RAM: 13GB Tiếp sau mạng CNN, các lớp FC được sử dụng để huấn luyện bao gồm: • Disk: 30GB 2) Môi trường thực hiện quá trình đưa dữ liệu ảnh qua mô • Lớp ẩn: 128 nơ ron, hàm kích hoạt ReLU hình học máy: • Lớp drop-out: giá trị dropout [0.1, 0.25, 0.4] • Lớp ẩn: 64 nơ ron, hàm kích hoạt ReLU • CPU: Intel Core i5-4200H (2 cores, 4 threads) • Lớp đầu ra: 11 nơ ron (tương ứng với số nhãn), hàm @2.8Ghz kích hoạt softmax. • GPU: Nvidia GTX 950M, 4GB GDDR3 VRAM Cuối cùng, mô hình sẽ sử dụng hàm chi phí là hàm • RAM: 12GB DDR3L cross-entropy. • Ổ cứng: SSD 128GB B. Kiến trúc mạng (4) Mô hình học sâu của hệ thống sẽ sử dụng kiến trúc của mạng ResNet50. ResNet có tên đầy đủ là Residual Network, được phát triển bởi Kaiming He và các cộng sự. Hàm cross-entropy sẽ so sánh phân bố của đầu ra, với Nó nổi bật bởi nó có khả năng skip connection, tức là một xác suất của nhãn đúng là 1 và xác suất của các nhãn khác phần dữ liệu đầu vào có thể tiếp tục đi qua các lớp sau mà là 0. Nói một cách khác, nhãn kết quả sẽ được dịch thành 1 không qua xử lí. Ngoài ra nó còn sử dụng một lượng lớn véc tơ với 1 là nhãn đúng, 0 là nhãn sai, sau đó véc tơ này các lớp chuẩn hóa theo lô (Batch Normalization). ResNet sẽ được so sánh với đầu ra của nơ ron. Độ sai lệch giữa 2 cũng không sử dụng các lớp kết nối đầy đủ ở cuối mạng. véc tơ càng nhỏ, giá trị hàm chi phí cũng nhỏ theo. ResNet là một trong những mạng CNN hiện đại nhất cho tới ngày nay, và là sự lựa chọn được tin dùng khi sử dụng Một số các tham số được sử dụng: CNN trong thực tế. • Tốc độ học: [0.01, 0.001, 0.0001] Mạng ResNet có kiến trúc như sau: • Giá trị drop-out: [0.1, 0.25, 0.4] • Hàm tối ưu: nadam • Hàm chi phí: cross-entropy • Số vòng: [10, 20, 50] C. Kết quả và đánh giá Các thực nghiệm được thực hiện sử dụng thư viện Keras [5]. Với mạng ResNet50 được Keras cung cấp, độ chính xác được tính toán và so sánh trong 20 vòng (epochs) và mô hình có độ chính xác tốt nhất được lưu lại để làm kết quả thực nghiệm. Do mạng ResNet không cung cấp các lớp FC nên cần thêm một vài lớp FC ở cuối mạng để thực hiện phân loại. Đối với hoạt động tính toán véc tơ đại diện cho các ảnh nhằm thực hiện so sánh và thu thập ảnh tương đồng, tất cả các ảnh trong tập dữ liệu được đưa qua mô hình mạng đã huấn luyện. Các véc tơ đại diện thu thập được tại lớp FC Hình 2: Kiến trục mạng ResNet [7] cuối cùng sẽ được lưu lại sử dụng trong qúa trình tìm kiếm Các đặc điểm chính của mạng ResNet bao gồm [7]: sau này. Dương Trần Đức Các tham số được thử nghiệm để tối ưu trong các Các kết quả nhận được cho thấy sự khả quan của khoảng bao gồm kích thước bộ lọc, số bộ lọc, kích thước phương pháp phân loại cũng như thu thập ảnh tương đồng đệm, kích thước bước nhảy, tốc độ học, giá trị drop out. được áp dụng trên tập dữ liệu tương ứng. Mặc dù có sự chênh lệnh giữa kết quả phân loại của các loại sản phẩm Các tham số trên được thực hiện tối ưu qua các thực khác nhau, nhưng kết quả trung bình cũng như kết quả riêng nghiệm và bảng 2 cho thấy kết hợp tốt nhất của các tham của hầu hết các loại sản phẩm là có nhiều tiềm năng trong số. khoảng chấp nhận được của các ứng dụng phân loại ảnh. Bảng 2. Giá trị tham số tối ưu Kết quả thu thập ảnh tương tự cũng có độ chính xác khá tốt, dù vậy mới trải qua đánh giá mang tính chủ quan. Tham số Giá trị tối ưu Về thời gian chạy, việc huấn luyện mô hình phân loại Kích thước bộ lọc 3x3 mất khoảng 80 phút, trong khi thời gian để đưa toàn bộ hơn Số bộ lọc 1000 11.539 ảnh qua mô hình để thu thập véc tơ đại diện là 70 phút. Thời gian để thực hiện tìm kiếm từ khi cung cấp ảnh Kích thước đệm 1 đầu vào đến khi trả về kết quả là 10 giây (sau khi đã có mô Kích thước bước nhảy 2 hình và có các véc tơ đại diện của các ảnh trong tập ảnh để so sánh). Số drop-out 0,4 Tốc độ học 0,001 Với môi trường thực nghiệm như trình bày ở trên, kết quả phân loại sản phẩm đạt được độ chính xác tổng thể là 85.09%, trong đó loại sản phẩm Váy có độ chính xác tốt nhất (94.57%) và loại sản phẩm Bàn có độ chính xác thấp nhất (65.83%). Bảng 3 cho thấy kết qủa phân loại chi tiết cho từng loại sản phẩm: Bảng 3. Kết qủa phân loại Độ chính Độ chính Nhãn Nhãn xác (%) xác (%) Điều hoà 83.82 Lò vi sóng 80.90 Quần 88.37 Bút 78.79 Ghế 92.50 Nồi cơm điện 90.05 Bàn 65.82 Áo 78.24 Váy 94.57 Máy giặt 87.18 Tủ lạnh 90.82 Hình 2. Kết quả tìm kiếm với hình ảnh nồi cơm điện Như đã trình bày ở phần III, việc đánh giá kết quả thu V. KẾT LUẬN thập ảnh tương tự có sự khó khăn hơn, do dựa nhiều vào Trong nghiên cứu này, chúng tôi đã trình bày phương đánh giá chủ quan. Trong nghiên cứu này, chúng tôi thực pháp sử dụng mạng nơ ron tích chập để phân loại và so sánh hiện đánh giá tương tự như trong [11], theo đó lấy ngẫu độ tương đồng để tìm kiếm các ảnh tương tự trên tập các nhiên 100 sản phẩm và dùng làm ảnh đầu vào cho quá trình ảnh sản phẩm gồm 11 nhãn. Các kết quả thực nghiệm cho tìm kiếm. Thu thập 5 kết quả đầu tiên của mỗi ảnh đầu vào, thấy tính khả thi của phương pháp khi áp dụng trên các ứng tiến hành đánh giá chủ quan theo thang điểm 1-5 về độ dụng thương mại điện tử hoặc máy tìm kiếm, cả về độ chính tương tự của nó với ảnh đầu vào. Các kết quả 4, 5 được xem xác tìm kiếm và thời gian thực hiện. là tương đồng và nhỏ hơn 4 được xem là không tương đồng. Độ chính xác được tính là tổng số ảnh được đánh giá tương Phương pháp có ưu điểm là tận dụng được khả năng xử đồng trên tổng số ảnh thu được. lý của mạng nơ ron tích chập cho cả thao tác phân loại và tính toán véc tơ đại diện cho các ảnh trong tập ảnh tìm kiếm. Số ảnh tương đồng Tuy nhiên, nhược điểm của phương pháp là việc sử dụng Độ chính xác tìm kiếm = Tổng số ảnh thu được mạng nơ ron tích chập đơn thuần có thể không tạo ra các véc tơ đại diện có thể thể hiện tốt được sự tương đồng về Hình 2 cho thấy ví dụ về kết qủa tìm kiếm với hình ảnh mặt thị giác giữa các hình ảnh. nồi cơm điện. Với kết quả trong hình 2, có thể đánh giá chủ quan là có 4 ảnh tương đồng và 1 ảnh không tương đồng Hướng phát triển tiếp theo có thể là tiến hành nghiên trong 5 ảnh đầu tiên của kết quả tìm kiếm. cứu việc thực hiện tìm kiếm ảnh sản phẩm sử dụng một mạng bộ ba (triplet network) nhằm tạo ra một cơ chế có thể Kết quả cuối cùng cho thấy độ chính xác tìm kiếm theo nắm bắt được tốt hơn sự tương đồng về các chi tiết thị giác đánh giá chủ quan trên toàn bộ 100 mẫu là 75%. của sản phẩm so với việc sử dụng mạng nơ ron tích chập XÁC ĐỊNH ĐẶC ĐIỂM TÁC GIẢ VĂN BẢN TIẾNG VIỆT BẰNG HỌC SÂU thông thường. Ngoài ra, các tham số của mạng nơ ron tích on author profiling of Vietnamese texts using deep chập cũng cần được bổ sung và mở rộng khoảng khi thực learning based on Convolutional Neural Networks (CNN). hiện tối ưu nhằm tìm ra bộ tham số tốt nhất. Do việc huấn The experiments were conducted on the datasets which luyện trên mạng nơ ron tích chập là một hoạt động tiêu tốn was experimented in the previous research on author tài nguyên và thời gian, nghiên cứu này chưa thực hiện tối profiling of Vietnamese texts [8]. The experiments show ưu một cách triệt để các tham số của thuật toán. that the new method has better results than the traditional machine learning methods such as SVM (Support Vector TÀI LIỆU THAM KHẢO Machine) and Random Forest on author profiling task. [1] Agnes Borras, Francesc Tous, Josep Lladós, Maria Vanrell, High-Level Clothes Description Based on Color-Texture Keywords: deep learning, convolutional neural network, and Structural Features, In: Lecture Notes in Computer author profiling. Science, Iberian Conference, Pattern Recognition and Image Analysis (2003) Dương Trần Đức Tốt nghiệp Đại [2] Lukas Bossard, Matthias Dantone, Christian Leistner, học KHTN, Đại học Quốc gia Hà Nội Christian Wengert, Till Quack, Luc Van Gool, Apparel Ảnh tác ngành Công nghệ thông tin năm 1999, Classification with Style”, In: Computer Vision–ACCV giả Thạc sỹ chuyên ngành Hệ thống thông 2012, Springer (2013) tin tại Đại học Tổng hợp Leeds, Vương [3] Y-Lan Boureau, Francis Bach, Yann LeCun, and Jean Quốc Anh năm 2004, và Tiến sỹ Ponce, Learning Mid-Level Features for Recognition, In chuyên ngành Kỹ thuật máy tính tại Học Proc. CVPR (2010) viện Công nghệ Bưu chính Viễn thông năm 2018. Hiện đang công tác tại Khoa [4] Gal Chechik, Varun Sharma, Uri Shalit, and Samy Bengio, Công nghệ Thông tin, Học viện Công Large Scale Online Learning of Image Similarity Through nghệ Bưu chính Viễn thông. Ranking, Journal of Machine Learning Research 11, p. 1109–1135 (2010) [5] F. Chollet, & others, Keras, Available at: https://github.com/fchollet/keras (2015) [6] Navneet Dalal and Bill Triggs, Histograms of Oriented Gradients for Human Detection,.In Proc. CVPR. p.886– 893 (2005) [7] Q. Ji, J. Huang, W. He, Y. Sun, Optimized Deep Convolutional Neural Networks for Identification of Macular Diseases from Optical Coherence Tomography Images, Algorithms 12(3), 51 (2019). [8] Yushi Jing, David Liu, Dmitry Kislyuk, Andrew Zhai, Jiajing Xu, Je Donahue, and Sarah Tavel, Visual Search at Pinterest, In Proc. KDD, p.1889–1898 (2015) [9] H. Hu, Y. Wang, L. Yang, P. Komlev, L. Huang, X. S. Chen, Web-scale Responsive Visual Search at Bing, Proc. 24th ACM SIGKDD Int. Conf. Knowl. Discovery Data Mining, pp. 359-367 (2018) [10] Andrej Karpathy, Transfer Learning, (2015), URL: learning/. [11] N. Khosla, and V. Venkataraman, Building Image-Based Shoe Search Using Convolutional Neural Networks, CS231N Course Project Reports, (2015) [12] M. Hadi Kiapour, Xufeng Han, Svetlana Lazebnik, Alexander C. Berg, and Tamara L. Berg, Where to Buy It: Matching Street Clothing Photos in Online Shops, In Proc. ICCV, (2015) [13] Alex Krizhevsky, Ilya Sutskever, and Geo rey E. Hinton, ImageNet Classification with Deep Convolutional Neural Networks, In Proc. NIPS, p.1106–1114 (2012) [14] Hanjiang Lai, Yan Pan, Ye Liu, and Shuicheng Yan, Simultaneous Feature Learning and Hash Coding with Deep Neural Networks, In Proc. CVPR, p.3270–3278 (2015) [15] David G. Lowe, Object Recognition from Local Scale- Invariant Features, In Proc. ICCV, p.1150–1157 (1999) [16] K. Simonyan and A. Zisserman, Very Deep Convolutional Networks for Large-Scale Image Recognition, In Proc. ICLR (2015) [17] Jiang Wang, Yang Song, Omas Leung, Chuck Rosenberg, Jingbin Wang, James Philbin, Bo Chen, and Ying Wu, Learning Fine-Grained Image Similarity with Deep Ranking, In Proc. CVPR, p.1386–1393 (2015) PRODUCT IMAGE SEARCH USING DEEP LEARNING Abstract: Author profiling is the task of identify the characteristics of authors such as gender, age, etc. only based on analysis of their texts. This paper show reseach
File đính kèm:
- tim_kiem_san_pham_theo_anh_bang_hoc_sau.pdf