- vừa được xem lúc

Paper reading | NEURAL TOPIC MODEL VIA OPTIMAL TRANSPORT

0 0 14

Người đăng: Viblo AI

Theo Viblo Asia

Giới thiệu

Các Neural Topic Models được sự chú ý trong giới research nhờ có kết quả đầy hứa hẹn trong task text analysis 😄. Một topic model điển hình có mục tiêu là khám phá tập các latent topics trong một tập các văn bản. Gần đây, sự phát triển của Variational AutoEncoders (VAEs) và Autoencoding Variational Inference (AVI) tạo cơ sở cho việc xây dựng các Neural Topic Models (NTM). Được lấy cảm hứng từ VAE, nhiều model NTMs sử dụng một encoder nhận biểu diễn Bag-of-Words của một tài liệu làm input và thực hiện xấp xỉ phân phối hậu nghiệm (posterior distribution) của các latent topics.

Nếu bạn chưa biết, Posterior distribution (phân phối hậu nghiệm) là phân phối xác suất của một biến ngẫu nhiên sau khi có thêm thông tin mới từ dữ liệu quan sát được. Nó được tính dựa trên phân phối tiền nghiệm (prior distribution) và dữ liệu quan sát (observed data) thông qua công thức Bayes.

Cụ thể, posterior distribution được tính bằng cách nhân phân phối tiền nghiệm với hàm mật độ xác suất của dữ liệu quan sát và chuẩn hóa theo tổng của tích của phân phối tiền nghiệm với hàm mật độ xác suất của dữ liệu quan sát. Công thức toán học của posterior distribution có thể được biểu diễn như sau:

P(θX)=P(Xθ)P(θ)/P(X)P(\theta | X) = P(X | \theta) * P(\theta) / P(X)

Trong đó:

  • P(θX)P(\theta | X) là posterior distribution của biến ngẫu nhiên theta khi biết dữ liệu quan sát XX.
  • P(Xθ)P(X | \theta) là hàm mật độ xác suất của dữ liệu quan sát XX khi biết giá trị của biến ngẫu nhiên theta.
  • P(θ)P(\theta) là phân phối tiền nghiệm của biến ngẫu nhiên \theta.
  • P(X)P(X) là hằng số chuẩn hóa được tính bằng tổng của tích của phân phối tiền nghiệm với hàm mật độ xác suất của dữ liệu quan sát: P(X)=P(Xθ)P(θ)d(θ)P(X) = ∫P(X | \theta) * P(\theta) d(\theta).

Posterior distribution cung cấp thông tin quan trọng cho việc dự đoán và suy luận trong các ứng dụng thống kê và khoa học dữ liệu.

Các posterior samples là đầu vào của encoder để tái tạo lại biểu diễn BoW. So với các topic models thông thường, các NTM thường có tính linh hoạt và khả năng mở rộng tốt hơn, điều này rất quan trọng đối với các ứng dụng trên dữ liệu quy mô lớn.

Mặc dù có hiệu suất tiềm năng nhưng các NTM vẫn tồn tại một số nhược điểm:

  • Quá trình training và inference của NTM thường phức tạp do việc tái tạo các latent topics.
  • Đối với nhiều NTM hiện tại, việc đạt được biểu diễn tài liệu tốt và các topic có tính nhất quán / đa dạng một cách đồng thời là khó khăn. Điều này là do objective của NTMs là đạt được sai số tái tạo thấp (lower reconstruction error), điều này thường có nghĩa là các topic ít nhất quán và đa dạng hơn.
  • Các topic model thường có hiệu suất thấp với các văn bản ngắn như tweets, tiêu đề, review sản phẩm vì mỗi tài liệu riêng lẻ chứa không đủ thông tin về sự xuất hiện của từ. Vấn đề này có thể trở nên trầm trọng hơn đối với các NTM do việc sử dụng các mạng encoder và decoder thường dễ bị ảnh hưởng bởi độ thưa thớt của dữ liệu. 😄

Đóng góp

Để giải quyết các vấn đề trên của mô hình NTM, nhóm tác giả đề xuất neural topic model với một số điểm mới sau.

Với 1 văn bản, nhóm tác giả xét nội dung được encode theo 2 biểu diễn: observed representation (biểu diễn quan sát được), xx, đây là phân phối của tất cả các từ trong vocabulary và latent representation (biểu diễn ẩn), zz, đây là phân phối qua tất cả các topic. Trong đó, xx được xác định bằng cách chuẩn hóa vector đếm từ trong văn bản và zz được học từ model.

Cho một tập văn bản, vocabulary size (số lượng các từ riêng biệt) có thể rất lớn nhưng một văn bản thường bao gồm một tập nhỏ các từ. Vì vậy, xx thường là một biểu diễn ngữ nghĩa thưa và low-level trong một văn bản. Ngoài ra, vì số lượng các topic nhỏ hơn nhiều so với vocabulary size, zz là biểu diễn tương đối dày đặc (dense) và high-level trong cùng văn bản đó. Vì vậy, việc học của topic model có thể được định nghĩa là một quá trình học phân phối zz sao cho càng gần với phân phối xx càng tốt. Theo cách này, một điều quan trọng là ta cần xác định cách đo lường "khoảng cách" giữa 2 phân phối. Trong bài báo, nhóm tác giả đề xuất sử dụng Optimal Transport (OT), cụ thể là phát triển NTM mới dựa trên việc tối thiểu hóa OT.

Ý tưởng của model là sử dụng encoder có output là phân phối topic zz của một văn bản dựa trên input là vector đếm từ của văn bản đó giống như NTM thông thường. Điểm mới là nhóm tác giả tối thiểu hóa khoảng cách OT giữa 2 phân phối rời rạc xxzz. Đặc biệt, hàm chi phí của khoảng cách OT mô tả trọng số giữa các topic và các từ được nhóm tác giải định nghĩa như khoảng cách trong embedding space. Để biểu diễn ngữ nghĩa thì tất các các từ và topic được embed trong embedding space này. Với khả năng tận dụng được các pretrained word embedding và tính chất của OT trong mô hình hóa các cấu trúc hình học trên không gian phân phối xác suất, mô hình được đề xuất có thể đạt được sự cân bằng tốt hơn giữa việc thu được biểu diễn tài liệu tốt và tạo ra các topic nhất quán / đa dạng.

Một số kiến thức nền tảng

Phần này sẽ nhắc lại một số kiến thức nền tảng chính được sử dụng trong model đề xuất.

Neural topic models

Đa phần các NTM hiện tại có thể xem như là bản mở rộng của VAE trong đó latent variables là các topic. Giả sử tập văn bản cần phân tích có VV từ riêng biệt (vocabulary size). Mỗi văn bản gồm vector đếm từ là (xNV(\boldsymbol{x} \in \mathbb{N}^V và phân phối ẩn của KK topic: zRK\boldsymbol{z} \in \mathbb{R}^K. Một NTM giả sử rằng z\boldsymbol{z} cho một văn bản được tạo từ prior distribution p(z)p(\boldsymbol{z})x\boldsymbol{x} được tạo từ conditional distribution pϕ(xz)p_\phi(\boldsymbol{\boldsymbol{x}} \mid \boldsymbol{z}) được mô hình bởi decoder ϕ\phi. Mục tiêu của mô hình là infer topic distribution cho bởi số lượng từ. Cụ thể hơn đó là tính toán p(zx)p(\boldsymbol{z} | \boldsymbol{x}) bằng cách xấp xỉ variational distribution qθ(zx)q_\theta(\boldsymbol{z} \mid \boldsymbol{x}) được mô hình bởi encoder θ\theta. Tương tự như VAEs, training objective của NTMs là tối đa hóa Evidence Lower BOund (ELBO):

maxθ,ϕ(Eqθ(zx)[logpϕ(xz)]KL[qθ(zx)p(z)])\max _{\theta, \phi}\left(\mathbb{E}_{q_\theta}(\boldsymbol{z} \mid \boldsymbol{x})\left[\log p_\phi(\boldsymbol{x} \mid \boldsymbol{z})\right]-\mathbb{K} \mathbb{L}\left[q_\theta(\boldsymbol{z} \mid \boldsymbol{x}) \| p(\boldsymbol{z})\right]\right)

Optimal Transport

Khoảng cách OT được sử dụng rộng rãi cho việc so sánh các xác suất. Cụ thể, ta xét 2 vector xác suất rΔDrr \in \Delta^{D_r}cΔDcc \in \Delta^{D_c}, trong đó ΔD\Delta^D biểu thị một D1D-1 simplex. D-1 simplex là một thuật ngữ được sử dụng trong lý thuyết xác suất và đại số tuyến tính để chỉ tập hợp các điểm trong không gian D chiều thỏa mãn tổng các thành phần bằng 1 và tất cả các thành phần đều không âm. Khoảng cách OT giữa 2 vector xác suất được định nghĩa như sau:

dM(r,c):=minPU(r,c)P,M,d_{\mathrm{M}}(\boldsymbol{r}, \boldsymbol{c}):=\min _{\mathbf{P} \in U(\boldsymbol{r}, \boldsymbol{c})}\langle\mathbf{P}, \mathbf{M}\rangle,

Trong đó ,\langle\cdot, \cdot\rangle là Frobenius dot-product. Frobenius dot-product là một phép toán tích vô hướng giữa hai ma trận vuông cùng kích thước. Frobenius dot-product được tính bằng cách lấy tổng các tích phần tử tương ứng của hai ma trận, hay còn gọi là inner product. MR0Dr×Dc\mathbf{M} \in \mathbb{R}_{\geq 0}^{D_r \times D_c} là ma trận chi phí transport. PR>0Dr×Dc\mathbf{P} \in \mathbb{R}_{>0}^{D_r \times D_c} là transport plan. U(r,c)U(\boldsymbol{r}, \boldsymbol{c}) là transport polytype của r\boldsymbol{r}c\boldsymbol{c}, đó là tập đa diện giới hạn bởi các ma trận Dr×DcD_r \times D_c: U(r,c):=PR>0Dr×DcP1Dc=r,PT1Dr=cU(\boldsymbol{r}, \boldsymbol{c}):={P \in \mathbb{R}{>0}^{D_r \times D_c} \mid P \mathbf{1}_{D_c}= \boldsymbol{r}, P^T \mathbf{1}_{D_r}=\boldsymbol{c}}; và 1D\mathbf{1}_D là vector có DD chiều, tất cả các phần tử đều bằng 1.

Nếu xét hai biến ngẫu nhiên rời rạc XX \sim Categorical (r)(\boldsymbol{r})YY \sim Categorical (c)(\boldsymbol{c}), ma trận transport P\mathbf{P} là xác suất đồng thời của (X,Y)(X, Y), tức là p(X=i,Y=j)=pij\mathrm{p}(X=i, Y=j)=p_{i j}U(r,c)U(\boldsymbol{r}, \boldsymbol{c}) là tập hợp tất cả các xác suất đồng thời. Khoảng cách OT tối ưu trên có thể tính bằng cách tìm ma trận OT P\mathbf{P}^*.

Model đề xuất

Trong model đề xuất, ta coi mỗi văn bản là một phân phối của VV từ, x~ΔV\tilde{\boldsymbol{x}} \in \Delta^V được xác định bằng cách chuẩn hóa x:x~:=x/S\boldsymbol{x}: \tilde{\boldsymbol{x}}:=\boldsymbol{x} / S trong đó S:=v=1VxS:=\sum_{v=1}^V \boldsymbol{x} là độ dài của văn bản. Tương tự, mỗi văn bản liên kết với một phân phối của KK topics zΔK\boldsymbol{z} \in \Delta^K.

Giống như các NTMs khác, nhóm tác giả sử dụng một encoder để tạo z\boldsymbol{z} từ x~\tilde{\boldsymbol{x}}: z=softmax(θ(x~))\boldsymbol{z}=\operatorname{softmax}(\theta(\tilde{\boldsymbol{x}})). Vì x~\tilde{\boldsymbol{x}}z\boldsymbol{z} là 2 phân phối có vai trò hỗ trợ khác nhau cho cùng 1 văn bản, để học encoder, nhóm tác giả đề xuất tối thiểu hóa khoảng cách OT để làm cho z\boldsymbol{z} gần x~\tilde{\boldsymbol{x}} hơn.

minθdM(x~,z)\min _\theta d_{\mathbf{M}}(\tilde{\boldsymbol{x}}, \boldsymbol{z})

Trong đó MR>0V×K\mathbf{M} \in \mathbb{R}_{>0}^{V \times K} là ma trận chi phí, mvkm_{vk} là khoảng cách ngữ nghĩa giữa topic kk và từ vv. Do đó, mỗi cột của M\boldsymbol{M} capture mức độ quan trọng của từ tương ứng với topic. Ngoài ra, M\boldsymbol{M} cũng là biến cần học trong model.

Tuy nhiên, việc học ma trận chi phí là một non-trivial task. Để giải quyết vấn đề này, nhóm tác giả chỉ định việc xây dựng M\boldsymbol{M} như sau:

mvk=1cos(ev,gk)m_{v k}=1-\cos \left(e_v, \boldsymbol{g}_k\right)

trong đó cos(,)[1,1]\cos (\cdot, \cdot) \in[-1,1] là cosine similarity; gkRL\boldsymbol{g}_k \in \mathbb{R}^LevRL\boldsymbol{e}_v \in \mathbb{R}^L là embedding của topic kk và word vv tương ứng.

Vậy cốt lõi ở đây là ta sẽ học embedding với mong muốn nắm được ngữ nghĩa thông tin của topic và từ. Tuy nhiên, thay vì học word embedding, nhóm tác giả tận dụng một số pretrained word embedding như word2vec và GloVe, điều này giúp cho việc tối ưu số lượng tham số trong quá trình học của M\boldsymbol{M} và hiệu quả trong các văn bản ngắn. Ngoài ra, trong công thức trên ta sử dụng cosin similarity nên ta có M[0,2]V×K\mathbf{M} \in[0,2]^{V \times K}.

Để dễ dàng biểu diễn hơn, nhóm tác giả biểu thị GRL×K\mathbf{G} \in \mathbb{R}^{L \times K}ERL×V\mathbf{E} \in \mathbb{R}^{L \times V} là tập các embedding của các topic và từ. Ta có thể viết lại công thức tối thiểu hóa khoảng cách OT như sau

minθ,GdM(x~,z)\min _{\theta, \mathbf{G}} d_{\mathbf{M}}(\tilde{\boldsymbol{x}}, \boldsymbol{z})

Khác với các model NTM trước đây dựa vào VAE, model được đề xuất không có decoder để chiếu z\boldsymbol{z} về word space để tái tạo x\boldsymbol{x}, bản thân khoảng cách OT đã giúp tính khoảng cách giữa z\boldsymbol{z}x~\tilde{\boldsymbol{x}} trực tiếp. Để hiểu hơn về model, ta có thể chiếu z\boldsymbol{z} đến không gian của x\boldsymbol{x} bằng cách định nghĩa một decoder ảo như sau ϕ(z):=softmax((2M)z)\phi(\boldsymbol{z}):=\operatorname{softmax}((2-\mathbf{M}) \boldsymbol{z}).

Ta có thể xây dựng mối quan hệ giữa các NTMs khác với model được đề xuất như sau:

Với V8V \ge 8M[0,2]V×K\mathbf{M} \in[0,2]^{V \times K} ta có

dM(x~,z)x~Tlogϕ(z)d_{\mathbf{M}}(\tilde{\boldsymbol{x}}, \boldsymbol{z}) \leq-\tilde{\boldsymbol{x}}^T \log \phi(\boldsymbol{z})

Với định lý trên ta có bổ đề sau: Tối đa hóa expected multinomial log-likelihood của NTM tương đương với việc tối thiểu hóa cận trên của khoảng cách OT trong model đề xuất.

Trong bài báo, nhóm tác giả đề xuất hàm loss là sự kết hợp giữa khoảng cách OT và expected log-likelihood:

maxθ,G(x~Tlogϕ(z)dM(x~,z))\max _{\theta, \mathbf{G}}\left(\tilde{\boldsymbol{x}}^T \log \phi(\boldsymbol{z})-d_{\mathbf{M}}(\tilde{\boldsymbol{x}}, \boldsymbol{z})\right)

Ta có thể thấy công thức trên khá giống với ELBO 😄 Nhóm tác giả tiếp tục thay thế khoảng cách OT bằng khoảng cách Sinkhorn, và hàm loss cuối cùng của chúng ta sẽ như sau:

maxθ,G(ϵx~Tlogϕ(z)dM,α(x~,z))\max _{\theta, \mathbf{G}}\left(\epsilon \tilde{\boldsymbol{x}}^T \log \phi(\boldsymbol{z})-d_{\mathbf{M}, \alpha}(\tilde{\boldsymbol{x}}, \boldsymbol{z})\right)

Trong đó, z=softmax(θ(x~))\boldsymbol{z}=\operatorname{softmax}(\theta(\tilde{\boldsymbol{x}})). M\mathbf{M} được tham số hóa bởi G\mathbf{G}. ϕ(z):=softmax((2M)z)\phi(\boldsymbol{z}):=\operatorname{softmax}((2-\mathbf{M}) \boldsymbol{z}). x\boldsymbol{x}x~\tilde{\boldsymbol{x}} là vector đếm từ và chuẩn hóa của vector đó. ϵ\epsilonα\alpha là các siêu tham số kiểm soát trọng số của expected likelihood và khoảng cách Sinkhorn tương ứng.

Để tính khoảng cách Sinkhorn ta dùng thuật toán Sinkhorn như dưới

image.png

Kết luận

Bài báo trên cho ta một cách tiếp cận mới trong Neural Topic Model sử dụng các kiến thức về xác suất thống kê. Viếc áp dụng các model xác suất vào các bài toán học máy giúp chúng ta có những góc nhìn tường minh hơn về cách mà model hoạt động.

Tham khảo

  1. Neural Topic Model via Optimal Transport

Bình luận

Bài viết tương tự

- vừa được xem lúc

Hành trình AI của một sinh viên tồi

Mình ngồi gõ những dòng này vào lúc 2h sáng (chính xác là 2h 2 phút), quả là một đêm khó ngủ. Có lẽ vì lúc chiều đã uống cốc nâu đá mà giờ mắt mình tỉnh như sáo, cũng có thể là vì những trăn trở về lý thuyết chồng chất ánh xạ mình đọc ban sáng khiến không tài nào chợp mắt được hoặc cũng có thể do mì

0 0 131

- vừa được xem lúc

[Deep Learning] Key Information Extraction from document using Graph Convolution Network - Bài toán trích rút thông tin từ hóa đơn với Graph Convolution Network

Các nội dung sẽ được đề cập trong bài blog lần này. . Tổng quan về GNN, GCN. Bài toán Key Information Extraction, trích rút thông tin trong văn bản từ ảnh.

0 0 204

- vừa được xem lúc

Tìm hiểu về YOLO trong bài toán real-time object detection

1.Yolo là gì. . Họ các mô hình RCNN ( Region-Based Convolutional Neural Networks) để giải quyết các bài toán về định vị và nhận diện vật thể.

0 0 272

- vừa được xem lúc

Encoding categorical features in Machine learning

Khi tiếp cận với một bài toán machine learning, khả năng cao là chúng ta sẽ phải đối mặt với dữ liệu dạng phân loại (categorical data). Khác với các dữ liệu dạng số, máy tính sẽ không thể hiểu và làm việc trực tiếp với categorical variable.

0 0 244

- vừa được xem lúc

TF Lite with Android Mobile

Như các bạn đã biết việc đưa ứng dụng đến với người sử dụng thực tế là một thành công lớn trong Machine Learning.Việc làm AI nó không chỉ dừng lại ở mức nghiên cứu, tìm ra giải pháp, chứng minh một giải pháp mới,... mà quan trọng là đưa được những nghiên cứu đó vào ứng dụng thực tế, được sử dụng để

0 0 55

- vừa được xem lúc

Xây dựng hệ thống Real-time Multi-person Tracking với YOLOv3 và DeepSORT

Trong bài này chúng ta sẽ xây dựng một hệ thống sử dụng YOLOv3 kết hợp với DeepSORT để tracking được các đối tượng trên camera, YOLO là một thuật toán deep learning ra đời vào tháng 5 năm 2016 và nó nhanh chóng trở nên phổ biến vì nó quá nhanh so với thuật toán deep learning trước đó, sử dụng YOLO t

0 0 303