Dela via


User-Defined filter

Skapar ett anpassat finita eller oändligt impulssvarsfilter

Kategori: Datatransformering/filter

Anteckning

Gäller endast för: Machine Learning Studio (klassisk)

Liknande dra och släpp-moduler finns i Azure Machine Learning designer.

Modulöversikt

Den här artikeln beskriver hur du använder modulen Användardefinierat filter i Machine Learning Studio (klassisk) för att definiera ett anpassat filter med hjälp av ett FIR-filter (Finite Impulse Response) eller ett IIR-filter (Infinite Impulse Response) med koefficienter som du anger.

Ett filter är en överföringsfunktion som tar en indatasignal och skapar en utdatasignal baserat på filteregenskaperna. Mer allmän information om användare av filter i digital signalbearbetning finns i Filter. Den här modulen är särskilt användbar för att tillämpa en uppsättning tidigare härledda filterkoefficienter på dina data.

När du har definierat ett filter som uppfyller dina behov kan du tillämpa filtret på data genom att ansluta en datauppsättning och filtret till modulen Använd filter .

Tips

Behöver du filtrera data från en datauppsättning eller ta bort saknade värden? Använd de här modulerna i stället:

  • Rensa saknade data: Använd den här modulen för att ta bort saknade värden eller ersätta saknade värden med platshållare.
  • Partition och exempel: Använd den här modulen för att dela upp eller filtrera datauppsättningen efter villkor, till exempel ett datumintervall, ett specifikt värde eller reguljära uttryck.
  • Klipp ut värden: Använd den här modulen för att ange ett intervall och endast behålla värdena inom det intervallet.

Så här konfigurerar du User-Defined filter

  1. Lägg till modulen Användardefinierat filter i experimentet i Studio (klassisk). Du hittar den här modulen under Datatransformering i kategorin Filter .

  2. I fönstret Egenskaper väljer du en typ av filter: FIR-filter eller IIR-filter.

  3. Ange de koefficienter som ska tillämpas i filtret. Kraven för koefficienterna varierar beroende på om du väljer ett FIR-filter eller ett IIR-filter.

    • För ett FIR-filter anger du en vektor med feed-forward-koefficienter. Längden på vektorn avgör filtrets ordning. Ett FIR-filter är i praktiken ett glidande medelvärde, så konfigurationsvärdena tillämpar ett glidande medelvärde för att filtrera en datasekvens.

    • För ett IIR-filter använder du anpassade feed-forward- och feed-backward-koefficienter. Se avsnittet Exempel för några tips.

  4. Anslut filtret för att tillämpa filter och ansluta en datauppsättning.

    Använd kolumnväljaren för att ange vilka kolumner i datauppsättningen som filtret ska tillämpas på. Som standard använder modulen Använd filter filtret för alla valda numeriska kolumner.

  5. Kör experimentet.

    De angivna transformeringarna tillämpas endast på de valda numeriska kolumnerna när du kör experimentet med använd filter.

Exempel

Fler exempel på hur filter används i maskininlärning finns i Azure AI-galleriet:

  • Filter: Visar alla filtertyper. I exemplet används en konstruerad vågformsdatauppsättning för att enklare illustrera effekterna av de olika filtren.

Exempel på FIR-filter: Exponentiellt viktat glidande medelvärde

För ett exponentiellt viktat glidande medelvärde är alla koefficienter mindre än en och summan av alla koefficienter är lika med en. Därför är variansen för det viktade genomsnittet alltid mindre än indatavärdena.

Om ett FIR-filter till exempel beräknar ett exponentiellt viktat glidande medelvärde (WMA) anger du en kommaavgränsad lista med koefficienter för värdet för feed-forward-parametern:

0.01818182, 0.03636364, 0.05454545, 0.07272727, 0.09090909, 0.10909091, 0.12727273, 0.14545455, 0.16363636, 0.18181818

Exempel på FIR-filter: Exponentiellt viktat glidande medelvärde (Deslauriers-Dubuc-interpolation)

Det här FIR-filtret ungefärliger ett triangulärt viktat glidande medelvärde (WMA). Du definierar koefficienterna genom att ange en kommaavgränsad serie värden för feed-forward-parametrarna, till exempel följande:

0.0625, 0.0625, 0.2500, 0.3750, 0.2500, 0.0625

Värdena som används i det här anpassade FIR-filtret representerar en vektor med feed-forward-koefficienter som erhålls med hjälp av Deslauriers-Dubuc metod för finita sekvensering. Mer information finns i Dubuc-Deslauriers Subdivision for Finite Sequences and Interpolation Wavelets on an Interval (Dubuc-Deslauriers Subdivision for Finite Sequences and Interpolation Wavelets on an Interval).

IIR-filterexempel: Notch-filter

Ett bra exempel på ett program för ett användardefinierat IIR-filter är att definiera ett hackfilter, även kallat ett bandstopfilter. Det önskade hackfiltret dämpar ett -3dB-avslagsband, fb, centrerat med en hackfrekvens, , fnmed samplingsfrekvens, fs.

I det här fallet kan det digitala hackfiltret representeras av följande formel:

custom notch filter example 1

Den här formeln förutsätter:

custom notch filter

Från den här formeln kan vi hämta feed-forward-koefficienten:

feed forward coefficient for custom notch filter

Matnings bakåtriktade koefficienter skulle vara följande:

feed back coefficient for custom notch filter

Exempel på IIR-filter: Hackfilter 2

I följande exempel visas ett hackfilter med en hackfrekvens på och ett -3 dB avvisningsband på fb =100 Hz, med samplingsfrekvensen fs=10 kHz.fn =1250 Hz

formula for notch filter example 2-1

Med hjälp av följande formel får a2 = 0.93906244 du och a1 = 1.3711242:

formulas 2 for notch filter example 2

Från detta kan du hämta följande feed-forward (b) och feed-backward (a) koefficienter:

b= 1.9390624, -2.7422484, 1.9390624

a= 1, -1.3711242, 0.9390624

Modulparametrar

Name Intervall Typ Standardvärde Description
Typ av filter valfri ImpulseResponse Ange vilken typ av filter som ska anpassas
Vidarebefordra valfri Sträng ”1.0” Ange en serie feed-forward-koefficienter
Bakåt valfri Sträng ”1.0” Ange en serie med filtreringskoefficienter för matnings bakåt

Utdata

Namn Typ Description
Filtrera IFilter-gränssnitt Filterimplementering

Undantag

Undantag Description
ParameterParsing Ett undantag inträffar om en eller flera parametrar inte kunde parsas eller konverteras från den angivna typen till den typ som krävs av målmetoden.

En lista över fel som är specifika för Studio-moduler (klassiska) finns i Machine Learning Felkoder.

En lista över API-undantag finns i Machine Learning REST API-felkoder.

Se även

Använd filter
A-Z-modullista