You are on page 1of 45

Báo cáo về dự án

tài nguyên môi trường


Dàn ý thuyết
trình
1 Phát biểu bài
toán

2. Xây dựng và tiền xử lý dữ


liệu
. Xây dựng mô hình

3 Kết luận và nhận xét

.
Phân loại chủ đề
0
Phát
biểu 1
bài toán
Phát biểu bài toán

Phần 1:
 Đầu vào: P là văn bản chưa được gán nhãn chủ đề thuộc miền báo chí bao gồm
các đặc trưng về tiêu đề, nội dung văn bản.
 Đầu ra: V là nhãn chủ đề của văn bản nếu văn bản.
02
Xây dựng và
tiền xử lý dữ
liệu
Các bước tiền xử lý dữ
liệu
 Bước 1: Đọc file json để lấy trường dữ liệu nội dung bài báo
 Bước 2: Xóa các thẻ html, câu chú thích, các đường dẫn liên kết
như email,….
 Bước 3: Xóa bỏ các dấu câu và ký tự đặc biệt
 Bước 4: Chuyển các đoạn text thành chữ viết thường, chỉnh sai
chỉnh tả cho đoạn văn

→ Mục tiêu của tiền xử lý:


- Làm sạch và tăng tính đồng nhất dữ liệu đầu vào
0
Xây
phân 3đề
dựng loại chủ
theo keyword
3.1. Chia các mục chủ đề

Chủ đề Keyword
Đất đai luật đất đai, giải phóng mặt bằng, sử dụng đất, giá đất,….
Tài nguyên môi trường ô nhiễm môi trường, bảo vệ môi trường, thân thiệt môi trường,…
Tài nguyên nước tài nguyên nước, thủy điện, nguồn nước, luật tài nguyên nước,…
Biến đổi khí hậu biến đổi khí hậu, thiên tai, động đất, thảm họa khí hậu,….
Biển đảo hải đảo, biển đảo, chủ quyền biển, cảnh sát biển, kinh tế biển,…
Tài nguyên khoáng sản khoáng sản, luật khoáng sản, địa chất, vật liệu xây dựng,…
3.2. Phân loại chủ đề

 Bước 1: Lọc dữ liệu đầu vào theo các keyword trên  lấy được
các dữ liệu liên quan đến báo.
 Bước 2: Nhận đầu vào là tiêu đề và nội dung văn bản thành một
đoạn văn đầu vào.
 Bước 3: Tìm kiếm với đoạn văn đó xem có các từ xuất hiện
không. Sau đó tính số lượng các keyword xuất hiện từng chủ đề
 Bước 4: Nếu số lượng keyword là lớn nhất thì gán cho chủ đề đó
0
4 Kết luận
&
nhận xét
4. Kết luận và nhận xét

- Mô hình dự đoán khá tốt, tuy nhiên có một số dự đoán bị nhầm giữa môi
trường và biến đổi khí hậu, hoặc môi trường và biển đảo.
- Ví dụ, “Ô nhiễm môi trường đang rất nghiêm trọng và bảo vệ môi trường
biển đảo”
 Do lĩnh vực “môi trường” có 2 từ (ô nhiễm môi trường, bảo vệ môi
trường) và lĩnh vực “biển đảo” có 1 từ (biển đảo) nên nó gán là lĩnh vực
“Môi trường” nhưng thực tế nó là lĩnh vực về “biển đảo”

 Cần lọc lại một số keyword về các chủ đề


Tóm tắt văn bản
0
Phát
biểu 1
bài toán
Phát biểu bài toán

Phần 2: Bài toán tóm tắt văn bản miền báo chí cho báo tài nguyên môi trường.
 Đầu vào: là văn bản đầu P vào có nội dung nằm trong miền báo chí.
 Đầu ra: V là văn bản tóm tắt đã được tóm lược với có chứa những thông tin, nội
dung quan trọng của chuỗi văn bản đầu vào P. Trong đó, văn bản P có độ dài nhỏ
hơn c câu.
02
Xây dựng và
tiền xử lý dữ
liệu
Các bước tiền xử lý dữ liệu
 Bước 1: Đọc file json để lấy trường dữ liệu nội dung bài báo
 Bước 2: Xóa các thẻ html, câu chú thích,….
 Bước 3: Xóa bỏ ký tự đặc biệt như @,#,%,///,… và loại bỏ các kí
tự lặp nhiều lần. Ví dụ: “…”  “.” , “???”  “?”
 Bước 4: Xóa những ký tự đánh dấu đầu dòng như: “-“, , IV,…
 Bước 5: Tách từ và loại bỏ các từ dừng
 Bước 6: Chia tập dữ liệu content thành 2 phần bằng nhau dựa
vào số câu

→ Mục tiêu của tiền xử lý:


- Làm sạch và tăng tính đồng nhất dữ liệu đầu vào
- Giảm kích thước từ vựng, tập trung vào các từ quan trọng
0
Xây

dựnghình 3
TextRank
3.1. Mô hình
Word2vec
Word2Vec là một trong những mô
hình đầu tiên về Word Embedding sử
dụng mạng neural. Nó có khả năng
vectơ hóa từng từ dựa trên tập từ
chính và ngữ cảnh.

Word2vec có 2 cách tiếp cận, chia


thành 2 mô hình:
-Mô hình CBOW: dùng các từ ngữ
cảnh dự đoán từ trung tâm
-Mô hình Skip-gam: dùng từ trung
tâm dự đoán các từ ngữ cảnh.
3.1. Mô hình Word2vec (Skip-gram)
Mô hình skip-gram giả định rằng một từ có thể được sử dụng để sinh ra các từ ngữ cảnh nó
→ xác suất có điều kiện sinh ra các từ ngữ cảnh trong khoảng cách không quá k từ so với từ trung tâm

𝑃 the, 𝑚𝑎𝑛, ℎ𝑖𝑠, 𝑠𝑜𝑛|𝑙𝑜𝑣𝑒𝑠 = 𝑃 the|𝑙𝑜𝑣𝑒𝑠 ∗ 𝑃 𝑚𝑎𝑛|𝑙𝑜𝑣𝑒𝑠 ∗ 𝑃 ℎ𝑖𝑠|𝑙𝑜𝑣𝑒𝑠 ∗ 𝑃 𝑠𝑜𝑛|𝑙𝑜𝑣𝑒𝑠

𝑒𝑥𝑝(𝑢 𝑇 𝑣 ) Cần giảm thiểu hàm mất mát để học tham số:
Xác suất 𝑃(𝑤c|𝑤t) = σ 𝑒𝑥𝑝(𝑢 𝑜 𝑐
𝑇𝑖
𝑣𝑖 ) 𝑡
𝑖∈𝑉
−1
𝐿= ∑ ∑ 𝑙𝑜𝑔𝑃 (𝑤 𝑗+𝑖 ∨𝑤 𝑗 )
Trong đó, vectơ của từ trung tâm là 𝑢𝑖
vectơ của từ ngữ cảnh là 𝑣i 𝑇 𝑡=1 −𝑚≤ 𝑗≤ 𝑚, 𝑗 ≠0
3.2 Mô hình TextRank
- TextRank được bắt nguồn từ thuật toán
PageRank, thuật toán nhằm xếp hạng
các trang web của Google.

- Ý tưởng thuật toán:


 Xếp hạng các câu trong một văn
bản dựa trên độ tương đồng giữa
các câu.
 Mỗi đỉnh là một câu, cảnh nối là
độ tương đồng giữa các câu
 Sau đó xác định được các đỉnh
với rank cao nhất – các câu quan
trọng nhất
3.2.1. Độ tương đồng ngữ nghĩa

Sau khi vector hóa câu thì ta tính ma trận tương đồng giữa các câu.

trong đó là câu thứ i trong văn bản có n câu. được biểu diễn bởi tập n từ . Phương
pháp tính độ tương đồng trong thuật toán được xác đinh như sau giữa 2 câu:

{
𝑆𝑖𝑚 (𝑆𝑖 ,𝑆 𝑗 )= |{𝑤𝑖|𝑤𝑖 ∈𝑆𝑖∧𝑤𝑖 ∈𝑆 𝑗 }∨ ¿
log (|𝑆𝑖|)+ log⁡(|𝑆 𝑗|)
𝑛ế 𝑢𝑖≠ 𝑗¿0𝑛ế 𝑢𝑖= 𝑗
3.2.2. Sắp xếp các câu quan trọng
- Thuật toán PageRank được áp dụng để tính toán giá trị mức độ quan trọng mỗi câu.

Phương trình quan hệ giữa đỉnh và các đỉnh kề nó được tính theo đồ thị vô hướng với là trọng số của
đỉnh
𝑆𝑖𝑚 (𝑣 𝑖 , 𝑣 𝑗 )
𝑆 ( 𝑣 𝑖 ) =( 1− 𝑑 ) + 𝑑 ∗ ∑ ∗ 𝑆( 𝑣 𝑗 )
𝑣 𝑗 ∈ 𝐶( 𝑣 𝑖 ) ∑ 𝑆𝑖𝑚 (𝑣 𝑗 ,𝑣 𝑘 )
𝑣 𝑘 ∈ 𝐶 (𝑣 𝑖 )

- Khởi tạo giá trị ban đầu của mỗi đỉnh là 1.


- Lặp lại quá trình cho đến khi sự thay đổi về trọng số của mỗi đỉnh nhỏ hơn
ngưỡng ε = 0,001 hoặc sau số lần lặp xác định.
 giá trị của mỗi đỉnh, biểu thị mức độ quan trọng của câu.

Lưu ý: d = 0.85 nghĩa là tính toán giá trị trọng số thì 85% trọng số phân bổ cho việc điều hướng qua các câu liê kết còn lại là phân bố đều cho tắt cả các câu trong
văn bản  đảm bản các câu quan trọng hơn nhận được phần lớn trọng số
3.2. 3. Chọn câu, sinh tóm tắt

 Xác định mức độ quan trọng của mỗi câu bằng tỉ lệ nén của văn bản, giảm dần từ cao
xuống thấp.

 Sắp xếp các câu theo thứ tự trong văn bản gốc.

 Tạo bản tóm tắt từ các câu đã được sắp xếp theo mức độ quan trọng giảm dần.

 Sắp xếp lại các câu trong bản tóm tắt theo thứ tự trong văn bản để hoàn thiện kết quả
cuối cùng.
0
4 Kết luận
&
nhận xét
4. Kết luận và nhận xét

Rouge-1 Rouge-2 Rouge-L


0.4250 0.2715 0.3967

Nhận xét:
 Rouge-2 là 0.2715 cho thấy mô hình cũng khá hiểu quả trong việc trích xuất các cặp từ liên tiếp quan trọng
 Một số văn bản chỉ giữ được tỉ lệ nén 20%, một số văn bản ngắn tỷ lệ nén trên 0.39%
 Phần lớn các tóm tắt đúng với một dung bài viết nhưng một số văn bản nó trích xuất sai hoặc thiếu nội dung
bài viết đề cập
 Cần cải tiến mô hình
Phân tích khía
cạnh văn bản
0
Phát
biểu 1
bài toán
Phát biểu bài toán

Phần 3:
 Đầu vào: P là văn bản đầu vào bao gồm các đặc trưng là tiêu đề và nội dung văn
bản tóm tắt (nếu có).
 Đầu ra: T là khía cạnh văn bản được phân loại thuộc 3 loại nhãn là trung tính, tích
cực, tiêu cực.
02
Xây dựng và
tiền xử lý dữ
liệu
Các bước tiền xử lý dữ
liệu
 Bước 1: Đọc file json để lấy trường dữ liệu nội dung bài báo
 Bước 2: Xóa các thẻ html, câu chú thích,….
 Bước 3: Xóa bỏ ký tự đặc biệt như @,#,%,///,…
 Bước 4: Tách từ và loại bỏ các từ dừng
 Bước 5: Biến tất các các số thành một token đặc biệt <num>
 Bước 6: Chia dữ liệu thành 2 tập train và test

→ Mục tiêu của tiền xử lý:


- Làm sạch và tăng tính đồng nhất dữ liệu đầu vào
- Giảm kích thước từ vựng, tập trung và những từ khóa quan trọng
Gán nhãn dữ liệu
 Do dữ liệu liên quan đến báo đã được gán nhãn không có  cần gán nhãn dữ liệu

Labels Keyword
Positive chiếm đoạt, tham ô, hành vi vi phạm, khai thác trái phép,…
Negative phát triển, tuyên dương, khen thưởng, xuất sắc,…

→ Các bước gán nhãn:


 Bước 1: Kiểm tra đoạn văn bản đầu vào có xuất hiện các ketword không
 Bước 2: Nếu có xuất hiện thì đếm số lượng các keyword thuộc label “positive” và
label “negative”. Ngược lại gán cho label “neutral”.
 Bước 3: Nếu số lượng keyword thuộc label nào nhiều hơn thì gán cho label đó.
Ngược lại, gán cho label “neutral”
 Bước 4: Kiểm tra lại các label gán nhãn đúng hay không  bằng con người
Gán nhãn dữ liệu

Labels Keyword
Positive chiếm đoạt, tham ô, hành vi vi phạm, khai thác trái phép,…
Negative phát triển, tuyên dương, khen thưởng, xuất sắc,…

Văn bản T: “ Tuyên Quang: Cá đặc sản chết hàng loạt, người nuôi thiệt hại nặng.
Theo Sở Nông nghiệp và Phát triển Nông thôn tỉnh Tuyên Quang, đến thời điểm hiện
tại, có 36 hộ bị ảnh hưởng bởi hiện tượng cá chết hàng loạt với 114 lồng nuôi, khối
lượng cá chết khoảng trên 11,6 tấn.”
Có thể thấy một số từ khóa liên quan đến Negative như “chết hàng loạt”, “thiệt hại
nặng” là được gán nhãn là Negative.
Tập dữ liệu báo chí (đã tiền xử lý)

Số lượng dữ liệu theo từng labels Số lượng dữ liệu theo từng labels của tập train và test

- Số tiêu đề tập train: 11599 (80%)


- Số tiêu đề tập test: 2900 (20%) Phân bố các class đang phân bố không
- Số class tập dữ liệu: 3 đồng đều
0
Xây

dựnghình 3
PhoBERT
3.1. Kiến trúc Transformer

 Bên trái là
encoder (thường
có Nx = 6 lớp
chồng lên nhau).
Mỗi lớp gồm hai
khối chính là
multi-head
attention và khối
feed-forward.
Ngoài ra, có kết
nối residual giúp
mô hình hiệu quả
hơn khi chồng
lớp.
3.1.2 Cơ chế Self Attension
 Self-attention trong transformer là
thành phần quan trọng nhất, cho
phép từng token trong câu tương tác
với nhau để thu thập ngữ cảnh và
cập nhật vector biểu diễn.
 Cơ chế này sử dụng ba vector biểu
diễn cho mỗi từ: Query (hỏi), Key
(trả lời), và Value (trả về thông tin).
 Query được dùng để tìm kiếm
thông tin xung quanh.
 Key phản hồi yêu cầu của
Query và tính trọng số
attention,
 Cuối cùng Value sử dụng trọng
Sơ đồ giải thích cơ chế Self-Attention
số attention để tính ra attention
vector.
3.1.2 Cơ chế Self Attension
Biểu thức để tính attention vector
như sau:

𝐴𝑡𝑡𝑒𝑛𝑡𝑖𝑜𝑛 ( 𝑄 , 𝐾 ,𝑉 )=𝑠𝑜𝑓𝑡𝑚𝑎𝑥
( )
𝑄 𝐾𝑇
√ 𝑑𝐾
𝑉

Trong đó, d - số chiều của vecto Key với


mục đích tránh tràn luồng
3.1.3 Multi-Head Attention
 Để hiểu vai trò của một từ trong câu, mô
hình sử dụng multi-head attention.

 Mỗi "head" tập trung vào một khía cạnh


khác nhau của mối quan hệ giữa từ và các
thành phần trong câu.

𝑀𝑢𝑙𝑡𝑖𝐻𝑒𝑎𝑑 (𝑄 , 𝐾 , 𝑉 ) =𝐶𝑜𝑛𝑐𝑎𝑡 ( h𝑒𝑎 𝑑1 , … , h𝑒𝑎 𝑑 𝑛 ) 𝑊

h𝑒𝑎 𝑑𝑖 = 𝐴𝑡𝑡𝑒𝑛𝑡𝑖𝑜𝑛( 𝑄𝑖 , 𝐾 𝑖 ,𝑉 𝑖 )
Multi- Head Attention

Kết quả từ mỗi head được kết hợp lại và nhân với ma trận W để đảm bảo đầu ra có cùng
kích thước với đầu vào.
3.2 Kiến trúc BERT

BERT là mô hình biểu diễn từ theo 2 chiều


ứng dung kĩ thuật Transformer.

BERT được huấn luyện đồng thời 2 nhiệm


vụ:
 Masked LM (để dự đoán từ thiếu trong
câu)
 Next Sentence Prediction (NSP – dự
đoán câu tiếp theo câu hiện tại).

Hai nhiệm vụ này được huấn luyện đồng


BERT mà các mô hình nhúng trước đây chưa từng có đó là kết quả
thời và loss tổng sẽ là kết hợp loss của 2 huấn luyện có thể tinh chỉnh được.  thêm vào kiến trúc mô hình
nhiệm vụ và mô hình sẽ cố gắng minimize một tầng đầu ra để tùy biến theo nhiệm vụ huấn luyện.
loss tổng này
3.3. Mô hình PhoBERT

Lớp Mô tả
Input (input_ids) Lớp đầu vào cho ID của token. Input: [256]

Input (attention_mask) Lớp đầu vào cho attention mask. Input: [256]

PhoBERT Model PhoBERT nhận input_ids và attention_mask.

Input: [256] (cho cả input_ids và attention_mask),


Output: [768] (pooled output)

Dense (Output) Tầng phân loại. Input: [768], Output: [num_classes]


0
4 Kết luận
&
nhận xét
Confusion Matrix tập test
Kết quả của các mô
hình
Precision Recall F1-score
Precision Recall F1-score
Neutral 0.82 0.86 0.84
Positive 0.81 0.80 0.81
train 0.99 0.99 0.99
Negative 0.76 0.57 0.65
test 0.81 0.82 0.82

Nhận xét:
 Mô hình đang bị overfitting.
 Độ phủ của class Negative chỉ có 0.57  Có thể thấy do phân bố các class không đồng đều
 Mô hình thường bị dự đoán sai giữa các trạng thái positive và neutral, giữa neutral và negative.
 Mô hình đang có xu hướng dự đoán là trạng thái là Neutral
Thank
you for
listening!

You might also like