Share via


ngram : extracteurs de caractéristiques Machine Learning

Extracteurs de caractéristiques qui peuvent être utilisés avec mtText.

Utilisation

  ngramCount(ngramLength = 1, skipLength = 0, maxNumTerms = 1e+07,
    weighting = "tf")

  ngramHash(ngramLength = 1, skipLength = 0, hashBits = 16,
    seed = 314489979, ordered = TRUE, invertHash = 0)

Arguments

ngramLength

Entier qui spécifie le nombre maximal de jetons à prendre lors de la construction d’un n-gramme. La valeur par défaut est 1.

skipLength

Entier qui spécifie le nombre maximal de jetons à sauter lors de la construction d’un n-gramme. Si la valeur spécifiée comme longueur à ignorer est k, les n-grammes peuvent contenir jusqu’à k sauts (pas nécessairement consécutifs). Par exemple, si k=2, alors les 3-grammes extraits du texte « the sky is blue today » sont : « the sky is », « the sky blue », « the sky today », « the is blue », « the is today » et « the blue today ». La valeur par défaut est 0.

maxNumTerms

Entier qui spécifie le nombre maximum de catégories à inclure dans le dictionnaire. La valeur par défaut est 10000000.

weighting

Chaîne de caractères qui spécifie les critères de pondération :

  • "tf" : pour utiliser la fréquence des termes.
  • "idf" : pour utiliser la fréquence de document inverse.
  • "tfidf" : pour utiliser à la fois la fréquence des termes et la fréquence de document inverse.

hashBits

Valeur de type entier. Nombre de bits à hacher. Doit être compris entre 1 et 30 (inclus).

seed

Valeur de type entier. Seed de hachage.

ordered

TRUE pour inclure la position de chaque terme dans le hachage. Sinon, FALSE. La valeur par défaut est TRUE.

invertHash

Entier indiquant la limite du nombre de clés permettant de générer le nom de l’emplacement. 0 signifie aucun hachage inversé ; -1 signifie aucune limite. Bien qu’une valeur nulle produise de meilleures performances, une valeur différente de zéro est nécessaire pour obtenir des noms de coefficients significatifs.

Détails

ngramCount permet de définir des arguments pour les extractions de fonctionnalités basées sur le nombre. Il accepte les options suivantes : ngramLength, skipLength, maxNumTerms et weighting.

ngramHash permet de définir des arguments pour l’extraction de caractéristiques basée sur le hachage. Il accepte les options suivantes : ngramLength, skipLength, hashBits, seed, ordered et invertHash.

Valeur

Chaîne de caractères définissant la transformation.

Auteur(s)

Microsoft Corporation Microsoft Technical Support

Voir aussi

featurizeText.

Exemples


  myData <- data.frame(opinion = c(
     "I love it!",
     "I love it!",
     "Love it!",
     "I love it a lot!",
     "Really love it!",
     "I hate it",
     "I hate it",
     "I hate it.",
     "Hate it",
     "Hate"),
     like = rep(c(TRUE, FALSE), each = 5),
     stringsAsFactors = FALSE)

 outModel1 <- rxLogisticRegression(like~opinionCount, data = myData, 
     mlTransforms = list(featurizeText(vars = c(opinionCount = "opinion"), 
         wordFeatureExtractor = ngramHash(invertHash = -1, hashBits = 3)))) 
 summary(outModel1)   

 outModel2 <- rxLogisticRegression(like~opinionCount, data = myData, 
     mlTransforms = list(featurizeText(vars = c(opinionCount = "opinion"), 
         wordFeatureExtractor = ngramCount(maxNumTerms = 5, weighting = "tf"))))         
 summary(outModel2)