Você está na página 1de 54

Inteligência artificial e Lógica fuzzy

Prof. Dr. Cleberson Forte


Objetivos da aula

• Compreender os conceitos
fundamentais da inteligência artificial e
da lógica fuzzy.

• Explorar as aplicações práticas dessas


técnicas na segurança da informação.

• Discutir as vantagens, desafios e


limitações da inteligência artificial e da
lógica fuzzy.

• Realizar um exercício de fixação para


reforçar os conceitos aprendidos.
Inteligência Artificial

A inteligência artificial é uma área da ciência


da computação que se concentra no
desenvolvimento de sistemas capazes de
realizar tarefas que normalmente exigem
inteligência humana.
Inteligência Artificial – breve histórico

DÉCADA DE 1950: A IA TEVE DÉCADA DE 1960-1970: NESSE DÉCADA DE 1980-1990: ANOS 2000: A IA COMEÇOU A ATUALIDADE: A IA SE TORNOU
ORIGEM NO DARTMOUTH PERÍODO, FORAM HOUVE UM FOCO CRESCENTE FAZER AVANÇOS UMA PARTE INTEGRAL DE
WORKSHOP, EM 1956, ONDE DESENVOLVIDOS SISTEMAS EM TÉCNICAS DE SIGNIFICATIVOS EM ÁREAS MUITOS ASPECTOS DA NOSSA
PESQUISADORES EXPLORARAM ESPECIALISTAS, QUE APRENDIZADO DE MÁQUINA, COMO VISÃO VIDA DIÁRIA. ELA ESTÁ
A POSSIBILIDADE DE CRIAR UTILIZAVAM REGRAS E COMO REDES NEURAIS COMPUTACIONAL, PRESENTE EM ASSISTENTES
MÁQUINAS COM INTELIGÊNCIA CONHECIMENTOS ESPECÍFICOS ARTIFICIAIS E ALGORITMOS PROCESSAMENTO DE VIRTUAIS, SISTEMAS DE
SEMELHANTE À HUMANA. ESSE PARA SOLUCIONAR GENÉTICOS. ESSAS LINGUAGEM NATURAL E RECOMENDAÇÃO, CARROS
EVENTO MARCOU O PROBLEMAS EM ÁREAS COMO ABORDAGENS PERMITIRAM RECONHECIMENTO DE FALA. O AUTÔNOMOS, DETECÇÃO DE
NASCIMENTO DA IA COMO MEDICINA E ENGENHARIA. A IA QUE AS MÁQUINAS APRENDIZADO PROFUNDO FRAUDES, DIAGNÓSTICO
UMA DISCIPLINA DE SIMBÓLICA DOMINOU, COM APRENDESSEM E SE (DEEP LEARNING) E O USO DE MÉDICO E MUITOS OUTROS
PESQUISA. ÊNFASE NA LÓGICA FORMAL E ADAPTASSEM A PARTIR DE GRANDES CONJUNTOS DE DOMÍNIOS.
NA REPRESENTAÇÃO DO DADOS, IMPULSIONANDO O DADOS FORAM
CONHECIMENTO. DESENVOLVIMENTO DA IA EM FUNDAMENTAIS PARA O
DIVERSAS ÁREAS. PROGRESSO NESSAS ÁREAS.
Tipos de inteligência artificial

Inteligência artificial fraca: Refere- Inteligência artificial forte: Envolve


se a sistemas projetados para sistemas com capacidade de
executar tarefas específicas, com executar tarefas de forma
desempenho igual ou superior ao autônoma, semelhante à
humano em determinadas áreas. inteligência humana.
Inteligência artificial fraca
• Um exemplo de inteligência artificial fraca é um sistema de reconhecimento facial. Esses
sistemas são projetados para analisar imagens ou vídeos e identificar rostos com alta
precisão. Eles são capazes de comparar características faciais, como forma dos olhos, nariz
e boca, com um banco de dados de rostos conhecidos para realizar a identificação. Essa
tecnologia é amplamente usada em sistemas de segurança, controle de acesso e em
aplicativos de reconhecimento de pessoas em redes sociais.
Inteligência artificial forte

• Um exemplo de inteligência artificial forte é um sistema de chatbot avançado. Esses


sistemas são capazes de compreender e responder a perguntas e interações em linguagem
natural, simulando uma conversa humana. Eles utilizam algoritmos de processamento de
linguagem natural (NLP) e técnicas de aprendizado de máquina para interpretar o
significado das palavras e fornecer respostas relevantes. Os chatbots podem ser usados em
várias aplicações, como atendimento ao cliente automatizado, assistentes virtuais e suporte
técnico automatizado.
Aplicações em segurança da
informação
Aplicações da IA em segurança da informação
Detecção de ameaças e análise de Análise de malware: Os sistemas de IA
Autenticação e controle de acesso:
comportamento: Por meio de algoritmos podem examinar características de arquivos
Sistemas de IA podem aprender o
de aprendizado de máquina, os sistemas de e comportamentos suspeitos para
comportamento típico do usuário,
IA podem analisar grandes volumes de identificar malware conhecido e
reconhecer padrões e identificar atividades
dados de logs, tráfego de rede e desconhecido, ajudando a proteger os
fora do comum que possam indicar uma
comportamento do usuário para identificar sistemas contra ataques de software
tentativa de acesso não autorizado.
padrões anormais e possíveis ameaças. malicioso.

Análise de riscos e tomada de decisões: A


IA pode ser usada na análise de riscos de
Análise de vulnerabilidades: Os algoritmos Resposta a incidentes: Algoritmos de IA
segurança e na tomada de decisões
de IA podem escanear e analisar o código podem analisar dados em tempo real,
relacionadas a políticas de segurança. Por
fonte, identificar potenciais brechas de correlacionar eventos e fornecer insights
meio de técnicas de IA, é possível analisar
segurança e fornecer recomendações para para os analistas de segurança tomarem
dados de segurança, identificar pontos
corrigir as vulnerabilidades encontradas. ações adequadas.
fracos e tomar decisões mais informadas
sobre estratégias de proteção.
Lógica fuzzy

• A lógica fuzzy (ou lógica nebulosa) é uma


extensão da lógica tradicional (lógica
clássica) que lida com incerteza e
imprecisão, permitindo a representação e
manipulação de conceitos vagos.
lógica clássica
• Fundamentos:
• verdadeiro/falso e operações lógicas.
• regras de inferência clássicas para derivar conclusões a partir de premissas lógicas.
• Limitações:
• limitações da lógica clássica ao lidar com incerteza e ambiguidade em dados e informações.
• dificuldade de lidar com conceitos vagos ou imprecisos.
Conjuntos
fuzzy
Aplicações da lógica fuzzy

Controle de sistemas: A lógica fuzzy é usada para projetar controladores que podem lidar com a
imprecisão dos sensores e atuadores, permitindo um controle mais flexível e adaptável.

Tomada de decisão: A lógica fuzzy é aplicada em sistemas especialistas para auxiliar na tomada de
decisões em situações complexas e incertas, como diagnósticos médicos e gerenciamento de riscos.

Reconhecimento de padrões: A lógica fuzzy é usada em sistemas de reconhecimento de padrões para


lidar com a variação e ambiguidade nos dados, permitindo uma classificação mais precisa.

Previsão de tendências: A lógica fuzzy é utilizada em modelos de previsão para lidar com a incerteza
dos dados e fornecer estimativas mais realistas e flexíveis.

Processamento de linguagem natural: A lógica fuzzy é aplicada para lidar com a ambiguidade e
incerteza na compreensão e geração de linguagem natural, melhorando a interação homem-máquina.
A lógica fuzzy oferece uma representação
mais próxima da forma como os seres
humanos pensam e tomam decisões em
ambientes complexos e incertos.
Vantagens
Ela permite a modelagem de conceitos vagos
da lógica e imprecisos, levando em consideração a
incerteza e a variabilidade dos dados.

fuzzy A lógica fuzzy oferece uma abordagem


flexível e adaptável para lidar com problemas
reais, fornecendo resultados mais robustos
em comparação com métodos clássicos.
A lógica fuzzy pode exigir um esforço adicional no
design e implementação de sistemas, devido à
necessidade de definir as funções de pertinência
e as regras de inferência adequadamente.
Limitações
A interpretação dos resultados pode ser
da lógica subjetiva, uma vez que a lógica fuzzy lida com
graus de pertinência em vez de valores absolutos.

fuzzy A lógica fuzzy pode não ser adequada para


problemas que envolvem alta precisão numérica
ou situações em que a lógica clássica é suficiente.
Conjunto clássico (com limite rígido)
Conjunto nebuloso
As funções de pertinência desempenham um papel
fundamental na representação e operação dos
conjuntos fuzzy. Elas atribuem graus de pertinência a
elementos de um universo de discurso, permitindo a
modelagem da incerteza e imprecisão dos dados.

Uma função de pertinência associa a cada elemento


Funções de de um universo de discurso um valor que indica o
grau de pertinência desse elemento a um conjunto

pertinência fuzzy.

Essa função define como os elementos se encaixam


no conjunto fuzzy e determina a forma e a
intensidade da transição de pertinência.
• As funções de pertinência podem ser visualizadas graficamente, geralmente
em gráficos bidimensionais.
• Os eixos do gráfico representam o universo de discurso e o grau de
Representação pertinência, enquanto a curva representa a função de pertinência
propriamente dita.
gráfica • Diferentes formas de curvas podem ser usadas, como triangular,
trapezoidal, gaussiana, entre outras, para modelar diferentes tipos de
conjuntos fuzzy.
Operadores de conjuntos nebulosos
Lógica fuzzy em segurança da informação

Detecção de Intrusões em Redes:


Exercício
Exercícios de fixação - fuzzy
Prof. Dr. Cleberson Forte
Objetivos da aula

• Desenvolver algoritmos em python


empregando a lógica fuzzy
• Fixar as etapas de desenvolvimento de um
sistema fuzzy
• Interpretar a defuzzyficação a partir da
modelagem do sistema
Exercício 1
• Desenvolva um sistema fuzzy que, com base
no nível de sujeira do ambiente e no nível de
aspereza do piso, apresente qual a potência de
sucção ideal para um aspirador de pó
Exercício 2

• Desenvolva um sistema sistema fuzzy


que, com base na quantidade de erros
de digitação no campo assunto,
quantidade de encaminhamentos nas
últimas 24h e quantidade de links
clicáveis no corpo do texto, determine o
grau de suspeição do e-mail ser um
spam.
Resolução de
problemas com
Lógica fuzzy
Prof. Dr. Cleberson Forte
Objetivos da aula

• Apresentação do “problema da
gorjeta”
• Apresentação do Google Colab
• Codificação em python
• Considerando-se a qualidade do serviço e da
comida em um estabelecimento, deseja-se
criar um sistema baseado em lógica fuzzy que
sugira um percentual justo para a gorjeta do
O problema garçom.

da gorjeta • Antecedentes (entradas do problema)


• Qualidade
• Serviço
• Consequente (saída esperada)
• Percentual de gorjeta
Google colab
Google colab
• No prompt ou no google colab:
Instalação da • pip install scikit-fuzzy
biblioteca
Parte 1 –
bibliotecas,
antecedentes e
consequente
Parte 2 –
definindo os
conjuntos
fuzzy
Resultado de
quali.view()
Parte 3 –
Definindo o
comportamento
do domínio de
saída (função de
pertinência)

Função para o exemplo


codificado acima
Triangular membership function

• Define o formato de uma função


triangular. Tem como entrada valores
de x, que serão comparados com a , b e
c, que por sua vez definem as arestas
do triângulo na função
Parte 4 –
criando as
regras
• As regras definem o comportamento da saída de acordo com
o relacionamento desejado entre as variáveis de entrada do
sistema
Parte 5 –
definindo o
sistema
Resultado
Código completo 1.3
Código completo 2.3
Código completo 3.3
Em grupo, defina um problema da sua área
de formação que possa ser resolvido usando
Tarefa um sistema fuzzy. Apresente, na próxima
aula, o contexto do seu problema e a sua
codificação em python.
Resolução de problemas com Lógica fuzzy
Prof Dr. Cleberson Forte
Objetivos da aula • Evidenciar o conceito de fuzzyficação
• Compreender a resolução de problemas por
modelagem baseada em regras
• Evidenciar o conceito de defuzzyficação
• Realizar exercício de fixação (precificação de
cerveja)
• Processo de transformar uma variável (crisp set)
para um valor fuzzy (fuzzy set)

Fuzzyficação • 10C – valor crisp


• Frio | agradável | calor – variáveis linguísticas –
(valores fuzzy)
Funções de
pertinência
• São empregadas para que uma
variável quantificável (crisp)
possa ser fuzzyficada, atribuindo
graus de pertinência da variável
em relação aos conjuntos fuzzy
possíveis
Funções de
pertinência
• Exemplo de codificação da TMP
• No exercício da gorjeta criamos uma variável
(consequente) tip e determinamos que o seu universo
(valores de 0 a 15) seriam fuzzyficados em 3 conjuntos a
partir da função triangular (trimf).

exemplo
• As inferências se dão a partir das regras
Inferência em que relacionam os conjuntos nebulosos e
sistemas podem incluir os operadores (E, OU e
NÃO)
nebulosos
Exemplo
• Considerando as funções de pertinência e as entradas 5 e 6, para
qualidade e serviço, respectivamente:

Quali:
Average 1

Serv:
Good 0.2
Average 0.8

Qualidade e serviço tem a mesma função de pertinência


Exemplo

Rule 1 = max(0,0) = 0
Rule 2 = 0.8
Rule 3 = max(0.2, 0) = 0.2

Teremos, portanto, uma gorjeta que


Pertence 0.8 ao conjunto médio e
0.2 ao conjunto alto
• É o processo inverso da fuzzyficação, quando
obtemos valores quantitativos (crisp set) a partir
dos valores fuzzy, usando para isso as regras de
pertinência estabelecidas. No exemplo da gorjeta,
Defuzzyficação o valor sugerido pelo sistema para a gorjeta é a
saída defuzzyficada a partir da aplicação das regras
estabelecidas que consideram um par de
antecedentes.
Exercício

• Precificação de cerveja
• Considere que uma rede de supermercados deseja
prever o consumo de uma marca específica de
cerveja utilizando a lógica fuzzy. Para isso, deseja-se
considerar o dia da semana, a temperatura ambiente
e o preço da cerveja como antecedentes. O
consequente será o consumo médio esperado.
• Dia da semana varia entre 1 (segunda) e 7
(domingo)
• Temperatura varia entre 20 e 40 graus
• Preço varia entre 2 e 20 reais
• Consumo varia entre 0 e 5 (litros por pessoa)
• Desenvolva o algoritmo em python, em até duplas.

Você também pode gostar