TIỂU LUẬN CƠ SỞ DỮ LIỆU NÂNG CAO TÌM HIỂU MẠNG XÃ HỘI VÀ NEO4J

14 647 1
TIỂU LUẬN CƠ SỞ DỮ LIỆU NÂNG CAO TÌM HIỂU MẠNG XÃ HỘI VÀ NEO4J

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN BÀI THU HOẠCH CƠ SỞ DỮ LIỆU NÂNG CAO ĐỀ TÀI TÌM HIỂU MẠNG XÃ HỘI VÀ NEO4J TÌM HIỂU MẠNG XÃ HỘI VÀ NEO4J GVHD: PGS.TS. ĐỖ PHÚC HỌC VIÊN: NGUYỄN THỊ THANH THẢO MÃ SỐ: CH1101137 KHÓA: 6 Tp Hồ Chí Minh, tháng 08 năm 2012 Mục lục Lời nói đầu 3 PHẦN 1: MẠNG XÃ HỘI 4 I.Giới thiệu về mạng xã hội 4 II.Ứng dụng thực tế của mạng xã hội 5 III.Những thành phần cơ bản của mạng xã hội 6 PHẦN 2: TÌM HIỂU NEO4J 10 I.Giới thiệu về Neo4j 10 II.Tính năng của Neo4j 10 III.Các thành phần của cơ sở dữ liệu đồ thị Neo4j 10 IV.Cài đặt Neo4j 12 KẾT LUẬN 12 TÀI LIỆU THAM KHẢO 13 Lời nói đầu Ngày nay khoa học ngày càng phát triển, công nghệ thông tin trở thành công cụ không thể thiếu trong các lĩnh vực khoa học và đời sống. Nhu cầu của người dùng sử dụng internet ngày càng nhiều. Công nghệ hiện đại giúp con người có những tư tưởng, sở thích, tương đồng nhau có thể trao đổi thông tin với nhau nhiều hơn đó chính là mạng xã hội. Sự ra đời ồ ạt của các mạng xã hội (Social Network) thời gian gần đây ở Việt Nam cũng như trên toàn thế giới đã tạo ra một làn sóng mới kích thích sự phát triển của kênh truyền thông cộng đồng. Thời kỳ trăm hoa đua nở của các mạng xã hội tất yếu dẫn đến việc phân khúc thị trường ngày một nhỏ hơn, cạnh tranh giữa các mạng ngày một gay gắt hơn. Điểm nổi bật củaSocial Network mà ai cũng nhận thấy đó là tính kết nối và chia sẻ rất mạnh mẽ. Nó phá vỡ những ngăn cách về địa lý, ngôn ngữ, giới tính lẫn quốc gia. Những gì bạn làm, bạn nghĩ, cả thế giới có thể chia sẻ với bạn chỉ trong tích tắc. Trong mạng xã hội chúng ta cần tìm hiểu qua một số khái niệm liên quan đến mạng xã hội như: tác nhân (actor), tác nhân chính (key player), tác nhân phụ (peripheral), đường đi ngắn nhất (shortest path), đường có hướng (directed), đường vô hướng (undirected), gắn kết (cohesion), đỉnh tập trung trực tiếp (degree centrality), trung tâm lân cận (closness centrality), trung tâm trung gian (betweenness centrality), sức mạnh của các mối quan hệ yếu (the strength of weak ties), Thông qua một số công thức để tìm các hệ số trung tâm. Tôi chân thành cảm ơn PGS. TS. Đỗ Phúc đã tận tình giảng dạy, hướng dẫn, định hướng cho tôi hoàn thành môn học này. Do thời gian hạn chế, bài thu hoạch còn nhiều hạn chế sai sót. Mong sự đóng góp ý kiến của Thầy và anh chị cùng khóa. Xin chân thành cảm ơn. PHẦN 1: MẠNG XÃ HỘI I. Giới thiệu về mạng xã hội. Social Network site hay mạng xã hội là mạng đượ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 đó. Mạng xã hội đề cập đến một tập hợp các phần tử (thành viên) và các quan hệ liên kết giữa chúng. Mạng lưới xã hội là một tập hợp các mối quan hệ giữa các thực thể xã hội gọi chung là các tác nhân (actor). Các thực thể xã hội này không nhất thiết chỉ là các cá nhân mà còn là các nhóm xã hội, các tổ chức, các thiết chế, các công ty xí nghiệp và cả các quốc gia. Các mối quan hệ giữa các tác nhân (actor) cũng có thể mang nhiều nội dung khác nhau từ sự tương trợ, trao đổi thông tin cho đến việc trao đổi hàng hóa, trao đổi các dịch vụ,… Từ các thông tin trên về mạng xã hội, chúng ta chọn mẫu, thu thập và xử lý dữ liệu (data). Các khái niệm, các lý thuyết nhằm mô tả và phân tích các mối quan hệ giữa các tác nhân trong mạng lưới, các qui luật hình thành và biến chuyển của các mối quan hệ và những ảnh hưởng của các mối quan hệ xã hội đối với hành vi của các tác nhân. Các mối quan hệ trong mạng xã hội là một dạng của cơ sở dữ liệu quan hệ (relational data). Một yếu tố liên quan đến các mối quan hệ trong mạng xã hội: - Mối quan hệ yếu là các mối quan hệ không chiếm nhiều thời gian của tác nhân, ít nội dung, cường độ tác động yếu và sự tin cậy lẫn nhau không cao. - Mối quan hệ mạnh là các mối quan hệ chiếm nhiều thời gian của các tác nhân, đa nội dung, sự tin cậy và cường độ tác động đến các tác nhân khác rất cao. Nhìn chung, các mối quan hệ mạnh có một nhược điểm lớn là thường tự khép kín trong mạng lưới của mình, và do tác nhân thường dành nhiều thời gian cho các mối quan hệ này nên thông tin truyền đi trong mạng thường có tính lặp lại và ít mới mẻ. Nhưng ngược lại các mối quan hệ yếu lại thường đa dạng hơn, thời gian quan hệ ít nên thông tin sẽ phong phú và mới mẻ hơn. Các mối quan hệ yếu mới là yếu tố chính làm tăng thông tin trong mạng xã hội chứ không phải là các mối quan hệ mạnh, bởi nó sẽ giúp mở rộng mạng lưới xã hội của cá nhân. Khi xét về sự tin cậy lẫn nhau như một yếu tố thuộc vốn xã hội thì các mối quan hệ mạnh lại có hiệu quả hơn, nhưng chúng cũng dễ dẫn đến phân nhóm trong mạng hơn. II. Ứng dụng thực tế của mạng xã hội. Các doanh nghiệp sử dụng mạng xã hội để phân tích và hoàn thiện luồng thông tin trong tổ chức, hoặc với mạng lưới của họ với khách hàng. Các cơ quan thực thi pháp luật ( và quân đội ) sử dụng mạng xã hội để xác định các mạng lưới tội phạm và khủng bố từ dấu vế thông tin mà họ thu thập được, từ đó xác định các chủ thể chủ chốt trong mạng lưới. Như vậy, lợi ích mà mạng xã hội có thể mang lại cho doanh nghiệp bao gồm: - Thiết lập mối quan hệ với số đông khách hàng mục tiêu. - Khả năng lan truyền thông tin nhanh chóng. - Các hoạt động trực tuyến sẽ truyền cảm hứng cho các cuộc hội thoại trong "thế giới thực". - Thông tin cá nhân khá chân thực về người dùng. - Cơ hội để kể chuyện về doanh nghiệp và sản phẩm của bạn đồng thời tăng độ nhận biết thương hiệu. - Gia tăng trải nghiệm của người dùng. III. Những thành phần cơ bản của mạng xã hội. 1. Actor/Node/Degree (tác nhân, nút, điểm): các thuật ngữ này được dùng để các đơn vị trong mạng lưới. Các đơn vị này có thể là người, nhóm, tổ chức, công ty, quốc gia,… 2. Tie/Link/Edge/Line/Arc (dây, đường liên kết): chỉ mối liên kết các tác nhân trong mạng lưới. 3. Path (đường): đường liên kết giữa các tác nhân trong mạng. 4. Sortest path (khoảng cách ngắn nhất): chỉ đường ngắn nhất trên bề mặt giữa hai khoảng cách điểm, tức là khoảng cách ngắn nhất giữa hai tác nhân nào đó trong mạng xã hội. 5. Subgraph (mạng con): được dùng để chỉ các mạng mà ở đó tất cả các tác nhân đều có quan hệ trực tiếp với nhau. Trong một mạng con, các quan hệ giữa các actor sẽ là các mối "quan hệ mạnh" (The Strong ties). 6. Undirected (vô hướng): được dùng để chỉ các tác nhân có quan hệ qua lại (2 chiều) với nhau. 7. Directed (có hướng): được dùng để chỉ các tác nhân chỉ có một quan hệ (1 chiều) truyền tin hoặc nhận tin. 8. Key Player (tác nhân chính): dùng để chỉ tác nhân có tầm ảnh hưởng lớn trong mạng toàn mạng xã hội. Tác nhân này trung tâm nhận và truyền tải thông tin đến tất cả các tác nhân khác. Các hệ số đo lường tính Key Player. - Degree centrality ( Hệ số trung tâm trực tiếp) Hệ số này sẽ giúp chúng ta đo lường được số lượng của các mối quan hệ trực tiếp của một tác nhân nào đó với các thành viên khác trong mạng xã hội. Giá trị của hệ số này chạy từ 0.00 đến 1.00 và khi giá trị càng gần tới 1.00 thì tính trung tâm trực tiếp của tác nhân càng lớn. Công thức tính như sau: Trong đó: Deg(v): tổng số các liên kết trực tiếp của tác nhân v n: tổng số tác nhân trong toàn mạng - Closeness centrality ( Hệ số trung tâm lân cận) Điểm yếu của hệ số trung tâm trực tiếp là nó chỉ tính các mối quan hệ trực tiếp của tác nhân mà thôi nên chưa chắc tác nhân có hệ số trung tâm trực tiếp cao là người "gần gũi" với mọi thành viên khác trong mạng. Tính gần gũi hay lân cận cũng là một trong những tiêu chí quan trọng thể hiện vị thế của tác nhân trong mạng, bởi một tác nhân càng gần gũi với các thành viên trong mạng xã hội bao nhiêu thì tác nhân đó càng dễ có nhiều thông tin, càng có nhiều uy thế và do đó càng dễ gây ảnh hưởng lên toàn bộ mạng xã hội. Công thức tính hệ số này như sau: Trong đó: σ st = là tổng shortest path từ đỉnh s đến đỉnh t của toàn network σ st (v) = tổng shortest path từ đỉnh s đến đỉnh t đi qua đỉnh v - Betweenness centrality ( Hệ số trung tâm trung gian ) Hệ số trung tâm trung gian xác định một tác nhân nào đó trong mạng lưới có thể ít gắn kết với các thành viên khác trong mạng xã hội (tức hệ số trung tâm trực tiếp thấp), cũng không "gần gũi" lắm với mọi thành viên khác (tức hệ số trung tâm lân cận thấp), nhưng lại là "cầu nối" (bridge) hay "nhà trung gian" cần thiết trong mọi cuộc trao đổi trong mạng. Nếu một tác nhân đóng được vai trò trung gian càng lớn trong mạng lưới, tác nhân đó sẽ càng ở vị trí thuận lợi trong việc "kiểm soát" mọi giao dịch, mọi thông tin trong mạng xã hội; tác nhân đó cũng tác động đến mạng lưới một cách dễ dàng bằng cách thanh lọc hoặc truyền thông tin trong mạng theo hướng có lợi cho mình nếu muốn; đồng thời tác nhân đó cũng đứng ở vị trí tốt nhất để thúc đẩy sự phối hợp giữa các thành viên khác trong mạng lưới. Cách tính hệ số trung tâm trung gian như sau: Trong đó: là chiều dài đi từ đỉnh v tới đỉnh t - Clustering Centrality ( Hệ số gom cụm ) Trong mạng xã hội, hệ số gom cụm được tìm ra bởi Watts and Strogatz là một tiêu chuẩn để đo các mức độ gắn kết giữa các tác nhân trong mạng. Hệ số gom cụm của một tác nhân được xác định bởi các tác nhân láng giềng có mối liên kết với nhau thành những mạng con nhỏ nhất. Nếu một tác nhân chỉ có một láng giềng thì tác nhân nhân láng giềng đó sẽ không tạo thành một mạng con. Công thức được tính như sau: Clustering Centrality dành cho mạng có hướng Clustering Centrality dành cho mạng vô hướng Clustering Centrality trung bình cho toàn mạng xã hội - Dựa vào hệ số trung tâm trực tiếp (degree centrality) và hệ số trung tâm lân cận (Cloneness Centrality) để tìm tìm tập tác nhân chính (key players). Sử dụng công thức: Max(C D (V)) Min(C C (V)) 9. Pendent (tác nhân phụ): được dùng để chỉ các tác nhân nào đó chỉ liên kết với một mạng lưới thông qua một đường liên kết duy nhất. Những tác nhân gắn kết với mạng xã hội bằng một liên hệ phụ gọi là Peripheral Player (người bên lề). 10. Density/ Cohesion ( Hệ số gắn kết của mạng lưới ) Để phân biệt mạng xã hội nào là mạnh, mạng xã hội nào yếu, mạng xã hội nào hiệu quả hơn mạng xã hội nào? Trong phân tích mạng xã hội có rất nhiều hệ số để so sánh các mạng xã hội với nhau và một trong những hệ số quan trọng nhất đó là "hệ số gắn kết" của mạng xã hội. Khi hệ số cố kết của mạng lưới càng lớn, mức độ gắn kết, sự chặt chẽ của các mối quan hệ giữa các tác nhân trong mạng lưới cũng càng lớn, và do đó, sự tương trợ, hỗ trợ… giữa các tác nhân cũng càng nhiều, càng hiệu quả hơn, sự điều tiết của mạng xã hội đối hành vi của tác nhân cũng mạnh mẽ hơn và ngược lại. Một cách tổng quát, tính cố kết của mạng lưới là tỷ lệ giữa tổng các mối liên hệ thực tế trong mạng lưới và tổng các mối quan hệ lý thuyết của nó (tức là tổng các mối quan hệ có thể có của mạng). Công thức tính như sau: 2/)1( −nn k Trong đó: k: tổng các đường liên kết thực tế của toàn mạng n: tổng các tác nhân (degree/actor) trong mạng xã hội n(n-1)/2: tổng các mối liên kết lý thuyết trong mạng xã hội Giá trị của hệ số này chạy từ 0.00 - 1.00. Càng gần tới 1.00 thì tính gắn kết của mạng xã hội càng mạnh và do đó sự truyền nhận thông tin giữa các thành viên trong mạng xã hội được diễn ra càng tốt và ngược lại. PHẦN 2: TÌM HIỂU NEO4J I. Giới thiệu về Neo4j. Neo4j là một đồ thị cơ sở dữ liệu mã nguồn mở , được thực hiện trong Java. Neo4j là một đồ thị cơ sở dữ mã nguồn mở. Nó được thiết kế và được xây dựng như là một cơ sở dữ liệu đáng tin cậy, tối ưu hóa cho các cấu trúc đồ thị thay vì các bảng. Làm việc với Neo4j, ứng dụng của bạn được thể hiện như của một đồ thị, với độ tin cậy bạn mong đợi của một cơ sở dữ liệu II. Tính năng của Neo4j Neo4j là một cơ sở dữ liệu đồ thị mã nguồn mở cung cấp các tính năng như: • Mô hình biểu diễn dữ liệu dưới dạng đồ thị trực quan. Thay vì làm việc với các bảng, cột, và dòng, người lập trình sẽ làm việc trên một mạng đồ thị bao gồm các nút, cạnh và thuộc tính, • Chuyên biệt hóa việc lưu trữ cấu trúc đồ thị với hiệu năng và khả năng mở rộng cao nhất, • Có thể mở rộng để đảm nhận vai trò của một cơ sở dữ liệu RDF dùng cho các ứng dụng về ngữ nghĩa. III. Các thành phần của cơ sở dữ liệu đồ thị Neo4j. 1. Nodes ( các nút ) Các đơn vị cơ bản hình thành nên một đồ thị là các nút và các mối quan hệ. Trong Neo4j, cả nút và các mối quan hệ có thể chứa các thuộc tính. Các nút được thường được sử dụng để đại diện cho các thực thể, nhưng tùy thuộc vào mục đích sử dụng. 2. Relationships ( các mối quan hệ ) Mối quan hệ giữa các nút là một phần quan trọng của một cơ sở dữ liệu đồ thị.Chúng cho phép việc tìm kiếm dữ liệu liên quan. Cũng giống như các nút, các mối quan hệ có thể có các thuộc tính . [...]... bài thu hoạch tìm hiểu về mạng xã hội và Neo4j cơ bản đã tìm hiểu được những khái niệm tổng quát về mạng xã hội và Neo4j Tuy nhiên, do thời gian còn hạn chế nên tác giả cũng chưa tìm hiểu hết các tính năng cũng như các ứng dụng trong Neo4j TÀI LIỆU THAM KHẢO 1 PGS.TS Đỗ Phúc, Bài giảng Cơ sở dữ liệu nâng cao, Trường ĐHCNTT, 2011 2 http:/ /neo4j. org 3 Các tài liệu về mạng xã hội trên internet ... đúp vào %NEO4J_ HOME%\bin \Neo4j. bat Neo4j có thể được cài đặt như một dịch vụ Window Các bước cài đặt: - Click Start → All Programs → Accessories - Right click Command Prompt → Run as Administrator - Provide authorization and/or the Administrator password - Navigate to %NEO4J_ HOME% - Run bin \Neo4j. bat install KẾT LUẬN Qua thời gian học tập và nghiên cứu môn Cơ sở dữ liệu nâng cao, bài thu hoạch tìm hiểu. .. đặt Neo4j Có thể cài đặc Neo4j như một máy chủ, chạy như một ứng dụng hoặc dịch vụ hệ thống Trước khi cài Neo4j, cài Java SE Envirnomet trước Tải Neo4j ở trang http:/ /neo4j. org/download Cần chọn phiên bản phù hợp với máy tính của bạn Lấy nội dung của kho lưu trữ (tham khảo thư mục hàng đầu như NEO4J_ HOME) Sử dụng các Script trong thư mục Bin - Đối với Linux/MacOS, bắt đầu chạy $NEO4J_ HOME/bin /neo4j. .. được bảo đảm có hiệu lực giữa các nút bắt đầu và các nút kết thúc Khi mối quan hệ luôn có hướng đi, ta có thể bỏ qua các hướng đi mà nó không hữu ích trong ứng dụng Lưu ý rằng một nút có thể có mối quan hệ với chính nó 3 Roperties ( các thuộc tính ) Cả nút và các mối quan hệ có thể có các thuộc tính Thuộc tính là các cặp giá trị quan trọng Các kiểu dữ liệu của thuộc tính Loại Mô tả Boolean Byte 8 bit . MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN BÀI THU HOẠCH CƠ SỞ DỮ LIỆU NÂNG CAO ĐỀ TÀI TÌM HIỂU MẠNG XÃ HỘI VÀ NEO4J TÌM HIỂU MẠNG XÃ HỘI VÀ NEO4J GVHD: PGS.TS. ĐỖ PHÚC HỌC VIÊN: NGUYỄN THỊ THANH. Navigate to %NEO4J_ HOME% - Run bin Neo4j. bat install KẾT LUẬN Qua thời gian học tập và nghiên cứu môn Cơ sở dữ liệu nâng cao, bài thu hoạch tìm hiểu về mạng xã hội và Neo4j cơ bản đã tìm hiểu được. của mạng lưới ) Để phân biệt mạng xã hội nào là mạnh, mạng xã hội nào yếu, mạng xã hội nào hiệu quả hơn mạng xã hội nào? Trong phân tích mạng xã hội có rất nhiều hệ số để so sánh các mạng xã hội

Ngày đăng: 10/04/2015, 14:35

Từ khóa liên quan

Mục lục

  • Neo4j là một đồ thị cơ sở dữ mã nguồn mở. Nó được thiết kế và được xây dựng như là một cơ sở dữ liệu đáng tin cậy, tối ưu hóa cho các cấu trúc đồ thị thay vì các bảng. Làm việc với Neo4j, ứng dụng của bạn được thể hiện như của một đồ thị, với độ tin cậy bạn mong đợi của một cơ sở dữ liệu

Tài liệu cùng người dùng

Tài liệu liên quan