Greta 0.5.0 soft release!

Hi folks!

I’m really excited to say that {greta} is approaching release!

The main feature of this new release is that we are using Tensorflow 2.0 (TF2) under the hood. This was a pretty big update of the internals, and it wouldn’t have been possible without the guidance and direction of Nick Golding, the creator of {greta}. Thanks, Nick!

Outside of the upgrade to TF2, here is a summary of the changes we have made in this release

  • Improved the installation process in install_greta_deps(), I’m pretty confident it should “just work”, which is a big call, but I’m keen to hear how it works for you.
  • Added print methods for MCMC lists and greta arrays. There are still more tweaks to be made here, but the overall improvement is that your console shouldn’t be flooded if you print large MCMC or greta arrays
  • Improvements to internals - added more checking functions to make the intention of code clearer, updated error messages, and other refactoring.

For more detail on the changes made in this release, see the NEWS file.

If people have time we’d love to get your feedback on trying out the new greta, the easiest way to install it is via the r-universe, with:

install.packages("greta", repos = c("https://greta-dev.r-universe.dev", "https://cloud.r-project.org"))

I am aiming to submit this to CRAN within the next week, ideally by Wednesday 28th August - let me know if you have any feedback or issues with installation and use!

Cheers,

Nick Tierney
Research Software Engineer
Maintainer of greta

1 Like

For the especially keen, if you’d like to try out our new installation process for managing python dependencies, here are some instructions:

Install greta from the R universe with

install.packages("greta", repos = c("https://greta-dev.r-universe.dev", "https://cloud.r-project.org"))

And then try

library(greta)
install_greta_deps()

And follow the prompts for installation.

If all goes well, it should ask you to restart R, after which, you should be able to run

library(greta) # it should do this
greta_sitrep()

And it should give you some successful green ticks

1 Like

Thanks Nick, you should give yourself a pad on the back too!

All went well, except some warnings that seem minor on my end.

> greta_sitrep()
✔ python (v3.10) available    
WARNING:tensorflow:From C:\Users\hrl23\AppData\Local\MINICO~1\envs\GRETA-~1\lib\site-packages\keras\src\losses.py:2976: The name tf.losses.sparse_softmax_cross_entropy is deprecated. Please use tf.compat.v1.losses.sparse_softmax_cross_entropy instead.

✔ TensorFlow (v2.15.0) available  
WARNING:tensorflow:From C:\Users\hrl23\AppData\Local\MINICO~1\envs\GRETA-~1\lib\site-packages\tensorflow_probability\python\internal\backend\numpy\_utils.py:48: The name tf.logging.TaskLevelStatusMessage is deprecated. Please use tf.compat.v1.logging.TaskLevelStatusMessage instead.

WARNING:tensorflow:From C:\Users\hrl23\AppData\Local\MINICO~1\envs\GRETA-~1\lib\site-packages\tensorflow_probability\python\internal\backend\numpy\_utils.py:48: The name tf.control_flow_v2_enabled is deprecated. Please use tf.compat.v1.control_flow_v2_enabled instead.

✔ TensorFlow Probability (v0.23.0) available  
✔ greta conda environment available            
✔ Initialising python and checking dependencies ... done!               

ℹ greta is ready to use!
1 Like

Thanks @hrlai! :slight_smile:

Oh that is a really interesting message, I’ll take a poke around and see if we call those functions.