Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 56 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
56
Dung lượng
1,1 MB
Nội dung
1 MỞ ĐẦU Ngày nay, ngƣời sở hữu kho liệu phong phú, đa dạng khổng lồ Đặc biệt phát triển công nghệ thông tin việc ứng dụng công nghệ thông tin nhiều lĩnh vực làm cho kho liệu tăng lên nhanh chóng Sự bùng nổ dẫn tới yêu cầu cấp thiết cần có kỹ thuật công cụ để tự động chuyển đổi lƣợng liệu khổng lồ thành tri thức có ích Mặt khác, mơi trƣờng cạnh tranh ngƣời ta ngày cần có thơng tin với tốc độ nhanh chóng để giúp cho việc định ngày có nhiều câu hỏi mang tính chất định tính cần phải trả lời dựa khối lƣợng liệu khổng lồ có Tiến hành cơng việc nhƣ q trình phát tri thức sở liệu, kỹ thuật khai phá liệu trở thành lĩnh vực thời Công nghệ thông tin giới nói chung Việt Nam nói riêng Rất nhiều tổ chức công ty lớn giới áp dụng kỹ thuật khai phá liệu vào hoạt động sản xuất kinh doanh thu đƣợc lợi ích to lớn Hiện mạng xã hội nhƣ Facebook, Twitter, Zalo,… ngày phát triển có ảnh hƣởng lớn đến đời sống xã hội Trong lĩnh vực thƣơng mại điện tử, nhiều công ty vào mạng xã hội để quảng cáo, tƣ vấn, phân tích sản phẩm cơng ty Chính biết đƣợc giới tính ngƣời dùng nam hay nữ việc tƣ vấn quảng cáo hƣớng đến ngƣời dùng cụ thể hiệu Do vấn đề phân loại tự động giới tính ngƣời dùng sử dụng mạng xã hội tốn quan trọng Hiện có nhiều kỹ thuật để sử dụng cho phân loại tự động giới tính nhƣng chủ yếu dựa vào đặc trƣng kiểu truyền thống nhƣ mơ hình tần suất từ, n-gram, Word2Vec mơ hình chuyển từ thành vector đƣợc phát triển ứng dụng rộng rãi thời gian gần Chính mà chúng tơi sử dụng thêm Word2Vec làm đặc trƣng để cải tiến kết toán Từ vấn đề nêu trên, chúng tơi chọn đề tài: “Phân loại giới tính người dùng mạng xã hội dựa tin nhắn văn Word2Vec” để làm luận văn tốt nghiệp Đề tài nhằm mục đích nghiên cứu phƣơng pháp biểu diễn từ dƣới dạng vector sau dùng làm đặc trƣng để cải thiện kết việc phân loại giới tính ngƣời dùng mạng xã hội dựa vào tin nhắn văn Luận văn bao gồm phần Mở đầu, phần kết luận ba chƣơng Phần mở đầu giới thiệu đề tài luận văn Phần trình bày lý đề tài, mục tiêu đề tài cấu trúc luận văn Chƣơng giới thiệu tổng quan khai phá liệu trình khai phá liệu Bên cạnh cịn giới thiệu số chức khai phá liệu nhƣ số kỹ thuật khai phá liệu Ngồi chƣơng cịn giới thiệu mạng xã hội, lợi ích bất lợi mạng xã hội nhƣ số mạng xã hội phổ biến giới Chƣơng giới thiệu khái niệm vector từ nhƣ lập luận liên quan đến vector từ Chƣơng cịn giới thiệu mơ hình nhƣ cách xây dựng Word2Vec nhƣ mơ hình Continuous Bag-of-Words, mơ hình Skip-gram Chƣơng trình bày về thực nghiệm toán ứng dụng Word2Vec vào phân loại giới tính ngƣời dùng mạng xã hội Giải pháp thực kết đạt đƣợc sau thực nghiệm Cuối phần kết luận, định hƣớng nghiên cứu phát triển đề tài tài liệu tham khảo luận văn CHƯƠNG 1: TỔNG QUAN KHAI PHÁ DỮ LIỆU VÀ MẠNG XÃ HỘI 1.1 Khai phá liệu 1.1.1 Khai phá liệu gì? Khai phá liệu (datamining) đƣợc định nghĩa nhƣ trình chắt lọc hay khai phá tri thức từ lƣợng lớn liệu Một ví dụ hay đƣợc sử dụng việc khai thác vàng từ đá cát, Dataming đƣợc ví nhƣ cơng việc "Đãi cát tìm vàng" tập hợp lớn liệu cho trƣớc Thuật ngữ Datamining ám việc tìm kiếm tập hợp nhỏ có giá trị từ số lƣợng lớn liệu thơ Có nhiều thuật ngữ đƣợc dùng có nghĩa tƣơng tự với từ Datamining nhƣ Knowledge Mining (khai phá tri thức), knowledge extraction (chắt lọc tri thức), data/patern analysis (phân tích liệu/mẫu), data archaeoloogy (khảo cổ liệu), datadredging (nạo vét liệu), [1] Sau số định nghĩa mang tính mơ tả nhiều tác giả khai phá liệu: Định nghĩa Ferruzza: “Khai phá liệu tập hợp phƣơng pháp đƣợc dùng tiến trình khám phá tri thức để khác biệt mối quan hệ mẫu chƣa biết bên liệu” Định nghĩa Parsaye: “Khai phá liệu trình trợ giúp định, ta tìm kiếm mẫu thơng tin chƣa biết bất ngờ CSDL lớn” Định nghĩa Fayyad: “Khai phá tri thức q trình khơng tầm thƣờng nhận mẫu liệu có giá trị, mới, hữu ích, tiềm hiểu đƣợc” 1.1.2 Quá trình khai phá liệu Khai phá liệu bƣớc bảy bƣớc trình KDD (Knowleadge Discovery in Database) KDD đƣợc xem nhƣ trình khác theo thứ tự sau [1]: Làm liệu (data cleaning & preprocessing): Loại bỏ nhiễu liệu không cần thiết Tích hợp liệu: (data integration): q trình hợp liệu thành kho liệu (data warehouses & data marts) sau làm tiền xử lý (data cleaning & preprocessing) Trích chọn liệu (data selection): trích chọn liệu từ kho liệu sau chuyển đổi dạng thích hợp cho q trình khai thác tri thức Q trình bao gồm việc xử lý với liệu nhiễu (noisy data), liệu không đầy đủ (incomplete data), Chuyển đổi liệu: Các liệu đƣợc chuyển đổi sang dạng phù hợp cho trình xử lý Khai phá liệu (data mining): Là bƣớc quan trọng nhất, sử dụng phƣơng pháp thông minh để chắt lọc mẫu liệu Ƣớc lƣợng mẫu (knowledge evaluation): Quá trình đánh giá kết tìm đƣợc thơng qua độ đo Biểu diễn tri thức (knowledge presentation): Quá trình sử dụng kỹ thuật để biểu diễn thể trực quan cho ngƣời dùng 1.1.3 Các chức khai phá liệu Data Mining đƣợc chia nhỏ thành số hƣớng nhƣ sau [1]: • Mơ tả khái niệm (concept description): thiên mô tả, tổng hợp tóm tắt khái niệm Ví dụ: tóm tắt văn • Luật kết hợp (association rules): dạng luật biểu diễn tri thức dạng đơn giản Ví dụ: “60 % nam giới vào siêu thị mua bia có tới 80% số họ mua thêm thịt bị khơ” Luật kết hợp đƣợc ứng dụng nhiều lĩnh vực kinh doanh, y học, tin-sinh, tài & thị trƣờng chứng khốn, • Phân loại dự đoán (classification & prediction): xếp đối tƣợng vào lớp biết trƣớc Ví dụ: phân loại vùng địa lý theo liệu thời tiết Hƣớng tiếp cận thƣờng sử dụng số kỹ thuật “machine learning” nhƣ định (decision tree), mạng nơ ron nhân tạo (neural network), Ngƣời ta gọi phân loại học có giám sát (học có thầy) • Phân cụm (clustering): xếp đối tƣợng theo cụm (số lƣợng nhƣ tên cụm chƣa đƣợc biết trƣớc Ngƣời ta gọi phân cụm học khơng giám sát (học khơng thầy) • Khai phá chuỗi (sequential/temporal patterns): tƣơng tự nhƣ khai phá luật kết hợp nhƣng có thêm tính thứ tự tính thời gian Hƣớng tiếp cận đƣợc ứng dụng nhiều lĩnh vực tài thị trƣờng chứng khốn có tính dự báo cao 1.1.4 Các kỹ thuật khai phá liệu 1.1.4.1 Phân loại (phân loại - classification) Là việc xác định hàm ánh xạ từ mẫu liệu vào số lớp đƣợc biết trƣớc Mục tiêu thuật tốn phân loại tìm mối quan hệ thuộc tính dự báo thuộc tính phân loại Nhƣ q trình phân loại sử dụng mối quan hệ để dự báo cho mục Các kiến thức đƣợc phát biểu diễn dƣới dạng luật theo cách sau: “Nếu thuộc tính dự báo mục thoả mãn điều kiện tiền đề mục nằm lớp kết luận” [3] Ví dụ: Một mục biểu diễn thơng tin nhân viên có thuộc tính dự báo là: họ tên, tuổi, giới tính, trình độ học vấn, … thuộc tính phân loại trình độ lãnh đạo nhân viên 1.1.4.2 Hồi qui (regression) Là việc học hàm ánh xạ từ mẫu liệu thành biến dự đốn có giá trị thực Nhiệm vụ hồi quy tƣơng tự nhƣ phân loại, điểm khác chỗ thuộc tính để dự báo liên tục khơng phải rời rạc Việc dự báo giá trị số thƣờng đƣợc làm phƣơng pháp thống kê cổ điển, chẳng hạn nhƣ hồi quy tuyến tính Tuy nhiên, phƣơng pháp mơ hình hố đƣợc sử dụng, ví dụ: định Ứng dụng hồi quy nhiều, ví dụ: dự đốn số lƣợng sinh vật phát quang thời khu rừng cách dị tìm vi sóng thiết bị cảm biến từ xa; ƣớc lƣợng sác xuất ngƣời bệnh chết cách kiểm tra triệu chứng; dự báo nhu cầu ngƣời dùng sản phẩm, … [3] 1.1.4.3 Phân cụm (clustering) Là việc mô tả chung để tìm tập hay nhóm, loại mơ tả liệu Các nhóm tách phân cấp hay gối lên Có nghĩa liệu vừa thuộc nhóm lại vừa thuộc nhóm khác Các ứng dụng khai phá liệu có nhiệm vụ phân nhóm nhƣ phát tập khách hàng có phản ứng giống CSDL tiếp thị; xác định quang phổ từ phƣơng pháp đo tia hồng ngoại, … Liên quan chặt chẽ đến việc phân nhóm nhiệm vụ đánh giá liệu, hàm mật độ xác suất đa biến/các trƣờng CSDL [3] 1.1.4.4 Tổng hợp (summarization) Là công việc liên quan đến phƣơng pháp tìm kiếm mơ tả tập liệu Kỹ thuật tổng hợp thƣờng áp dụng việc phân tích liệu có tính thăm dị báo cáo tự động Nhiệm vụ sản sinh mô tả đặc trƣng cho lớp Mơ tả loại kiểu tổng hợp, tóm tắt đặc tính chung tất hay hầu hết mục lớp Các mô tả đặc trƣng thể theo luật có dạng sau: “Nếu mục thuộc lớp tiền đề mục có tất thuộc tính nêu kết luận” Lƣu ý luật dạng có khác biệt so với luật phân loại Luật phát đặc trƣng cho lớp sản sinh mục thuộc lớp [3] 1.1.4.5 Mơ hình hố phụ thuộc (dependency modeling) Là việc tìm kiếm mơ hình mơ tả phụ thuộc biến, thuộc tính theo hai mức: Mức cấu trúc mơ hình mơ tả (thƣờng dƣới dạng đồ thị) Trong đó, biến phụ thuộc phận vào biến khác Mức định lượng mơ hình mơ tả mức độ phụ thuộc Những phụ thuộc thƣờng đƣợc biểu thị dƣới dạng theo luật “nếu - thì” (nếu tiền đề kết luận đúng) Về nguyên tắc, tiền đề kết luận kết hợp logic giá trị thuộc tính Trên thực tế, tiền đề thƣờng nhóm giá trị thuộc tính kết luận thuộc tính Hơn hệ thống phát luật phân loại tất luật cần phải có thuộc tính ngƣời dùng kết luận Quan hệ phụ thuộc biểu diễn dƣới dạng mạng tin cậy Bayes Đó đồ thị có hƣớng, khơng chu trình Các nút biểu diễn thuộc tính trọng số liên kết phụ thuộc nút [3] 1.1.4.6 Phát biến đổi độ lệch (change and deviation dectection) Nhiệm vụ tập trung vào khám phá hầu hết thay đổi có nghĩa dƣới dạng độ đo biết trƣớc giá trị chuẩn, phát độ lệch đáng kể nội dung tập liệu thực nội dung mong đợi Hai mơ hình độ lệch hay dùng lệch theo thời gian hay lệch theo nhóm Độ lệch theo thời gian thay đổi có ý nghĩa liệu theo thời gian Độ lệch theo nhóm khác liệu hai tập liệu, tính trƣờng hợp tập liệu thuộc tập kia, nghĩa xác định liệu nhóm đối tƣợng có khác đáng kể so với tồn đối tƣợng khơng? Theo cách này, sai sót liệu hay sai lệch so với giá trị thơng thƣờng đƣợc phát Vì nhiệm vụ yêu cầu số lƣợng dạng thông tin khác nên thƣờng ảnh hƣởng đến việc thiết kế chọn phƣơng pháp khai phá liệu khác [3] 1.2 Mạng xã hội 1.2.1 Mạng xã hội gì? Mạng xã hội việc thực mở rộng số lƣợng mối quan hệ doanh nghiệp quan hệ xã hội cách tạo kết nối thông qua cá nhân ngƣời dùng, thƣờng thông qua trang web mạng xã hội nhƣ Facebook, Twitter, LinkedIn Google+[16] Dựa sáu cấp độ khái niệm ngăn cách (ý tƣởng hai ngƣời hành tinh thực liên lạc thông qua chuỗi không năm ngƣời trung gian), mạng xã hội thiết lập cộng đồng trực tuyến kết nối với (đôi đƣợc gọi đồ thị xã hội) giúp ngƣời liên lạc đƣợc với ngƣời họ biết – ngƣời họ gặp phƣơng thức khác [16] Tùy thuộc vào tảng truyền thông xã hội, thành viên liên hệ với thành viên khác Trong trƣờng hợp khác, thành viên liên hệ với họ có kết nối đến, sau liên lạc có kết nối đến, nhƣ Một số dịch vụ yêu cầu thành viên phải có kết nối từ trƣớc để liên hệ với thành viên khác [16] Trong mạng xã hội vào gần nhƣ hầu hết lĩnh vực tồn xã hội, với tiềm vô lớn Web, để tạo điều kiện kết nối nhƣ dẫn đến việc mở rộng theo cấp số nhân liên tục mạng xã hội Ngồi tảng truyền thơng xã hội, khả tƣơng tác xã hội hợp tác ngày đƣợc xây dựng mở rộng vào ứng dụng kinh doanh [16] 1.2.2 Lợi ích tác hại mạng xã hội 1.2.2.1 Lợi ích mạng xã hội Mạng xã hội ngày có số lợi ích nhƣ sau [4]: a Giới thiệu thân với người: ta giới thiệu tính cách, sở thích, quan điểm thân mạng xã hội giúp ta tìm kiếm hội phát triển khả thân b Kết nối bạn bè: ta biết đƣợc nhiều thông tin bạn bè ngƣời thân cách kết bạn mạng xã hội Ta gặp gỡ giao lƣu kết bạn với tất ngƣời giới có sở thích hay quan điểm giống Từ xây dựng mối quan hệ tốt đẹp hợp tác với nhiều mặt c Tiếp nhận thông tin, học hỏi kiến thức kỹ năng: việc cập nhật thông tin xã hội đại nhƣ điều nên làm cần phải làm, giúp ta dễ dàng tìm hiểu, nắm bắt đƣợc nhiều thông tin quan trọng Học hỏi thêm nhiều kiến thức, trau dồi kĩ giúp cho bạn hồn thiện thân d Kinh doanh: bán mua hàng online khơng cịn xa lạ với tất ta mạng xã hội mơi trƣờng kinh doanh vơ lí tƣởng Ta dùng để quảng cáo cho sản phẩm cơng ty, giúp cho ta tìm kiếm đƣợc khách hàng tiềm e Bày tỏ quan niệm cá nhân: trải qua nhiều hoạt động căng thẳng sống, ngƣời cần bày tỏ cần nhận đƣợc sẻ chia để ta 10 cảm thấy thản Thế nhƣng việc chia sẻ vấn đề ngồi đời thực đơi trở nên khó khăn với số ngƣời nói Chính việc viết suy nghĩ qua bàn phím máy tính giúp ta giải tỏa đƣợc phần f Mang đến lợi ích sức khoẻ: giúp cải thiện não làm chậm q trình lão hố, nghiên cứu giáo sƣ Gary Small trƣờng Đại học California Los Angeles cho thấy sử dụng tìm kiếm nhiều thơng tin với internet, não đƣợc rèn luyện tốt khả phán đoán, định từ phát triển thêm Ơng cịn đồng thời nhận thấy rằng, việc sử dụng internet nhiều giúp cho não hoạt động tốt hơn, giúp làm giảm q trình lão hóa làm cho ngƣời lớn tuổi có suy nghĩ lạc quan 1.2.2.2 Tác hại mạng xã hội Ta phủ nhận lợi ích mà mạng xã hội mang đến cho ngƣời nhƣ giúp ích cho cơng việc, cho việc tìm kiếm thơng tin, thiết lập mối quan hệ cá nhân hay giải trí… Tuy nhiên, chứa đựng nhiều nguy cơ, rủi ro tiềm ẩn ảnh hƣởng xấu tới cơng việc, mối quan hệ cá nhân sống ngƣời sử dụng [4]: a Giảm tư ng tác người với người: nghiện mạng xã hội không khiến bạn dành thời gian cho ngƣời thật việc thật quanh mình, mà cịn khiến họ buồn phiền bạn coi trọng bạn bè “ảo” từ mối quan hệ ảo 42 mê” gần Chính ta khơng sử dụng Word2Vec việc biểu diễn mơ hình ngơn ngữ địi hỏi kích thƣớc lớn * Áp dụng phân loại đưa thêm Word2Vec làm đặc trưng cho mơ hình n-gram ta thực sau: Để cải thiện hạn chế nêu ta sử dụng Word2Vec biểu diễn cho từ dạng vector Đầu tiên lấy nội dung báo trang web nhƣ; 24h.com.vn, vnexpress.net, eva.vn, dantri.vn, Sau tiến hành tiền xử lý sử dụng công cụ vn.vitk-master để thực tách từ thu đƣợc liệu chuẩn hóa Tiếp theo tơi sử dụng cơng cụ Gensim7 cho liệu chuẩn hóa để sinh file Word2Vec dùng làm đặc trƣng vector Trong đặc trƣng vector từ có nghĩa gần đƣợc biểu diễn với giá trị gần Ví dụ: từ xe_máy có giá trị biểu diễn 0.7628448512386902 có từ sau đƣợc biểu diễn có giá trị gần nhƣ nhau: Bảng 3.1: Giá trị biểu diễn từ Word2Vec Từ Giá trị biểu diễn thuyền_thúng 0.7752657532691956 xe_đạp 0.7752000093460083 tàu_hỏa 0.749005913734436 xích_lơ 0.7275688052177429 ơ_tơ 0.7588498592376709 Tiếp theo tơi thực giống nhƣ với mơ hình n-gram Tuy nhiên tìm kiếm liên kết đặc trƣng liệu kiểm thử với đặc trƣng tập huấn luyện Nếu khơng tìm thấy liên kết tơi đƣa thêm Word2Vec vào phân lớp để tìm kiếm Tơi tìm từ đặc trƣng vector có giá trị biểu diễn gần với từ đặc trƣng liệu kiểm thử để sử dụng làm đặc trƣng kiểm thử tìm kiếm liên kết với đặc trƣng tập huấn luyện Cứ tiếp tục nhƣ tìm đƣợc liên kết với tập huấn luyện Sau lại tiếp tục với đặc trƣng cịn lại liệu kiểm thử Cuối giới tính ngƣời dùng đƣợc xác định dựa vào kết thu đƣợc https://pypi.python.org/pypi/gensim 43 Ví dụ: Một đặc trƣng tập kiểm thử là: “đua xe_máy”, tìm kiếm đặc trƣng tập huấn luyện khơng có đặc trƣng “đua xe_máy” phân lớp tìm Word2Vec thấy có từ “đua ơ_tơ” có giá trị biểu diễn gần từ cần tìm Khi phân lớp dùng từ làm đặc trƣng để tìm kiếm đặc trƣng tập huấn luyện thấy đặc trƣng “đua ô_tô” nằm lớp giới tính nam nên phân lớp cho kết nam Kết đặc trƣng nằm lớp chiếm đa số đƣợc sử dụng làm kết cuối Để dễ hình dung quy trình tơi có sơ đồ nhƣ sau: Dữ liệu thơ từ báo (Dữ liệu học) Tiền xử lý Tách từ Dữ liệu thô từ mạng xã Tiền xử lý hội (Dữ liệu Tách từ huấn luyện) Dữ liệu thô từ mạng xã Tiền xử lý hội (Dữ liệu Tách từ kiểm thử) Dữ liệu chuẩn hóa Xây dựng Word2Vec đặc trƣng [vector] đặc trƣng [1gram] [2gram] Bộ phân lớp: Logistic đặc trƣng [1gram] [2gram] Kết Hình 3.2: Phân loại đưa thêm Word2Vec 3.3 Thực nghiệm 3.3.1 Dữ liệu thực nghiệm * Chuẩn bị liệu ngƣời dùng mạng xã hội - Sử dụng công cụ Graph API Explorer8 để truy xuất vào lấy nội dung tƣờng ngƣời dùng mạng xã hội https://developers.facebook.com/tools/explorer 44 - Các nội dung tƣờng ngƣời đƣợc lƣu vào file theo định dạng: - Sử dụng công cụ vn.vitk-master để tách từ, tách câu Đối với liệu tiếng Anh khơng phải thực bƣớc cịn tiếng Việt bƣớc vơ cần thiết VD: Tôi học xe máy Nếu bƣớc máy trích chọn đặc trƣng từ từ riêng lẻ sau: tôi, đi, học, bằng, xe, máy Nếu tách từ máy trích chọn đặc trƣng từ từ nhƣ sau: tôi, đi_học, bằng, xe_máy Nhƣ thấy hai trƣờng hợp việc tách từ đem đến độ xác cao phân loại văn tiếng Việt - Lƣu tên file theo định dạng: mã.giới tính.tuổi.nghề nghiệp.tên.xml Vd: 11106725783.male.25.student.tranvanchin.xml Với mã, giới tính, tuổi, nghề nghiệp, tên nhãn đƣợc gán theo thông tin ngƣời dùng mạng xã hội - Đƣa tất file vào thƣ mục chung (khoảng 347 file) VD: /home/trungkb/data/blogs - Tạo lƣu vào đối tƣợng SFrame tất liệu ngƣời dùng mạng xã hội dƣới dạng đặc trƣng trọng số đặc trƣng Mỗi dòng liệu ngƣời dùng mạng xã hội Vd1: Chúng_mày hôm_nay có đi_nhậu khơng? Với ví dụ thƣờng đặc trƣng đƣợc trích chọn là: chúng_mày, đi_nhậu Và đặc trƣng thƣờng có ngƣời dùng có giới tính Nam hay sử dụng Vd2: Bạn mua_sắm với chúng_tớ khơng? https://github.com/turi-code/SFrame 45 Với ví dụ thƣờng đặc trƣng đƣợc trích chọn là: mua_sắm, chúng_tớ Các đặc trƣng thể ngƣời nói thƣờng có giới tính Nữ Khi sử dụng Word2Vec tự học đƣợc thêm từ có ngữ cảnh tƣơng tự nhƣ từ Các từ có nghĩa gần giống vector từ gần Ví dụ: chúng_mày, chúng_nó, từ có nghĩa gần giống nên vector từ gần * Xây dựng Word2Vec để sử dụng làm đặc trƣng trình dự đốn - Tơi sử dụng thƣ viện Jsoup để viết mã lấy liệu từ trang web: 24h.com.vn, vnexpress.net, dantri.vn, eva.vn - Sau tơi sử dụng thêm cơng cụ vn.vitk-master để tách từ cho liệu đƣợc lấy - Lấy liệu đƣợc sinh sau tách từ đƣa hết vào thƣ mục /home/trungkb/data/txt - Sử dụng Gensim với tham số mặc định để sinh file word2vec theo mơ hình Skip-gram với số chiều vector 300, bỏ qua từ xuất 40 lần Bộ liệu để sinh file word2vec có dung lƣợng 1,2Gb bao gồm nội dung báo đƣợc đăng trang web nhƣ 24h.com.vn, vnexpress.net, dantri.vn, eva.vn, Việc lấy nội dung sử dụng thƣ viện Jsoup để lấy nội dung từ trang web Khi xây dựng Word2Vec, liệu đầu vào văn bản, xem nhƣ tập hợp từ (word) Đầu tiên, tƣơng ứng với word khởi tạo vector ngẫu nhiên với số chiều đƣợc định (300 chiều) Sau có vector ngẫu nhiên, việc thực trình điều chỉnh vector từ để cho chúng biểu diễn đƣợc liên hệ từ có quan hệ với Giả sử có câu văn sau: Con mèo trèo cau Tƣơng ứng với từ câu này, khởi tạo vector ngẫu nhiên với số chiều đƣợc quy định trƣớc (ví dụ số chiều = 50) Ngƣời ta sử dụng mạng neuron dùng mạng neural để điều chỉnh vector từ cho chúng thỏa mãn số điều kiện Câu hỏi đặt đây: Điều kiện gì? 46 Để trả lời câu hỏi trƣớc hết cần quan tâm tới đặc điểm ngơn ngữ, từ có mối liên hệ với thƣờng xuất ngữ cảnh khác Ví dụ từ “trái” “phải” xem có mối liên quan với dùng phƣơng hƣớng thƣờng xuất mẫu câu giống Ví dụ tơi có câu sau: Chạy xe ph a ên trái”, Chạy ên phải”, Bên trái rộng hơn”, Bên phải có ngơi nh ” Ta để ý thấy từ nằm xung quanh từ “trái” “phải” giống không? Đó ngun tắc học Word2Vec Nó dựa vào từ xung quanh từ để điều chỉnh vector từ cho hợp lý Quay trở lại với ví dụ ban đầu: Con mèo trèo cau Chúng ta sử dụng mạng Neural để xem câu có hợp lệ hay khơng Giả sử thay từ “trèo” từ “ngủ“, rõ ràng có câu hồn tồn vơ nghĩa hầu nhƣ không xuất văn bình thƣờng: “con mèo ngủ cau“ Bằng cách thay từ “trèo” từ “ngủ” nói cho mạng Neural biết câu sinh không hợp lệ, mạng Neural phải điều chỉnh tham số mạng cách hợp lý để đƣa đƣợc output nhƣ mong muốn (tức “khơng hợp lệ”) Thơng thƣờng input vào mạng Neural nguyên câu mà cụm từ câu có độ dài dựa theo tham số gọi “window size” Ví dụ “window_size” = có cụm từ: “con mèo trèo“, “mèo trèo cây“, “trèo cau“ Với “windows size” thay từ từ ngẫu nhiên khác để có cụm câu vơ nghĩa dùng để huấn luyện mạng Neural (bởi huấn luyện mạng Neural phải vừa cho đầu vào với nhãn “hợp lệ” phải có đầu vào với nhãn “khơng hợp lệ” nhằm giúp cho mạng Neural phân biệt cho đúng) Nhờ việc huấn luyện mạng Neural số lƣợng báo cực lớn thu thập đƣợc từ trang web vector từ đƣợc điều chỉnh xác từ có liên quan xuất gần Khi từ có mối liên hệ với 3.3.2 C u hình thực nghiệm * Chuẩn bị môi trƣờng 47 BeautifulSoup10: sử dụng để phân tích liệu thơ ngƣời dùng mạng xã hội NLTK11: thƣ viện để xử lý loại bỏ từ vô nghĩa, ký tự nghĩa Gensim: cơng cụ sử dụng để xây dựng Word2Vec GraphLab Create: sử dụng phân lớp Logistic đánh giá kết Python 2.7.6: viết mã sinh đối tƣợng SFrame xử lý liệu để đƣa vào huấn luyện Word2Vec JDK 1.7 NetBeans IDE 8.0.2: viết mã để thu thập liệu báo từ trang web 24h.com.vn, vnexpress.net, dantri.vn, eva.vn dùng để xây dựng Word2Vec thu thập liệu tƣờng ngƣời dùng mạng xã hội để dùng làm liệu huấn luyện liệu kiểm thử cho toán Tool: vn.vitk-master - xử lý tách từ tiếng Việt * Cấu hình máy tính thực nghiệm: CPU Core I7 Ram 8Gb HDD 250Gb OS System: Ubuntu 14.10 3.3.3 Mô tả thực nghiệm Đối với tập liệu tƣờng ngƣời dùng mạng xã hội lần lƣợt chia tập liệu thành phần có tỷ lệ nhƣ sau: Bảng 3.2: Tỷ lệ chia tập liệu huấn luyện kiểm thử 10 11 Lần chia Tập huấn luyện Tập kiểm thử 75% 25% https://pypi.python.org/pypi/beautifulsoup4 http://www.nltk.org/ 48 80% 20% 85% 15% Với lần chia thứ tỷ lệ tập liệu huấn luyện/tập liệu kiểm thử 75%-25% thực nghiệm 10 lần Mỗi lần thực nghiệm lấy ngẫu nhiên liệu theo tỷ lệ Điều giúp cho trình chạy thực nghiệm 10 lần 10 lần tập liệu huấn luyện nhƣ tập liệu kiểm thử khác Sau tơi lấy trung bình cộng kết 10 lần chạy đƣợc kết thực nghiệm cho lần chia tỷ lệ tập liệu Tƣơng tự nhƣ với lần chia tỷ lệ tập liệu huấn luyện/tập liệu kiểm thử 80%-20% 85%-15% Với lần thực nghiệm chạy theo kỹ thuật thực là: n-gram khơng có Word2Vec có Word2Vec Với mơ hình n-gram tơi có đặc trƣng đầu vào đặc trƣng [1gram] đặc trƣng [2gram] Khi sử dụng thêm Word2Vec đƣa thêm đặc trƣng [vector] vào cho phân lớp 3.3.4 Đánh giá Để đánh giá đƣợc độ hiệu kỹ thuật phân loại giới tính ngƣời dùng dựa vào tin nhắn văn Word2Vec, tiến hành so sánh với số kỹ thuật khác Ở đây, tơi so sánh độ xác việc sử dụng n-gram có Word2Vec so với khơng sử dụng Word2Vec Ta tiến hành xây dựng phân lớp nhƣ sau: Phân loại với đặc trưng [1gram] [2gram]: Tiến hành huấn luyện phân lớp với liệu huấn luyện liệu kiểm thử đặc trƣng [1gram] [2gram] Phân loại sử dụng thêm Word2Vec: Tiến hành huấn luyện phân lớp với liệu huấn luyện đặc trƣng [1gram],[2gram] [vector] liệu kiểm thử đặc trƣng [1gram] [2gram] Tiêu chuẩn đánh giá thực nghiệm độ đo xác, tỉ lệ phần trăm mẫu phân lớp xác tổng số mẫu kiểm thử, độ xác đƣợc tính cơng thức sau: 49 Độ xác = (3.1) Trong đó, Dtst liệu kiểm thử, y cực quan điểm ban đầu, f(x) cực quan điểm dự đoán 3.3.5 Kết thực nghiệm Kết thực nghiệm cho trường hợp nêu chi tiết đây: * Tỷ lệ tập liệu: 75% huấn luyện - 25% kiểm thử: Bảng 3.3: So sánh kết thực nghiệm với tỷ lệ tập liệu 75%-25% Lần thực nghiệm [1gram]; [2gram] [1gram]; [2gram];[vector] 0.538 0.817 0.559 0.839 0.548 0.849 0.538 0.817 0.548 0.882 0.570 0.839 0.538 0.613 0.559 0.527 0.581 0.806 10 0.581 0.838 Trung bình 0.556 0.783 (75%-25%) * Tỷ lệ tập liệu: 80% huấn luyện - 20% kiểm thử: 50 Bảng 3.4: So sánh kết thực nghiệm với tỷ lệ tập liệu 80%-20% Lần thực nghiệm [1gram]; [2gram] [1gram]; [2gram];[vector] 0.608 0.838 0.595 0.527 0.608 0.865 0.608 0.838 0.608 0.878 0.608 0.838 0.595 0.824 0.608 0.824 0.608 0.851 10 0.622 0.878 Trung bình 0.607 0.816 (80%-20%) * Tỷ lệ tập liệu: 85% huấn luyện - 15% kiểm thử: Bảng 3.5: So sánh kết thực nghiệm với tỷ lệ tập liệu 85%-15% Lần thực nghiệm [1gram]; [2gram] [1gram]; [2gram];[vector]] 0.732 0.857 0.696 0.875 0.750 0.839 0.714 0.821 (85%-15%) 51 0.714 0.857 0.714 0.821 0.768 0.839 0.732 0.821 0.732 0.839 10 0.750 0.839 Trung bình 0.730 0.841 Bảng 3.6: Tổng hợp so sánh kết thực nghiệm Tỷ lệ tập liệu [1gram]; [2gram] [1gram]; [2gram];[vector] 75% - 25% 0.556 0.783 80% - 20% 0.607 0.816 85% - 15% 0.730 0.841 (huấn luyện - kiểm thử) Để thấy rõ dễ so sánh kết thực nghiệm ta xem biểu đồ sau: 52 Hình 3.3: Biểu đồ biểu diễn kết thực nghiệm Nhận xét: Dựa vào bảng tổng hợp kết biểu đồ ta thấy tốn phân loại giới tính ngƣời dùng dựa vào tin nhắn văn tăng liệu tập huấn luyện lên cao kết thu xác Bên cạnh sử dụng thêm Word2Vec để làm đặc trƣng cho n-gram kết thu đƣợc tốt không sử dụng Word2Vec 53 KẾT LUẬN Với phát triển không ngừng mạng xã hội nhƣ ngày nay, nhu cầu phân tích tìm hiểu thơng tin ngƣời dùng lớn Các cơng ty muốn có thông tin ngƣời dùng để phục vụ cho mục đích kinh doanh họ Chính mà việc phân loại đƣợc thông tin ngƣời dùng cách tự động việc làm thiết thực Đối với luận văn tơi trình bày phƣơng pháp để phân loại giới tính ngƣời dùng mạng xã hội cách tự động Trong trình thực luận văn, tơi trình bày số khái niệm khai phá liệu, trình khai phá liệu, số chức khai phá liệu với số kỹ thuật khai phá liệu Ngoài tơi cịn trình bày số khái niệm nhƣ lợi ích tác hại mạng xã hội sống Bên cạnh tơi giới thiệu số mạng xã hội phổ biến Về mặt phƣơng pháp luận giới thiệu tổng quan Word2Vec mơ hình từ thành vector: vector từ, lập luận với vector từ nghiên cứu vector từ Cùng với tơi giới thiệu mơ hình Continuous Bag-of-word Skip-gram đƣợc đề xuất Tomas Mikolov cộng nhằm giải thích rõ cách biểu diễn từ dƣới dạng Word2Vec Về thực nghiệm, sử dụng thƣ viện Jsoup viết code Java tự thu thập tiền xử lý liệu để xây dựng đặc trƣng Word2Vec từ báo trang web Bên cạnh tiền xử lý xây dựng đặc trƣng cho liệu huấn luyện từ liệu tự thu thập tƣờng ngƣời dùng mạng xã hội thƣ viện Graph API Explorer Do liệu Tiếng Việt nên trƣớc sử dụng phải sử dụng công cụ vn.vitk-master để tách từ Sau tơi thực nghiệm với tỷ lệ liệu khác sử dụng mơ hình phân loại n-gram khơng sử dụng Word2Vec có sử dụng Word2Vec Sau tơi sử dụng độ đo từ kết thu đƣợc chứng minh đƣợc sử dụng mơ hình phân loại n-gram với việc sử dụng thêm Word2Vec kết đạt đƣợc tốt Hướng phát triển Do nhập nhằng liệu Tiếng Việt nhƣ kiến thức thân hạn chế nên kết thực nghiệm cho Tiếng Việt chƣa cao nhƣ mong muốn Tôi cần phải cải tiến phƣơng pháp xử lý liệu tốt để đạt đƣợc 54 hiệu cao Bên cạnh tơi thử nghiệm việc phân loại thuộc tính khác ngƣời dùng mạng xã hội nhƣ: độ tuổi, sở thích, Sau có đƣợc kết thực nghiệm nhƣ mong muốn nghiên cứu xây dựng hệ thống tự động hóa việc dự đốn thơng tin ngƣời dùng mạng xã hội 55 TÀI LIỆU THAM KHẢO Tài liệu tiếng Việt: [1] Nguyễn Thị Thanh Thảo, Tìm hiểu ứng dụng datamining kinh doanh, 2012 [2] Nhóm tác giả: Kim Đình Sơn, Đặng Ngọc Thun, Phùng Văn Chiến, Ngơ Thành Đạt, Các mơ hình ngơn ngữ N-gram Ứng dụng, 2013 [3] Bộ môn hệ thống thông tin, Khoa công nghệ thông tin, Đại học hàng hải Việt Nam, Bài giảng khai phá liệu, 2011 [4] Bộ phận tƣ vấn – hỗ trợ giới thiệu việc làm SV, Tác động mạng xã hội đến học sinh sinh viên, 2015 https://www.kgtec.edu.vn/component/k2/1440-tac-dong-cua-mang-xahoi-den-hoc-sinh-sinh-vien Tài liệu tiếng Anh: [5] Andriy Mnih and Geoffrey E Hinton A scalable hierarchical distributed language model Advances in neural information processing systems, 21:1081–1088, 2009 [6] Andriy Mnih and Yee Whye Teh A fast and simple algorithm for training neural probabilistic language models arXiv preprint arXiv:1206.6426, 2012 [7] David A Jurgens, Saif M Mohammad, Peter D Turney, Keith J Holyoak, SemEval-2012 Task 2: Measuring Degrees of Relational Similarity, 2012 [8] Frederic Morin and Yoshua Bengio Hierarchical probabilistic neural network language model In Proceedings of the international workshop on artificial intelligence and statistics, pages 246–252, 2005 [9] Michael U Gutmann and Aapo Hyvăarinen Noise-contrastive estimation of unnormalized statistical models, with applications to natural image statistics The Journal of Machine Learning Research, 13:307–361, 2012 56 [10] Mikolov et al, Distributed Representations of Words and Phrases and their Compositionality, 2013 [11] Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean Efficient estimation of word representations in vector space ICLR Workshop, 2013 [12] Mikolov, Stefan Kombrink, Lukas Burget, Jan Cernocky, and Sanjeev Khudanpur Extensions of recurrent neural network language model In Acoustics, Speech and Signal Processing (ICASSP), 2011 IEEE International Conference on, pages 5528–5531 IEEE, 2011 [13] Richard Socher, Yoshua Bengio and Chris Manning, Deep Learning for NLP (without Magic), ACL2012 [14] Ronan Collobert and Jason Weston A unified architecture for natural language processing: deep neural networks with multitask learning In Proceedings of the 25th international conference on Machine learning, pages 160–167 ACM, 2008 [15] Rong, Word2vec Parameter Learning Explained, 2014 [16] Margaret Rouse, Social networking, 2016 http://whatis.techtarget.com/definition/social-networking ... văn tiếng Việt, tơi đƣa tốn ? ?Phân loại giới tính ngƣời dùng mạng xã hội dựa vào tin nhắn văn Word2Vec? ?? 3.2 Giải pháp cho tốn phân loại giới tính người dùng mạng xã hội Đối với tốn phân loại giới. .. sau dùng làm đặc trƣng để cải thiện kết việc phân loại giới tính ngƣời dùng mạng xã hội dựa vào tin nhắn văn Luận văn bao gồm phần Mở đầu, phần kết luận ba chƣơng Phần mở đầu giới thiệu đề tài luận. .. truyền thông xã hội, khả tƣơng tác xã hội hợp tác ngày đƣợc xây dựng mở rộng vào ứng dụng kinh doanh [16] 1.2.2 Lợi ích tác hại mạng xã hội 1.2.2.1 Lợi ích mạng xã hội Mạng xã hội ngày có số lợi