348 lines
16 KiB
TeX
348 lines
16 KiB
TeX
% ============================================================
|
||
% PLACEMENT: near the START of Ch. 2, before KDE and AUC/lit
|
||
% review sections. This is the reader's first encounter with
|
||
% the problem setting and the TPR@FPR objective. The arc
|
||
% should be: (1) standard accuracy under imbalance fails;
|
||
% (2) class-weighting is the usual fix but gives no direct
|
||
% operating-point control; (3) define TPR, FPR, ROC formally;
|
||
% (4) state the target: maximise TPR at a fixed FPR budget α.
|
||
% ============================================================
|
||
\section{Imbalanced Classification and The TPR/FPR Objective}
|
||
\label{sec:imbalanced-tpr-fpr}
|
||
|
||
% IMPROVEMENT SUGGESTIONS (carried over from original draft):
|
||
% - Narrative arc is currently backwards. Drive the section
|
||
% with: accuracy is gameable under imbalance -> class
|
||
% weighting is the standard fix -> it gives no direct
|
||
% control over the operating point -> therefore we need
|
||
% TPR@FPR directly.
|
||
% - The inseparability tangent (cascade-classifier example)
|
||
% dilutes the argument; trim to one sentence or cut.
|
||
% - $\mathcal{D}_0$ and $\mathcal{D}_1$ must be defined
|
||
% before first use.
|
||
% - Land the section on a concrete, formal statement of the
|
||
% TPR@FPR objective with proper notation.
|
||
|
||
When fitting a classifier, it is most common to try and maximize the probability
|
||
of success. That is, given some dataset
|
||
$\mathcal{D} = \{(\mathbf{x}_i, y_i)\}_{i=1}^{n}$
|
||
with inputs $\mathbf{x}_i \in \mathcal{X}$ and binary labels $y_i \in \{0, 1\}$, we learn a scoring function $f_\theta : \mathcal{X} \to \mathbb{R}$ and apply a threshold $\tau$ to produce predictions $\hat{y} = \mathbf{1}[f_\theta(\mathbf{x}) > \tau]$. The standard objective is to minimize the probability of classification error:
|
||
|
||
$$\mathcal{L}(\theta) = \frac{1}{n} \sum_{i=1}^{n} \mathbf{1}[\hat{y}_i \neq y_i] = P(\hat{y} \neq y)$$
|
||
|
||
which is equivalent to maximizing classification accuracy $P(\hat{y} = y)$.
|
||
|
||
For most applications, this optimization is warranted. However, there are many real-world settings in which
|
||
this type of fitting is ill-suited.
|
||
|
||
One such application is in the case of inseparable classes. In many cases, no meaningful
|
||
separation boundary can be found between $\mathcal{D}_0$ and $\mathcal{D}_1$. In many cases,
|
||
especially in tabular datasets, there can be two data elements $i,j$ for which $\mathbf{x}_i = \mathbf{x}_j$,
|
||
however, $y_i \neq y_j$. Any deterministic classifier will have to decide whether to classify
|
||
inseparable points as one class or the other, but it remains hard to control the behavior of
|
||
a classifier while it is fitting to suggest one outcome or the other.
|
||
|
||
The issue of inseparability becomes more apparent in certain applications where runtime is a key
|
||
and limiting factor. In many classification pipelines, a ``quick and dirty'' classifier may
|
||
filter out many candidates before an ``in depth'' classifier gives the final answer. This may be done
|
||
in events where running the full in-depth classification on all data points is not a cost-effective or time-efficient solution.
|
||
The ``quick and dirty'' classifier can be either low in parameters, making it run quickly. It may also only
|
||
make a quick decision based on part of the data point. For example, in the case of a classifier looking to flag
|
||
images of the ocean, a ``quick and dirty'' classifier may look at a very-low resolution version of the image and simply check if it is relatively ``blue''. It filters out many certain false candidates this way, then passes on the remainder to an in-depth, higher accuracy classifier. Solutions like this allow to run at near-optimal performance with lower compute resources in limited-time applications. These situations are common in large-volume image applications on the internet, as well as in astronomy/microscopy.
|
||
|
||
Another such application is a case of highly imbalanced data. Even with separability, it is very
|
||
easy to a classifier to simply ``ignore'' the minority class. This may very likely be a local minimum
|
||
while fitting, which may be inescapable. As was once said, ``a classifier that always returns 0 is
|
||
well fitted for flagging pictures of Michael Jordan bathing in green M\&Ms''. Combined with inseparability, we see that in extreme cases, classifiers may choose to ignore, or otherwise penalize, the minority class.
|
||
|
||
For every trained classifier, the output per model is a score (TODO rewrite and formalize).
|
||
|
||
TODO finish this section
|
||
|
||
\begin{itemize}
|
||
\item What usually happens
|
||
\begin{itemize}
|
||
\item Fitting
|
||
\item Graphing ROC and picking threshold based on tradeoff
|
||
\end{itemize}
|
||
\item Usually we compensate for poor performance with
|
||
\begin{itemize}
|
||
\item Weighting between classes
|
||
\item Possible other methods
|
||
\end{itemize}
|
||
\item Problem with this method is lack of control.
|
||
\end{itemize}
|
||
|
||
|
||
% Motivate why standard loss functions (cross-entropy, MSE) break down under class
|
||
% imbalance: they optimize average accuracy, which a model can game by predicting
|
||
% the majority class. Introduce concrete examples (e.g. medical diagnosis, fraud
|
||
% detection) where the cost of a false negative vastly outweighs a false positive,
|
||
% and where the practitioner needs to operate at a specific FPR budget. Argue that
|
||
% what is actually needed is direct control over TPR at a fixed FPR, not a
|
||
% surrogate that only loosely correlates with it.
|
||
|
||
|
||
% ============================================================
|
||
% PLACEMENT: Section 2.5, AFTER the KDE background section
|
||
% (sec:kde-background) and BEFORE the Neyman-Pearson bridge
|
||
% (sec:neyman-pearson, which becomes 2.6).
|
||
%
|
||
% Purpose: establish that existing pointwise losses are
|
||
% fragile under label corruption, motivating both the
|
||
% practical robustness of ROLL and the poisoning experiment
|
||
% results in Ch. 4.
|
||
%
|
||
% Narrative arc:
|
||
% 1. Define label noise types: symmetric (uniform flip),
|
||
% asymmetric / class-conditional (only certain class
|
||
% transitions occur), instance-dependent. Our poisoning
|
||
% experiment is asymmetric: P(\tilde{y}=0 \mid y=1)>0,
|
||
% P(\tilde{y}=1 \mid y=0)=0.
|
||
% 2. Why BCE is fragile: the symmetry condition (Ghosh
|
||
% et al., AAAI 2017) — a loss \ell is noise-tolerant
|
||
% iff \sum_k \ell(f(x),k) = C (constant). CE fails
|
||
% this; MAE satisfies it but converges slowly. Cite
|
||
% Feng et al. (IJCAI 2020) for "Can CE be robust?"
|
||
% (only under very strict conditions). Implication:
|
||
% mislabeled samples produce large unmitigated
|
||
% gradients; DNNs memorize noise late in training
|
||
% (memorization effect).
|
||
% 3. Family of existing fixes — keep brief; these are what
|
||
% ROLL sidesteps structurally:
|
||
% (a) Robust loss functions: MAE (noise-tolerant,
|
||
% slow), GCE (Zhang & Sabuncu, NeurIPS 2018;
|
||
% interpolates MAE↔CE via q), asymmetric losses
|
||
% (Zhou et al., ICML 2021), symmetrization
|
||
% (arXiv:2605.20347).
|
||
% (b) Label correction via noise transition matrix
|
||
% (Patrini et al., CVPR 2017): estimate
|
||
% T[i,j]=P(\tilde{y}=j|y=i), correct logits by
|
||
% T^{-1}. Hard for asymmetric noise without a
|
||
% clean reference set.
|
||
% (c) Sample selection / co-teaching (Han et al.,
|
||
% NeurIPS 2018): two networks select small-loss
|
||
% examples for each other, exploiting the
|
||
% memorization effect. Requires dual-model
|
||
% training.
|
||
% 4. Ranking / distributional objectives and noise
|
||
% robustness: pairwise losses depend on score
|
||
% differences, not absolute labels — one mislabeled
|
||
% sample affects O(n) pairs, each with a small gradient
|
||
% weight. Wang et al. (arXiv:2305.14258) formally show
|
||
% noise robustness of partial-AUC objectives.
|
||
% 5. Bridge (observation, not oversell): ROLL's KDE-based
|
||
% distributional objective shares this structural
|
||
% property. Fake negatives (copies of positives with
|
||
% flipped labels) shift the estimated negative density
|
||
% but do not erase distributional separation when true
|
||
% positive scores remain clustered. ROLL achieves this
|
||
% without any explicit noise-handling mechanism; the
|
||
% poisoning experiment in Ch. 4 provides empirical
|
||
% evidence.
|
||
% ============================================================
|
||
\section{Learning with Noisy Labels}
|
||
\label{sec:noisy-labels}
|
||
|
||
% SUBSECTION STRUCTURE:
|
||
%
|
||
% \subsection{Types of Label Noise}
|
||
% - Symmetric / uniform: each label flipped with
|
||
% probability \varepsilon across all classes.
|
||
% - Asymmetric / class-conditional: only certain class
|
||
% transitions occur. Our poisoning experiment is of
|
||
% this type: P(\tilde{y}=0 \mid y=1)>0,
|
||
% P(\tilde{y}=1 \mid y=0)=0.
|
||
% - Instance-dependent: flip probability varies per
|
||
% sample (hardest to handle; mention only briefly).
|
||
% - Note: even moderate noise rates significantly hurt
|
||
% pointwise losses in the imbalanced setting, because
|
||
% mislabeled positives are rare to begin with.
|
||
%
|
||
% \subsection{Why Cross-Entropy Is Fragile Under Label Noise}
|
||
% - Introduce symmetry condition \cite{ghosh2017robust}:
|
||
% a loss is noise-tolerant iff
|
||
% \sum_k \ell(f(\mathbf{x}), k) = C (constant).
|
||
% - CE does NOT satisfy this; MAE does (but is slow).
|
||
% - Memorization effect: DNNs learn clean patterns early,
|
||
% then memorize noisy labels late in training.
|
||
% - Cite: \cite{ghosh2017robust}, \cite{feng2020can}.
|
||
%
|
||
% \subsection{Approaches to Robust Learning}
|
||
% - Paragraph 1 — Robust loss functions:
|
||
% MAE \cite{ghosh2017robust},
|
||
% GCE \cite{zhang2018generalized} (L_q interpolation),
|
||
% asymmetric losses \cite{zhou2021asymmetric}.
|
||
% Key tradeoff: noise-tolerance vs.\ convergence speed.
|
||
% - Paragraph 2 — Transition matrix correction
|
||
% \cite{patrini2017making}: forward correction
|
||
% multiplies logits by T^{-1}. Canonical method but
|
||
% requires estimating T, which is hard for asymmetric
|
||
% noise without a clean anchor set.
|
||
% - Paragraph 3 — Sample selection / co-teaching
|
||
% \cite{han2018coteaching}: two nets select small-loss
|
||
% samples for each other each epoch. Bypasses T
|
||
% estimation but requires dual-model training.
|
||
%
|
||
% \subsection{Ranking Objectives and Noise Robustness}
|
||
% - Pairwise ranking losses are structurally more
|
||
% noise-robust: a single mislabeled sample affects O(n)
|
||
% pairs, each with small gradient weight, vs.\ one large
|
||
% pointwise gradient in BCE.
|
||
% - Cite Wang et al.\ \cite{wang2023weakly} for formal
|
||
% treatment in the partial-AUC setting.
|
||
% - Close with bridge sentence: ROLL's distributional
|
||
% threshold objective operates in the same structural
|
||
% regime — not pairwise, but also not pointwise —
|
||
% conferring noise robustness without explicit correction.
|
||
% Empirical evidence deferred to the Experiments chapter.
|
||
|
||
TODO write this section.
|
||
|
||
% ============================================================
|
||
% PLACEMENT: Section 2.6 (was 2.5), near the END of Ch. 2,
|
||
% after KDE and Noisy Labels sections, just before the
|
||
% chapter summary. This section bridges from prior work to
|
||
% the method chapter by framing ROLL as a learnable,
|
||
% gradient-based NP test.
|
||
% NOTE: the label sec:neyman-pearson is unchanged; existing
|
||
% \Cref references in Ch. 3 (sec:problem-formulation) still
|
||
% work without modification.
|
||
% ============================================================
|
||
\section{Connection to Neyman-Pearson}
|
||
\label{sec:neyman-pearson}
|
||
|
||
% Introduce the Neyman-Pearson lemma: among all tests at a
|
||
% given false-positive rate, the likelihood-ratio test
|
||
% maximizes TPR. Frame ROLL as a learnable, gradient-based
|
||
% realization of this principle — rather than assuming known
|
||
% class-conditional distributions (as classical NP does),
|
||
% ROLL estimates them from model scores during training.
|
||
% Briefly note that existing NP-inspired methods do not
|
||
% support deep learning / gradient-based optimization; this
|
||
% is the gap ROLL fills.
|
||
|
||
TODO write this section.
|
||
|
||
|
||
%------------------------------------------------
|
||
|
||
\section{topic a}
|
||
\label{sec:related_work:jigsaw_puzzles}
|
||
\addcontentsline{tocheb}{section}{\protect\numberline{\secnumforhebrewtoc}{נושא א}}
|
||
|
||
To be continued.
|
||
|
||
|
||
\section{topic b}
|
||
\label{sec:related_work:relaxation_labeling}
|
||
\addcontentsline{tocheb}{section}{\protect\numberline{\secnumforhebrewtoc}{נושא ב}}
|
||
|
||
To be continued.
|
||
|
||
\subsection{sub topic b.1}
|
||
\label{subsec:formulation_as_rl:rationale:type_2}
|
||
\addcontentsline{tocheb}{subsection}{\protect\numberline{\subsecnumforhebrewtoc}{תת נושא ב1}}
|
||
|
||
To be continued.
|
||
|
||
\begin{figure}[H]
|
||
\centering
|
||
|
||
\begin{subfigure}[b]{0.3\textwidth}
|
||
\begin{tikzpicture}
|
||
\node[anchor=south west, inner sep=0] at (0,0) {\includegraphics[width=\textwidth]{content/related_work/images/2x2_puzzle_grid.png}};
|
||
\draw[step=0.5\textwidth] (0,0) grid (\textwidth,\textwidth);
|
||
\node[font=\large] at (0.25\textwidth,0.75\textwidth) {(1,1)};
|
||
\node[font=\large] at (0.75\textwidth,0.75\textwidth) {(1,2)};
|
||
\node[font=\large] at (0.25\textwidth,0.25\textwidth) {(2,1)};
|
||
\node[font=\large] at (0.75\textwidth,0.25\textwidth) {(2,2)};
|
||
\end{tikzpicture}
|
||
\caption{}
|
||
\label{fig:type_1_goal_and_labeling:dimensions}
|
||
\end{subfigure}
|
||
\hfill
|
||
\begin{subfigure}[b]{0.3\textwidth}
|
||
\begin{tikzpicture}
|
||
\node[anchor=south west, inner sep=0] at (0,0) {\includegraphics[width=\textwidth]{content/related_work/images/2x2puzzle_type_1.png}};
|
||
\draw[step=0.5\textwidth] (0,0) grid (\textwidth,\textwidth);
|
||
\node[font=\large, color=red] at (0.25\textwidth,0.75\textwidth) {Piece 1};
|
||
\node[font=\large, color=red] at (0.75\textwidth,0.75\textwidth) {Piece 2};
|
||
\node[font=\large, color=red] at (0.25\textwidth,0.25\textwidth) {Piece 3};
|
||
\node[font=\large, color=red] at (0.75\textwidth,0.25\textwidth) {Piece 4};
|
||
\end{tikzpicture}
|
||
\caption{}
|
||
\label{fig:type_1_goal_and_labeling:pieces}
|
||
\end{subfigure}
|
||
\hfill
|
||
\begin{subfigure}[b]{0.3\textwidth}
|
||
\begin{tikzpicture}
|
||
\node[anchor=south west, inner sep=0] at (0,0) {\includegraphics[width=\textwidth]{content/related_work/images/2x2puzzle_solution.png}};
|
||
\draw[step=0.5\textwidth] (0,0) grid (\textwidth,\textwidth);
|
||
|
||
\node[font=\large, color=red] at (0.25\textwidth,0.75\textwidth) {Piece 3};
|
||
|
||
\node[font=\large, color=red] at (0.75\textwidth,0.75\textwidth) {Piece 2};
|
||
|
||
\node[font=\large, color=red] at (0.25\textwidth,0.25\textwidth) {Piece 4};
|
||
|
||
\node[font=\large, color=red] at (0.75\textwidth,0.25\textwidth) {Piece 1};
|
||
\end{tikzpicture}
|
||
\caption{}
|
||
\label{fig:type_1_goal_and_labeling:solution}
|
||
\end{subfigure}
|
||
\vfill
|
||
\begin{subfigure}[b]{1\textwidth}
|
||
\centering
|
||
|
||
\begin{tikzpicture}
|
||
\def\scaletitles{0.88}
|
||
\def\minimumEntrySize{0.95cm}
|
||
|
||
\matrix[matrix of nodes,
|
||
nodes={draw, align=center, minimum size=\minimumEntrySize},
|
||
row 1/.style={nodes={draw=none, gray, font=\footnotesize, scale=\scaletitles}},
|
||
column 1/.style={nodes={draw=none, gray, font=\footnotesize,
|
||
scale=\scaletitles}}]
|
||
{
|
||
\node{}; &
|
||
\node{(1,1)}; &
|
||
\node{(1,2)}; &
|
||
\node{(2,1)}; &
|
||
\node{(2,2)};\\
|
||
%----------%
|
||
\node{Piece 1}; &
|
||
\node{0}; & \node{0}; & \node{0}; & \node[text=blue]{1};\\
|
||
%----------%
|
||
\node{Piece 2}; &
|
||
\node{0}; & \node[text=blue]{1}; & \node{0}; & \node{0};\\
|
||
%----------%
|
||
\node{Piece 3}; &
|
||
\node[text=blue]{1}; & \node{0}; & \node{0}; & \node{0};\\
|
||
%----------%
|
||
\node{Piece 4}; &
|
||
\node{0}; & \node{0}; & \node[text=blue]{1}; & \node{0};\\
|
||
};
|
||
\end{tikzpicture}
|
||
\caption{}
|
||
\label{fig:type_1_goal_and_labeling:labeling}
|
||
\end{subfigure}
|
||
\caption[fig A - Example for fig]{Some example}
|
||
\label{fig:type_1_goal_and_labeling}
|
||
\end{figure}
|
||
|
||
|
||
\begin{table}[H]
|
||
\centering
|
||
\begin{tabular}{ |c|c|c|c|c|c| }
|
||
\hline
|
||
\multicolumn{1}{|c|}{Puzzle Type} & Direct & Neighbor & Perfect & Occupied & Feasible \\
|
||
\hline
|
||
Type 1 & {0\%} & {0.1\%} & 0 & {1\%} & 0 \\
|
||
\hline
|
||
Type 2 & {0.001\%} & {0.1\%} & 0 & {1.2\%} & 0 \\
|
||
\hline
|
||
\end{tabular}
|
||
\caption[Table A - Example for table]{Some example}
|
||
\label{table:plain_rl_results}
|
||
\end{table} |