This commit is contained in:
Alexander Munch-Hansen 2019-11-11 01:11:35 +01:00
parent a331729e56
commit 2cd8744fda
10 changed files with 172 additions and 4 deletions

BIN
graphics/books_dt_lr.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

BIN
graphics/dvds_dt_lr.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

BIN
graphics/picker.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

BIN
graphics/picker_ani_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

BIN
graphics/picker_final.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

BIN
graphics/picker_first.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

BIN
graphics/picker_second.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
graphics/picker_third.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

BIN
graphics/sample_points.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 KiB

176
pres.tex
View File

@ -10,7 +10,7 @@
\usepackage{bbm}
\usepackage{setspace}
\usepackage[T1]{fontenc}
\usepackage[sfdefault,scaled=.85]{FiraSans}
@ -161,13 +161,63 @@
\subsection{Explaining Predictions}
\begin{frame}
\begin{frame}[shrink=20]
\frametitle{The Fidelity-Interpretability Trade-off}
We want a simple explanation, still capable of displaying fidelity
\begin{itemize}
\item Let an explanation be defined as a model $g \in \{0,1\}^{d^{\prime}} \in G$, where $G$ is a class of \emph{potentially interpretable} models
\begin{itemize}
\item Linear models, decision trees
\item $g$ is a vector showing presence or absence of \emph{interpretable components}
\end{itemize}
\item $\Omega(g)$ explains the \emph{complexity} of an explanation $g$
\begin{itemize}
\item Could be height of a decision tree or number of non-zero weights of a linear model
\end{itemize}
\item The model we try to explain is $f : \mathbb{R}^d \rightarrow \mathbb{R}$
\begin{itemize}
\item In classification, $f(x)$ is the probability or binary indicator that x belongs to a certain class
\end{itemize}
\item $\pi_x(z)$ is a proximity measure between instance $z$ and $x$ and defines the locality around $x$
\item $\mathcal{L}(f,g,\pi_x)$ defines how \emph{unfaithful} $g$ is in approximating $f$ in the locality around $\pi_x$.
\item Ensuring both \emph{interpretability} and \emph{local fidelity}, we minimize $\mathcal{L}$ while having $\Omega(g)$ be low as well
\end{itemize}
% So a more complex g will achieve a more faithful interpretation (a lower L), but will increase the value of Omega(g)
$$\xi(x) = \operatornamewithlimits{argmin}_{g \in G} \mathcal{L}(f,g,\pi_x) + \Omega(g)$$
\end{frame}
\begin{frame}
% Note: WTF is x' here? Should it not just be x?
% Note: g acts in d' while f acts in d, so when we say that we have z' in dimension d', it's the model g, we can recover the z in the original representation i.e. explained by f in dimension d.
\frametitle{Sampling for Local Exploration}
Goal: Minimizing $\mathcal{L}(f,g,\pi_x)$ without making assumptions on $f$
\begin{itemize}
\item For a sample $x$, we need to draw samples around $x$
\item Accomplished by drawing non-zero elements of $x$, resulting in perturbed samples $z^\prime$
\item Given $z^\prime \in \{0,1\}^{d^\prime}$, we compute un-pertubed $z \in R^d$, $f(z)$, so we have a label for $z^\prime$.
\end{itemize}
\center
\includegraphics[scale=0.15]{graphics/sample_points.png}
\end{frame}
% \subsubsection{Examples}
% \subsubsection{Examples}
\begin{frame}
\frametitle{More definitions}
\begin{itemize}
\item $G = $ Class of linear models: $g(z^\prime) = w_g \cdot z^\prime$
\item $L = $ The locally weighted square loss
\item $\pi_x(z) = \exp(-D(x,z)^2 / \sigma^2)$
\begin{itemize}
\item An exponential kernel function based on some distance function D (could be L2 distance for images)
\end{itemize}
\item Thus; $L(f, g, \pi_x) = \sum\limits_{z,z^\prime \in \mathcal{Z}} \pi_x(z) (f(z) - g(z^\prime))^2$
\end{itemize}
\end{frame}
\begin{frame}
% \frametitle{Sparse Linear Explanations}
% Talk through the algorithm, discussing the sampling and K-Lasso
\frametitle{Explaining an individual prediction}
\begin{algorithm}[H]
\setstretch{0.9}
@ -189,7 +239,7 @@
% K-Lasso is the procedure of learning the weights via least squares. Wtf are these weights???
\end{frame}
\begin{frame}
\frametitle{Text Classification}
\end{frame}
@ -198,6 +248,69 @@
\frametitle{Deep Networks for Images}
\end{frame}
\subsection{Explaining Models}
\begin{frame}
\frametitle{Explaining models}
Idea: We give a global understanding of the model by explaining a set of individual instances
\begin{itemize}
\item Still model agnositc (since the indiviudal explanations are)
\item Instances need to be selected in a clever way
\item Some definitions
\begin{itemize}
\item Time/patience of humans is explained by a budget \emph{B} which denotes number of explanations a human will sit through.
\item Given a set of instances \textbf{X}, we define the \emph{pick step} as the task of selecting \emph{B} instances for the user to inspect.
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{The pick step}
The task of selecting \emph{B} instances for the user to inspect
\begin{itemize}
\item Not dependent on the existence of explanations
\item So it should not assist users in selecting instances themselves
\item Looking at raw data is not enough to understand predicitions and get insights
\item Should take into account the explanations that accompany each prediction
\item Should pick a diverse, representative set of explanations to show the user, so non-redundant explanations that represent how the model behaves globally.
\end{itemize}
\end{frame}
% This is a matrix explaining instances and their features explained by a binary list s.t. an instance either has a feature or does not. The blue line explains the most inherent feature, which is important, as it is found in omst of the instances. The red lines indicate the two samples which are most important in explaining the model. Thus, explaining importance, is done by: I_j = sqrt(sum_i=1^n W_ij)
\begin{frame}
\frametitle{Picking instances}
\center
\includegraphics[scale=0.81]{graphics/picker_first.png}
\end{frame}
\begin{frame}
\frametitle{Picking instances}
\center
\includegraphics[scale=0.32]{graphics/picker_second.png}
\end{frame}
\begin{frame}
\frametitle{Picking instances}
\center
\includegraphics[scale=0.32]{graphics/picker_third.png}
\end{frame}
\begin{frame}
\frametitle{Picking instances}
\center
\includegraphics[scale=0.32]{graphics/picker_final.png}
\end{frame}
\begin{frame}
\frametitle{Definitions}
\begin{itemize}
\item $I_j = \sqrt{\sum_{i=1}^n W_{ij}}$
\item $c(V,W,I) = \sum\limits_{j=1}^{d^\prime} \mathbbm{1}_{[\exists i \in V : W_{ij} > 0]}\ I_j$
\item $Pick(W,I) = \operatornamewithlimits{argmax}\limits_{V,|V| \leq B} c(V,W,I)$
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Explanation of algorithm 2}
\begin{itemize}
\item Given explanations for set of instances $X$, $(|X| = n)$. Construct $n \times d^\prime$ \emph{explanation matrix} $W$
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Submodular Picks}
@ -224,8 +337,60 @@
\section{Experiments}
%\subsection{Simulated User Experiments}
%\subsubsection{Setup}
\begin{frame}
\frametitle{Experiments}
Interested in three questions:
\begin{itemize}
\item Are the explanations faithful to the model?
\item Can the explanations aid users in ascertaining trust in the predictions
\item Are the explanations useful for evaluating the model as a whole
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Setup}
\begin{itemize}
\item Use two datasets, \emph{books} and \emph{DVDs}, both of $2000$ instances.
\begin{itemize}
\item Task is to classify reviews as \emph{positive} or \emph{negative}
\end{itemize}
\item Decision Trees (\textbf{DT}), Logistic Regression (\textbf{LR}), Nearest Neighbours (\textbf{NN}), and SVMs with RBF kernel (\textbf{SVM}), all used BoW as features, are trained.
\begin{itemize}
% Note, random forest will make no sense without any explanation system, such as LIME
\item Also train random forest (\textbf{RF}) with $1000$ trees.
\end{itemize}
\item Each dataset used for training will consist of $1600$ instances and $400$ will be used for testing.
\item Explanations of \textbf{LIME} is compared with \textbf{parzen}
\begin{itemize}
\item \textbf{parzen} approximates black box classifier globally and explains individual predictions by taking the gradient of the prediction probability function.
\item Both are also compared to a greedy method where features are picked by removing most contributing ones until prediction change, as well as a random procedure.
% K explains the amount of words in the BoW model and the complexity of the model. Higher K => More complex but more faithful, lower k => Less complex, potentially less faithful
\item $K = 10$ for the experiments
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Faithfulness}
\centering
% Books faithfulness
\includegraphics[height=0.35\textheight]{graphics/books_dt_lr.png}
% Dvds faithfulness
\includegraphics[height=0.35\textheight]{graphics/dvds_dt_lr.png}
\end{frame}
\begin{frame}
\frametitle{Can users select the best classifier?}
\begin{itemize}
\item Faithfulness of explanations is measured on classifiers that are interpretable, \textbf{LR} and \textbf{DT}. Both are trained s.t. the max no. of features is $10$, so features found by these are the \emph{gold standard} of features, in regards to which are important.
\item For each prediction on the test set, explanations are produced and the fraction of the gold features found, is computed.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Can non-experts improve a classifier?}
\end{frame}
%\subsection{Human Subjects}
@ -235,6 +400,9 @@
\frametitle{Conclusion}
\end{frame}
\begin{frame}
\frametitle{Future work}
\end{frame}
\section{Recap}
\begin{frame}
\frametitle{Recap}