Compartilhar via


Filtro IIR

Importante

O suporte para o Machine Learning Studio (clássico) terminará em 31 de agosto de 2024. É recomendável fazer a transição para o Azure Machine Learning até essa data.

A partir de 1º de dezembro de 2021, você não poderá criar recursos do Machine Learning Studio (clássico). Até 31 de agosto de 2024, você pode continuar usando os recursos existentes do Machine Learning Studio (clássico).

A documentação do ML Studio (clássico) está sendo desativada e pode não ser atualizada no futuro.

Cria um filtro de resposta de impulso infinito para processamento de sinais

Categoria: Transformação/Filtro de Dados

Observação

Aplica-se a: somente Machine Learning Studio (clássico)

Módulos semelhantes do tipo "arrastar e soltar" estão disponíveis no designer do Azure Machine Learning.

Visão geral do módulo

Este artigo descreve como usar o módulo filtro IIR no Machine Learning Studio (clássico), para criar um filtro de IIR (resposta de impulso infinito).

Os filtros são uma ferramenta importante no processamento de sinal digital e são usados para melhorar os resultados do reconhecimento de imagem ou voz. Em geral, um filtro é uma função de transferência que usa um sinal de entrada e cria um sinal de saída com base nas características do filtro. Para obter mais informações gerais sobre o usuário de filtros no processamento de sinal digital, consulte Filter.

Um filtro IIR é um tipo específico de filtro; usos típicos de um filtro IIR seriam simplificar dados cíclicos que incluem ruído aleatório em uma tendência crescente ou decrescente. O filtro IIR que você cria com este módulo define um conjunto de constantes (ou coeficientes) que alteram o sinal que é passado. A palavra infinito no nome refere-se aos comentários entre as saídas e os valores da série.

Depois de definir um filtro que atenda às suas necessidades, você poderá aplicar o filtro aos dados conectando um conjunto de dados e o filtro ao módulo Aplicar Filtro .

Dica

Um filtro é uma função de transferência que usa um sinal de entrada e cria um sinal de saída com base nas características do filtro. Para obter mais informações gerais sobre o usuário de filtros no processamento de sinal digital, consulte Filter.

Depois de definir um filtro que atenda às suas necessidades, você poderá aplicar o filtro aos dados conectando um conjunto de dados e o filtro ao módulo Aplicar Filtro .

Dica

Precisa filtrar dados de um conjunto de dados ou remover valores ausentes? Em vez disso, use estes módulos:

  • Limpar Dados Ausentes: use este módulo para remover valores ausentes ou substituir valores ausentes por espaços reservados.
  • Partição e exemplo: use este módulo para dividir ou filtrar seu conjunto de dados por critérios como um intervalo de datas, um valor específico ou expressões regulares.
  • Valores de clipe: use este módulo para definir um intervalo e manter apenas os valores dentro desse intervalo.

Como configurar o filtro IIR

  1. Adicione o módulo filtro IIR ao seu experimento. Você pode encontrar este módulo na Transformação de Dados, na categoria Filtro .

  2. Para Order, digite um valor inteiro que define o número de elementos ativos usados para afetar a resposta do filtro. A ordem do filtro representa o comprimento da janela de filtro.

    Para um filtro IIR, a ordem mínima é 4.

  3. Para tipo de filtro, escolha o algoritmo usado para calcular coeficientes de filtro. O tipo de filtro designa a função de transferência matemática que controla a resposta de frequência e a supressão de frequência. Machine Learning dá suporte a esses tipos de filtros comumente usados no processamento de sinal digital:

    Butterworth: Um filtro Butterworth também é chamado de filtro de magnitude máximamente simples porque restringe a resposta (alteração no sinal) na faixa de passagem e na faixa de parada.

    Chebyshev Tipo 1: os filtros chebyshev destinam-se a minimizar os erros entre as características de filtro idealizadas e reais sobre o intervalo do filtro. Os filtros Chebyshev tipo 1 deixam mais ondulação na faixa de passe.

    Chebyshev Tipo 2: os filtros Chebyshev tipo 2 têm as mesmas características gerais que os filtros Chebyshev tipo 1, mas deixam mais ondulação na faixa de palavras irrelevantes.

  4. Para o tipo filtro, selecione uma opção que define como o filtro afetará os valores no sinal de entrada. Você pode especificar que o filtro exclua valores acima ou abaixo de um ponto de corte ou especifique que o filtro rejeite ou passe valores em um intervalo de frequência especificado.

    LowPass: permite que valores de baixa frequência (abaixo do valor de corte) passem e atenuam outros valores.

    HighPass: permite que valores de alta frequência (acima do valor de corte) passem e atenuam outros valores.

    Bandpass: permite que os sinais no intervalo especificado pelos valores de corte baixo e alto passem e atenuam outros valores.

    BandStop: permite que os sinais fora do intervalo especificado pelos valores de corte baixo e alto passem e atenuam valores dentro do intervalo.

  5. Especifique os valores de corte altos ou baixos, ou ambos, como um valor entre 0 e 1, representando uma frequência normalizada. Para corte alto, digite um valor que representa o limite de frequência superior. Para o corte baixo, digite um valor que representa o limite de frequência mais baixo.

  6. Para o Ripple, especifique a quantidade de ondulação a ser tolerada quando você definir o filtro. A ondulação refere-se a uma pequena variação que ocorre periodicamente. A ondulação geralmente é considerada um efeito indesejado, mas você pode compensar a ondulação ajustando outros parâmetros de filtro, como o comprimento do filtro. Nem todos os filtros produzem ondulação.

  7. Adicione o módulo Aplicar Filtro ao experimento e conecte o filtro que você projetou e o conjunto de dados que contabiliza os valores que você deseja modificar.

    Use o seletor de coluna para especificar quais colunas do conjunto de dados ao qual o filtro deve ser aplicado. Por padrão, o módulo Aplicar Filtro usará o filtro para todas as colunas numéricas selecionadas.

  8. Execute o experimento para aplicar a transformação.

Observação

O módulo filtro IIR não fornece a opção de criar uma coluna de indicador. Os valores de coluna são sempre transformados no local.

Exemplos

Para obter exemplos de como os filtros são usados no machine learning, consulte este experimento na Galeria de IA do Azure:

  • Filtros: este experimento demonstra todos os tipos de filtro, usando um conjunto de dados de forma de onda projetado.

Observações técnicas

Esta seção contém detalhes de implementação, dicas e respostas para perguntas frequentes.

Detalhes de implementação

Um filtro IIR retorna coeficientes de feed de encaminhamento e feed de regressão, que são representados por meio de uma função de transferência. Aqui está uma representação de exemplo:

transfer function for IIR filters

Em que:

  • N: ordem de filtro

  • bi: coeficientes de filtro de encaminhamento de feed

  • ai: alimentar coeficientes de filtro para trás

  • x[n]: o sinal de entrada

  • y[n]: o sinal de saída

Parâmetros do módulo

Nome Intervalo Type Padrão Descrição
Ordem [4;13] Integer 5 Especifique a ordem do filtro
Tipo de filtro Qualquer IIRFilterKind Selecione o tipo de filtro IIR a ser criado
Tipo de filtro Qualquer FilterType Selecione o tipo de faixa de filtro
Corte baixo [double.Epsilon;.9999999] Float 0.3 Defina o valor de corte baixo
Corte alto [double.Epsilon;.9999999] Float 0,7 Defina o valor de corte alto
Ondulação >=0,0 Float 0,5 Especifique a quantidade de ondulação no filtro

Saída

Nome Tipo DESCRIÇÃO
Filtrar Interface IFilter Implementação do filtro

Exceções

Exceção Descrição
NotInRangeValue Ocorrerá uma exceção se o parâmetro não estiver no intervalo.

Para obter uma lista de erros específicos aos módulos do Studio (clássico), consulte Machine Learning códigos de erro.

Para obter uma lista de exceções de API, consulte Machine Learning códigos de erro da API REST.

Confira também

Filter
Aplicar filtro
Lista de Módulo A-Z