Tekst voorverwerken

In dit artikel wordt een onderdeel in de Azure Machine Learning-ontwerpfunctie beschreven.

Gebruik het onderdeel Tekst voorverwerken om tekst op te schonen en te vereenvoudigen. Het ondersteunt deze algemene tekstverwerkingsbewerkingen:

  • Verwijderen van stopwoorden
  • Reguliere expressies gebruiken om specifieke doeltekenreeksen te zoeken en te vervangen
  • Lemmatisatie, waarmee meerdere gerelateerde woorden worden geconverteerd naar één canonieke vorm
  • Casenormalisatie
  • Verwijdering van bepaalde klassen van tekens, zoals getallen, speciale tekens en reeksen van herhaalde tekens, zoals 'aaaa'
  • Identificatie en verwijdering van e-mails en URL's

Het onderdeel Voorverwerkingstekst ondersteunt momenteel alleen Engels.

Voorverwerking van tekst configureren

  1. Voeg het onderdeel Preprocess Text toe aan uw pijplijn in Azure Machine Learning. U vindt dit onderdeel onder Text Analytics.

  2. Verbind een gegevensset met ten minste één kolom met tekst.

  3. Selecteer de taal in de vervolgkeuzelijst Taal .

  4. Tekstkolom die moet worden opgeschoond: selecteer de kolom die u wilt voorverwerken.

  5. Stopwoorden verwijderen: selecteer deze optie als u een vooraf gedefinieerde lijst met stopwoorden wilt toepassen op de tekstkolom.

    Stopword-lijsten zijn afhankelijk van de taal en kunnen worden aangepast.

  6. Lemmatisatie: selecteer deze optie als u wilt dat woorden worden weergegeven in hun canonieke vorm. Deze optie is handig om het aantal unieke exemplaren van anders vergelijkbare teksttokens te verminderen.

    Het lemmatisatieproces is sterk taalafhankelijk.

  7. Zinnen detecteren: selecteer deze optie als u wilt dat het onderdeel een zingrensmarkering invoegt bij het uitvoeren van een analyse.

    Dit onderdeel gebruikt een reeks van drie sluistekens ||| om de zinseindtekens aan te geven.

  8. Optionele zoek- en vervangingsbewerkingen uitvoeren met behulp van reguliere expressies. De reguliere expressie wordt eerst verwerkt, vóór alle andere ingebouwde opties.

    • Aangepaste reguliere expressie: definieer de tekst die u zoekt.
    • Aangepaste vervangingstekenreeks: definieer één vervangingswaarde.
  9. Hoofdletters normaliseren naar kleine letters: selecteer deze optie als u ASCII-hoofdletters wilt converteren naar kleine letters.

    Als tekens niet worden genormaliseerd, wordt hetzelfde woord in hoofdletters en kleine letters beschouwd als twee verschillende woorden.

  10. U kunt ook de volgende typen tekens of tekenreeksen verwijderen uit de verwerkte uitvoertekst:

    • Getallen verwijderen: selecteer deze optie om alle numerieke tekens voor de opgegeven taal te verwijderen. Identificatienummers zijn afhankelijk van het domein en de taal afhankelijk. Als numerieke tekens integraal deel uitmaken van een bekend woord, wordt het getal mogelijk niet verwijderd. Meer informatie in Technische notities.

    • Speciale tekens verwijderen: gebruik deze optie om niet-alfanumerieke speciale tekens te verwijderen.

    • Dubbele tekens verwijderen: selecteer deze optie als u extra tekens wilt verwijderen in reeksen die meer dan twee keer worden herhaald. Een reeks als 'aaaaa' wordt bijvoorbeeld gereduceerd tot 'aa'.

    • E-mailadressen verwijderen: selecteer deze optie als u een reeks van de indeling <string>@<string>wilt verwijderen.

    • URL's verwijderen: selecteer deze optie om een reeks te verwijderen die de volgende URL-voorvoegsels bevat: http, https, , ftpwww

  11. Werkwoordscontracties uitbreiden: deze optie is alleen van toepassing op talen die gebruikmaken van werkwoordscontracties; momenteel, alleen in het Engels.

    Als u bijvoorbeeld deze optie selecteert, kunt u de zin 'zou daar niet blijven' vervangen door 'zou daar niet blijven'.

  12. Backslashes normaliseren naar slashes: selecteer deze optie om alle exemplaren van \\ toe te wijzen aan /.

  13. Tokens splitsen op speciale tekens: selecteer deze optie als u woorden wilt verbreken op tekens zoals &, -enzovoort. Met deze optie kunt u ook de speciale tekens verminderen wanneer deze meer dan twee keer wordt herhaald.

    De tekenreeks MS---WORD wordt bijvoorbeeld gescheiden in drie tokens, MS, -en WORD.

  14. Verzend de pijplijn.

Technische opmerkingen

Voor het voorverwerkingstekstonderdeel in Studio (klassiek) en de ontwerpfunctie worden verschillende taalmodellen gebruikt. De ontwerpfunctie maakt gebruik van een door CNN getraind model met meerdere taken van spaCy. Verschillende modellen geven verschillende tokenizers en tagger voor spraakgedeelten, wat leidt tot verschillende resultaten.

Hier volgen enkele voorbeelden:

Configuratie Uitvoerresultaat
Met alle opties geselecteerd
Uitleg:
Voor de gevallen zoals '3test' in de 'WC-3 3test 4test', verwijdert de ontwerper het hele woord '3test', omdat in deze context het tagger voor het deel van de spraak dit token '3test' opgeeft als numeriek, en het onderdeel verwijdert dit volgens het deel van de spraak.
Met alle opties geselecteerd
Met alleen Removing number geselecteerde
uitleg:
voor de cases zoals '3test', '4-EC', splitst de ontwerptokenizer-dosis deze gevallen niet op en behandelt ze als de hele tokens. De getallen in deze woorden worden dus niet verwijderd.
Met alleen 'Nummer verwijderen' geselecteerd

U kunt ook de reguliere expressie gebruiken om aangepaste resultaten uit te voeren:

Configuratie Uitvoerresultaat
Met alle opties geselecteerd
Aangepaste reguliere expressie: (\s+)*(-|\d+)(\s+)*
Aangepaste vervangingstekenreeks: \1 \2 \3
Met alle opties geselecteerd en reguliere expressie
Met alleen Removing number de geselecteerde
aangepaste reguliere expressie: (\s+)*(-|\d+)(\s+)*
Aangepaste vervangende tekenreeks: \1 \2 \3
Met geselecteerde getallen en reguliere expressies verwijderen

Volgende stappen

Bekijk de set onderdelen die beschikbaar zijn voor Azure Machine Learning.