Clustering y Big Data: perfiles de uso de energía del cliente para una utilidad de energíaMe estoy preparando para una visita a un cliente de servicios públicos de energía (JMPPRO) que está interesado en agrupar a sus clientes por uso de energía. Miden cada cuenta y prueban el uso de energía cada 15 minutos. Cuando hace los cálculos sobre esto, rápidamente se convierte en big data (96 lecturas por día en 10K clientes es aproximadamente 1 millón de lecturas por día). Estoy tratando de usar la agrupación para agrupar cuentas de clientes basadas en patrones de consumo de energía similares. Soy nuevo en la agrupación, así que no estoy seguro de estar usando el mejor método. He intentado apilar y dividir los datos, parece que la división funciona mejor, aunque una semana de lecturas ya son 672 columnas con 10K filas para las cuentas de los clientes. El agrupamiento jerárquico da un resultado muy bueno pero no puede manejar filas de 10K, funciona muy bien en filas de 2K pero no en filas de 3K. La agrupación de medios K puede manejar todas las filas de 10K, pero los resultados no son tan buenos como los jerárquicos, muchas cuentas diferentes se agrupan juntas. Así que en este momento, estoy boxeando en los datos con solo 7 días de medición y cuentas 2K. Estoy obteniendo un resultado muy bueno y demuestra la técnica, pero está muy muestreada del caso de uso real. Si me falta algo, agradecería algunos consejos. Tengo un archivo de ejemplo pero es grande, 190 MB.
Re: Clustering y Big Data - Perfiles de uso de energía del cliente para una utilidad de energíaRecibí algunas solicitudes para ver el archivo de ejemplo y publiqué esto en el intercambio de archivos. La descarga en sí es un archivo pequeño y hay un script incrustado que construirá la tabla. Tenga cuidado al seleccionar los parámetros porque puede terminar con una tabla gigante.
Estoy usando una función coseno para simular la curva de uso de energía durante el día. Duke me dijo cómo se ve realmente esta curva, que es como un coseno con una joroba para el uso de energía por la tarde y la noche.
https://community.jmp.com/t5/JMP-Sample-Data/Power-Company-Metering-Example-Data/ta-p/42016
Re: Clustering y Big Data - Perfiles de uso de energía del cliente para una utilidad de energíaGracias a todos por sus aportes. Algunos de ustedes estaban interesados en el archivo. Estoy poniendo dos archivos en el intercambio de archivos, uno de ellos actúa como un archivo de control y el otro tiene un script incrustado para construir una tabla de datos de gran tamaño. Termina con aproximadamente 6 millones de filas y tardó 2 minutos en terminar. Los dos archivos deben estar vinculados por Cuenta, pero no estoy seguro si esto funciona después de mezclar los archivos, por lo que es posible que tenga que establecer la unión virtual. El archivo de control se llama "Información del cliente" y el archivo de autoconstrucción se llama "Ejemplo de Power Comany - Tabla de autoconstrucción (grande)". Solo asegúrese de que ambos archivos estén abiertos en la sesión JMP antes de ejecutar el script incrustado.
Re: Clustering y Big Data - Perfiles de uso de energía del cliente para una utilidad de energíaSolo un breve comentario a la respuesta de Dons sobre nn:
En las compañías de energía, utilizaron exactamente ese enfoque, tomar una muestra y encontrar grupos apropiados y luego usar redes neuronales para predecir el resto de los datos en estos grupos. Lo hice con bastante frecuencia mientras trabajaba para MathWorks y funcionó bastante bien. Por supuesto, tendría que verificar el modelo nn de vez en cuando, ya que las cosas pueden cambiar con el tiempo y los grupos iniciales también pueden cambiar.
Esas empresas utilizan estas clasificaciones a menudo para especificar qué oferta de contrato y precio ofrecen a los nuevos clientes donde solicitan un perfil de consumo. Además, a veces utilizan esto para predecir los usos para que sus clientes puedan intercambiar los recursos gratuitos sin meterse en problemas en las horas punta.
Mejor
Martín
Re: Clustering y Big Data - Perfiles de uso de energía del cliente para una utilidad de energíaQuería agregar eso para agrupamiento jerárquico con Opción Fast Ward, aún puede analizar datos de hasta 200,000 filas. http://www.jmp.com/support/help/13/Overview_of_Platforms_for_Clustering_Observation.shtml
Re: Clustering y Big Data - Perfiles de uso de energía del cliente para una utilidad de energíaSegún su descripción, creo que esa es la forma de agrupar cuentas en los datos que consisten en columnas de uso de energía y filas de cuentas. Como ha descubierto, la agrupación jerárquica no puede manejar un gran número de filas, pero K-means sí. Esto se conoce en la agrupación y es una de las consideraciones clave al elegir entre los dos métodos. Dijiste que el grupo de clústeres Kmean agrupa muchas cuentas diferentes mientras la agrupación jerárquica no. Me preguntaba cuántos grupos había establecido al ejecutar K-means. Y, en comparación, ¿cuántos clústeres usaste? ¿agrupación jerárquica? Tal vez necesite probar una mayor cantidad de clústeres con K-means.
Re: Clustering y Big Data - Perfiles de uso de energía del cliente para una utilidad de energíaEstoy de acuerdo con Mark El truco consistirá en agregar los datos en métricas significativas para reducir el número de filas (no estoy seguro de qué puede hacer con las columnas, ya que supongo que representan a los clientes). ¿Qué tal calcular el uso promedio por diferentes períodos de tiempo (por ejemplo, hora del día, día de la semana, semana del año, mes del año, etc.), luego derivar un puntaje de desviación para cada uno de estos (suma al cuadrado o diferencia absoluta, tal vez) . También consideraría mirar alguna versión a escala de estos, ya que sospecho que estarán muy sesgados. Otra idea sería agrupar una submuestra, como lo hace, luego usar una red neuronal (o árbol) para predecir el agrupamiento.
No me importaría ver el archivo de ejemplo, si pudiera compartirlo.
Don
Re: Clustering y Big Data - Perfiles de uso de energía del cliente para una utilidad de energíaTambién podría considerar derivar nuevas respuestas significativas. Por ejemplo, uso máximo, uso máximo en los últimos seis meses, uso promedio, etc. Los datos sin procesar contienen información, pero como tal, ¿qué dice cada quince minutos?