Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
1,39 MB
Nội dung
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH CHƯƠNG TRÌNH ĐẠO TẠO THẠC SĨ CNTT QUA MẠNG ________________ BÀI THU HOẠCH MÔN HỌC CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG Đề tài: Data mining và social network Giảng viên hướng dẫn: GS.TSKH.Hoàng Kiếm Sinh viên thực hiện: Nguyễn Thị Phúc Triêm Mã số: CH1101051 TP. HCM, năm 2012 Khóa luận môn học: Công nghệ tri thức và ứng dụng Lời nói đầu Từ sự xuất hiện cách mạng thông tin, cách mạng tri thức và sự bùng nổ công nghệ cao, con người cần luôn đổi mới, phát huy mạnh mẽ năng lực sáng tạo để luôn đổi mới quốc gia, hội nhập vào nền kinh tế, tri thức toàn cầu. Vì tài nguyên là có hạn, năng lực sáng tạo của con người là vô hạn do đó phải dựa chủ yếu và nguôn sáng tạo của con người để phát triển nền tri thức của nhân loại và toàn cầu. Việc áp dụng công nghệ tri thức vào các ứng dụng của con người là vô cùng quan trọng, không những nâng cao chất lượng cuộc sống mà còn thúc đẩy sự phát triển của nền kinh tế, ngăn chặn khủng hoảng. Trong xu thế phát triển chung đó em xin trình bày phần tìm hiểu nhỏ của mình trong việc khai phá dữ liệu thuộc lĩnh vực mạng xã hội. Chúng em xin được gửi lời cám ơn chân thành đến Giáo sư-Tiến sỹ khoa học Hoàng Văn Kiếm, người đã tận tâm truyền đạt những kiến thức nền tảng cơ bản cho chúng em về môn học “Phương pháp nghiên cứu khoa học trong tin học”. Xin cảm ơn ban cố vấn học tập và ban quản trị Chương trình đào tạo thạc sỹ Công nghệ thông tin qua mạng của Đại Học Quốc Gia Thành phố Hồ Chí Minh đã tạo điều kiện cho chúng em hoàn thành tốt môn học. 2 Khóa luận môn học: Công nghệ tri thức và ứng dụng I. Data mining và tầm quan trọng 1. Data mining • Khai phá dữ liệu (Data mining) là việc phân tích dữ liệu đã có (thường là lớn) để tìm ra các mối liên hệ tiềm ẩn (unsuspected) và tóm tắt dữ liệu theo các cách mới mà vừa dễ hiểu, vừa hữu ích cho người sở hữu dữ liệu. • Các mối liên hệ và các tóm tắt thu được thông qua data mining thường gọi là các mô hình (models) nếu chúng khái quát hóa toàn bộ các đối tượng dữ liệu hoặc gọi là mẫu hình (patterns) nếu chúng chỉ đặc trưng cho một bộ phận các đối tượng dữ liệu. Ví dụ như phương trình tuyến tính, các quy tắc, các cụm, đồ thị, cây cấu trúc. 2. Các bước thực hiện data mining • Làm sạch dữ liệu (data cleaning): loại bỏ nhiễu hoặc các dữ liệu không thích hợp. • Tích hợp dữ liệu (data integration): tích hợp dữ liệu từ các nguồn khác nhau như: CSDL, Kho dữ liệu, filetext • Chọn dữ liệu (data selection): ở bước này, những dữ liệu liên quan trực tiếp đến nhiệm vụ sẽ được thu thập từ các nguồn dữ liệu ban đầu. • Chuyển đổi dữ liệu (data transformation): trong bước này, dữ liệu sẽ được chuyển đổi về dạng phù hợp choviệc khai phá bằng cách thực hiện các thao tác nhóm hoặc tập hợp. • Khai phá dữ liệu (data mining): là giai đoạn thiết yếu, trong đó các phương pháp thông minh sẽ được áp dụngđể trích xuất ra các mẫu dữ liệu. • Đánh giá mẫu (pattern evaluation): đánh giá sự hữu ích của các mẫu biểu diễn tri thức dựa vào một số phép đo. • Trình diễn dữ liệu (knowlegde presentation): sử dụng các kĩ thuật trình diễn và trực quan hoá dữ liệu để biểudiễn tri thức khai phá được cho người sử dụng. Khai phá dữ liệu là một lĩnh vực liên quan tới rất nhiều ngành họckhác như: hệ CSDL, thống kê, trực quan hóa Hơn nữa, tuỳ vào cách tiếp cận được sử dụng, khai phá dữ liệu còn có thể áp dụng một số kĩ thuật như mạng nơron, lí thuyết tập thô hoặc tập mờ, biểu diễn tri thức… So với các phương pháp này, khai phá dữ liệu có một số ưu thế rõ rệt: So với phương pháp học máy, khai phá dữ liệu có lợi thế hơn ở chỗ, khai phá dữ liệu có thể sử dụngvới các CSDL chứa nhiều nhiễu, dữ liệu không đầy đủ hoặc biến đổi liên tục. Trong khi đó phương pháp học máychủ yếu được áp dụng trong các CSDL đầy đủ, ít biến động và tập 3 Khóa luận môn học: Công nghệ tri thức và ứng dụng dữ liệu không quá lớn. Phương pháp hệ chuyêngia: phương pháp này khác với khai phá dữ liệu ở chỗ các ví dụ của chuyên gia thường ở mức chất lượng cao hơn nhiều so với các dữ liệu trong CSDL, và chúng thường chỉ bao hàm được các trường hợp quan trọng. Hơn nữa các chuyên gia sẽ xác nhận giá trị và tính hữu ích của các mẫu phát hiện được Phương pháp thống kê là một trongnhững nền tảng lí thuyết của Khai phá dữ liệu, nhưng khi so sánh hai phương pháp với nhau ta có thể thấy cácphương pháp thống kê còn tồn tại một số điểm yếu mà Khai phá dữ liệu đã khắc phục được: Các phương phápthống kê chuẩn không phù hợp với các kiểu dữ liệu có cấu trúc trong rất nhiều các CSDL. Các phương pháp thốngkê hoạt động hoàn toàn theo dữ liệu, nó không sử dụng tri thức sẵn có về lĩnh vực. Kết quả phân tích của thốngkê có thể sẽ rất nhiều và khó có thể làm rõ được. Phương pháp thống kê cần có sự hướng dẫn của người dùng để xác định phân tích dữ liệu như thế nào và ở đâu… 3. Tầm quan trọng • Ứng dụng của data mining rất đa dạng và rộng lớn, từ marketing, chống gian lận, giảm giá thành sản xuất, tăng doanh thu, phân tích hành vi sử dụng người dùng internet để đáp ứng đúng nhu cầu, đúng đối tượng, hay ứng dụng hỗ trợ ra quyết định, nghiên cứu khoa học đến việc chống khủng bố… • Tự động hóa việc dự doán các xu thế và hành vi sẽ diễn ra trong tương lai: Data mining tự động hóa quá trình tìm kiếm và trích xuất các tập thông tin có mối quan hệ hoặc tương quan trong một tập dữ liệu cực lớn.Những vấn đề/câu hỏi đặt ra với các cách truyền thống đòi hỏi một quá trình rất phức tạp và tốn kém cả vềtài chính và thời gian để giải đáp thì giờ có thể trả lời một cách nhanh chóng trong khi giá thành là thấp nhất. Một ví dụ đơn giản trong quảng cáo online là quá trình targeting, khi một người dùng click vào một banner quảng cáo bán giầy dành cho nữ giới, thì khả năng người đó là nữ và họ đang quan tâm đến đôi giầy đó, khi hệ thống nhận diện được điều này thì có thể target thêm các kiểu dáng giầy khác nhau, kích cỡkhác nhau, giá thành khác nhau với mục tiêu là người dùng sẽ kết thúc quá trình là mua một đôi giày, ngoài ra bởi vì hệ thống nhận diện người dùng là phụ nữ nên nó có thể quảng cáo thêm các sản phẩm khác nhưmỹ phẩm, quần áo v.v 4 Khóa luận môn học: Công nghệ tri thức và ứng dụng • Tự động hóa việc khám phá/nhận diện ra những tập thông tin quá khứ mà hệ thống không/chưa biết: Công cụ data mining trong quá trình phân tích dữ liệu sẽ nhận diện ra nhưng tập thông tin/dữ liệu không có hoặc bị ẩn bởi những mối liên hệ mà được xác định trước. Ví dụ như trong việc bán hàng, có những sản phẩm không có mối liên hệ gì với nhau, nhưng lại hay bán được cùng nhau, từ đó đưa ra cơ chế recommendation. Hay cơ chế nhận diện giao dịch gian lận trong thanh toán điện tử dựa vào việc phân tích các giao dịch bất thường… • Ngày nay, các công nghệ data mining được ứng dụng rộng rãi trong các công ty lấy khách hàng làm trungtâm như truyền thông, tài chính, marketing, bán hàng, các nghành công nghiệp sản xuất v.v… Nó cho phép các công ty xác định được các mối quan hệ giữa các yếu tố nội tại như giá thành, mẫu mã, cách thức quảng cáo, thậm chí là kỹ năng của nhân viên công ty… các yếu tố bên ngoài như đối thủ cạnh tranh, chính sách kinh tế hay nhu cầu thị trường v.v Và nó còn hỗ trợ việc xác định được sự tác động của các chính sách khuyến mại, giảm giá, độ hài lòng của khách hàng và lợi nhuận của doanh nghiệp… II. Social network và sự cần thiết ứng dụng data mining trong social network 1. Social network a. Network Là một tập hợp các nút, điểm, các địa điểm được kết nối với nhau thông qua việc giao tiếp bằng dữ liệu, thoại, video cho mục đích trao đổi lẫn nhau 5 Khóa luận môn học: Công nghệ tri thức và ứng dụng b. Social network Là một cấu trúc xã hội loài người có liên hệ trực tiếp hoặc gián tiếp với nhau thông qua mối quan hệ thông thường hoặc quan tâm lẫn nhau 6 Khóa luận môn học: Công nghệ tri thức và ứng dụng c. Social network site (SNS) Một trang web mạng xã hội là cụm từ được sử dụng để mô tả bất kỳ trang web nào cho phép người dùng tạo hồ sơ công cộng trong đó trang web tiết lập các mối quan hệ hình thức với những người dùng khác của trang web. Các trang web mạng xã hội có thể được sử dụng để mô tả cộng đồng, các diễn đàn thảo luận trực tuyến, chatroom và không gian xã hội trực tuyến. Mạng xã hội được tạo ra để tự thân nó lan rộng trong cộng đồng thông qua các tương tác của các thành viên trong chính cộng đồng đó. Mọi thành viên trong mạng xã hội cùng kết nối và mỗi người là một mắt xích để tạo nên một mạng lưới rộng lớn truyền tải thông tin trong đó. Về cơ bản, mạng xã hội giống như một trang web mở với nhiều ứng dụng khác nhau. Mạng xã hội khác với trang web thông thường ở cách truyền tải thông tin và tích hợp ứng dụng. Trang web thông thường cũng giống như truyền hình, cung cấp càng nhiều thông tin, thông tin càng hấp dẫn càng tốt còn mạng xã hội tạo ra các ứng dụng mở, các công cụ tương tác để mọi người tự tương tác và tạo ra dòng tin rồi cùng lan truyền dòng tin đó. d. Social network analysis (SNA) Phân tích mạng xã hội là việc lập bản đồ và đo lường các mối quan hệ và các luồng giữa con người, các nhóm, các tổ chức, máy tính hoặc các thực thể xử lý thông tin / kiến thức 7 Khóa luận môn học: Công nghệ tri thức và ứng dụng Các nút trong mạng chính là người, nhóm trong khi các liên kết chỉ ra mối quan hệ hoặc luồn giữa các nút này 2. Ứng dụng data mining Ngày nay, việc xây dựng ra một sản phẩm (đặc biệt là sản phẩm internet) ngày càng trở nên đơn giản hóa, tuy vậy để tồn tại, phát triển và mở rộng cần có những tính năng thông minh hỗ trợ cho người dùng đơn giản hóa việc truy xuất, đúng thông tin họ cần… Tất cả điều này đều cần đến nền tảng data mining bên dưới. Các công nghệ data mining thực ra không mới, nó đã hình thành cách đây hơn 20 năm, từ khi các công nghệ điện toán xử lý song song phát triển. Tuy nhiên việc ứng dụng nó và các hệ thống web là điều còn khá mới mẻ, đặc biệt là các sản phẩm trực tuyến ở Việt nam chúng ta, hầu như chưa trang web nào ứng dụng thực sự các công nghệ data mining, lý do là quy mô chưa đủ lớn, lượng dữ liệu cần phân tích còn nhỏ và hẹp. Đầu tiên là câu hỏi tại sao kết quả tìm kiếm của Google lại khác nhau khi đăng nhập và khi không đăng nhập?. Câu trả lời ngắn gọn là: Khi bạn đăng nhập Google biết bạn là ai, biết hành vi trong quá khứ của bạn như thế nào (thông qua quá trình thu thập dữ liệu hành vi của bạn trên các site mà Google hiện diện), do đó nó dựa vào sự hiểu biết này nên kết quả trả về bao giờ cũng là kết quả có độ chính xác với nhu cầu của bạn cao nhất và ngược lại, khi không đăng nhập, Google chỉ trả về kết quả ranking bình thường mà không có kèm theo tham số ranking theo user. Và dĩ nhiên để biết được hành vi trong quá khứ của bạn, Google phải sử dụng đến các công nghệ data mining. 8 Khóa luận môn học: Công nghệ tri thức và ứng dụng Thứ hai, tại sao Facebook lại có thể gợi ý cho bạn toàn những người mà bạn đã quen biết? Để có thể đưa ra gợi ý này đòi hỏi Facebook kết hợp rất nhiều các tham số. Tuy nhiên có thể giải thích tóm lược như sau: Khi bạn đăng ký tài khoản Facebook,thông thường bạn nhập thêm các thông tin khác như: quá trình làm việc ở các công ty, công ty bạn đanglàm, trường/lớp bạn đã/đang học, các hội bạn tham gia, bạn gái/trai/vợ/chồng của bạn v.v Đây chính là các thông tin mà Facebook có thể dựa vào để xác định ai là bạn của bạn. Ở đây, Facebook đã mô hình hóa các tham số có độ liên quan nhất định để đưa ra những gợi ý mà có xác xuất đúng rất cao, và bạn thấy đó,thực sự là rất đúng. News stream của Facebook còn phức tạp và hay ho hơn nữa. Tất các điều đó Facebook làm được là quá trình thu thập dữ liệu hoạt động của người dùng trên site, sau đó sử dụng các công nghệ data mining để cung cấp nội dung, tính năng phù hợp nhất cho người dùng. Thứ ba, tại sao Amazon lại có thể đưa ra danh sách các quyển sách bán kèm có tỷ lệ bán được cao nhưvậy? Để làm được điều này Amazon đã đầu tư phát triển hệ thống recommendation trong hàng chục năm, thời gian dài đó không chỉ là phát triển thuần túy công nghệ mà còn là quãng thời gian thu thập và phân tíchhành vi người sử dụng trên site của Amazon, thời gian càng dài, dữ liệu thu thập càng lớn, dẫn đến tập thông tin có độ tương quan càng nhiều và càng chính xác. Nôm na bạn có thể hiểu là 100 khách hàng mua quyển sách ABC thì có tới 40 khách hàng đồng thời mua quyển sách DEF, vì thế với khách hàng 101 xem quyển ABC, hệ thống nhận diện và đưa ra gợi ý mua thêm quển DEF, đơn giản là vậy, tuy nhiên bên dưới còn có nhiều tham số khác để tăng độ tương quan lên nữa. Và đây cũng là một quá trình mining dữ liệu. 9 Khóa luận môn học: Công nghệ tri thức và ứng dụng a. Kỹ thuật data mining trong facebook • Mạng lưới của bạn: Khi các kết nối của bạn mời các kết nối của những người khác thì mạng lưới của bạn bắt đầu phát triển. Mạng lưới của bạn bao gồm các kết nối của bạn, các kết nối của người khác, và cứ tiếp tục như vậy với trung tâm là chính là bạn • Phân loại người sử dụng: Mạng lưới của bạn bao hàm 3 độ “three degrees” chuyên môn đó là • bạn-của-bạn-của-bạn. Nếu mỗi người có 10 kết nối (và một số khác có nhiều hơn vậy ) thì mạng lưới của bạ có thể có tới 10,000 chuyên môn (professionals) • Làm cách nào có thể biết được ai đang trong mạng lưới của bạn: Facebook cho phép bạn thấy được toàn bộ mạng lưới của bạn như là một nhóm lớn có khả năng tìm kiếm chuyên môn hồ sơ cá nhân 10 [...]... khác nhau trong trường ID của mỗi bản ghi 14 Khóa luận môn học: Công nghệ tri thức và ứng dụng Nhìn vào biểu đồ trên, rõ ràng MongoDB vẫn tỏ ra vượt trội hơn hẳn so với SQL về hiệu suất (khoảng 3 lần) Để tiếp tục, chúng ta hãy chuẩn sang bảng dữ liệu phức tạo hơn đôi chút với khóa ngoại – Foreign Key và join: 15 Khóa luận môn học: Công nghệ tri thức và ứng dụng Kết quả hiển thị tại đây vẫn tương tự... biết e E biết rằng: A, B và C trao đổi với nhau, A và B đều không biết là E biết về điều f 12 này … Khóa luận môn học: Công nghệ tri thức và ứng dụng III Giới thiệu ứng dụng nhỏ data mining với NoSQL trong việc xây dựng social network 1 NoSQL-MongoDB Đối với những ứng dụng liên quan đến social network thì yêu cầu về việc xử lý lượng dữ liệu cực lớn một cách nhanh chóng cũng như tính dễ bảo trì, mở... bạn ở gần / xa bạn nhất Bao nhiêu người đang là viêc chung công ty/ học chung trường đại học với bạn b Quy trình data mining Khai phá dữ liệu chính là phương pháp khám phá và mô hình hóa mối quan hệ với sô lượng lớn dữ liệu Tìm kiếm thông tin ẩn ttrong một cơ sở dữ liệu, chuyển dữ liệu thành mô hình 11 Khóa luận môn học: Công nghệ tri thức và ứng dụng George Mary Mary John George John 1 Hiểu biết về... http://www.scribd.com/doc/51448299 /Data- Mining http://www.webopedia.com/TERM/S /social_ networking_site.html http://www.cs.purdue.edu/homes/neville/papers/jensen-neville-nas2002.pdf http://www.scribd.com/doc/10734350 /Social- Networks-and -Data- Mining http://www.mongodb.org/ http://www.quantrimang.com.vn/hethong/database/84584_So-sanh-hieu-suat-cuaMongoDB-va-SQL-Server-2008.aspx brianz.s3.amazonaws.com/eventbrite-mongosv -social- ... tương tự như những lần kiểm tra trước đó mà không cần phải join: MongoDB cung cấp dao diện để người dùng làm quen và hiểu về các lệnh trong MongoDB, thông quan đường link sau http://www.mongodb.org/# 16 Khóa luận môn học: Công nghệ tri thức và ứng dụng 2 Ứng dụng quản lý sự kiện trong social network voi MongoDB Giả sử ta được yêu cầu xây dựng mô hình dữ liệu để quản lý người sử dụng cùng các sự kiện(... dùng với các mạng xã hội khác như thông tin facebook chẳng hạn b Sự kiện Thông tin sự kiện được lưu trữ như sau, tùy vào từng mục đích mà ta có thể thêm hoặc bớt các khóa 20 Khóa luận môn học: Công nghệ tri thức và ứng dụng c Liên kết sự kiện và người dùng Thông tin người dùng có tham gia vào sự kiện hay không được lưu trữ gồm khóa “uid” là mã người sử dụng, khóa “eid” là mã sự kiện Dễ dàng nhận thấy... 64 bit của SQL Server 2008 Standard và MongoDB 1.4.1 • Về chức năng Insert: đây là điểm khác biệt rõ ràng nhất giữa MongoDB và SQL server, MongoDB chèn dữ liệu nhanh hơn SQL tới hơn 100 lần Quá trình này được thực hiện bằng cách chèn 50.000 đối tượng độc lập sử dụng NoRM của MongoDB và LINQ tới SQL dành cho SQL Server 2008 13 Khóa luận môn học: Công nghệ tri thức và ứng dụng • Về chức năng Select: chúng...Khóa luận môn học: Công nghệ tri thức và ứng dụng • Sau khi trở thành bạn của nhau, bạn có thể truy cập các thông tin chia sẻ của bạn mình • như hình ảnh, audios, videos… Việc ứng dụng data mining giúp trả lời các câu hỏi: Có bao nhiêu người bạn của bạn đang sử dụng mạng xã hội thường xuyên Có bao... Khóa luận môn học: Công nghệ tri thức và ứng dụng Như hình trên ta thấy được các sự kiện mà người dùng mã 4558992 đã tham gia trong quá khứ được lưu trữ với khóa “all_ids”, và các sự hiện hiện tại mà người dùng này tham gia được lưu trữ với khóa “curr_ids” Ngoài thông tin sự kiện ta còn lưu trữ thông tin các hàng xóm của người dùng này với khóa “nns”, giá trị lưu trữ ở đây bao gồm mã người dùng và điểm... về cấu trúc, kích thước, và định dạng dữ liệu b Chọn các thuộc tính thú vị c Làm sạch và tiền xử lý dữ liệu 3 Chọc tác vụ khai phá dữ liệu (data mining task) và thuật toán cụ thể: Hiểu khả năng và hạn chế của các thuật toán có liên quan đến vấn đề 4 Giải thích kết quả và có thể quay trở lại bước 2 Cụ thể ở đây là cần hiểu về mạng xã hội, phát tri n các kết nối, chọn phương thức xây dựng phù hợp để . cho chúng em hoàn thành tốt môn học. 2 Khóa luận môn học: Công nghệ tri thức và ứng dụng I. Data mining và tầm quan trọng 1. Data mining • Khai phá dữ liệu (Data mining) là việc phân tích dữ. MẠNG ________________ BÀI THU HOẠCH MÔN HỌC CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG Đề tài: Data mining và social network Giảng viên hướng dẫn: GS.TSKH.Hoàng Kiếm Sinh viên thực hiện: Nguyễn Thị Phúc Tri m Mã số:. CH1101051 TP. HCM, năm 2012 Khóa luận môn học: Công nghệ tri thức và ứng dụng Lời nói đầu Từ sự xuất hiện cách mạng thông tin, cách mạng tri thức và sự bùng nổ công nghệ cao, con người cần luôn