Middle — Senior
O que são restrições monótonicas e para que servem?
sobes.tech IA
Resposta da IA
Restrições monótonas (restrições monótonas) são restrições impostas a um modelo de aprendizagem automática para garantir que as previsões do modelo dependam de forma monótona de certos atributos. Ou seja, ao aumentar (ou diminuir) o valor de um atributo, a previsão do modelo não deve diminuir (ou aumentar).
Para que serve isso?
- Interpretabilidade: Em alguns problemas, a lógica de negócios ou o senso comum determinam que a influência de um atributo na variável alvo deve ser monótona. Por exemplo, ao aumentar a renda do cliente, a probabilidade de aprovação do crédito não deve diminuir.
- Estabilidade do modelo: Restrições monótonas ajudam a evitar mudanças ilógicas ou inesperadas nas previsões.
- Melhoria na generalização: Em alguns casos, essas restrições ajudam o modelo a generalizar melhor, especialmente com um volume de dados pequeno.
Em algoritmos de boosting (por exemplo, LightGBM, XGBoost), é possível definir restrições monótonas para atributos específicos, para que o modelo leve em consideração esses requisitos ao construir árvores.
Exemplo de uso no LightGBM:
import lightgbm as lgb
# Definindo restrições monótonas: 1 significa dependência monotonicamente crescente, -1 — decrescente, 0 — sem restrição
monotone_constraints = [1, 0, -1] # para três atributos
params = {
'objective': 'regression',
'monotone_constraints': monotone_constraints
}
# Depois, criamos o conjunto de dados e treinamos o modelo com esses parâmetros
Dessa forma, restrições monótonas ajudam a incorporar conhecimentos de especialistas ao modelo e a torná-lo mais previsível e lógico.