Seth Axen 🪓 :julia:
-
The real vectorization vec(⋅) stacks the input columns into a vector. The Kronecker product ⊗ is related by vec(ABC) = (Cᵀ ⊗ B) vec(B).
We can similarly define a complex version vecc(⋅) = [vec(Re(⋅)); vec(Im(⋅))], with a corresponding #Kronecker product kroncc(⋅,⋅) such that vecc(ABC) = kroncc(Cᵀ, B) vecc(B).
Does anyone know of any literature that discusses the relevant properties of vecc and kroncc? They naturally appear when computing #Jacobians of functions of complex matrices.
-
Recently I've gotten really excited about #Enzyme as the future of #autodiff in #JuliaLang, in particular because it supports more language features than #Zygote (e.g. mutation, fast control flow, and preserving structural sparsity). I've started getting acquainted with its rules system, and I have some first impressions by comparison to #ChainRules. 🧵
-
@ArviZ @TuringLang Also, in the next few weeks @ArviZ will have pure #JuliaLang implementations of all core functionality *except* for #Bayesian plots! We have a number of #GSoC #JSoC projects for porting plotting recipes in Plots.jl and Makie.jl. If you like visualizing posterior draws; love clean, informative plots; and enjoy one or both of these plotting packages, this project could be a great fit for you!
See e.g. https://github.com/arviz-devs/arviz/wiki/GSoC-2023-projects#model-diagnostics-plots-julia for details!
-
Reminder: I'll be mentoring a joint @ArviZ and @TuringLang #GSoC #JSoC project working on model-refitting for leave-one-out cross-validation. This project will make model comparison and assessment in Turing.jl more ergonomic and lay key groundwork for similar integration with other PPLs. If that sounds like something you'd like to work on, let us know! #JuliaLang
For details, see https://github.com/arviz-devs/arviz/wiki/GSoC-2023-projects#reloo-for-turing-models-julia. Please boost to help reach potential applicants!
-
While walking around the Tübingen old town, I ran into some folks I met at #BayesComp2023 in Finland just 2 weeks ago. They're in town for the #ProbNumSchool starting tomorrow. Looking forward to it!
-
Were #BayesComp2023 talks recorded? And if so, will attendees be able to access them? Really curious about some of the talks in sessions I didn't see.
-
Some of my favorite photos from Levi, Finland. #BayesComp2023
-
Finally met a bunch of fellow @ArviZ devs at #BayesComp2023! @avehtari @junpenglao
-
#BayesComp2023 is over! This has been by far my favorite conference experience. The location was beautiful, the talks were all excellent, and I met so many people in person I'd heard of or interacted with online. Many thanks to the organizers! I'm already looking forward to 2025!
-
On Thursday I skied the 2nd time, and this was much more pleasant. It was clear and sunny, and I found a way to the blue slopes on the south side. It turns out to get better one really needs more than 3 seconds to practice technique before ending up face first in the snow! By the time I reached the bottom I learned how to parallel turn. I feel like I'm ready for a red slope now, but that will need to wait for another trip. #BayesComp2023
-
@junpenglao @avehtari @mcmc_stan @pymc @TuringLang While I loved all the panelists' answers, in answer to the question, "how will probabilistic programming evolve in the future?", I'd say let's do better at automating what can be automated. IMO users shouldn't have to think about vectorizing their models, marginalizing out discrete parameters, or reparameterizing to improve geometry. This takes valuable time away from the real work of thinking about the question, model, and data. #ProbProg
-
Great panel on probabilistic programming at #BayesComp2023 with Mitzi, Tor, @junpenglao, and @henri_pesonen and led by @avehtari #probprog
@mcmc_stan @pymc @TuringLang -
If you're at #BayesComp2023 and see me, say hi! I especially like talking about #ProbProg, #JuliaLang, @TuringLang, @ArviZ, and how bad I am at skiing!
Tonight I'm presenting a poster about using Pathfinder.jl to initialize HMC and diagnose computational issues.
-
Really enjoyed my first full day at #BayesComp2023. The talks have been interesting, and I've had a number of really nice chats during the breaks. Looking forward to the rest of the conference!
-
A brief recap of my first time downhill skiing. ⛷️ The very first thing I did was accidentally go down this red slope. ‼️ By "go down" I mean I flopped down like a rag doll with at least 10 wipeouts. 💥
Being a sucker for punishment, I repeated 3 times and got it down to 3 crashes. On the final try, I got a leg cramp and just laid on the slope until it went away.
Also my beard froze. 🥶 8/10 will be repeating.
-
There's a new opening on our team at the @mlcolab, working to bring #MachineLearning to the sciences.
One of the things I love about our mission is how diverse the work is. From one day to the next we might be teaching a workshop, consulting a scientist on an exciting research project, building a probabilistic model to fit a dataset, or writing #FOSS software.
For more information, see https://fediscience.org/@mlcolab/109953546334327601
-
I've worked out that the injectivity radius under the Euclidean metric for the #unitary group U(n) is π and for real and special subgroups O(n), SO(n), and SU(n) is π√2.
This seems like a pretty basic property, but I can't find a single reference that gives the injectivity radii for any of these groups. Anyone know of one?
-
🚨 New #JuliaLang package! StanLogDensityProblems.jl is a really basic package that implements the LogDensityProblems.jl interface for @mcmc_stan models, built on BridgeStan.jl. It also integrates with PosteriorDB.jl, which makes it really easy to benchmark a new inference method against a large number of models. #ProbProg #MCMCStan
-
New package! MRCFile.jl is a #JuliaLang parser for the MRC file format commonly used to store data like that produced by electron microscopy. #StructBio https://github.com/sethaxen/MRCFile.jl
I wrote this package for a project during my PhD and just now got around to registering it. I don't work with MRC files anymore, so if you do and are interested in co-maintaining, let me know!
-
Octonions.jl v0.2.2 extends all complex analytic functions in the standard library to the #octonions!
Octonions are a type of hypercomplex number whose product is neither associative nor commutative. Besides their normal uses, they are also useful for testing numerical algorithms that are intended to generically work for even weird numbers.
Here we use them to check that the fallback QR and unpivoted LU decompositions in #JuliaLang do the right thing.
-
The next minor release of MCMCDiagnosticTools.jl is going to be dope. We've been upgrading its implementations of convergence diagnostics, and it's just about ready to replace the Python ones in ArviZ.jl @ArviZ and the ones currently used by Turing. #JuliaLang #ProbProg
-
👋 This is my first time attending @NeuripsConf (virtually to reduce carbon emissions).
On Friday I'll join the workshop "Gaussian Processes, Spatiotemporal Modeling, and Decision-making Systems," where we have a paper, poster, and lightning talk on GPs for modeling #paleoclimate.
If you're attending and want to chat about #GaussianProcesses, probabilistic programming (#ProbProg), or @ArviZ, ping me!
-
Soon Turing.jl users will be able to natively store all sampling outputs in an @ArviZ InferenceData object.
To experiment with the bleeding edge, check out https://github.com/sethaxen/DynamicPPLInferenceObjects.jl!
-
CW: Kid who knows his stuff
Today in the adventures of #DinoBoy, the 4-year-old has colored a paper "crest" and fixed it to his hair with clips so he can walk around town as a #Corythosaurus.
-
Check out some results from one of our current projects! #Spatiotemporal modeling of European #paleoclimate using doubly sparse #GaussianProcesses
-
CW: Introduction
I just migrated to bayes.club, so here is another (and hopefully the last for a while) introduction
I'm a #MachineLearning engineer with a focus on probabilistic programming at @unituebingen where I help scientists use ML for their research. In the office and out, one of my main passions is #FOSS, and I work on a number of #OpenSource packages, mostly in #JuliaLang :julia: with a focus on #ProbProg, #manifolds, and #AutoDiff.
-
Anyone know of an approach to construct a #GaussianProcess prior over strictly monotonic functions? #MachineLearning #Bayesian
-
With the core techniques for deriving #AutoDiff rules in that page, we can work out rules for complex functions like matrix factorizations. See for example this blog post on deriving rules for the LU decomposition: https://sethaxen.com/blog/2021/02/differentiating-the-lu-decomposition/
-
In my opinion*, this page from the ChainRules docs is the best intro to working out automatic differentiation rules: https://juliadiff.org/ChainRulesCore.jl/stable/maths/arrays.html
* disclaimer: I wrote it with lots of community input
#AutoDiff #JuliaLang #calculus #gradient -
With PosteriorDB.jl v0.3.0, it's easier than ever to load #Stan models from posteriordb for sampling with StanSample.jl.
-
@BenediktEhinger Welcome! There's a good number of #JuliaLang folks on here as well, and a number of us are into #statistics and #probprog.
-
I spent some time tonight working out a possible major redesign of the InferenceData conversion pipeline in InferenceObjects.jl.
The new design is more expressive and extensible. It also simplifies the API and enables developers to implement a converter for their container of #MCMC draws with much less code.
Feedback appreciated! https://github.com/arviz-devs/InferenceObjects.jl/issues/32
-
Finally, part of this effort involves moving this integration code out of #ArviZ.jl, which still has #Python dependencies, and into pure Julia packages, so users get all of this with the convenience of #JuliaLang's package management.
While Python interop in Julia usually works quite well, sometimes the Python environment gets messed up, which blocks users from using ArviZ.jl 😦 , so moving this code to pure Julia packages supports more users.
-
Things are coming together for #ArviZ's InferenceData (https://github.com/arviz-devs/InferenceObjects.jl) to be a supported output type for #Turing and #JuliaLang's :julia: #Stan interface, similarly to how it is for #PyMC.
For details, see https://github.com/TuringLang/MCMCChains.jl/issues/381 and https://github.com/StanJulia/StanSample.jl/issues/60
-
I just migrated from @[email protected] to this new account at fosstodon.org, so time for a reintroduction!
I'm a #MachineLearning engineer with a focus on probabilistic programming (#probprog) at @unituebingen, where I help scientists use ML for their research. In the office and out, one of my main passions is #FOSS, and I work on a number of #opensource packages, mostly in #JuliaLang :julia: with a focus on #probprog, #manifolds, and #autodiff.
-
@johnryan Yeah I do #probprog in #JuliaLang, and it's great that we can use arbitrary Julia code within our models. This is because most of the language is differentiable with #autodiff and code is composable, which is not the case for most PPLs.
For #deeplearning research, Julia could come in handy for writing and transforming custom kernels without fussing with CUDA, as some posts in that thread note, but I have no experience with this.
-
In ArviZ.jl we store inference results (especially #MCMC draws) as InferenceData. It's built on DimensionalData, so we have multidimensional real arrays with named dimensions. Each array element is a marginal of a random draw, which is a useful format for plotting, #statistics, and diagnostics, but sometimes it's useful to get back to a structure more like what a PPL might emit.
Surprisingly, we can get pretty close with just 8 lines of code:
https://github.com/arviz-devs/InferenceObjects.jl/issues/27 -
Hello fediverse!
I'm a #machinelearning engineer with a focus on probabilistic programming (#probprog) at @unituebingen, where I help scientists use ML for their research. In the office and out, one of my main passions is #FOSS, and I work on a number of #opensource packages, mostly in #JuliaLang, with a focus on #probprog, #manifolds, and #autodiff.
I have no idea what this account will be about, but probably some combination of the above topics. 👋