## Stanford Palo Alto

Today is Monday January 1st 2024, what day of the week will it be in 7 days?

We begin by loading 2 packages, polynom for dealing with polynomials and my package HomomorophicEncryption which has several helper functions.

Encryption is typically used to protect information like written communication from evedropping, such as messages sent over the internet.

This blog posts shows how to perform CKKS encoding and encryption, followed by decryption and decoding to obtain the original vector of complex numbers.

My new Python package HEtools is now on the Python Package Index (PyPI):

My new Python package libactivation is now on the Python Package Index (PyPI):

My new R package transformer is now on CRAN:

This is an implementation of the BFV schema in R:

The attention R package, describing how to implement from scratch the attention mechanism - which forms the basis of transformers - in the R language is now ...

EDIT 2022-06-24: this code is now available (with helper functions) in the R package attention, which is on CRAN. You can install it simply using: install.pa...

With over a year working from home and an end not immediately in sight, I felt it was time to think a bit structurally about how to work remotely as effectiv...

For a job interview at WHO I was asked by build a numeric version of Noughts and Crosses (Tic-Tac-Toe to some), this is called Ron Graham’s Game (repo).

Today I gave a presentation at the UN Innovation Network’s TechLearnTalks (archived, backup):

The slides from my presentation at the Homomorphic Encryption Standardization Consortium meeting on 6 February 2020 at Microsoft Research in Seattle (archive...

The slides from my briefing on the ITU-WHO Focus Group on Artificial Intelligence for Health at the Roundtable on International Actors in Digital Health (arc...

Earlier this year I was in China, and in order to communicate with local delegates I installed WeChat. WeChat has a very handy feature that replaces exchangi...

The slides from my briefing on the ITU-WHO Focus Group on Artificial Intelligence for Health to Study Group 2 of the ITU Development Sector at their Workshop...

Homomorphic encryption is allows computations to be performed on encrypted data. This has enormous potential in areas of machine learning that deal with priv...

The slides from my presentation at the Homomorphic Encryption Standardization Consortium meeting on 17 August 2019 at Intel HQ in Santa Clara:

doing backpropagation using pen and paper

Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA

In the keynote at African Peering Forum (AfPIF) 2016 I presented the Promoting Content in Africa report written together with Michael Kende, these are the sl...

The Local-Content Effect of google.co.za in Setswana

The rnn R package, describing how to implement from scratch the Recurrent Neural Network algorithm) in the R language is now available on CRAN.

The sigmoid package makes it easy to become familiar with the way neural networks work by demonstrating the key concepts using straightforward code examples.

This is an example of how to build a Recurrent Neural Network in R. What we will do is generate two sets of random numbers, a and b, which we will sum up, ...

Below is an example of how to handcode a logit model.

In this post we will discuss how to manually implement a Difference-in-Differences (DiD) estimator in R, using simulated data.

The most basic panel estimation is the Pooled OLS model, this model combines all data across indices and performs a regular Ordinary Least Squares Estimation.

Some simulated data, borrowed from this post.

A simple example

In a previous post we discussed the linear model and how to write a function that performs a linear regression. In this post we will use that linear model fu...

The learNN package makes it easy to become familiar with the way neural networks work by demonstrating the key concepts using straightforward code examples....

In this short post I want to quickly demonstrate how the most basic neural network (no hidden layer) gives us the same results as the linear model.

Andrew Trask wrote an amazing post at I am Trask called:

Andrew Trask wrote an amazing post at I am Trask called:

Andrew Trask wrote an amazing post at I am Trask called:

We want to test if our population average is different from twenty.

The wiod package is now available on CRAN. The package contains the complete WIOD data sets, in a format compatible with the decompr and gvc package.

In last week’s posts we discussed handcoding a linear model and writing a convenient function for this, in today’s post we will take this a step further by i...

In yesterday’s post we developed a method for constructing a multivariate linear model with an intercept.

When it comes to econometrics, the main take aways from the workshops are primarily in terms of the syntax of yet another computer program.

A new R package diagonals is now available on CRAN. The package implements several tools for dealing with fat diagonals on matrices, such as this one:

Quick experiment on embedding plot.ly graphics.

A typical example in which diagonals can be helpful is Social Network Analysis. For example, if we use matrices to represent friendship perceptions between i...

Increased male bargaining power in households causes greater expenditure on food, an improvement in Weight-for-Age Z-scores in young children, and a deterior...

A new R package gvc is now available on CRAN. The package implements several global value chain indicators

I am proud to announce that after a few emails back and forth with Prof. Brian Ripley, which consisted mostly of me appologising for not following the proper...

Yesterday the Johns Hopkins School of Public Health published a post about their Data Science Specialisation on the online MOOC platform Coursera.

In yesterday’s post I discussed some of the principles I use to make my work replicable and - to an extent - reproducible. In this post I want to collect som...

The tagline of this blog says something replicable development economics using R and git. So far, I have posted gimmicks on new R tools such as shiny, rmarkd...

The below image is licenced under CC-BY-4.0

What are jekyll, markdown, and git(hub)? and why would you need all of this for a blog, in stead of a simple Blogspot of Wordpress page? The short answer is ...

I am proud to announce the beta version of the decompr R package. The package implements Export Decomposition using the Wang-Wei-Zhu (Wang, Wei, and Zhu 2013...

ggvis is wonderful new tool to create interactive graphics, which was build with Shiny apps in mind. In this post I will go over how you can create a Shiny a...