MO432 -Outros assuntos

Jacques Wainer

Explainable ML

De vez em quando voce precisa explicar as decisões do seu classificador

Voce que explicar um exemplo e não o classificador como um todo

Voce quer simplificar o classificador em volta desse exemplo

Um blog e um livro

Eu usei o LIME em um projeto

Fairness em classificação

Um blog

Varias definições de justiça. Por exemplo: o classificador tem a mesma taxa de acerto para subgrupos “relevantes”

varios artigos e propostas sobre fairness.

quase sempre ha uma perda em acurácia global (que é medida em relação aos dados do passado!) para melhorar o fairness do algoritmo.

Open set

Problema multiclasse onde voce não tem todas as classes no conjunto de treino.

No teste voce precisa dizer a classe se voce sabe ou dizer que não conhece essa classe.

Open set recognition ou zero-shot recognition

Classification with Reject option

Voce pode não dar uma classificação se o classificador nao esta muito confiante da previsão.

Isso aumenta o PPV - a confiança que o usuario tem numa classificação positiva (ou negativa) . Isso so piora a acurácia “global”

Use o termo “Classification reject option” para procurar papers.

Use a medida de confiança para tomas essa decisão. O thershold é um hiperparametro

semi-supervised learning

alguns/varios dos dados não tem a “saída” correta - só alguns. Importante onde há um custo para

O sistema tem que aprender não so a fronteira que separa os dados com label mas ir fazendo pressuposicoes sobre os dados sem label para melhorar essa fronteira.

active learning

o classificador pode perguntar para um professor a classificação de um dado

melhorar as fronteiras de classificação

lembre-se da tensão entre exploration e exploitation (para quem fiz MO431) dos otimizadores não convexos. Aqui há a mesma tensão

Online learning

O classificador recebe um dado por vez. Ele (talvez) precisa atualizar as fronteiras de classificação com esse dado novo mas não pode usar os dados velhos. So pode usar as estruturas de dados internas no classificador.

Concept drift as classes vao mudando lentamente

Multiple instance learning

Os dados não são uma única coisa/ponto, mas são conjuntos de coisas/instances

Uma ou poucas coisas/instances dentro do conjunto é responsável pela classificação do conjunto como um todo

Problema é que os “dados” não tem tamanho fixo (log pode ser curto ou longo ou o ECG pode ser de 3 minutos ou 3 horas)

A solução tradicional é ter uma combinação de um numero fixo de descritores do dado/conjunto. Descritores globais e locais

ECG:

Feature Engineering

Descobrir e ou criar features novas dos dados é normalmente onde voce obtém ganhos grandes.

A maioria das técnicas não se dá bem com atributos irrelevantes. Técnicas baseadas em distancias são particularmente sensíveis (KNN). Teoricamente regularização L1 deveria resolver esse problema. Exceção sao as arvores.

Talvez todas as técnicas não são capazes de lidar com interações entre features (produtos)

Um livro sobre feature engineering.

Deployment

Sistemas preditivos quando colocados para funcionar em empresas.

MLOps - Machine Learning Operations https://github.com/visenger/awesome-mlops

Algumas coisas: