Articles of apache spark ml

Pyspark: obtenga todos los parámetros de los modelos creados con ParamGridBuilder

Estoy usando PySpark 2.0 para una competencia de Kaggle. Me gustaría saber el comportamiento de un modelo ( RandomForest ) dependiendo de diferentes parámetros. ParamGridBuilder() permite especificar diferentes valores para un solo parámetro y luego realizar (supongo) un producto cartesiano de todo el conjunto de parámetros. Suponiendo que mi DataFrame ya está definido: rdc = […]

¿Cómo combinar n-grams en un vocabulario en Spark?

Preguntándose si hay una función Spark incorporada para combinar las funciones 1, 2, n-gramo en un solo vocabulario. La configuración de n=2 en NGram seguida de la invocación de los resultados de CountVectorizer en un diccionario que contiene solo 2 gramos. Lo que realmente quiero es combinar todos los frecuentes 1 gramos, 2 gramos, etc. […]

¿Cómo pasar params a un método ML Pipeline.fit?

Estoy tratando de construir un mecanismo de agrupamiento usando Google Dataproc + Spark Google Bigquery Crea un trabajo usando Spark ML KMeans + pipeline Como sigue: Crear una tabla de características basada en el nivel de usuario en bigquery Ejemplo: cómo se ve la tabla de características userid |x1 |x2 |x3 |x4 |x5 |x6 |x7 […]

Elemento de acceso de un vector en un dataframe de chispa (vector de probabilidad de regresión logística)

Entrené un modelo de LogisticRegression en PySpark (paquete ML) y el resultado de la predicción es un DataSrame de PySpark ( cv_predictions ) (ver [1]). La columna de probability (ver [2]) es un tipo de vector (ver [3]). [1] type(cv_predictions_prod) pyspark.sql.dataframe.DataFrame [2] cv_predictions_prod.select(‘probability’).show(10, False) +—————————————-+ |probability | +—————————————-+ |[0.31559134817066054,0.6844086518293395]| |[0.8937864350711228,0.10621356492887715]| |[0.8615878905395029,0.1384121094604972] | |[0.9594427633777901,0.04055723662220989]| |[0.5391547673698157,0.46084523263018434]| |[0.2820729747752462,0.7179270252247538] […]

¿Cómo puedo declarar una columna como una característica categórica en un DataFrame para usar en ml?

¿Cómo puedo declarar que una columna dada en mi DataFrame contiene información categórica? Tengo un Spark SQL DataFrame que DataFrame de una base de datos. Muchas de las columnas en este DataFrame tienen información categórica, pero están codificadas como Longs (para privacidad). Quiero poder decirle a spark-ml que aunque esta columna es numérica, la información […]

¿Cómo convertir ArrayType a DenseVector en PySpark DataFrame?

Recibo el siguiente error al intentar construir un Pipeline ML: pyspark.sql.utils.IllegalArgumentException: ‘requirement failed: Column features must be of type org.apache.spark.ml.linalg.VectorUDT@3bfc3ba7 but was actually ArrayType(DoubleType,true).’ La columna Mis features contiene una matriz de valores de punto flotante. Parece que necesito convertirlos en algún tipo de vector (no es escaso, ¿es un DenseVector?). ¿Hay alguna forma de […]

Crear un vector de características mediante progtwigción en Spark ML / pyspark

Me pregunto si hay una forma concisa de ejecutar ML (por ejemplo, KMeans) en un DataFrame en pyspark si tengo las características en varias columnas numéricas. Es decir, como en el conjunto de datos Iris : (a1=5.1, a2=3.5, a3=1.4, a4=0.2, id=u’id_1′, label=u’Iris-setosa’, binomial_label=1) Me gustaría usar KMeans sin recrear el DataSet con el vector de […]

Crear puntos etiquetados desde Spark DataFrame en Python

¿Qué función .map() en python utilizo para crear un conjunto de labeledPoints desde un labeledPoints de labeledPoints de chispa? ¿Cuál es la notación si la etiqueta / resultado no es la primera columna pero puedo referirme a su nombre de columna, ‘estado’? Creo el dataframe de Python con esta función .map (): def parsePoint(line): listmp […]

¿Cómo asignar características de la salida de un VectorAssembler a los nombres de columna en Spark ML?

Estoy tratando de ejecutar una regresión lineal en PySpark y quiero crear una tabla que contenga estadísticas de resumen, como los coeficientes, los valores de p y los valores de t para cada columna en mi conjunto de datos. Sin embargo, para entrenar un modelo de regresión lineal, tuve que crear un vector de características […]

Cómo hacer rodar un estimador personalizado en PySpark mllib

Estoy tratando de construir un simple Estimator personalizado en PySpark MLlib. Tengo aquí que es posible escribir un transformador personalizado, pero no estoy seguro de cómo hacerlo en un Estimator . Tampoco entiendo qué hace @keyword_only y por qué necesito tantos setters y getters. Scikit-learn parece tener un documento adecuado para modelos personalizados ( vea […]