% ============================================================ % 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}