Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 28 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
28
Dung lượng
6,15 MB
Nội dung
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 NATURAL LANGUAGE PROCESSING Công ty thực tập Người phụ trách Thực tập sinh : AdMicro : Thầy Huỳnh Ngọc Tín Trần Văn Tùng : Ngơ Hồng Phúc - 16520948 TP Hồ Chí Minh, tháng năm 2020 LỜI MỞ ĐẦU Xử lý ngôn ngữ tự nhiên (natural language processing - NLP) nhánh trí tuệ nhân tạo tập trung vào ứng dụng ngơn ngữ người Trong trí tuệ nhân tạo xử lý ngơn ngữ tự nhiên phần khó liên quan đến việc phải hiểu ý nghĩa ngôn ngữ-công cụ hoàn hảo tư giao tiếp Các toán phổ biến NLP bao gồm: - Nhận dạng chữ viết: Có hai kiểu nhận dạng, thứ nhận dạng chữ in, ví dụ nhận dạng chữ sách giáo khoa chuyển thành dạng văn điện tử định dạng doc Microsoft Word chẳng hạn Phức tạp nhận dạng chữ viết tay, có khó khăn chữ viết tay khơng có khn dạng rõ ràng thay đổi từ người sang người khác Với chương trình nhận dạng chữ viết in chuyển hàng ngàn đầu sách thư viện thành văn điện tử thời gian ngắn Nhận dạng chữ viết người có ứng dụng khoa học hình bảo mật thông tin (nhận dạng chữ ký điện tử) - Nhận dạng tiếng nói: Nhận dạng tiếng nói chuyển chúng thành văn tương ứng Giúp thao tác người thiết bị nhanh đơn giản hơn, chẳng hạn thay gõ tài liệu bạn đọc lên trình soạn thảo tự ghi Đây bước cần phải thực ước mơ thực giao tiếp người với robot Nhận dạng tiếng nói có khả trợ giúp người khiếm thị nhiều - Tổng hợp tiếng nói: Từ văn tự động tổng hợp thành tiếng nói Thay phải tự đọc sách hay nội dung trang web, tự động đọc cho Giống nhận dạng tiếng nói, tổng hợp tiếng nói trợ giúp tốt cho người khiếm thị, ngược lại bước cuối giao tiếp robot với người - Ngồi cịn có dịch tự động, tìm kiếm thơng tin, tóm tắt văn bản, khai phá liệu Với tiếng Việt, tốn phổ biến có phân tách câu, tách từ, tự động thêm dấu từ Sau ba năm học tập trường, mong muốn có thêm kinh nghiệm thực tế, muốn tham gia nghiên cứu làm việc môi trường tốt, em có dự định thực tập Artificial Intelligence (Trí tuệ nhân tạo) đặc biệt NLP Vì vậy, em định chọn AdMicro – Một môi trường học tập, làm việc, đại – nơi giúp em thực dự định Ngơ Hồng Phúc LỜI CẢM ƠN Trân trọng gửi lời cảm ơn AdTech HCM 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ị team, thực tập chúng em tiếp thu kiến thức quan trọng để làm học tập Chân thành cảm ơn anh chị team bỏ nhiều thời gian, công sức để hướng dẫn chúng em hoàn thành đợt thực tập Đặc biệt cảm ơn thầy Tín anh Tùng training, hướng dẫn, giúp đỡ cho chúng em tận tình khó khăn cơng việc, đến khó khăn việc làm quen với môi trường mới, dẫn chúng em cách làm báo cáo, lên kế hoạch, kỹ thiếu Cũng xin cảm ơn thầy cô 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 Ngơ Hồng Phúc TP.HCM, ngày 19 tháng năm 2020 Ngơ Hồng Phúc NHẬN XÉT CỦA KHOA …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… …………………………………………………………………………………………………… Ngơ Hồng Phúc Ngơ Hồng Phúc 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 Giới thiệu Admicro Admicro thuộc Công ty cổ phần truyền thông Việt Nam VCcorp Admicro mạng lưới kinh doanh quảng cáo trực tuyến hàng đầu thị trường Việt Nam VCCorp sở hữu thương hiệu quảng cáo trực tuyến Admicro đơ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, Admicro 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 ngồi Ngơ Hồng Phúc Hình: Các thành phần AdMicro Các sản phẩm quảng cáo sáng tạo, ứng dụng tảng công nghệ cloud computing, hệ thống xử lý liệu lớn hàng tỷ ghi Admicro giúp doanh nghiệp tối ưu hóa hiệu marketing tiếp cận nhanh đến độc giả Internet Thông qua hệ thống Admicro, khách hàng kiểm sốt đo lường số liệu theo thời gian thực, nhắm tới đối tượng độc giả, khu vực, vùng miền, theo độ tuổi, giới tính Giới thiệu phận Adtech HCM Adtech HCM phận Adtech đảm nhiệm tìm hiểu nghiên cứu, triển khai phát triển lĩnh vực Big Data, Computer Vision, NLP, … Ngơ Hồng Phúc CHƯƠNG 2: NỘI DUNG THỰC TẬP Đợt thực tập với lĩnh vực NLP nhằm mục đích giúp sinh viên thực tập đào tạo kiến thức xử lý ảnh, đồng thời rèn luyện kỹ mềm làm việc nhóm, thuyết trình, giao tiếp Tại cơng ty, sinh viên có hội học tập, khám phá làm việc môi trường phát triển chuyên nghiệp Công việc thực STT Nội dung công việc Mô tả công việc Thời gian thực Kết Apache Hadoop Tìm hiểu nguyên lý MapReduce Tìm hiểu kiến trúc Hadoop 1.0 Cài đặt Hadoop 17/02/2020 27/02/2020 Hoàn thành mô tả công việc Apache Spark Cài đặt Spark Tìm hiểu chế hoạt động Spark 28/02/2020 07/03/2020 Hồn thành phần mơ tả cơng việc Tạo ứng dụng đếm từ với Spark Git Tìm hiểu nguyên lý hoạt 08/03/2020 21/03/2020 động Git Các lệnh thao tác Git Các workflow phổ biến Git Hồn thành phần mơ tả cơng việc Tạo ứng dụng lưu trữ thông tin sách với Spring Boot Spring Spring Boot Tìm hiểu Spring Boot Tìm hiểu chế hoạt động Spring Boot 08/03/2020 21/03/2020 Hoàn thành phần mô tả công việc Tạo ứng dụng lưu trữ thông tin sách với Spring Boot Machine Learning Tìm hiểu thuật tốn tốn ưu gradient-based Tìm hiểu xác suất thống kê 27/03/2020 02/04/2020 Hồn thành phần mơ tả cơng việc Ngơ Hồng Phúc Machine Learning Deep Learning Tìm hiểu mạng ANN, activation functions, ứng dụng lan truyền ngược Tìm hiểu mạng CNN 03/04/2020 15/04/2020 Hồn thành phần mơ tả cơng việc Hiện thực lớp mạng CNN NLP Tìm hiểu toán Text Classfication, Dimension Reduction WordEmbedding 16/04/2020 10/05/2020 Hồn thành phần mơ tả cơng việc Hiện thực thuật tốn word2vec glove2vec 17/02/2020 17/05/2020 Hồn thành phần mơ tả cơng việc Tìm hiểu phương pháp Neural Language Model Data Labelling Hỗ trợ tìm video gán nhãn liệu cho toán phát video 16/18+ Bảng: Các hoạt động thực tập CHƯƠNG 3: CHI TIẾT VỀ PROJECT Giới thiệu text classification Bài toán classification nghiên cứu áp dụng vào nhiều lĩnh vực thực tế Hầu hết hệ thống phân loại văn chia làm giai đoạn chính: trích xuất đặc trưng, giảm số chiều, phân loại đánh giá Theo toán, input đầu vào bao gồm văn thô D = {X1, X2 XN }, Xn bao gồm s câu, câu có ws chữ chữ có lw Sau qua xử lý văn Xn dán nhãn phân loại Tông quan, có mức độ khác áp dụng phân loại văn bản: - Mức văn - Mức đoạn văn - Mức câu - Mức câu (sub-sentence) Ngơ Hồng Phúc 10 1.1 Trích xuất đặc trưng Văn ban đầu data không cấu trúc, muốn xử lý văn cần phải chuyển chúng vào khơng gian đặc trưng có cấu trúc (structured feature space) Trước hết data cần làm để loại bỏ từ, ký tự không cần thiết Sau phương pháp rút trích đặc trưng áp dụng Các kĩ thuật phổ biến bao gồm Term Frequency-Inverse Document Frequency (TF-IDF), Term Frequency (TF), Word2Vec, and Global Vectors for Word Representation (GloVe) 1.2 Giảm số chiều Data sau chuyển sang dạng vector, đưa trực tiếp vào hệ thống, gây chậm trễ thời gian tăng yêu cầu nhớ Vì thế, cần phải cắt giảm số chiều vector Các phương pháp phổ biến bao gồm: Principal Component Analysis (PCA), Linear Discriminant Analysis (LDA), and non-negative matrix factorization (NMF), unsupervised feature extraction dimensionality reduction random projection, autoencoders, and t-distributed stochastic neighbor embedding (t-SNE) 1.3 Phân loại văn Phần quan trọng q trình lựa chọn classifier thích hợp Để xác định thuật toán hợp lý nhất, cần hiểu chất chúng Có nhiều loại thuật tốn sử dụng: - Các thuật tốn có tham số: boosting, bagging, Nạve Bayes Classifier (NBC) (chi phí tính tốn rẻ u cầu nhớ) - Các thuật tốn khơng tham số: k-nearest neighbor (KNN), Support Vector Machine (SVM) - Một số classifier dựa vào (tree-based classifiers) decision tree random forest 1.4 Đánh giá Giai đoạn cuối đánh giá, mục tiêu để làm rõ hiệu thuật tốn, từ đưa điều chỉnh thay thích hợp Có số phương pháp đánh giá dành riêng cho thuật toán phân loại văn bản: Fβ Score, Matthews Correlation Coefficient (MCC), receiver operating characteristics (ROC), and area under the ROC curve (AUC) Ngơ Hồng Phúc 14 o Folder crawl: chữa tool trợ giúp khai thác liệu cần thiết o File Normalization: giúp chuẩn hóa văn 3.2 Khai thác liệu 3.2.1 Khai thác đường link báo Công cụ khai thác liệu viết ngôn ngữ Python, với module beautifulSoup, giúp rút trích thơng tin từ file html Các báo khai thái lấy từ hai trang thông tin điện tử phổ biến, bao gồm news.zing.vn kenh14.vn Nội dụng đăng tải hai trang trải dài qua nhiều lĩnh vực (kinh tết, thời sự, pháp luật đến đời sống, giới trẻ …) viết nhiều người nên giúp liệu khai thác đa dạng Các báo thuộc loại xếp vào đường dẫn riêng, nên việc thực khai thác liệu đơn giản cần nối đường URL trang chủ với phần đuôi thể phân loại Nội dung file crawl_URL.py thể hình Ngơ Hồng Phúc 15 Hình: Nội dung file crawl_URL.py 3.2.2 Khai thác nội dung báo Sau đường dẫn URL lưu vào file riêng Nội dung báo cỏ thể khai thác dễ dàng Thông thường, nội dung đưa vào tag HTML () để phân biệt với phần lại trang (quảng cáo, báo khuyến nghị, header, footer…) Ngơ Hồng Phúc 16 Ngồi văn bản, báo cịn chứa thơng tin định dạng khác (hình ảnh, video…) nên sau có nội dung cần thực lọc lại Nội dung file crawl_text.py thể hình 3.2.3 Kết Các đường dẫn lưu vào file absURLs.csv nội dung báo lưu articles.csv Trong absURLs.csv, URL lưu dòng, kèm theo số thứ tự phía trước phân biệt dấu ‘*’ Hình: Nội dung file absURLs.csv Trong articles.csv, báo lưu dòng dẫn đầu số thứ tự URL tương ứng, phân biệt dấu ‘*’ Vì để đảm bảo tính ngẫu nhiên liệu, báo xác trộn trước lưu vào Ngơ Hồng Phúc 17 Hình :Nội dung file articles.csv 3.3 Tiền xử lý liệu 3.3.1 Chuẩn hóa văn Văn khai thác chứa kí tự dư ( dấu cách, dấu câu…) nên cần loại bỏ Việc thực hàm file Normalization.py Ngơ Hồng Phúc 18 Hình: Nội dung file Normalize.py Kết lưu file preprocessed_articles.txt Ngơ Hồng Phúc 19 Hình : Nội dung file preprocessed_articles.txt 3.3.2 Nhóm từ Vì từ tiếng Việt cấu từ từ tiếng nên cần phải nhóm lại Việc nhóm thực nhiều cách khác Ngơ Hồng Phúc 20 Hình: Nội dung file segmented_articles.txt 3.3.2 Xây dựng từ điển Ngoài ra, cịn cần có từ điển tiếng Việt Vì liệu có từ đặc trưng, nên để đảm bảo cá mơ hình WE chuyển đổi tồn từ, nên thay sử dụng từ điển đăng tải mạng, từ riêng xây dựng lưu Dictionary.csv 3.4 Xây dựng mơ hình Có hai mơ hình thực Word2Vec GloVe 3.4.1 Word2Vec Ngơ Hồng Phúc 21 Ngơ Hồng Phúc 22 Hình: Nội dung file Skipgram.py Ngơ Hồng Phúc 23 3.4.2 Nâng cấp Skipgram Hình: Nội dung file hi-softmax.py 3.4.3 Mơ hình Glove Ngơ Hồng Phúc 24 Ngơ Hồng Phúc 25 Hình: Nội dung file Glove.py Ngơ Hồng Phúc 26 Ngơ Hồng Phúc 27 Hình: Ma trận kết sau chạy Glove Ngơ Hoàng Phúc 28 CHƯƠNG 4: TỔNG KẾT Như vậy, ba tháng thực tập em học kiến thức NLP học, đồng thời có thêm kiến thức, kinh nghiệm cách làm việc, kỹ mềm , Môi trường làm việc trẻ trung, vui vẻ, thoải mái cho việc học tập, nghiên cứu phát triển Được học hỏi, đào tạo công nghệ nhất, đặc biệt lĩnh vực ML/Deeplearning vơ hot Có hội tham gia vào toán triển khai thực tế, Có hệ thống máy tính mạnh cho việc chạy thử nghiệm thuật toán ML Chân thành cảm ơn giúp đỡ anh chị nhóm/ Cảm ơn thầy Huỳnh Ngọc Tín anh Trần Văn Tùng giúp em hồn thành báo cáo Ngơ Hồng Phúc ... Data, Computer Vision, NLP, … Ngơ Hồng Phúc CHƯƠNG 2: NỘI DUNG THỰC TẬP Đợt thực tập với lĩnh vực NLP nhằm mục đích giúp sinh viên thực tập đào tạo kiến thức xử lý ảnh, đồng thời rèn luyện kỹ mềm... anh, chị team, thực tập chúng em tiếp thu kiến thức quan trọng để làm học tập Chân thành cảm ơn anh chị team bỏ nhiều thời gian, cơng sức để hướng dẫn chúng em hồn thành đợt thực tập Đặc biệt cảm... AdMicro – Một môi trường học tập, làm việc, đại – nơi giúp em thực dự định Ngơ Hồng Phúc LỜI CẢM ƠN Trân trọng gửi lời cảm ơn AdTech HCM tạo điều kiện cho em có hội thực tập công ty Chỉ thời gian