Tải bản đầy đủ (.docx) (23 trang)

Tiểu luận môn cơ sở dữ liệu nâng cao PHÂN TÍCH MẠNG XÃ HỘI

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.07 MB, 23 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
TIỂU LUẬN CƠ SỞ DỮ LIỆU NÂNG CAO
PHÂN TÍCH MẠNG XÃ HỘI
Giảng viên hướng dẫn : PGS.TS. Đỗ Phúc
Sinh viên thực hiện :
Nguyễn Thị Thu Trang CH1101147
Lớp : CNTTQM K6
Khóa : 2012 - 2014
TP Hồ Chí Minh, tháng 08 năm 2012
1
Nguyễn Thị Thu Trang CH1101147
MỤC LỤC
Nguyễn Thị Thu Trang CH1101147
I. Tổng quan
1.1 Phân tích mạng xã hội (Social Network Analysis)
Mạng xã hội (Social Network) là một cấu trúc xã hội hình thành bởi những
cá nhân (hay những tổ chức), các cá nhân được gắn kết bởi sự phụ thuộc lẫn nhau
thông những nút thắt như tình bạn, quan hệ họ hàng, sở thích chung, trao đổi tài
chính, quan hệ tình dục, những mối quan hệ về niềm tin, kiến thức và uy tín.
Đơn giản hơn, mạng lưới xã hội là đồ thị những mối quan hệ xác định, ví dụ
như tình bạn. Các nút thắt gắn kết cá nhân với xã hội chính là những mối liên hệ xã
hội của cá nhân đó. Mạng lưới xã hội có thể dùng để kiểm tra vốn xã hội - giá trị
mà cá nhân có được từ mạng lưới xã hội. Những khái niệm này thường được biểu
thị trong biểu đồ mạng xã hội, trong đó các nút thắt chính là các điểm và các mối
quan hệ là những đường kẻ.
Phân tích mạng xã hội (Social Network Analysis – SNA) là nghiên cứu quan
hệ xã hội giữa một tập hợp các nút (actor). Nó là một lĩnh vực nghiên cứu – một
tập hợp các hiện tượng hoặc dữ liệu.
3
Nguyễn Thị Thu Trang CH1101147


Trong quá trình làm việc trong lĩnh vực này, các nhà nghiên cứu mạng đã
phát triển một tập hợp các quan điểm khác biệt khá tốt về mặt lý thuyết. Một số
điểm nổi bật của những quan điểm này là:
- Tập trung vào mối quan hệ giữa các actor chứ không phải là thuộc tính của
các actor đó.
- Cấu trúc ảnh hưởng đến kết quả thiết thực
- Xử lý hiệu quả
Lý thuyết mạng tương tự với các hệ thống lý thuyết và lý thuyết phức tạp.
Mạng xã hội cũng được đặc trưng bởi một kỹ thuật phương pháp đặc biệt
bao gồm các dữ liệu thu thập, phân tích thống kê, đại diện trực quan, …
1.2 Phân tích mạng (Network Analysis)
Social Network Analysis (SNA) có nguồn gốc về mặt khoa học xã hội và cả
trong các lĩnh vực rộng lớn hơn của phân tích mạng (network analysis) và lý thuyết
đồ thị (graph theory).
Network Analysis liên quan đến chính nó với các công thức và giải pháp của
các vấn đề có dạng cấu trúc mạng (network structure), như cấu trúc được biểu diễn
dưới dạng đồ thị.
Lý thuyết đồ thị (Graph theory) cung cấp một tập hợp các khái niệm trừu
tượng và các phương pháp để phân tích đồ thị. Chúng kết hợp cùng với các công
cụ phân tích khác và với phương pháp phát triển đặc biệt cho việc hiển thị và phân
tích của các mạng xã hội (và cả các dạng mạng khác nữa), hình thức cơ bản đó
được gọi là phương phápphaant ích mạng xã hội (Social Network Analysis –
SNA).
4
Nguyễn Thị Thu Trang CH1101147
Nhưng SNA không chỉ là một phương pháp luận, nó là một quan điểm độc
đáo về chức năng xã hội như thế nào. Thay vì tập trung vào cá nhân và các thuộc
tính của họ, hoặc cấu trúc xã hội vĩ mô, trung tâm của nó là về mối quan hệ giữa
các cá nhân, nhóm, hoặc tổ chức xã hội.
5

Nguyễn Thị Thu Trang CH1101147
1.3 Khoa học xã hội (Social Science)
Nghiên cứu xã hội (studying Society) từ góc độ mạng là nghiên cứu cá nhân
được nhúng vào trong một mạng lưới các quan hệ và tìm kiếm lời giải thích cho
hành vi xã hội trong cấu trúc của các mạng này hơn là trong các cá nhân đơn độc.
Quan điểm về mạng này trở nên ngày càng có liên quan trong một xã hội mà
Manuel Castellshas gọi là mạng xã hội (Network Society).
Social Network Analysis có một lịch sử lâu dài trong khoa học xã hội, mặc
dù phần lớn công việc là tập trung phát triển các phương pháp của nó như từ các
6
Nguyễn Thị Thu Trang CH1101147
nhà toán học, nhà vật lý học, nhà sinh vật học và các nhà khoa học máy tính (bởi vì
họ nghiên cứu nhiều về các dạng mạng khác nhau)
Ý tưởng về mạng lưới các quan hệ là quan trọng trong khoa học xã hội
không phải là mới, nhưng phổ biến rộng rãi và sẵn có của dữ liệu và tiến bộ trong
tính toán cùng với phương pháp luận đã làm cho nó dễ dàng hơn nhiều để áp dụng
SNA to một loạt các vấn đề.
1.4 Các tên miền (Orther Domains)
7
Nguyễn Thị Thu Trang CH1101147
Phân tích mạng (mạng xã hội) – (Social) Network Analysis đã được tìm thấy
là ứng dụng trong nhiều lĩnh vực vượt ra ngoài khoa học xã hội, mặc dù những tiến
bộ lớn nhất nói chung đã liên quan đến việc nghiên cứu cấu trúc được tạo ra bởi
con người.
Các nhà khoa học máy tính cho ví dụ đã sử dụng (và thậm chí phát triển
mới) phương pháp phân tích mạng để nghiên cứu các trang web, lưu lượng truy
cập Internet, phổ biến thông tin, …
Một ví dụ trong cuộc sống khoa học là việc sử dụng mạng lưới phân tích
(Network Analysis) để nghiên cứu chuỗi thức ăn trong các hệ sinh thái khác nhau.
Nhà toán học và vật lý (lý thuyết) thường tập trung vào sản xuất mới và các

phương pháp phân tích mạng phức tạp, có thể được sử dụng bởi bất cứ ai, trong
phạm vi bất kỳ nơi nào mà mạng lưới có liên quan.
8
Nguyễn Thị Thu Trang CH1101147
1.5 Ứng dụng thực tế
9
Nguyễn Thị Thu Trang CH1101147
Các doanh nghiệp sử dụng SNA (Social Network Analysis) để phân tích và
cải thiện dòng chảy thông tin liên lạc trong tổ chức của họ, hoặc các mạng lưới của
họ cho các đối tác và khách hàng.
Cơ quan thực thi pháp luật (và quân đội) sử dụng SNA (Social Network
Analysis) để xác định các mạng lưới tội phạm và khủng bố từ dấu vết của truyền
thông mà họ thu thập, và sau đó xác định các nhân tố chủ chốt trong các mạng này.
Các trang web Mạng xã hội như Facebook sử dụng cơ bản các yếu tố của
SNA để xác định và đề nghị các tiềm của bạn dựa vào bạn bè của bạn bè (friends –
of – friends).
Các tổ chức xã hội dân sự sử dụng SNA để khám phá xung đột lợi ích trong
các kết nối ẩn giữa cơ quan chính phủ, vận động hành lang và các doanh nghiệp.
Các nhà khai thác mạng (điện thoại, cáp, điện thoại di động) sử dụng SNA
như những phương pháp để tối ưu hóa cấu trúc và năng lực mạng của họ.
1.6 Tại sao và khi nào sử dụng SNA?
Bất cứ khi nào bạn đang nghiên cứu một mạng xã hội, hoặc offline hoặc
online, hoặc khi bạn muốn hiểu làm thế nào để nâng cao hiệu quả của mạng.
Khi bạn muốn hình dung dữ liệu của bạn là để khám phá các mẫu trong mối
quan hệ hoặc tương tác.
Khi bạn muốn thực hiện theo các đường dẫn mà thông tin (hoặc về bất cứ
điều gì) đi theo các mạng xã hội.
10
Nguyễn Thị Thu Trang CH1101147
Khi bạn làm nghiên cứu định lượng, mặc dù nghiên cứu định tính mạng

quan điểm là cũng có giá trị :
- Phạm vi của các hành động và cơ hội dành cho các cá nhân thường là một
chức năng của vị trí của họ trong các mạng xã hội, phát hiện các vị trí này
(thay vì dựa vào giả định phổ biến dựa trên vai trò và chức năng của mình,
như là cha, mẹ, giáo viên,công nhân) có thể mang lại kết quả thú vị và đôi
khi đáng ngạc nhiên.
- Phân tích định lượng của một mạng xã hội có thể giúp bạn xác định các dạng
khác nhau của các nút (actor) hoặc các phần tử chủ chốt (key players) trong
mạng, phần tử mà bạn có thể tập trung cho nghiên cứu định tính của bạn
SNA rõ ràng là cũng rất hữu ích trong việc phân tích của SNS, OC và các
phương tiện truyền thông xã hội nói chung, để kiểm tra giả thuyết về hành vi trực
tuyến và CMC, để xác định nguyên nhân rối loạn chức năng cộng đồng hoặc mạng
lưới, và để thúc đẩy sự gắn kết xã hội và tăng trưởng trong một cộng đồng trực
tuyến
11
Nguyễn Thị Thu Trang CH1101147
II. Các khái niệm cơ bản
2.1. Biểu diễn mạng
Mạng (mạng xã hội) thường được biểu diễn dưới dạng đồ thị có hướng hoặc
không có hướng. Đồ thị gồm các đỉnh (actor) và các liên kết giữa các đỉnh này
(link).
Tùy vào mục đích nghiên cứu mà chúng ta có thể xem xét toàn bộ mạng
hoặc chỉ xem xét một phần của mạng chứa những phần tử mà chúng ta quan tâm.
Có 2 dạng mạng phục vụ nhu cầu đó là mạng “Whole Network” và “Ego
Network”.
12
Nguyễn Thị Thu Trang CH1101147
2.2. Độ mạnh của mối quan hệ trong mạng (Tie Strength)
Tie strength là chỉ số để thể hiện độ mạnh yếu của các mối liên kết (link) của
các phần tử (actor) trong mạng (độ dài của các đường đi).

13
Nguyễn Thị Thu Trang CH1101147
Độ dài của cạnh chính là độ mạnh hay độ bền vững của các mối quan hệ.
Cạnh (Edge) có thể đại diện cho các tương tác, dòng chảy của thông tin,
hàng hoá, tương đồng / đảng phái, hoặc quan hệ xã hội
Cụ thể đối với quan hệ xã hội, một “proxy” cho sức mạnh của mối liên hệ
(tie) có thể là:
- Các tần số của sự tương tác (truyền thông) hoặc lượng của dòng chảy (trao
đổi)
- Sự trao đổi qua lại trong tương tác hoặc dòng chảy
- Loại của tương tác hoặc lưu lượng dòng chảy giữa hai bên (ví dụ như thân
mật hay không).
- Thuộc tính của các nút hoặc các mối quan hệ khác (ví dụ như, các mối quan
hệ họ hàng)
- Cấu trúc của các nút lân cận (ví dụ: bạn bè chung)
Khảo sát và phỏng vấn cho phép chúng ta thiết lập sự hiện hữu của những
phần chung hoặc riêng cùng với độ mạnh yếu của mối liên hệ trên đó.
2.3. Các khái niệm Homophily, Transitivity, và Bridging
Homophilyis là các xu hướng liên quan đến những người có cácđặc điểm
tương tự (trạng thái, tín ngưỡng, …)
- Nó dẫn đến sự hình thành của các nhóm đồng nhất (cụm - clusters) nơi giúp
hình thành các mối quan hệ dễ dàng hơn
- Cực đồng nhất (Extreme homogenization) có thể hành động như là người
truy cập tới sự sang tạo và ý tưởng đổi mới (mà heterophilyis đang mong
muốn điều này trong một số ngữ cảnh)
- Homophilousties có thể mạnh hoặc yếu
Transitivity trong SNA là một thuộc tính của các mối quan hệ: nếu có một
ràng buộc giữa A và B, và một ràng buộc giữa B và C, trong một mạng có tính chất
bắc cầu thi A và C cũng sẽ hình thành kết nối
14

Nguyễn Thị Thu Trang CH1101147
- Mối quan hệ (ràng buộc) mạnh thường có cầu nối (transitive) nhiều hơn mối
quan hệ yếu. Transitivity do đó là bằng chứng cho sự tồn tại của rang buộc
mạnh mẽ (nhưng không phải là một điều kiện cần thiết hoặc đầy đủ).
- Transitivity cùng với Homophily hướng tới hình thành các Cliques (các cụm
kết nối đầy đủ)
Bridges là các nút và các cạnh kết nối trên toàn nhóm
- Tạo điều kiện thuận lợi cho các nhóm thông tin liên lạc, tăng cường sự gắn
kế xã hội và giúp thúc đẩy sự đổi mới
- Bridges thường là các quan hệ yếu, nhưng không phải tất cả các quan hệ
(ràng buộc) yếu là một Bridge
15
Nguyễn Thị Thu Trang CH1101147
2.4. Các phẩn tử chủ chốt trong mạng (Key Players)
Degree centrality : degree (trong hoặc ngoài : indegree, outdegree) của một
nút là số các liên kết hướng tới hoặc đi qua nút đó
- Trong một đồ thị vô hướng thì chúng giống hệt nhau
- Degree centrality thường được sử dụng như là nút mức độ liên kết và do đó
cũng có độ ảnh hưởng và/ hoặc phổ biến
- Hữu ích trong việc đánh giá nút nào là trung tâm để lây lan thông tin và ảnh
hưởng đến nút khác trong vùng của chúng ngay lập tức.
Đường (Path) và đường đi ngắn nhất (Shortest Path)
Một đường đi (path) giữa hai nút bất kỳ là một dãy các nút không lặp lại mà
kết nối 2 nút lại.
Đường đi ngắn nhất (shortest path) giữa hai nút là đường kết nối hai nút với
số lượng ngắn nhất của các cạnh (cũng được gọi là khoảng cách giữa các nút)
16
Nguyễn Thị Thu Trang CH1101147
Ở hình trên các nút 1 và 4 có hai đường đi ngắn nhất có chiều dài 2: {1,2,4}
và {1,3,4}. Những đường còn lại giữa hai nút là {1,2,3,4}, {1,3,2,4}, {1,2,5,3,4}

và {1,3,5,2,4} (đường đi dài nhất).
Đường đi ngắn hơn khá cần thiết khi mong muốn về nhu cầu tốc độ giao tiếp
hoặc trao đổi (thường là trường hợp trong nhiều nghiên cứu, nhưng đôi khi không).
Betweeness Centrality
17
Nguyễn Thị Thu Trang CH1101147
Là số đường đi ngắn nhất mà đi qua một nút được chia bởi tất cả đường đi
ngắn nhất trong mạng.
Betweeness Centrality thường được chuẩn hóa với giá trị cao nhất là 1
Betweeness Centrality hiển thị những nút có nhiều khả năng là đường thông
tin liên lạc giữa các nút khác
Ngoài ra, Betweeness Centrality còn hữu ích trong việc xác định những
điểm nơi mà các mạng sẽ bị phá vỡ .
Closeness Centrality
Closeness centrality là chiều dài trung bình của tất cả các đường đi ngắn
nhất từ một nút tới tất cả các nút trong mạng.
Nó là có nghĩa là sự trải ra, tức là mất bao lâu để có thể liên kết tới các nút
khác từ một nút cho trước.
Closeness centrality hữu ích trong trường hợp nơi mà tốc độ của phổ biến
thông tin là liên quan chính
Closeness centrality có giá trị thấp hơn là tốt hơn khi mong muốn tốc độ cao
hơn.
18
Nguyễn Thị Thu Trang CH1101147
Định nghĩa một tập hợp các phần tử chủ chốt (Key Players)
19
Nguyễn Thị Thu Trang CH1101147
Trong mạng ở hình trên, nút 10 là trung tâm nhất theo Degree centrality. Tuy
nhiên nút 3 cùng với nút 5 sẽ đạt liên kết tới nhiều nút hơn. Hơn nữa, giữa nút 3 và
5 là quan trong vì nếu bị cắt đứt, mạng sẽ bị bẻ gãy thành 2 tiểu mạng cô lập. Bên

cạnh đó, những rang buộc khác giữa chúng bình đẳng.
Do đó nút 3 và nút 5 cùng với nhau sẽ là khóa (key) của mạng này hơn nút
10
20
Nguyễn Thị Thu Trang CH1101147
III. Chương trình Demo “Tìm các phần tử chủ chốt của mạng
xã hội”
Chương trình được viết trên ngôn ngữ C#, môi trường Visual Studio 2008,
để thực hiện việc phân tích một mạng xã hội dựa trên các thông số Degree
Centrality, Betweeness Centrality, Closeness Centrality, key players, Clustering
Coefficient
3.1. Các lớp cơ bản
Links là lớp thể hiện liên kết giữa 2 actor trong mạng
class Links
{
public string actorA;
public string actorB;
}
Lớp Graph thể hiện mạng dưới dạng đồ thị (xét trường hợp đồ thị vô hướng)
class Graph
{
List<string> actors;
List<Links> links;
List<string> allShortestPaths;
}
3.2. Các chức năng chính của chương trình
private string solveDegreeCentrality()
private string solveBetweennessCentrality()
private string solveClosenessCentrality()
private string solveClusteringCoefficient()

private string solveKeyPlayers()
21
Nguyễn Thị Thu Trang CH1101147
3.3. Giao diện chương trình
- Nhập các tập đỉnh của đồ thị, các đỉnh cách nhau bởi dấu phẩy
- Sau đó nhập tập các cạnh (liên kêt) trong đồ thị
- Chọn những thuộc tính cần phân tích rồi nhấn nút giải
- TextBox bên phải là kết quả hiển thị lời giải cho mạng xã hội
22
IV. Tài liệu tham khảo
[1]. Bài giảng “Cơ sở dữ liệu nâng cao” – PGS.TS. ĐỗPhúc -Trường Đại học
Công nghệthông tin
[2]. Slide “Social Network Analysis (SNA) - including a tutorial on concepts
and methods” - Dr. Giorgos Cheliotis
[3].
[4].
[5]. “Inside Social Network Analysis” - Kate Ehrlich và Inga Carboni

×