Ir al contenido principal

NLP: La ley de Herdan

 La ley de Herdan es una ley empírica que describe el número de palabras distintas en un documento (o conjunto de documentos) como una función de la longitud del documento. La fórmula de la ley de Herdan es:

donde VR es el número de palabras distintas en un documento de tamaño n, y K y β son parámetros libres que se determinan empíricamente. Con un texto en inglés, típicamente K es entre 10 y 100, y β es entre 0,4 y 0,6 123.

El parámetro K se refiere a la riqueza léxica del documento, es decir, el número de palabras distintas que aparecen en el documento. El valor de K depende del idioma y del tipo de texto. Por ejemplo, un texto técnico tendrá una riqueza léxica más baja que un texto literario.

El parámetro β se refiere a la tasa de crecimiento de la riqueza léxica con respecto al tamaño del documento. Un valor de β cercano a 1 indica que la riqueza léxica crece linealmente con el tamaño del documento, mientras que un valor de β menor que 1 indica que la riqueza léxica crece a una tasa cada vez más lenta a medida que el tamaño del documento aumenta.

Por ejemplo, si tenemos un documento de 1000 palabras en inglés con y , podemos calcular el número de palabras distintas en el documento como:

Esto significa que hay alrededor de 224 palabras distintas en el documento.

Comentarios

Entradas populares de este blog

[DATA SCIENCE] [R PROGRAMMING] [DATA VISUALIZATION] Explorando Técnicas de Análisis y Visualización de Datos en R

  Introducción En el análisis de datos, la correcta partición y visualización de los datasets es crucial para obtener conclusiones precisas y valiosas. En este artículo, exploraremos diversas técnicas en R para particionar datasets, crear histogramas, scatterplots, boxplots, y ajustar curvas de regresión y suavizado. 1. Partición de Datasets La partición de datasets es una etapa fundamental en el proceso de machine learning. Permite dividir los datos en conjuntos de entrenamiento, validación y prueba para asegurar que nuestros modelos se entrenen y evalúen adecuadamente. Función para Particionar Datasets # Función para automatizar la partición de datasets partition_data <- function(data, target_column, train_ratio = 0.7, validate_ratio = NULL, seed = 123) {   # Establecer la semilla para reproducibilidad   set.seed(seed)      # Crear partición de entrenamiento   training_ids <- createDataPartition(data[[target_column]], p = train_ratio, list = FA...

[Validación Cruzada] [Machine Learning] [Evaluación de Modelos] [Ciencia de Datos] [R Programming] [Resampling] Validación Cruzada: Concepto y Técnicas Principales

Validación Cruzada: Concepto y Técnicas Principales Validación Cruzada: Concepto y Técnicas Principales La validación cruzada es un conjunto de técnicas utilizadas para evaluar la capacidad de generalización de un modelo de machine learning. Su objetivo principal es determinar cómo de bien puede el modelo desempeñarse con datos no vistos, proporcionando una evaluación más robusta y fiable en comparación con dividir los datos en un simple conjunto de entrenamiento y prueba. Principales Técnicas de Validación Cruzada 1. K-Fold Cross Validation (Validación Cruzada K-Fold) El conjunto de datos se divide en \(k\) particiones o "pliegues" de igual tamaño. El modelo se entrena \(k\) veces: en cada iteración, un pliegue diferente se utiliza como conjunto de prueba y los \(k-1\) pliegues restantes como conjunto de entrenamiento. La métrica final (por ejemplo, precisión, F1, etc.) se c...

[Machine Learning][Python][Clasificación] Understanding Support Vector Machines with Python

Support Vector Machines con Python Support Vector Machines con Python Support Vector Machines (SVM) son algoritmos de aprendizaje supervisado muy potentes, a menudo utilizados para problemas de clasificación. Este artículo demuestra cómo utilizar SVM en Python con la biblioteca scikit-learn y proporciona una explicación de la teoría subyacente. 1. Implementación en Python Código en Python: import numpy as np # Biblioteca para trabajar con arreglos y operaciones matemáticas import matplotlib.pyplot as plt # Biblioteca para crear gráficos y visualizaciones from sklearn import datasets # Módulo para cargar y manejar conjuntos de datos estándar from sklearn.model_selection import train_test_split # Función para dividir los datos en entrenamiento y prueba from sklearn.svm import SVC # Clase para implementar Support Vector Machines # 1. Cargar datos # Usaremos el dataset de iris, seleccionando solo dos clases para sim...