Autumn 2025



Os métodos para model interpretation de machine learning podem ser classificados de acordo com vários critérios.
White-box / Intrinsic interpretability: Modelos de machine learning considerados interpretable devido à sua estrutura simples, como short decision trees ou sparse linear models. A interpretability é obtida explicando a estrutura interna do modelo.
Black-box / Post-hoc interpretability: Modelos de machine learning difíceis de compreender totalmente em seu funcionamento interno (por exemplo, deep neural networks) são considerados black boxes. A interpretability é obtida explicando o model behavior após o training.
Discutimos os seguintes modelos que são intrinsecamente interpretable: - Linear Regression - Generalized Additive Models (GAM) - Tree-based Models - Decision Rules
Modelos lineares podem ser usados para modelar a dependência de um regression target y sobre algumas features x em um formato como abaixo: \[\begin{equation} y = \beta_0 + \beta_1 x_1 + \ldots + \beta_n x_n + \varepsilon\end{equation}\]
O predicted target \(y\) é uma combinação linear das weighted features \(\beta_i x_i\). A estimated linear equation é um hyperplane no espaço feature/target (uma linha simples no caso de uma única feature).
Os weights especificam a inclinação (gradient) do hyperplane em cada direção.
Como você interpreta a influência de cada propriedade na predição do preço do imóvel?
\(R^2\) (R-squared) \[\begin{equation} R^2 = 1 - \frac{\sum (y_i - \hat{y}_i)^2}{\sum (y_i - \bar{y})^2} \end{equation}\]
Mean Square Error (MSE)/Root Mean Square Error (RMSE)
\[\begin{equation} MSE = \frac{1}{N} \sum_{i=1}^{N} (y_i - \hat{y}_i)^2 \end{equation}\]
Mean Absolute Error (MAE)
\[\begin{equation} MAE = \frac{1}{N} \sum_{i=1}^{N} |y_i - \hat{y}_i| \end{equation}\]

Existe um trade-off entre a complexidade do modelo (número de features) e o accuracy.
Esse VA system ajuda na model building (feature ranking) e na model validation.
Pros:
Cons:
Pros:
Facilmente interpretable
Garantias estatísticas sobre a inference (se os supostos forem satisfeitos)
Sem hyperparameters (solução analítica)
Cons:
A relação de \(X\) com \(Y\) pode ser não-linear. Nesses casos, a linear regression pode não apresentar bons resultados.
Se certos supostos não forem satisfeitos (a saber, distribuição normal dos residuals e homoscedasticity), então a inference pode ser incorreta.
E se o seu dataset não seguir essas suposições?
Os generalized additive models estendem os modelos lineares padrão, permitindo funções não-lineares para cada uma das variáveis. \[\begin{equation} y_i = \beta_0 + \sum_{j=1}^{p} f_j(x_{ij}) + \varepsilon_i \\ = \beta_0 + f_1(x_{i1}) + f_2(x_{i2}) + \dots + f_p(x_{ip}) + \varepsilon_i \end{equation}\]
\[\begin{equation}
Wage = f(year, age, education) = b_0 + f_1(year) + f_2(age) + f_3(education)
\end{equation}\] 
Pros:
Os GAMs nos permitem ajustar uma \(f_j\) não-linear a cada \(X_j\), de modo que possamos modelar relações não-lineares facilmente.
Os ajustes não-lineares podem potencialmente levar a melhores predições.
Como o modelo é additive, podemos examinar o efeito de cada \(X_j\) sobre \(Y\) para cada observação. Isso é útil para visualization.
Cons:
Os GAMs são restritos a serem additive. Com muitas variáveis, interações importantes podem passar despercebidas ou ser computacionalmente inviáveis de encontrar.
\[\begin{equation} g(\mathbb{E}[y]) = \beta_0 + \sum f_j(x_j) \end{equation}\]
\[\begin{equation} g(\mathbb{E}[y]) = \beta_0 + \sum f_j(x_j) + \sum f_{ij}(x_i, x_j) \end{equation}\]
No entanto, assim como na linear regression, podemos adicionar manualmente interaction terms ao modelo GAM incluindo predictors adicionais na forma \(X_j \times X_k\). Além disso, podemos adicionar low-dimensional interaction functions na forma \(f_{jk}(X_j , X_k)\) ao modelo.
\[\begin{equation} g(\mathbb{E}[y]) = \beta_0 + \sum f_j(x_j) \end{equation}\]
\[\begin{equation} g(\mathbb{E}[y]) = \beta_0 + \sum f_j(x_j) + \sum f_{ij}(x_i, x_j) \end{equation}\]
E se tivermos muitas interações? Como escolhemos nossas interações?
Partial dependency plot
Partial dependency plot
Partial dependency plot
Partial dependency plot
Github aqui.
Notebook aqui
Outras bibliotecas para PDP visualization: Scikit-learn interpret
A decision tree of diabetes diagnosis
https://treevis.net/ oferece uma galeria de tree visualization. Esses trees são usados para visualizar estruturas hierárquicas, não apenas modelos de machine learning baseados em trees. 

Mostra o fluxo das diferentes class, e a class distribution ao longo dos feature values.
iForest
Vê-se claramente como a decisão é tomada e qual rule é mais importante.

A decisão final é tomada com base em um mecanismo de voting.
Um estudo de usuários recente mostra que “if-then structure without any connecting else statements enables users to easily reason about the decision boundaries of classes.”
Disjunctive normal form (DNF, OR-of-ANDs) Conjunctive normal form (CNF, AND-of-ORs)
What form does this rule set follow?

Diferentes visualizations de rules podem levar a diferentes níveis de understanding das rules?
Se sim, quais são os fatores visuais que influenciam o understanding e como eles atuam no rule understanding?
Dada a seguinte rule:
Se \(X\), então class \(Y\).
Support / Coverage de uma rule:
\[\begin{equation} \text{Support} = \frac{\text{número de instances que atendem às condições em } X}{\text{número total de instances}} \end{equation}\]
Confidence / Accuracy de uma rule:
\[\begin{equation} \text{Confidence} = \frac{\text{número de instances que atendem às condições em } X \text{ e pertencem à class } Y}{\text{número de instances que atendem às condições em } X} \end{equation}\]
Imagine que temos um black-box model (complexo demais para entender a estrutura interna); podemos usar white-box models para nos ajudar a entender o model behavior do black-box model? 
Abra a black box entendendo um “surrogate model” que aproxima o behavior do black-box model original. 
O que você quer:

O que você obtém:

RuleMatrix
Explainable Matrix
Notebook aqui.
https://arxiv.org/abs/1802.07810
https://www.nature.com/articles/s42256-019-0048-x

E se usássemos se a model prediction está errada ou não para treinar uma “surrogate tree”?
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8731353