previsão

previsão

  • Melhorando a previsão do ano do Linux no desktop

    Eu resolvi melhorar a previsão e o modelo pra tal sobre o Linux no desktop, uma realidade inegável.  Então escrevi algo em python pra fazer isso pra mim o trabalho e usar de algum modelo já pronto.

    
    (venv) helio@goosfraba ~/D/linux-desktop-dominance-forecast (main)> ./forecasting.py
                Windows  OS X  Unknown  Linux  Chrome OS  iOS  Android  \
    Date                                                                 
    2009-01-01    95.42  3.68     0.17   0.64        0.0  0.0      0.0   
    2009-02-01    95.39  3.76     0.14   0.62        0.0  0.0      0.0   
    2009-03-01    95.22  3.87     0.16   0.65        0.0  0.0      0.0   
    2009-04-01    95.13  3.92     0.17   0.66        0.0  0.0      0.0   
    2009-05-01    95.25  3.75     0.24   0.65        0.0  0.0      0.0   
    
                Playstation  Other  
    Date                            
    2009-01-01         0.08   0.02  
    2009-02-01         0.07   0.02  
    2009-03-01         0.08   0.02  
    2009-04-01         0.10   0.02  
    2009-05-01         0.09   0.02  
                Windows   OS X  Unknown  Linux  Chrome OS  iOS  Android  \
    Date                                                                  
    2024-01-01    73.00  16.11     5.33   3.77       1.78  0.0      0.0   
    2024-02-01    72.17  15.42     6.10   4.03       2.27  0.0      0.0   
    2024-03-01    72.47  14.68     6.52   4.05       2.27  0.0      0.0   
    2024-04-01    73.50  14.70     5.34   3.88       2.56  0.0      0.0   
    2024-05-01    73.91  14.90     4.87   3.77       2.54  0.0      0.0   
    2024-06-01    72.81  14.97     6.23   4.05       1.93  0.0      0.0   
    2024-07-01    72.10  14.92     7.13   4.44       1.41  0.0      0.0   
    
                Playstation  Other  
    Date                            
    2024-01-01          0.0   0.01  
    2024-02-01          0.0   0.01  
    2024-03-01          0.0   0.01  
    2024-04-01          0.0   0.01  
    2024-05-01          0.0   0.01  
    2024-06-01          0.0   0.01  
    2024-07-01          0.0   0.01  
    /home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/tsa/base/tsa_model.py:473: ValueWarning: No frequency information was provided, so inferred frequency MS will be used.
      self._init_dates(dates, freq)
    /home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/tsa/base/tsa_model.py:473: ValueWarning: No frequency information was provided, so inferred frequency MS will be used.
      self._init_dates(dates, freq)
    /home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/tsa/statespace/sarimax.py:978: UserWarning: Non-invertible starting MA parameters found. Using zeros as starting parameters.
      warn('Non-invertible starting MA parameters found.'
    RUNNING THE L-BFGS-B CODE
    
               * * *
    
    Machine precision = 2.220D-16
     N =           11     M =           10
     This problem is unconstrained.
    
    At X0         0 variables are exactly at the bounds
    
    At iterate    0    f=  2.00575D-01    |proj g|=  1.24633D+00
    
    At iterate    5    f= -1.49635D-01    |proj g|=  1.77236D-01
    
    At iterate   10    f= -3.64537D-01    |proj g|=  1.24837D-01
    
    At iterate   15    f= -3.84843D-01    |proj g|=  1.22570D-01
    
    At iterate   20    f= -4.20877D-01    |proj g|=  9.71167D-02
    
    At iterate   25    f= -4.29351D-01    |proj g|=  1.13565D-01
    
    At iterate   30    f= -4.33425D-01    |proj g|=  9.06436D-02
    
    At iterate   35    f= -4.34142D-01    |proj g|=  3.98871D-02
    
    At iterate   40    f= -4.36192D-01    |proj g|=  4.26757D-01
    
    At iterate   45    f= -4.37801D-01    |proj g|=  6.82859D-02
    
    At iterate   50    f= -4.37938D-01    |proj g|=  1.67285D-02
    
               * * *
    
    Tit   = total number of iterations
    Tnf   = total number of function evaluations
    Tnint = total number of segments explored during Cauchy searches
    Skip  = number of BFGS updates skipped
    Nact  = number of active bounds at final generalized Cauchy point
    Projg = norm of the final projected gradient
    F     = final function value
    
               * * *
    
       N    Tit     Tnf  Tnint  Skip  Nact     Projg        F
       11     50     55      1     0     0   1.673D-02  -4.379D-01
      F = -0.43793754789434586     
    
    STOP: TOTAL NO. of ITERATIONS REACHED LIMIT                 
    /home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/base/model.py:607:
      ConvergenceWarning: Maximum Likelihood optimization failed to converge. Check mle_retvals
      warnings.warn("Maximum Likelihood optimization failed to "
    The year of Linux on the Desktop: 2036-11-30 00:00:00
    

    Se ignorarmos os pequenos erros e avisos que aparecem, coisa pouca e irrelevante como valor divergir demais, podemos ver claramente quando o ano do Linux no desktop acontece: 2036-11-30

    Então a previsão revisada é que logo estaremos em todos os lugares. Aguardem-nos!

    E claro que publiquei isso tudo no GitHub:

    E usei o seguinte artigo como referência (e código, diga-se de passagem):

    Bom ano do Linux no desktop pra todos vocês.

We use cookies

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.