Bigramas Python

Zeeshan Afridi 21 junio 2023
  1. Bigramas en Python
  2. Forma bigramas a partir de una lista de palabras en Python
  3. Forme bigramas en Python utilizando la biblioteca NLTK
  4. Ventajas de los bigramas
  5. Desventajas de los bigramas
  6. Conclusión
Bigramas Python

Un par de palabras consecutivas en un texto se llama bigrama. Estos se usan comúnmente en el procesamiento estadístico del lenguaje y también se usan para identificar las palabras más comunes en un texto.

Los bigramas se pueden usar para encontrar las palabras más comunes en un texto y también se pueden usar para generar texto nuevo. Por ejemplo, los bigramas Me gusta y Me gusta se pueden utilizar para crear la oración Me gusta comer.

Bigramas en Python

Puede usar la biblioteca NLTK para encontrar bigramas en un texto en Python. Esta biblioteca tiene una función llamada bigramas() que toma una lista de palabras como entrada y devuelve una lista de bigramas.

Los bigramas también se pueden utilizar para mejorar la precisión de los modelos de lenguaje. Los modelos de lenguaje se usan para predecir la siguiente palabra en un texto y los bigramas se pueden usar para aumentar la precisión de estas predicciones.

Entonces, ¿para qué son adecuados los bigramas? Los bigramas se pueden usar para diversas tareas, incluida la búsqueda de las palabras más comunes en un texto, la generación de texto nuevo y la mejora de la precisión de los modelos de lenguaje.

Código de ejemplo:

ans = []
text = ["cant railway station", "citadel hotel", " police stn"]
for line in text:
    arr = line.split()
    for i in range(len(arr) - 1):
        ans.append([[arr[i]], [arr[i + 1]]])

print(ans)

Producción :

[[['cant'], ['railway']], [['railway'], ['station']], [['citadel'], ['hotel']], [['police'], ['stn']]]

Forma bigramas a partir de una lista de palabras en Python

Un bigrama se usa para un par de palabras que generalmente se encuentran juntas en un texto. Para formar bigramas, primero necesitamos tokenizar el texto en una lista de palabras.

Luego, podemos iterar desde la lista y, para cada palabra, verificar si la palabra anterior también está en la lista. Si es así, agregamos las dos palabras a una lista de bigramas.

Estos son los pasos principales para formar bigramas en Python.

  • Para formar bigramas, necesitamos hacer un vocabulario.
  • Necesitamos obtener una lista de oraciones para nuestro corpus.
  • Al final, crearemos bigramas de todas las palabras disponibles en el corpus.

Los bigramas pueden ser útiles para modelar el lenguaje, ya que pueden darnos una mejor idea de la probabilidad de que ciertas palabras aparezcan juntas. También puede usarlos para otras tareas, como la revisión ortográfica y la recuperación de información.

Python proporciona una forma sencilla de formar bigramas a partir de una lista de palabras. La función bigramas() aceptará una lista de palabras y devolverá una lista de bigramas; cada bigrama es una tupla de dos palabras.

Por ejemplo, si tenemos una lista de palabras ['I', 'love', 'python'], la función bigrams() devolverá [('I', 'love'), ('love ', 'pitón')].

Código de ejemplo:

text = ["this is a sentence", "so is this one"]
bigrams = [b for l in text for b in zip(l.split(" ")[:-1], l.split(" ")[1:])]
print(bigrams)

Producción :

[('this', 'is'), ('is', 'a'), ('a', 'sentence'), ('so', 'is'), ('is', 'this'), ('this', 'one')]

Forme bigramas en Python utilizando la biblioteca NLTK

El siguiente código muestra cómo usar la biblioteca NLTK para formar bigramas a partir de una lista de palabras. NLTK es una biblioteca popular para el procesamiento de lenguaje natural en Python.

Código de ejemplo:

import nltk

words = ["please", "turn", "off", "the", "light"]

bigrams = nltk.bigrams(words)

for bigram in bigrams:
    print(bigram)

Producción :

('please', 'turn')
('turn', 'off')
('off', 'the')
('the', 'light')

Ventajas de los bigramas

Hay algunas ventajas significativas en el uso de bigramas al analizar datos de texto.

  1. Primero, los bigramas pueden ayudar a identificar palabras que a menudo se usan juntas, lo que puede ayudar a comprender el significado general de un texto.
  2. Además, los bigramas pueden crear modelos más precisos para tareas predictivas como la clasificación de texto.
  3. Finalmente, los bigramas también pueden ayudar a reducir la dimensionalidad de los datos, lo que puede ser útil cuando se trabaja con grandes corpus de texto.

Desventajas de los bigramas

Si bien los bigramas pueden ser útiles en algunas situaciones, también tienen desventajas.

  1. Una desventaja es que pueden ser más difíciles de calcular que otros métodos, como los unigramas.
  2. A veces, los bigramas pueden producir resultados menos precisos que otros métodos.
  3. Finalmente, los bigramas pueden ser más difíciles de interpretar que otros métodos, lo que dificulta la comprensión del significado de los resultados.

Conclusión

Los bigramas y trigramas pueden capturar los patrones de co-ocurrencia y co-ubicación de palabras en un texto. Por ejemplo, es probable que el bigrama vino tinto aparezca en un texto sobre vinos, mientras que el trigrama el vino tinto probablemente aparezca en un texto sobre cata de vinos.

Estos patrones pueden ayudar a identificar el tema de un texto o generar un nuevo texto similar a un texto dado.

Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

Artículo relacionado - Python List