Previsión del progreso de la vacunación con Prophet

Compartir esta publicación

Para predecir la inmunidad de rebaño en un país dado por los datos, estudiamos diferentes parámetros procedentes del conjunto de datos de vacunaciones del país. Seleccionamos total_de_vacunaciones y personas_plenamente_vacunadas_por_ciento teniendo en cuenta este último ratio como uno de los más significativos para medir el progreso de la inmunidad. Si quieres saber más sobre el análisis exploratorio anterior con ideas reveladoras como la correlación entre el crecimiento de la GPD del país y el progreso de la inmunidad procedente de los datos de COVID, puedes echar un vistazo aquí. Y en este post veremos la previsión del progreso de la inmunidad con Prophet

Previsión de vacunación de inmunidad

En cuanto a la búsqueda de la herramienta de previsión más significativa, trazamos la suma acumulada del progreso de personas totalmente vacunadas en el tiempo para visualizar el tipo de crecimiento. Como conclusión, descubrimos que el patrón sigue un tipo de curva de crecimiento logístico, apuntando a un comportamiento en el que la inmunidad de rebaño comienza siendo pequeña pero aumenta exponencialmente, pero luego comienza a disminuir hacia y asíntota. Al pensar en este tipo de curva de crecimiento logístico, suele haber algún punto máximo alcanzable: tamaño total del mercado, tamaño total de la población, etc. Para nuestro modelo de predicción, el concepto clave es asumir un parámetro de tope que podría estar alineado con el ritmo o el comportamiento de vacunación.

Screenshot 2021 06 29 at 08.00.36
Fig. 1. Curva de crecimiento logístico canónico y progreso de Inmunidad de Israel, líder en vacunación.

Según las fuentes de datos, Israel ha destacado como líder en vacunación. El hecho de contar con diferentes grupos de edad, una campaña de vacunación muy comercializada y un ritmo de vacunación inquieto han sido factores clave de éxito para lograr estos resultados.

  Los principales expertos en Ciencia de Datos que debes conocer

 

¿Por qué utilizar Prophet?

Prophet es un procedimiento de previsión implementado en R y Python. Es rápido y proporciona previsiones completamente automatizadas que pueden ser ajustadas a mano por científicos y analistas de datos. Tiene muy en cuenta la estacionalidad y se ha utilizado para predecir el impacto de las campañas de Facebook. De hecho, ofrece flexibilidad y ajuste automático de varios parámetros.

Seleccionamos esta herramienta porque nos permite establecer un modelo de predicción de crecimiento logístico con un parámetro cap como una secuencia creciente, siguiendo el patrón que sigue la inmunidad de la manada. Además, permite seleccionar los días de predicción que queremos. 

A la hora de implementar la capacidad de carga, diseñamos una función Python con numpy que seguirá el ritmo de crecimiento que se ha observado en la suma acumulada de personas_plenamente_vacunadas.

def create_cap_sequence(dataset, n_days, growth_pattern):
    
    '''Creates a cap sequence list for forecasting growth and 
    implements it as a column in a dataframe
    
        Args : 
            dataset for prediction
            number of days
            growth_pattern : increase of people_fully_vaccinated per day
    '''
    
    
    interval = 1
    list_cap = np.arange(0, interval* n_days, growth_pattern)
    dataset['cap'] = list_cap
    
    return dataset

Para escalar este modelo para todos los países, instanciaremos su propio modelo de crecimiento logístico teniendo en cuenta la capacidad de carga.  Para ello, entenderemos que cada país tiene su propia secuencia de tope de crecimiento y lo implementaremos de forma coherente utilizando la función descrita en la Fig3. 
Al crear el modelo Prophet de aprendizaje automático, tendremos en cuenta para seleccionar el parámetro logístico cuando lo instanciemos, periodos como el número de días que queremos predecir.

def prophet_model(dataset, number_of_days, cap_parameter):
    
    '''Creates the machine learning model for forecasting herd inmunity,
    a forecast dataset and returns the plot
        
        Args : 
            dataset : country dataset that includes renamed columns for
            Prophet, and the carrying capacity column
            
            number_of_days : number of days to predict 
            cap_parameter : total carrying capacity of herd imnutiy per country 
        
        '''
    
    model = Prophet.Prophet(growth='logistic')
    model.fit(dataset)
    future_dataset = m.make_future_dataframe(periods = number_of_days)
    future_dataset['cap'] = cap_parameter
    forecast = model.predict(future_dataset)
    
    return model.plot(forecast)
Screenshot 2021 06 29 at 08.03.46
Fig2. Resultados de los modelos de predicción de Prophet para Israel.

Conclusiones

La población ha sido educada para tomar precauciones y medidas de seguridad para bajar una curva de inflexión de distribución normal. El progreso de la inmunidad sigue un patrón logístico, ahora podría ser el momento de apuntar y apoyar todas las iniciativas que sigan una curva logística y puedan aumentar la capacidad de carga.

  Introducción a Matplotlib - Lección 1

Author

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Suscríbete a nuestro boletín de noticias

Recibe actualizaciones de los últimos descubrimientos tecnológicos

¿Tienes un proyecto desafiante?

Podemos trabajar juntos

apiumhub software development projects barcelona
Secured By miniOrange