Skip to content

Commit

Permalink
Handle edge cases.
Browse files Browse the repository at this point in the history
- Make clear the difference to CleanLab.
  • Loading branch information
vochicong committed Jul 28, 2022
1 parent e8f77ae commit 104aabc
Show file tree
Hide file tree
Showing 6 changed files with 170 additions and 125 deletions.
Binary file modified docs/_main.pdf
Binary file not shown.
4 changes: 2 additions & 2 deletions docs/lapros.jl.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/search_index.json

Large diffs are not rendered by default.

53 changes: 32 additions & 21 deletions docs/đánh-giá-độ-khả-nghi.html
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,9 @@ <h2>Chỉ tiêu tự tin<a href="đánh-giá-độ-khả-nghi.html#chỉ-tiêu-t
\end{equation}\]</span></p>
<p>Vì phép tính trung bình được thực hiện trên từng tập
<span class="math inline">\({\boldsymbol{{X}}}_{\tilde{y}=i}\)</span>
nên có thể <span class="math inline">\(\sum\limits_{i\in M}{{\boldsymbol{{t}}}_i} \neq 1.\)</span></p>
nên có thể <span class="math inline">\(\sum\limits_{i\in M}{{\boldsymbol{{t}}}_i} \neq 1.\)</span>
Ta đề xuất lấy trung bình trên toàn bộ tập <span class="math inline">\({\boldsymbol{{X}}}\)</span>
nếu <span class="math inline">\({\boldsymbol{{X}}}_{\tilde{y}=i}\equiv\emptyset.\)</span></p>
<p>Với mỗi lớp <span class="math inline">\(i\in M\)</span> ta chọn chỉ tiêu tự tin <span class="math inline">\({\boldsymbol{{t}}}_i\in(0,1)\)</span>
bằng độ tự tin trung bình <a href="đánh-giá-độ-khả-nghi.html#eq:avgconfidence">(2)</a>.
Đối với từng mẫu <span class="math inline">\({\boldsymbol{{x}}}\)</span> và từng nhãn <span class="math inline">\(i\)</span>, giá trị xác suất dự đoán
Expand All @@ -155,27 +157,34 @@ <h2>Chỉ tiêu tự tin<a href="đánh-giá-độ-khả-nghi.html#chỉ-tiêu-t
\end{equation}\]</span></p>
<p>Với giả định xác suất <a href="đánh-giá-độ-khả-nghi.html#eq:probasum1">(1)</a>
và chỉ tiêu tự tin <a href="đánh-giá-độ-khả-nghi.html#eq:avgconfidence">(2)</a>,
ta kỳ vọng <span class="math inline">\(L_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})\neq\emptyset.\)</span>
Từ đó chọn một nhãn có xác suất dự đoán lớn nhất:
<span class="math display" id="eq:lmtx">\[\begin{equation}
với kỳ vọng <span class="math inline">\(L_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})\neq\emptyset,\)</span>
CleanLab (Curtis et al.’s 2021)
chọn một nhãn có xác suất dự đoán lớn nhất:
<span class="math display" id="eq:lmtxcleanlab">\[\begin{equation}
\hat{l}_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})≔
\begin{cases}
\mathop{\rm arg max} \limits_{i\in L_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})} p_{\tilde{y}={i}}({{\boldsymbol{{x}}}}), &amp; \text{không xét chỉ tiêu}\\
\mathop{\rm arg max} \limits_{i\in L_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})} \{p_{\tilde{y}={i}}({{\boldsymbol{{x}}}}) - {\boldsymbol{{t}}}_i\}, &amp; \text{có bù trừ chỉ tiêu}
\end{cases}
\mathop{\rm arg max}\limits_{i\in L_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})}p_{\tilde{y}={i}}({{\boldsymbol{{x}}}})
\tag{4}
\end{equation}\]</span></p>
<p>để làm nhãn “đáng tin nhất” cho mẫu <span class="math inline">\({\boldsymbol{{x}}}.\)</span></p>
<p>Ta đề xuất
bù trừ chỉ tiêu vào công thức trên để cân đối với độ tự tin của mô hình,
đồng thời
nới lỏng ràng buộc <span class="math inline">\(i\in L_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})\)</span> để tránh trường hợp không chọn được nhãn đáng tin,
<span class="math display" id="eq:lmtx">\[\begin{equation}
\hat{l}_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})≔
\mathop{\rm arg max}\limits_{i\in M}\{p_{\tilde{y}={i}}({{\boldsymbol{{x}}}}) - {\boldsymbol{{t}}}_i\}.
\tag{5}
\end{equation}\]</span></p>
</div>
<div id="xếp-hạng-khả-nghi" class="section level2 hasAnchor">
<h2>Xếp hạng khả nghi<a href="đánh-giá-độ-khả-nghi.html#xếp-hạng-khả-nghi" class="anchor-section" aria-label="Anchor link to header"></a></h2>
<p>Gọi <span class="math inline">\(\dot{{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j}\)</span> là tập (bất khả tri) các mẫu có nhãn quan sát là <span class="math inline">\(i\)</span> và nhãn thật là <span class="math inline">\(j\)</span>, ta ước lượng nó bằng cách dùng các nhãn đáng tin nhất <span class="math inline">\(\hat{l}_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})\)</span> tại <a href="đánh-giá-độ-khả-nghi.html#eq:lmtx">(4)</a>:</p>
<p>Gọi <span class="math inline">\(\dot{{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j}\)</span> là tập (bất khả tri) các mẫu có nhãn quan sát là <span class="math inline">\(i\)</span> và nhãn thật là <span class="math inline">\(j\)</span>, ta ước lượng nó bằng cách dùng các nhãn đáng tin nhất <span class="math inline">\(\hat{l}_{{{\boldsymbol{{\phi}}}},{\boldsymbol{{t}}}}({\boldsymbol{{x}}})\)</span> tại <a href="đánh-giá-độ-khả-nghi.html#eq:lmtx">(5)</a>:</p>
<p><span class="math display" id="eq:eq3b">\[\begin{equation}
{{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j} ≔
\left\{{\boldsymbol{{x}}}\in{\boldsymbol{{X}}}_{\tilde{y}=i}:
\hat{l}_{{{\boldsymbol{{\phi}}}}({\boldsymbol{{x}}}),{\boldsymbol{{t}}}} \equiv j
\right\}
\tag{5}
\tag{6}
\end{equation}\]</span></p>
<p>Đơn thuần (mà lại hiệu quả) nhất, ta nghi ngờ
các mẫu <span class="math inline">\(\left\{{\boldsymbol{{x}}}\in{{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j}: i\neq j\right\}\)</span>
Expand All @@ -187,45 +196,47 @@ <h2>Xếp hạng khả nghi<a href="đánh-giá-độ-khả-nghi.html#xếp-hạ
<span class="math display" id="eq:errnoise">\[\begin{equation}
{e}({{\boldsymbol{{x}}}}) ≔\max_{j\neq i}{p_{\tilde{y}={j}}({{\boldsymbol{{x}}}})}
-p_{\tilde{y}={i}}({{\boldsymbol{{x}}}})\quad \forall {\boldsymbol{{x}}}\in{\boldsymbol{{X}}}_{\tilde{y}=i}
\tag{6}
\tag{7}
\end{equation}\]</span>
theo cách làm trong CleanLab của Curtis et al.’s (2021), và đảo dấu so với Wei et al.’s (2018).
Ta cũng có thể bù trừ chỉ tiêu tự tin vào để tính độ khả nghi:
theo cách làm trong CleanLab của Curtis et al.’s (2021), và đảo dấu so với Wei et al.’s (2018).</p>
<p>Chúng tôi đề xuất bù trừ chỉ tiêu tự tin vào để tính độ khả nghi:
<span class="math display" id="eq:eq4">\[\begin{equation}
e_{\boldsymbol{{t}}}({\boldsymbol{{x}}}) ≔
\max_{j\neq i}{\{p_{\tilde{y}={j}}({{\boldsymbol{{x}}}})-{\boldsymbol{{t}}}_j\}}
-\{p_{\tilde{y}={i}}({{\boldsymbol{{x}}}}) - {\boldsymbol{{t}}}_i\}
\quad \forall {\boldsymbol{{x}}}\in{\boldsymbol{{X}}}_{\tilde{y}=i}.
\tag{7}
\end{equation}\]</span></p>
\quad \forall {\boldsymbol{{x}}}\in{\boldsymbol{{X}}}_{\tilde{y}=i};
\tag{8}
\end{equation}\]</span>
bảo đảm
<span class="math inline">\(e_{\boldsymbol{{t}}}({\boldsymbol{{x}}})\in[0,1].\)</span></p>
</div>
<div id="ước-lượng-ma-trận-nhiễu" class="section level2 hasAnchor">
<h2>Ước lượng ma trận nhiễu<a href="đánh-giá-độ-khả-nghi.html#ước-lượng-ma-trận-nhiễu" class="anchor-section" aria-label="Anchor link to header"></a></h2>
<p>Ma trận đếm cặp nhãn <span class="math inline">\({{\boldsymbol{{C}}}}_{\tilde{y},\dot{y}}\)</span> kích thước <span class="math inline">\(m\times m\)</span>
lưu số phần tử của các tập <span class="math inline">\({{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j}\)</span>,</p>
<p><span class="math display" id="eq:eq5">\[\begin{equation}
{{\boldsymbol{{C}}}}_{\tilde{y}=i,\dot{y}=j} ≔|{{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j} |
\tag{8}
\tag{9}
\end{equation}\]</span></p>
<p>ví dụ <span class="math inline">\({{\boldsymbol{{C}}}}_{\tilde{y}=3,\dot{y}=1} = 10\)</span> có nghĩa là, đếm được
10 mẫu được gán nhãn <span class="math inline">\(3\)</span> nhưng “thật ra” nên có nhãn <span class="math inline">\(1.\)</span></p>
<p><a href="đánh-giá-độ-khả-nghi.html#eq:eq3b">(5)</a> ước lượng
<p><a href="đánh-giá-độ-khả-nghi.html#eq:eq3b">(6)</a> ước lượng
<span class="math inline">\({{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j}\approx\dot{{\boldsymbol{{X}}}}_{\tilde{y}=i,\dot{y}=j}\)</span> cho nên
<span class="math inline">\(\sum\limits_{j\in M}{{\boldsymbol{{C}}}}_{\tilde{y}=i,\dot{y}=j} \approx {\boldsymbol{{C}}}_{\tilde{y}=i}.\)</span></p>
<p>Hiệu chỉnh ma trận đếm cặp nhãn qua hai bước.
Bước đầu, hiệu chỉnh từng dòng theo số mẫu của từng lớp đã quan sát <span class="math inline">\(i\in M,\)</span></p>
<p><span class="math display" id="eq:eq6a">\[\begin{equation}
\check{Q}_{\tilde{y}=i,\dot{y}=j} = \frac{{{\boldsymbol{{C}}}}_{\tilde{y}=i,\dot{y}=j}}{\sum\limits_{j\in M}{{\boldsymbol{{C}}}}_{\tilde{y}=i,\dot{y}=j}}
{{\boldsymbol{{C}}}_{\tilde{y}=i}}.
\tag{9}
\tag{10}
\end{equation}\]</span></p>
<p>Cuối cùng, ta chia đều toàn bộ để tổng ma trận trở thành <span class="math inline">\(1.\)</span></p>
<p><span class="math display" id="eq:eq6b">\[\begin{equation}
{\boldsymbol{{Q}}}_{\tilde{y}=i,\dot{y}=j}=\frac{\check{Q}_{\tilde{y}=i,\dot{y}=j}}{\sum\limits_{i,j\in M}\check{Q}_{\tilde{y}=i,\dot{y}=j}}.
\tag{10}
\tag{11}
\end{equation}\]</span></p>
<p>Curtis et al.’s (2021) trình bày một số
phương pháp dùng ma trận nhiễu <a href="đánh-giá-độ-khả-nghi.html#eq:eq6b">(10)</a>
phương pháp dùng ma trận nhiễu <a href="đánh-giá-độ-khả-nghi.html#eq:eq6b">(11)</a>
để chọn lọc và xếp hạng nhãn khả nghi có lỗi.</p>
</div>
</div>
Expand Down
30 changes: 21 additions & 9 deletions index.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,8 @@ $\vect{C}_{\yo=i} \defined |\X_{\yo=i}|.$
Vì phép tính trung bình được thực hiện trên từng tập
$\X_{\yo=i}$
nên có thể $\sum\limits_{i\in M}{\thres_i} \neq 1.$
Ta đề xuất lấy trung bình trên toàn bộ tập $\X$
nếu $\X_{\yo=i}\equiv\emptyset.$

Với mỗi lớp $i\in M$ ta chọn chỉ tiêu tự tin $\thres_i\in(0,1)$
bằng độ tự tin trung bình \@ref(eq:avgconfidence).
Expand All @@ -150,19 +152,26 @@ Tập hợp nhãn khả dĩ đối với mẫu $\x$ là

Với giả định xác suất \@ref(eq:probasum1)
và chỉ tiêu tự tin \@ref(eq:avgconfidence),
ta kỳ vọng $\Lmtx\neq\emptyset.$
Từ đó chọn một nhãn có xác suất dự đoán lớn nhất:
với kỳ vọng $\Lmtx\neq\emptyset,$
CleanLab (Curtis et al.’s 2021)
chọn một nhãn có xác suất dự đoán lớn nhất:
\begin{equation}
\lmtx \defined
\begin{cases}
\mathop{\rm arg max} \limits_{i\in \Lmtx} \pyx{\x}, & \text{không xét chỉ tiêu}\\
\mathop{\rm arg max} \limits_{i\in \Lmtx} \{\pyx{\x} - \thres_i\}, & \text{có bù trừ chỉ tiêu}
\end{cases}
(\#eq:lmtx)
\mathop{\rm arg max}\limits_{i\in \Lmtx}\pyx{\x}
(\#eq:lmtxcleanlab)
\end{equation}

để làm nhãn "đáng tin nhất" cho mẫu $\x.$

Ta đề xuất
bù trừ chỉ tiêu vào công thức trên để cân đối với độ tự tin của mô hình,
đồng thời
nới lỏng ràng buộc $i\in \Lmtx$ để tránh trường hợp không chọn được nhãn đáng tin,
\begin{equation}
\lmtx \defined
\mathop{\rm arg max}\limits_{i\in M}\{\pyx{\x} - \thres_i\}.
(\#eq:lmtx)
\end{equation}

## Xếp hạng khả nghi

Expand All @@ -189,14 +198,17 @@ dựa theo xác suất do mô hình $\model$ dự đoán:
(\#eq:errnoise)
\end{equation}
theo cách làm trong CleanLab của Curtis et al.’s (2021), và đảo dấu so với Wei et al.’s (2018).
Ta cũng có thể bù trừ chỉ tiêu tự tin vào để tính độ khả nghi:

Chúng tôi đề xuất bù trừ chỉ tiêu tự tin vào để tính độ khả nghi:
\begin{equation}
e_\thres(\x) \defined
\max_{j\neq i}{\{\pyix{j}{\x}-\thres_j\}}
-\{\pyx{\x} - \thres_i\}
\quad \forall \x\in\X_{\yo=i}.
\quad \forall \x\in\X_{\yo=i};
(\#eq:eq4)
\end{equation}
bảo đảm
$e_\thres(\x)\in[0,1].$

## Ước lượng ma trận nhiễu

Expand Down
Loading

0 comments on commit 104aabc

Please sign in to comment.