Bài 04
PageRank theo chủ đề,
liên kết rác và HITS

Đổi phân phối dịch chuyển cho điểm theo chủ đề hoặc theo tập tin cậy; HITS gán mỗi trang hai điểm.

Giải thuật nền tảng của Khoa học dữ liệu

Học kỳ 1 · Năm học 2026–2027

Trường Đại học Công nghệ · Đại học Quốc gia Hà Nội

Tiên quyết và quy ước

Nhắc lại: $(M_0)_{ij}=1/d_j$ khi $j\to i$, $d_j>0$; cột là trang nguồn; cột nút cụt bằng $0$.

Nhắc lại: $r^{t+1}=\beta M_0r^t+\beta\delta^tu+(1-\beta)u$; phần $(1-\beta)u$ gọi là dịch chuyển (teleport).

Ký hiệu: đồ thị $G=(V,E)$, $n$ trang, $\ell$ cạnh (Bài 03 viết $m$); $d_j$ là bậc ra của $j$.

Ký hiệu: G4 là đồ thị bốn trang của Bài 03: A→B, C, D; B→A, D; C→A; D→B, C.

Quy ước: vector cột; dấu phẩy thập phân.

Mục tiêu học tập

  1. Lập phân phối dịch chuyển; tính PageRank theo chủ đề và cận sai số khi dừng.
  2. Lập phương trình điểm trang đích của cụm thao túng; tính hệ số khuếch đại.
  3. Tính TrustRank và Spam Mass trên cùng mô hình; nêu giới hạn diễn giải.
  4. Lập ma trận HITS; cập nhật uy tín rồi trung tâm, chuẩn hóa theo giá trị lớn nhất.
  5. Chọn phương pháp theo đầu ra, thông tin bổ sung và chi phí mỗi vòng.

Nội dung

  1. Bài toán xếp hạng liên kết
  2. PageRank theo chủ đề
  3. Cơ chế liên kết rác
  4. TrustRank và Spam Mass
  1. HITS
  2. Tổng kết và tự kiểm tra
  3. Bài tập vận dụng

Đọc trước: Leskovec, Rajaraman, Ullman, Mining of Massive Datasets (MMDS), ấn bản 3, Chương 5, §§5.3–5.5, tr.195–208.

Vấn đề trung tâm

Nhu cầu: một tỷ người dùng cần thứ hạng theo ngữ cảnh, khó thao túng, tách hai vai trò.

  • Chủ đề: $k$ vector toàn web, mỗi người $k$ trọng số.
  • Cụm thao túng: đóng góp ngoài nhân $1/(1-\beta^2)$.
  • Tập tin cậy: Spam Mass gần $1$ thì rà soát.
  • Hai vai trò: hai vector trung tâm và uy tín.
  • Mỗi vòng $\Theta(n+\ell)$; chọn theo đầu ra.

Truy vấn đa nghĩa

Nhu cầu: với “jaguar”, thứ tự trang phải phụ thuộc ngữ cảnh.

Động vật: trang về loài báo đốm; ô tô: trang về hãng xe Jaguar.

Đầu vào: trang, liên kết và chủ đề đã biết.

Đầu ra: thứ tự trang theo chủ đề.

Kết luận: PageRank toàn cục cho cùng thứ tự ở cả hai ngữ cảnh.

Lưu PageRank riêng cho từng người dùng

Cách trực tiếp lưu cho mỗi người dùng một vector PageRank trên toàn web.

Phương án trực tiếp: mỗi người dùng có một vector điểm toàn web. Phương án theo chủ đề, ngăn bằng đường nét đứt: các chủ đề có vector điểm toàn web, mỗi người dùng chỉ có trọng số chủ đề.

Quy mô minh họa của MMDS: khoảng một tỷ người dùng, mỗi vector nhiều tỷ thành phần.

Kết luận: số vector dài cần lưu giảm từ số người dùng xuống số chủ đề $k$.

Câu hỏi về phép truyền điểm

Đồ thị G4: A tới B, C, D; B tới A, D; C tới A; D tới B, C. Cạnh B tới A được tô đậm; B có hai cạnh ra.

Đồ thị G4

Giả sử $r_A=r_B=r_C=r_D=1/4$ và $\beta=4/5$.

Câu hỏi:

  1. Tính phần điểm theo liên kết mà B chuyển tới A.
  2. Xác định phần tử tương ứng trong $M_0$, cột là trang nguồn.

2.PageRank theo chủ đề

Muốn ưu tiên trang thuộc một chủ đề, phải đổi nơi đến của bước dịch chuyển mà giữ nguyên phép lặp.

Tập dịch chuyển · Điểm cố định · Bất biến tổng điểm · Tiền tính theo chủ đề

Dịch chuyển vào tập chủ đề

Nhu cầu: dịch chuyển đều tới $n$ trang cho mọi truy vấn cùng một thứ tự.

Nhánh liên kết xác suất beta và nhánh dịch chuyển vào tập S xác suất một trừ beta; nét đứt không là cạnh dữ liệu.

Với xác suất $\beta$: đi theo một liên kết ra, chia đều giữa các liên kết.

Với xác suất $1-\beta$: dịch chuyển tới tập chủ đề $S$, thay cho $n$ trang của Bài 03.

Lưu ý: trang ngoài $S$ vẫn nhận điểm qua liên kết; đồ thị giữ nguyên.

Ví dụ: đồ thị bốn trang, tập chủ đề {B, D}

Đồ thị G4: A tới B, C, D; B tới A, D; C tới A; D tới B, C. B và D có viền đôi và nhãn tập S.

$\beta=4/5$, $S=\{B,D\}$; thứ tự thành phần A, B, C, D.

$v$ là phân phối chọn trang đích khi thực hiện dịch chuyển: $$v=(0,1/2,0,1/2)^\mathsf T.$$

Cập nhật trên G4 (không có nút cụt), khởi tạo $r^0=v$: $$r^{t+1}=\beta M_0r^t+(1-\beta)v.$$

Diễn giải: mỗi vòng thêm $(1-\beta)v$: B, D nhận $1/10$; A, C nhận $0$.

Ví dụ: đồ thị bốn trang, vòng 1

$r^0=(0,1/2,0,1/2)^\mathsf T$, $\beta=4/5$, $S=\{B,D\}$. G4: A→B, C, D; B→A, D; C→A; D→B, C.

Trang Theo liên kết $\beta(M_0r^0)_i$ Dịch chuyển $(1-\beta)v_i$ Điểm mới $r_i^1$
A $1/5$ $0$ $1/5$
B $1/5$ $1/10$ $3/10$
C $1/5$ $0$ $1/5$
D $1/5$ $1/10$ $3/10$

Tại A: $(4/5)[(1/2)(1/2)+1\cdot0]=1/5$. Tổng điểm mới bằng 1.

Ví dụ: đồ thị bốn trang, vòng 2 và điểm cố định

Tại A ở vòng 2: $r_A^2=\tfrac45\big(\tfrac12\cdot\tfrac3{10}+\tfrac15\big)=\tfrac7{25}$.

Trang $r^1$ $r^2$ Điểm cố định $r^*$
A $1/5$ $7/25$ $9/35$
B $3/10$ $41/150$ $59/210$
C $1/5$ $13/75$ $19/105$
D $3/10$ $41/150$ $59/210$

Kết luận: B, D có điểm cố định lớn hơn A; trang ngoài $S$ vẫn có điểm dương.

Thuật toán: PageRank theo chủ đề

Đầu vào: đồ thị $G=(V,E)$, $n\ge1$; phân phối $v\ge0$, $\sum_i v_i=1$; $0<\beta<1$; ngưỡng $\tau>0$ và số vòng tối đa $K\ge1$.

$$r^{t+1}=\underbrace{\beta M_0r^t}_{(1)}+\underbrace{\beta\delta^t u}_{(2)}+\underbrace{(1-\beta)v}_{(3)}.$$

(1) theo liên kết; (2) bù nút cụt; (3) dịch chuyển.

Khi có nút cụt, $\delta^t=\sum_{j:d_j=0}r_j^t$ được bù đều theo $u_i=1/n$ như Bài 03; G4 có $\delta^t=0$.

Đầu ra: vector xấp xỉ và trạng thái đạt ngưỡng hoặc hết số vòng.

Thuật toán: PageRank theo chủ đề

r ← v
với t = 0, ..., K - 1:
    delta ← tổng r[j] trên các nút cụt
    với mỗi i: new[i] ← beta * delta / n + (1 - beta) * v[i]
    với mỗi j có d[j] > 0:
        với mỗi i thuộc out[j]:
            new[i] ← new[i] + beta * r[j] / d[j]
    Delta ← tổng |new[i] - r[i]|
    r ← new
    nếu Delta ≤ tau: trả về (r, đạt ngưỡng)
trả về (r, hết số vòng)

delta là $\delta^t$; Delta là $\|r^{t+1}-r^t\|_1$; mọi đóng góp của một vòng dùng $r$ cũ.

Tính đúng: PageRank theo chủ đề

Bất biến: $r^t\ge0$ và $\sum_i r_i^t=1$.

Thành phầnTổng điểm đóng góp
Theo cạnh từ các trang không cụt$\beta(1-\delta^t)$
Bù nút cụt$\beta\delta^t$
Dịch chuyển theo $v$$1-\beta$
Tổng$\beta(1-\delta^t)+\beta\delta^t+(1-\beta)=1$

Kết luận: $r^0=v$ là phân phối, nên mọi $r^t$ là phân phối khi $v\ge0$, $\sum_iv_i=1$.

Hội tụ và cận sai số khi dừng

Ký hiệu: $\bar M$ là $M_0$ với mỗi cột nút cụt thay bằng $u$; $\bar M\ge0$, tổng mỗi cột bằng $1$.

Với $0<\beta<1$, $F(r)=\beta\bar Mr+(1-\beta)v$ co hệ số $\beta$, nên có duy nhất điểm cố định $r^*$.

Mệnh đề. Đặt $\Delta=\|r^{t+1}-r^t\|_1$; khi đó $\|r^{t+1}-r^*\|_1\le\dfrac{\beta}{1-\beta}\Delta$.

Chứng minh. Các sai khác sau đó không quá $\beta\Delta,\beta^2\Delta,\ldots$; cộng cấp số nhân.

Ý nghĩa: với $\beta=4/5$, cận sai số là $4\Delta$.

Ký hiệu cho nhiều chủ đề

Ký hiệu: $k$ chủ đề; từ đây $j=1,\ldots,k$ chỉ chủ đề, $i$ chỉ trang, $t$ chỉ vòng.

Ký hiệuVai trò
$v^{(j)}\in\mathbb R^n$Phân phối dịch chuyển đầu vào của chủ đề $j$
$r^{(j)}\in\mathbb R^n$Điểm cố định PageRank của chủ đề $j$ trên $n$ trang

Mỗi chủ đề dùng cùng $\bar M$ và $\beta$: $$r^{(j)}=\beta\bar Mr^{(j)}+(1-\beta)v^{(j)}.$$

Tiền tính và xử lý truy vấn

Nhu cầu: mỗi người dùng chỉ lưu $k$ trọng số, không lưu vector riêng.

Trước truy vấn

Chọn các phân phối $v^{(j)}$; tính và lưu các $r^{(j)}$ trên $n$ trang.

Khi có truy vấn

Trọng số $w_j\ge0$, $\sum_jw_j=1$; tập ứng viên $C$; với $i\in C$:

$$q_i=\sum_{j=1}^k w_jr_i^{(j)}.$$

Kết luận: khi có truy vấn chỉ ghép điểm đã lưu, không lặp lại PageRank.

Tính tuyến tính theo phân phối dịch chuyển

Mệnh đề. Giữ cùng $\bar M$, $\beta$; $w_j\ge0$, $\sum_jw_j=1$. Khi đó

$$v=\sum_{j=1}^k w_jv^{(j)}\quad\Longrightarrow\quad r^*=\sum_{j=1}^k w_jr^{(j)}.$$

Chứng minh. Nhân phương trình chủ đề $j$ với $w_j$ rồi cộng:

$$\sum_jw_jr^{(j)}=\beta\bar M\sum_jw_jr^{(j)}+(1-\beta)\sum_jw_jv^{(j)};$$

điểm cố định duy nhất nên tổng bằng $r^*$.

Ý nghĩa: $q_i=r_i^*$ với $v=\sum_jw_jv^{(j)}$.

Chi phí: tiền tính theo chủ đề

Mô hình: phép toán vô hướng chi phí đơn vị; danh sách kề; chủ đề $j$ chạy $K_j\le K$ vòng.

BướcSố lầnChi phí mỗi lầnĐóng góp
Cộng điểm theo cạnh$\sum_jK_j$$\ell$$\ell\sum_jK_j$
Khởi tạo, bù, đo $\Delta$$\sum_jK_j$$\Theta(n)$$\Theta(n\sum_jK_j)$
Tổng$O(kK(n+\ell))$

Bộ nhớ: đầu vào $\Theta(n+\ell)$, phụ $\Theta(n)$, kết quả $\Theta(kn)$ số.

Kết luận: bộ nhớ kết quả tăng theo $k$, không theo số người dùng.

Chi phí: xử lý truy vấn

Mô hình: như bảng tiền tính; $c=|C|$ trang ứng viên; $k$ trọng số đã có.

BướcSố lầnChi phí mỗi lầnĐóng góp
Ghép $q_i$$c$$k$ phép nhân–cộng$\Theta(kc)$

Lưu ý: chưa gồm tìm ứng viên, xác định $w_j$ và sắp xếp.

Kết luận: mỗi ứng viên chỉ đọc $k$ số đã lưu; không dựng vector ghép trên $n$ trang.

Câu hỏi về PageRank theo chủ đề

Đồ thị G4: A tới B, C, D; B tới A, D; C tới A; D tới B, C.

$\beta=4/5$, $S=\{B,D\}$.

$r^1=(1/5,3/10,1/5,3/10)^\mathsf T$

$r^2=(7/25,41/150,13/75,41/150)^\mathsf T$

Câu hỏi:

  1. Tính $r_C^3$ và chỉ rõ các trang đóng góp.

  2. Tính $\Delta=\|r^2-r^1\|_1$ và cận $\beta\Delta/(1-\beta)$ cho sai số của $r^2$.

3.Cơ chế liên kết rác

Muốn biết liên kết rác làm tăng điểm đến đâu, phải tính điểm cố định của trang đích trong một cụm thao túng.

Cụm thao túng liên kết · Trang hỗ trợ · Ba nguồn điểm · Hệ số khuếch đại

Liên kết rác

Nhu cầu: liên kết vào tăng PageRank và có thể bị tạo ra.

Liên kết rác (link spam) là liên kết tạo ra chỉ để tăng điểm.

Người tạo đặt liên kết ở trang sở hữu hoặc được đăng, dồn điểm về trang đích.

Kết luận: cần định lượng mức một cấu trúc đơn giản tăng điểm trang đích.

Cụm thao túng liên kết

Ba vùng quyền tác động; đích và m hỗ trợ trỏ qua lại, mọi liên kết ngoài vào đích.

Cụm thao túng liên kết (spam farm) là một trang đích và $m$ trang hỗ trợ.

Đích trỏ tới mọi hỗ trợ; mỗi hỗ trợ chỉ trỏ lại đích.

Liên kết từ ngoài cụm chỉ vào đích.

Giả thiết: đồ thị không có nút cụt; $m\ge1$, $n\ge m+1$.

Điểm của một trang hỗ trợ

Ký hiệu: $y$, $p$ là điểm cố định của đích và của mỗi trang hỗ trợ; $b=(1-\beta)/n$.

Một hỗ trợ nhận beta y trên m từ đích và b từ dịch chuyển.

Đích có đúng $m$ liên kết ra; mỗi hỗ trợ chỉ nhận cạnh từ đích.

Nguồn điểm tại một hỗ trợ Đóng góp
Điểm theo cạnh từ đích $\beta y/m$
Dịch chuyển đều $b$
$$p=\frac{\beta y}{m}+b.$$

Ba nguồn điểm tại trang đích

$x$ là tổng đóng góp từ ngoài vào đích, đã nhân $\beta$ và chia bậc ra.

Ba nhánh x, beta m p và b cùng đi vào đích có điểm y.
Nguồn điểm tại đích Đóng góp
Liên kết từ ngoài $x$
$m$ trang hỗ trợ, mỗi trang chỉ trỏ tới đích $\beta mp$
Dịch chuyển đều tới đích $b$
$$y=x+\beta mp+b.$$

Điểm cố định của trang đích

Phần điểm bắt nguồn từ đích đi qua hai bước theo liên kết:

$$y\ \longrightarrow\ \frac{\beta y}{m}\ \longrightarrow\ \beta m\frac{\beta y}{m}=\beta^2y.$$

Với $p=\beta y/m+b$ và $y=x+\beta mp+b$:

$$y=x+\beta^2y+\beta mb+b,$$ $$y=\frac{x+\beta mb+b}{1-\beta^2},\qquad b=\frac{1-\beta}{n}.$$

Ý nghĩa: hai bước tạo $\beta^2$; số hỗ trợ $m$ triệt tiêu trong phần điểm quay lại.

Hệ số khuếch đại của cụm

Bỏ hạng nhỏ do dịch chuyển trực tiếp $b$ tới đích (MMDS §5.4.2):

$$y\approx\frac{x}{1-\beta^2}+\frac{\beta}{1+\beta}\frac mn.$$

Với $\beta=0{,}85=17/20$:

Thành phần Hệ số
Đóng góp từ ngoài $x$ $400/111\approx3{,}6036$
Tỷ lệ trang hỗ trợ $m/n$ $17/37\approx0{,}45946$

Kết luận: cụm nhân đóng góp ngoài khoảng $3{,}6$ lần, thêm khoảng $0{,}46\,m/n$.

Hai hướng chống liên kết rác

Phát hiện cấu trúc

Tìm các cụm như MMDS Hình 5.16, loại khỏi chỉ mục.

Lưu ý: người tạo rác chuyển sang biến thể khác.

Đổi cách tính điểm

Hạ điểm trang rác mà không định vị cụm, dùng tập trang đã đánh giá đáng tin.

Kết luận: hướng thứ hai dẫn tới TrustRank và Spam Mass.

Câu hỏi về cụm thao túng liên kết

Mô hình cụm của MMDS Hình 5.16, đồ thị không có nút cụt.

Câu hỏi:

  1. Với $\beta=0{,}9$: tính hệ số của $x$ và của $m/n$; so với $\beta=0{,}85$.
  2. Mỗi hỗ trợ nhận thêm cạnh từ ngoài cụm: xác định phương trình phải đổi và số hạng thêm.

4.TrustRank và Spam Mass

Muốn tìm trang có điểm do liên kết rác, phải so PageRank với điểm lan từ tập trang tin cậy.

Tập trang tin cậy · Phép lặp TrustRank · Hiệu hai điểm · Spam Mass · Chi phí

TrustRank

Nhu cầu: cần thông tin mà người tạo rác không kiểm soát.

Tập T có viền đôi được đánh giá bên ngoài; cạnh thật đi từ T tới các trang khác.

TrustRank là PageRank theo chủ đề với tập dịch chuyển $T$ gồm các trang tin cậy (tập hạt giống, seed set).

Giả thiết: trang tin cậy hiếm khi trỏ tới trang rác.

Chọn $T$ ngoài thuật toán: xem xét trang PageRank cao, hoặc miền có kiểm soát (.edu, .gov).

Thuật toán: TrustRank

Đầu vào: $G$, $0<\beta<1$, tập $T\ne\varnothing$, $\tau$, $K$; $(v_T)_i=1/|T|$ nếu $i\in T$, bằng $0$ ngoài $T$.

$\rho_i^t$ là điểm TrustRank của trang $i$ ở vòng $t$; $\rho^0=v_T$; $\delta_\rho^t$, $u$ như trước.

$$\rho^{t+1}=\underbrace{\beta M_0\rho^t}_{(1)}+\underbrace{\beta\delta_\rho^t u}_{(2)}+\underbrace{(1-\beta)v_T}_{(3)}.$$

(1) theo liên kết; (2) bù nút cụt; (3) dịch chuyển vào $T$.

Đầu ra: $\rho$ xấp xỉ và trạng thái dừng; giả mã như PageRank theo chủ đề với $r\mapsto\rho$, $v\mapsto v_T$.

Ví dụ: TrustRank trên đồ thị bốn trang

Đồ thị G4: A tới B, C, D; B tới A, D; C tới A; D tới B, C. B và D có viền đôi và nhãn tập tin cậy T.

$\beta=4/5$. Giả sử B, D đã được đánh giá đáng tin: $T=\{B,D\}$, $v_T=(0,1/2,0,1/2)^\mathsf T$.

Trang TrustRank $\rho_i$
A $9/35$
B $59/210$
C $19/105$
D $59/210$

Kết luận: cùng $v$, cùng nghiệm như ví dụ theo chủ đề; chỉ khác: $T$ là tập trang đáng tin.

Ví dụ: hiệu PageRank và TrustRank trên đồ thị bốn trang

Nhu cầu: đo phần PageRank không đến từ tập tin cậy; cùng G4, $\beta=4/5$.

Trang $r_i$, PageRank nền (Bài 03) $\rho_i$, theo $v_T$ Hiệu $r_i-\rho_i$
A $9/28$ $9/35$ $9/140$
B $19/84$ $59/210$ $-23/420$
C $19/84$ $19/105$ $19/420$
D $19/84$ $59/210$ $-23/420$

Kết luận: A, C giảm khi chuyển sang TrustRank; B, D tăng.

Chỉ số Spam Mass

Định nghĩa. Với $r_i>0$, Spam Mass là tỷ lệ của $r_i$ không được tập tin cậy giải thích: $$s_i=\frac{r_i-\rho_i}{r_i}=1-\frac{\rho_i}{r_i}.$$

TrangPhép tính$s_i$
A$(9/140)/(9/28)$$1/5$
C$(19/420)/(19/84)$$1/5$
B, D$(-23/420)/(19/84)$$-23/95$

Diễn giải: âm hoặc dương nhỏ thì có lẽ không phải rác; gần $1$ thì có lẽ là rác.

Chi phí: Spam Mass

Mô hình: như PageRank; PageRank nền chạy $K_r$ vòng, TrustRank chạy $K_\rho$ vòng.

BướcSố lầnChi phí mỗi lầnĐóng góp
PageRank nền$K_r$$\Theta(n+\ell)$$\Theta(K_r(n+\ell))$
TrustRank$K_\rho$$\Theta(n+\ell)$$\Theta(K_\rho(n+\ell))$
Tính $s_i$$n$$\Theta(1)$$\Theta(n)$
Đánh giá hạt giống—ngoài mô hình—

Kết luận: trang có $s_i$ gần $1$ được ưu tiên rà soát, không cần định vị cụm.

Câu hỏi về Spam Mass

MMDS Ví dụ 5.12 trên G4: $r_C=2/9$ (PageRank không dịch chuyển, MMDS Ví dụ 5.2); TrustRank với ${T=\{B,D\}}$: $\rho_C=19/105$.

Câu hỏi:

  1. Tính $s_C$; chỉ ra đại lượng làm kết quả khác $s_C=1/5$ ở trang Chỉ số Spam Mass.
  2. Từ $s_A=1/5$: có kết luận chắc chắn A là trang rác được không? Nêu căn cứ.

5.HITS

Muốn phân biệt trang dẫn đường với trang cung cấp thông tin, phải gán mỗi trang hai điểm định nghĩa lẫn nhau.

Trang trung tâm · Trang uy tín · Ma trận liên kết · Chuẩn hóa · Điểm ổn định

Trang trung tâm và trang uy tín

Nhu cầu: một điểm không tách trang danh sách học phần khỏi trang học phần.

Trang danh mục học phần giữ vai trò trung tâm và trỏ tới các trang học phần giữ vai trò uy tín.

Thuật toán tìm kiếm theo chủ đề dựa trên siêu liên kết (HITS) gán mỗi trang hai điểm $h_i$, $a_i$.

Trang uy tín (authority) là trang cung cấp thông tin, điểm $a_i$.

Trang trung tâm (hub) là trang chỉ tới nơi có thông tin, điểm $h_i$.

Định nghĩa tương hỗ của hai điểm

Đồ thị G5: A tới B, C, D; B tới A, D; C tới E; D tới B, C; E không có cạnh ra.

Đồ thị G5

Uy tín cộng trung tâm của trang trỏ tới; trung tâm cộng uy tín của trang được trỏ tới:

$$\tilde a_j=\sum_{i\to j}h_i,\qquad \tilde h_i=\sum_{i\to j}a_j.$$

Chỉ cộng thì giá trị thường tăng không giới hạn; sau mỗi bước chia cho thành phần lớn nhất.

Khởi tạo $h^0=(1,1,1,1,1)^\mathsf T$ theo thứ tự A,…,E.

Ví dụ: đồ thị năm trang, bước uy tín thứ nhất

$h^0=(1,1,1,1,1)^\mathsf T$; G5 giữ nguyên.

Trang Nguồn liên kết vào Uy tín thô $\tilde a_i$ $a_i^1=\tilde a_i/2$
A B $1$ $1/2$
B A,D $2$ $1$
C A,D $2$ $1$
D A,B $2$ $1$
E C $1$ $1/2$

Uy tín thô là tổng $h^0$ của trang trỏ tới; chia cho giá trị lớn nhất $2$.

Ví dụ: đồ thị năm trang, bước trung tâm thứ nhất

Dùng $a^1=(1/2,1,1,1,1/2)^\mathsf T$.

Trang Tổng uy tín theo cạnh ra Trung tâm thô $\tilde h_i$ $h_i^1=\tilde h_i/3$
A $1+1+1$ $3$ $1$
B $1/2+1$ $3/2$ $1/2$
C $1/2$ $1/2$ $1/6$
D $1+1$ $2$ $2/3$
E $0$ $0$ $0$

Bước trung tâm dùng uy tín vừa cập nhật $a^1$; chuẩn hóa: chia cho giá trị lớn nhất, bằng $3$.

Ví dụ: đồ thị năm trang, vòng thứ hai

Từ $h^1=(1,1/2,1/6,2/3,0)^\mathsf T$; chia $\tilde a$ cho $5/3$, $\tilde h$ cho $\tilde h_A=29/10$.

Trang $\tilde a$ $a^2$ $h^2$
A $1/2$ $3/10$ $1$
B $5/3$ $1$ $12/29$
C $5/3$ $1$ $1/29$
D $3/2$ $9/10$ $20/29$
E $1/6$ $1/10$ $0$

Kết luận: trung tâm của C và uy tín của E giảm dần; hai vector chưa ổn định.

Ma trận liên kết của HITS

$L$ là ma trận kề: $L_{ij}=1$ khi $i\to j$, bằng 0 nếu không; hàng là trang nguồn.

$$L=\begin{array}{c|ccccc}&A&B&C&D&E\\\hline A&0&1&1&1&0\\B&1&0&0&1&0\\C&0&0&0&0&1\\D&0&1&1&0&0\\E&0&0&0&0&0\end{array}$$
$$\tilde a=L^\mathsf Th,\qquad\tilde h=La.$$
Biểu diễn Vị trí của cạnh $i\to j$ Giá trị
HITS: $L$ Hàng $i$, cột $j$ $1$
PageRank: $M_0$ Hàng $j$, cột $i$ $1/d_i$

HITS cộng điểm qua cạnh; không chia bậc ra.

Chuẩn hóa điểm HITS

Định nghĩa. Với vector không âm $q$ có $\max_iq_i>0$, chuẩn hóa theo giá trị lớn nhất là $N(q)=q/\max_iq_i$.

Ý nghĩa: giữ tỷ lệ và thứ hạng; giá trị lớn nhất thành $1$.

Ví dụ. $N\big((1,2,2,2,1)^\mathsf T\big)=(1/2,1,1,1,1/2)^\mathsf T$, tổng bằng $4$.

Lưu ý: điểm HITS không là phân phối; $N(0)$ không xác định.

Thuật toán: HITS

Đầu vào: đồ thị có ít nhất một cạnh; $\tau>0$, $K\ge1$.

Đầu ra: $h$, $a$ và trạng thái dừng.

h ← vector toàn 1; a ← vector toàn 1
với t = 0, ..., K - 1:
    a_new ← N(L chuyển vị * h)
    h_new ← N(L * a_new)
    Delta_a ← max |a_new[i] - a[i]|
    Delta_h ← max |h_new[i] - h[i]|
    a ← a_new; h ← h_new
    nếu max(Delta_a, Delta_h) ≤ tau:
        trả về (h, a, đạt ngưỡng)
trả về (h, a, hết số vòng)

Điểm ổn định của HITS

Ở điểm ổn định, chuẩn hóa chỉ đổi độ lớn ($\propto$: tỷ lệ với, hệ số dương): $$a\propto L^\mathsf Th,\qquad h\propto La.$$

Thế hai quan hệ vào nhau: $$h\propto LL^\mathsf Th,\qquad a\propto L^\mathsf TLa.$$

Giả thiết: trị riêng lớn nhất có không gian riêng một chiều; $h^0$ có thành phần theo vector riêng ấy.

Kết luận: giới hạn duy nhất; $h$, $a$ là vector riêng ứng với trị riêng lớn nhất của $LL^\mathsf T$, $L^\mathsf TL$.

Chi phí: HITS mỗi vòng

Mô hình: danh sách cạnh, $n$ đỉnh, $\ell$ cạnh; phép toán vô hướng chi phí đơn vị.

BướcSố lầnChi phí mỗi lầnĐóng góp
Cộng $h_i$ vào $a_j$$\ell$$1$$\ell$
Cộng $a_j$ mới vào $h_i$$\ell$$1$$\ell$
Chuẩn hóa, đo thay đổisố lượt cố định$\Theta(n)$$\Theta(n)$
Tổng$2\ell+\Theta(n)=\Theta(n+\ell)$

Bộ nhớ phụ $\Theta(n)$, đầu vào $\Theta(n+\ell)$.

Kết luận: không dựng $LL^\mathsf T$, $L^\mathsf TL$ vì chúng có thể đặc hơn $L$.

Câu hỏi về HITS

Đồ thị G5: A tới B, C, D; B tới A, D; C tới E; D tới B, C; E không có cạnh ra.

Từ vòng thứ hai: $h^2=(1,\,12/29,\,1/29,\,20/29,\,0)^\mathsf T$.

Câu hỏi:

  1. Tính uy tín thô $\tilde a_D$ và điểm chuẩn hóa $a_D^3$.

  2. Nếu mỗi nguồn chia $h_i$ cho số liên kết ra: tính lại $\tilde a_D$; nêu định nghĩa bị thay.

  3. Tính $a_E^3$; giải thích vì sao E có uy tín dương dù không có cạnh ra.

6.Tổng kết và tự kiểm tra

Muốn trả lời bài toán xếp hạng liên kết, phải nêu giả thiết, bảo đảm và chi phí của từng phương pháp.

Giả thiết · Bảo đảm và chi phí · Câu trả lời · Câu hỏi tự kiểm tra · Tài liệu đọc

Kết quả và giả thiết không được bỏ

Kết quảGiả thiết không được bỏCông thức hoặc thuật toán
Bảo toàn tổng điểm$r^0$ là phân phối; $v\ge0$, $\sum_iv_i=1$; bù nút cụt đều$\sum_ir_i^{t+1}=1$
Cận sai số khi dừng$0<\beta<1$$\|r^{t+1}-r^*\|_1\le\dfrac{\beta}{1-\beta}\Delta$
Ghép điểm chủ đềcùng $\bar M$, $\beta$; $v=\sum_jw_jv^{(j)}$, $w_j\ge0$, $\sum_jw_j=1$điểm cố định của $v$: ${r^*=\sum_jw_jr^{(j)}}$
Điểm trang đíchđúng kiến trúc cụm; không nút cụt; dịch chuyển đều, ${b=(1-\beta)/n}$$y=\dfrac{x+\beta mb+b}{1-\beta^2}$
Spam Mass$r$, $\rho$ cùng đồ thị, cùng $\beta$; $r_i>0$$s_i=1-\rho_i/r_i$
Điểm ổn định HITStrị riêng lớn nhất có không gian riêng một chiều; $h^0$ có thành phần theo đó${LL^\mathsf Th=\lambda_{\max}h}$, ${L^\mathsf TLa=\lambda_{\max}a}$

Thuật toán, bảo đảm và chi phí

Thuật toánĐầu vàoBảo đảmChi phí
PageRank theo chủ đề$G$, $\beta$, phân phối $v$, $\tau$, $K$phân phối; sai số $\le\dfrac{\beta\Delta}{1-\beta}$$\Theta(n+\ell)$ mỗi vòng; truy vấn $\Theta(kc)$
TrustRanknhư trên, $v_T$ từ tập $T$ đánh giá bên ngoàinhư trên$\Theta(n+\ell)$ mỗi vòng
Spam Mass$r$, $\rho$ cùng mô hình, $r_i>0$chênh lệch tương đối, không là xác suất rác$\Theta(n)$ sau hai phép lặp
HITSđồ thị có ít nhất một cạnh, $\tau$, $K$$h$, $a$ không âm, giá trị lớn nhất $1$$2\ell+\Theta(n)$ mỗi vòng

Câu trả lời cho vấn đề trung tâm

  • Cùng $\bar M$, $\beta$, $v=\sum_jw_jv^{(j)}$: ghép $k$ vector chủ đề cho đúng $r^*$ của $v$; mỗi người lưu $k$ trọng số.
  • Cụm một đích, $m$ hỗ trợ, không nút cụt, $\beta=0{,}85$: $y\approx3{,}6x+0{,}46\,m/n$.
  • $T=\{B,D\}$ trên G4, $r$ và $\rho$ cùng $\beta=4/5$: $s_A=s_C=1/5$ xa $1$: chưa cần rà soát; ${s_B=s_D=-23/95}$.
  • Trị riêng lớn nhất có không gian riêng một chiều: $h$, $a$ là vector riêng tương ứng của $LL^\mathsf T$, $L^\mathsf TL$.
  • Mọi phép lặp $\Theta(n+\ell)$ mỗi vòng; chọn theo đầu ra cần có.

Kết luận: $k$ vector thay một tỷ vector riêng; Spam Mass chỉ trang cần rà soát; HITS tách hai vai trò.

Câu hỏi tự kiểm tra

Câu hỏi: trả lời và nêu kết quả đã dùng.

  1. G4, $\beta=4/5$, tập dịch chuyển đổi từ {B, D} sang {C}: trong phép lặp, đại lượng nào đổi, nào giữ?
  2. PageRank theo chủ đề, HITS cùng $\Theta(n+\ell)$ mỗi vòng: đánh giá “cùng thời gian chạy”; nêu đại lượng thiếu.

Câu hỏi tự kiểm tra

Câu hỏi: trả lời và nêu kết quả đã dùng.

  1. Cụm MMDS Hình 5.16, không nút cụt, không trang nào của cụm thuộc $T$: viết $p$, $y$ của TrustRank; nêu số hạng mất.
  2. Một hệ thống thay mọi Spam Mass âm bằng $0$: đánh giá theo định nghĩa và cách đọc của chỉ số.
  3. G4, $h^0=(1,1,1,1)^\mathsf T$: tính $a^1$, so với PageRank nền $(9/28,19/84,19/84,19/84)^\mathsf T$; giải thích khác biệt.

Nguồn và tài liệu đọc

Nguồn: Leskovec, Rajaraman, Ullman (2020), Mining of Massive Datasets, ấn bản 3, Chương 5, §§5.3–5.5, tr.195–208; Hình 5.1, tr.178.

Sách và trang chiếu của các tác giả: http://www.mmds.org.

Nguồn: Stanford CS246 (2026), Leskovec và Kanatsoulis, bài “Link spam”; Teufel (2012), Information Retrieval, Cambridge (HITS).

Ghi chú bài giảng

7.Bài tập vận dụng

Muốn kiểm các phương trình đã học, phải giải lại chúng trên dữ liệu và biến thể của giáo trình.

Hai tập dịch chuyển · Biến thể cụm thao túng · HITS trên chuỗi có khuyên

Bài tập: PageRank với hai tập dịch chuyển

Đồ thị G4: A tới B, C, D; B tới A, D; C tới A; D tới B, C.

$\beta=4/5$, kế thừa MMDS Ví dụ 5.10; tám cạnh của G4 giữ nguyên.

Câu hỏi: tính PageRank theo chủ đề khi tập dịch chuyển là (a) chỉ A; (b) A và C.

Trình bày hai phân phối dịch chuyển, hệ phương trình và hai vector theo thứ tự A, B, C, D.

Kiểm tổng bằng 1 và phương trình cố định.

Nguồn: MMDS 3e, Bài 5.3.1(a, b), §5.3.5, tr.199.

Bài tập: biến thể cụm thao túng

Giữ mô hình MMDS Hình 5.16, trừ cạnh ra của các hỗ trợ; $x$ đã gồm $\beta$; $b=(1-\beta)/n$.

Cấu trúc a: đích tới hỗ trợ, hỗ trợ chỉ có khuyên.
Cấu trúc c: đích tới hỗ trợ, hỗ trợ có khuyên và cạnh tới đích.

Câu hỏi: phân tích lại khi mỗi hỗ trợ (a) chỉ có khuyên; (c) có khuyên và cạnh tới đích.

Viết phương trình của $p$, $y$ và biểu thức $y$ theo $x$, $m$, $n$, $\beta$; ghi rõ chính xác hay xấp xỉ.

Nguồn: MMDS 3e, Bài 5.4.1(a, c), §5.4.6, tr.203–204.

Bài tập: HITS trên chuỗi có khuyên

Chuỗi một tới n có khuyên một tới một; các cạnh i tới i cộng một.

Đồ thị có $n$ đỉnh, cạnh $1\to1$ và $i\to i+1$ với $1\le i<n$; $n\ge1$.

Khởi tạo $h^0=a^0=\mathbf1$; sau mỗi phép nhân, chuẩn hóa phần tử lớn nhất bằng 1.

Câu hỏi: tính các vector trung tâm và uy tín theo $n$.

Nêu hai vector giới hạn, lập luận từ phép lặp hoặc ma trận, và các trường hợp $n=1$, $n=2$.

Nguồn: MMDS 3e, Bài 5.5.2, §5.5.3, tr.208; Hình 5.9, tr.189.