Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
566,96 KB
Nội dung
[1] TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO THỰC TẬP Xây dựng phần mềm thêm mô tả cho ảnh Công ty thực tập : VCCorp Người phụ trách : TS Huỳnh Ngọc Tín Thực tập sinh : Phạm Huỳnh Tấn Đạt TP Hồ Chí Minh, tháng 12 năm 2020 TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [2] LỜI MỞ ĐẦU Ngày nay, lĩnh vực AI lên với nhu cầu cấp bách đầy thiết yếu Các ứng dụng AI gây nên phần tác động lớn trải nghiệm người dùng tính chất thương mại hóa cơng ty Đặc biệt hơn, thuật toán AI ứng dụng Deep learning phát triển cách vơ mạnh mẽ chóng mặt, nhánh Computer Vision Natural Language Processing từ mà phát triển lên Sau bốn năm học tập trường có may mắn gặp thầy Tín Thầy truyền cảm hứng cho em lĩnh vực CNTT AI Chính muốn tiếp cận quy trình làm việc tốn AI gặp tình hình tại, VCCorp công ty lý tưởng em thực dự định có thêm kinh nghiêm để rèn giũa thân thật tốt trước trường TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [3] LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Cơng ty VCCorp nói chung thầy Huỳnh Ngọc Tín nói riêng tạo điều kiện cho em có hội thực tập công ty Chỉ thời gian ngắn, nhờ dẫn nhiệt tình anh chị công ty, buổi seminar hàng tuần Em học hỏi nhiều điều kỹ cứng mềm Đồng thời hòa nhập với văn hóa cơng ty hoạt động ngoại khóa nói riêng Đặc biệt cảm ơn anh Tuyên người hỗ trợ em từ lúc em vào công ty, từ quy trình tới setup mơi trường, thủ tục cần thiết Cảm ơn anh Tùng hỗ trợ vấn đề kỹ thuật chia sẻ cách làm việc, phong cách công ty để giúp em hòa nhập cách nhanh Và cảm ơn anh chị khác VCCorp tận tình hỗ trợ em việc tìm hiểu, học tập kiến thức Cũng xin cảm ơn thầy khoa Cơng nghệ phần mềm nhiệt tình hỗ trợ, tạo điều kiện em làm báo cáo Phạm Huỳnh Tấn Đạt TpHCM, ngày 30 tháng 12 năm 2020 TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [4] NHẬN XÉT CỦA KHOA TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [5] MỤC LỤC MỤC LỤC Chương 1: Giới thiệu công ty thực tập Giới thiệu công ty VCCorp Sản phẩm công ty 7 Chương 2: Nội dung thực tập Tìm hiểu cơng ty kỹ công ty Nghiên cứu kỹ thuật Thực project Lịch làm việc 9 12 12 Chương 3: Chi tiết project Giới thiệu toán Thực Kế hoạch 14 14 14 15 TÀI LIỆU THAM KHẢO TỔNG KẾT 16 17 TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [6] Chương 1: Giới thiệu công ty thực tập Giới thiệu công ty VCCorp Được thành lập vào năm 2006, Công ty CP VCCorp (VCCorp) công ty tiên phong lĩnh vực công nghệ nội dung số Với 10 năm hình thành phát triển, VCCorp xây dựng hệ sinh thái Internet rộng lớn với nhiều sản phẩm sáng tạo, hữu ích nhiều lĩnh vực (quảng cáo trực tuyến, thương mại điện tử, trị chơi trực tuyến ) phủ sóng 90% người sử dụng Internet mobile, có giá trị đóng góp lớn vào phát triển Internet Việt Nam thập kỷ qua Với việc chia thành nhiều phận, phận mà em thực tập Adtech VCCorp sở hữu thương hiệu quảng cáo trực tuyến Adtech đơn vị quảng cáo trực tuyến lớn với hệ thống quảng cáo 200 website uy tín hàng đầu, gần 30 website số thuộc sở hữu VCCorp VCCorp đơn vị độc quyền khai thác quảng cáo Với độ phủ tới 50 triệu độc giả, tương đương 90% người dùng Internet mobile Việt Nam, với sức mạnh công nghệ, sáng tạo không ngừng, Adtech vị dẫn đầu thị trường, giúp trang báo trang thông tin điện tử Việt Nam có nguồn thu tốt để cung cấp thông tin cho người dân cạnh tranh website dịch vụ nước Sản phẩm công ty #1 Adnetwork Tiếp cận 97.6% người dùng Internet, với nhóm chuyên mục lớn, 1000+ publishers, 30 đối tác độc quyền, 10000+ nhà mua quảng cáo #1 Mobile Adnetwork Tiếp cận 95% người dùng Mobile, hệ thống Mobile Adnetwork tiếp cận người dùng mobile web & mobile app #1 AdTech TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [7] Sở hữu 45 tỷ view/tháng, AdTech áp dụng hầu hết công nghệ tân tiến vào Adnetwork #1 Product Innovation Dẫn đầu thị trường cung cấp tính đột phá, sở hữu 22 sản phẩm & giải pháp, bật với: quảng cáo hiển thị, truyền thông, mua tự động, mobile TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [8] Chương 2: Nội dung thực tập Đợt thực tập với chủ đề "Xây dựng phần mềm thêm mô tả cho ảnh" nhằm giúp cho sinh viên tiếp cận phương pháp học máy, nắm quy trình tốn AI áp dụng vào thực tế Tìm hiểu công ty kỹ công ty Thời gian : ngày Nội dung : Giới thiệu công ty, cách tổ chức công ty Được nghe người phụ trách giới thiệu công ty, trình thành lập phát triển (như nhắc đến trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức cơng ty Ngồi ra, thực tập sinh giới thiệu cách thức làm việc công ty thời gian làm, quy định cần phải tuân thủ, cách sử dụng email công việc… Kết : Hiểu thêm phận Adtech, trình thành lập phát triển Có thêm kỹ việc sử dụng email cơng việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm Nghiên cứu kỹ thuật 2.1 2.2 Các công cụ làm việc Thời gian : tuần Nội dung : Tìm hiểu cơng cụ sử dụng q trình làm việc Trong thời gian này, supervisor hướng dẫn thực tập sinh tìm hiểu cơng cụ giúp ích cho công việc sau Một số phần mềm số OpenVPN - sử dụng làm việc với server Hệ điều hành Linux để làm việc dễ dàng Thực : Thực hành sử dụng phần mềm nêu Kết : Lập trình sử dụng cơng cụ miễn phí, giúp dễ dàng kết hợp công cụ với nhau, so với việc dùng IDE Tìm hiểu Machine Learning Thời gian : tuần Nội dung : Được training kiến thức,toán bản, thuật toán AI - Thuật toán AI Các kiến thức Machine Learning khái niệm Linear Regression, Logistic Regression, Gradient Descent Thực : - Tham gia đầy đủ buổi training công ty - Kiểm tra kiến thức học Kết : - Nắm rõ kiến thức Machine Learning Có kiến thức quan trọng cho việc lập trình Machine Learning TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [9] 2.3 Tìm hiểu Deep Learning thư viện kèm Thời gian : tuần Nội dung: Các kiến thức Neural Network, CNN, RNN thư viện keras, tensorflow, xử lý liệu numpy, pandas kèm - Khái niệm Neural Network - - - Còn gọi mạng thần kinh nhân tạo, thể loại giải thuật học máy — machine learning, lấy cảm hứng từ não người Nó giải thuật phổ biến sử dụng giới học máy Mục đích để giải vấn đề tương tự cách người thực Khái niệm CNN: Convolutional Neural Network (CNNs – Mạng nơ-ron tích chập) mơ hình Deep Learning tiên tiến Nó giúp cho xây dựng hệ thống thông minh với độ xác cao Như hệ thống xử lý ảnh lớn Facebook, Google hay Amazon đưa vào sản phẩm chức thơng minh nhận diện khuôn mặt người dùng, phát triển xe tự lái hay drone giao hàng tự động Khái niệm RNN Ý tưởng RNN (Recurrent Neural Network) sử dụng chuỗi thông tin Trong mạng nơ-ron truyền thống tất đầu vào đầu độc lập với Tức chúng không liên kết thành chuỗi với Nhưng mơ hình khơng phù hợp nhiều tốn Ví dụ, muốn đốn từ xuất câu ta cần biết từ trước xuất nhỉ? RNN gọi hồi quy (Recurrent) lẽ chúng thực tác vụ cho tất phần tử chuỗi với đầu phụ thuộc vào phép tính trước Nói cách khác, RNN có khả nhớ thơng tin tính tốn trước Trên lý thuyết, RNN sử dụng thơng tin văn dài Khái niệm LSTM LSTM (Long short-term memory), mạng sinh từ RNN, trình học backprop lại RNN liệu xa dẫn tới tình trạng vanishing gradient descent, khiến trọng số cập nhật tiến gần không gây cản trở mơ hình q trình học LSTM giới thiệu thêm để giải vấn đề nhờ vào xuất cổng forget gate, update gate, output gate trạng thái gọi cell state để lưu trữ thông tin quan trọng hỗ trợ cho việc cải thiện việc ghi nhớ học mơ hình TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [10] - - - Tensorflow - Keras Tensorflow thư viện mã nguồn mở cung cấp khả xử lý tính tốn số học dựa biểu đồ mơ tả thay đổi liệu Tensor sử dụng bạn cần giải toán supervised learning Keras open source cho Neural Network viết ngơn ngữ Python Nó library phát triển vào năm 205 Francois Chollet, kỹ sư nghiên cứu Deep Learning Keras sử dụng chung với thư viện tiếng Tensorflow, CNTK, Theano Numpy Numpy thư viện lõi phục vụ cho khoa học máy tính Python, hỗ trợ cho việc tính tốn mảng nhiều chiều, có kích thước lớn với hàm tối ưu áp dụng lên mảng nhiều chiều Numpy đặc biệt hữu ích thực hàm liên quan tới Đại Số Tuyến Tính Pandas Pandas là thư viện mã nguồn mở với hiệu cao cho phân tích liệu Python phát triển Wes McKinney năm 2008 Chỉ với năm phát triển trở thành thư viện chuẩn cho việc phân tích liệu dùng Python, số tính bật pandas: ● Có thể xử lý tập liệu khác định dạng: chuỗi thời gian, bảng không đồng nhất, ma trận liệu ● Khả import liệu từ nhiều nguồn khác CSV, DB/SQL ● Có thể xử lý vơ số phép toán cho tập liệu: subsetting, slicing, filtering, merging, groupBy, re-ordering, and re-shaping, ● Xử lý liệu mát theo ý người dùng mong muốn: bỏ qua chuyển sang ● Xử lý, phân tích liệu tốt mơ hình hố thống kê ● Tích hợp tốt với thư viện khác python Thực : - Tham gia đầy đủ buổi training Tìm kiếm tài liệu mạng để tìm hiểu thêm Kết : - Hiểu khái niệm lập trình Deep Learning Sử dụng thư viện cho toán 2.4 Thực project Sau tháng training thực hành, thực tập sinh nắm kiến thức AI, Deep Learning thư viện kèm Trong tháng thứ hai, trainer hướng TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [11] dẫn thực tập sinh áp dụng kiến thức học để thực project Chi tiết đồ án nói phần sau Lịch làm việc Tuần Cơng việc - Tìm hiểu cơng ty, cách tổ chức công ty Làm quen với công cụ làm việc công ty Học cách trao đổi, làm việc qua email Tìm hiểu Machine Learning - Người hướng dẫn Mức độ hoàn thành Nhận xét người hướng dẫn Anh Tuyên Anh Tùng Anh Hiếu Anh Dương Anh Tùng - Tìm hiểu Deep Anh Hiếu Learning Anh Dương Anh Tùng - Tìm hiểu paper Thầy Huỳnh Ngọc thêm mơ tả cho ảnh Tín - 10 - TS Huỳnh Ngọc Tín Thầy Huỳnh Ngọc Viết Model Tín theo paper Thực nghiệm đánh giá Tiếp tục cải thiện Thầy Huỳnh Ngọc model Tín Thực nghiệm đánh giá Phạm Huỳnh Tấn Đạt [12] 11 -So sánh, cài đặt Thầy Huỳnh Ngọc model khác để Tín đánh giá , cải thiện TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [13] Chương 3: Chi tiết project Giới thiệu toán Bài tốn thêm mơ tả cho ảnh (Image Caption) tốn áp dụng rộng rãi Tính có ứng dụng tìm kiếm hình ảnh theo tiêu đề Google Images Xa nữa, tốn cịn áp dụng vào lĩnh vực khác camera an ninh… Với khả tạo tiêu tiêu đề cho ảnh, thành phần quan trọng toán liên quan đến xử lý ảnh Các kĩ thuật image caption phát triển hoạt động tốt với nhiều ngôn ngữ, đặc biệt tiếng Anh Vậy liệu áp dụng kĩ thuật với tiếng Việt hay không ? 1.1 Paper tham khảo ● Show and Tell: Lessons learned from the 2015 MSCOCO Image Captioning Challenge 1.2 Thuật tốn Mơ tả - Train mạng CNN theo mơ hình phân loại ảnh để rút kết đặc điểm hình - Sau rút kết feature hình tập train, đưa đặc điểm rút kết vào làm input cho mạng LSTM - Mạng LSTM nhận input đầu vào đặc điểm hình tạo từ CNN miêu tả gán nhãn từ trước - Mỗi miêu tả gán nhãn gán token để network biết vị trí bắt đầu kết thúc câu - Mạng LSTM train để dự đoán với đặc điểm rút kết ảnh tạo mơ tả - Mạng CNN pretrained theo toàn image classification với input đầu vào ảnh output feature vector - Mạng LSTM pretrained theo toán text generation với input đầu vào tạo câu description tới gặp TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [14] Dataset - Flickr8k (8091 ảnh) - Mỗi hình có descriptions hỗ trợ việc đánh giá Thực Phạm Huỳnh Tấn Đạt Kế hoạch Giai đoạn tìm hiểu paper liên quan: TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [15] - Paper Show and Tell: Lessons learned from the 2015 MSCOCO Image Captioning Challenge - Paper CNN LSTM Giai đoạn training model - Training tập data flickr8k - Chia thành 6000 liệu train 1000 liệu test Giai đoạn thử nghiệm - Sử dụng pretrained kiến trúc CNN khác : Inception, Xception Giai đoạn đánh giá - Sử dụng độ đánh giá bleu Giai đoạn cải tiến - Tham khảo paper giúp khả cải thiện mơ hình o Show, Attend and Tell: Neural Image Caption Generation with Visual Attention o Image Captioning through Image Transformer Kết : - Sử dụng thơng qua mơ hình xception mang lại kết tốt với kết bleu 43% TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [16] TÀI LIỆU THAM KHẢO For Paper Show and Tell: Lessons learned from the 2015 MSCOCO Image Captioning Challenge For AI https://machinelearningcoban.com/ Các báo NLP có liên quan tới tốn https://towardsdatascience.com/automatic-image-captioning-with-cnn-rnnaae3cd442d83 https://paperswithcode.com/paper/show-and-tell-lessons-learned-from-the-2015 TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [17] TỔNG KẾT Như vậy, vòng thời gian thực tập, em build base model để hồn thành mục tiêu cơng việc, đồng thời từ tiếp tục xây dựng phát triển nghiên cứu để cải thiện model tương lai Chân thành cảm ơn giúp đỡ anh công ty Cảm ơn thầy Huỳnh Ngọc Tín giúp em hồn thành báo cáo TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt ... cáo hiển thị, truyền thông, mua tự động, mobile TS Huỳnh Ngọc Tín Phạm Huỳnh Tấn Đạt [8] Chương 2: Nội dung thực tập Đợt thực tập với chủ đề "Xây dựng phần mềm thêm mô tả cho ảnh" nhằm giúp cho. .. dẫn thực tập sinh tìm hiểu cơng cụ giúp ích cho cơng việc sau Một số phần mềm số OpenVPN - sử dụng làm việc với server Hệ điều hành Linux để làm việc dễ dàng Thực : Thực hành sử dụng phần mềm. .. paper Thầy Huỳnh Ngọc thêm mơ tả cho ảnh Tín - 10 - TS Huỳnh Ngọc Tín Thầy Huỳnh Ngọc Viết Model Tín theo paper Thực nghiệm đánh giá Tiếp tục cải thiện Thầy Huỳnh Ngọc model Tín Thực nghiệm đánh giá