Batı Şengül
http://www.batisengul.co.uk/
Recent content on Batı ŞengülHugo -- gohugo.iobatisengul@gmail.combatisengul@gmail.comWed, 20 Nov 2019 00:00:00 +0000Wasserstein variational autoencoders
http://www.batisengul.co.uk/post/2019-11-20-wasserstein-vae/
Wed, 20 Nov 2019 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/2019-11-20-wasserstein-vae/Variational auto-encoders (VAEs) are a latent space model. The idea is you have some latent space variable $z \in \mathbb{R}^{k}$ which describes your original variables $x\in\mathbb{R}^d$ in higher dimensional space by a latent model $p(x|z)$. Let’s assume that this distribution is given by a neural network with some parameters $\theta$ so that we assume $$ x | z, \theta \sim N(g_\theta(z), 1). $$ Of course in reality, we don’t know $(z, \theta)$, we would like to infer these from the data.Introduction To Tensorflow Estimator
http://www.batisengul.co.uk/post/2019-11-19-introduction-to-tensorflow-estimator/
Tue, 19 Nov 2019 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/2019-11-19-introduction-to-tensorflow-estimator/In this post I am going to introduce tf.estimator library. So first of all, what is this library trying to do? When writing tensorflow code, there is a lot of repeated operations that we need to do:
read the data in batches process the data, e.g. convert images to floats run a for loop and take a few gradient descent steps save model weights to disk output metrics to tensorboard The keras library makes this quite a bit easier, but there are times when you might need to use plain old tensorflow (it gets quite hacky to implement some multiple output models and GANs in keras).FizzBuzz with neural networks and NALU
http://www.batisengul.co.uk/post/2019-03-16-fizzbuzz-with-neural-networks-and-nalu/
Sat, 16 Mar 2019 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/2019-03-16-fizzbuzz-with-neural-networks-and-nalu/FizzBuzz is one of the most well-known interview questions. The problem is stated as: > Write the numbers from 0 to n replacing any number divisible by 3 with Fizz, divisible by 5 by Buzz and divisible by both 3 and 5 by FizzBuzz. The example program should output 1, 2, Fizz, 3, Buzz, Fizz, 7, 8, Fizz, Buzz.
A while back, there was this infamous post where the author claimed to solve this problem in an interview using tensorflow.From Zero To State Of The Art NLP Part II - Transformers
http://www.batisengul.co.uk/post/2019-03-12-from-zero-to-state-of-the-art-nlp-part-two/
Tue, 12 Mar 2019 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/2019-03-12-from-zero-to-state-of-the-art-nlp-part-two/<div class="jupyter-cell markdown">
<p>Welcome to part two of the two part series on a crash course into state of the art natural language processing. This part is going to go through the transformer architecture from <a href="https://arxiv.org/abs/1706.03762">Attention Is All You Need</a>. If you haven’t done so already, read the <a href="http://www.batisengul.co.uk/post/2019-03-06-from-zero-to-state-of-the-art-nlp-part-one/">first part</a> which introduces attention mechanisms. This post is all about transformers and assumes you know attention mechanisms.</p>From Zero To State Of The Art NLP Part I - Attention mechanism
http://www.batisengul.co.uk/post/2019-03-06-from-zero-to-state-of-the-art-nlp-part-one/
Wed, 06 Mar 2019 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/2019-03-06-from-zero-to-state-of-the-art-nlp-part-one/There has been some really amazing advances in natural language processing (NLP) in the last couple of years. Back in November 2018, Google released https://ai.googleblog.com/2018/11/open-sourcing-bert-state-of-art-pre.html, which is based on attention mechanisms in Attention Is All You Need. In this two part series, I will assume you know nothing about NLP, have some understanding about neural networks, and take you from the start to end of understanding how transformers work.
Natural language processing is the art of using machine learning techniques in processing language.Beating the odds: arbitrage in sports betting
http://www.batisengul.co.uk/post/beating-the-odds-arbitrage-in-sports-betting/
Tue, 01 Jan 2019 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/beating-the-odds-arbitrage-in-sports-betting/In this post we are going to look at sports betting and how to make guarenteed money. Let’s take the example of football. For each match, there is a home team who hosts the match in their stadium and an away team. There are three outcomes to each match, home win (away lose), home lose (away win) and a draw.
The bookie provides odds on each outcome.Variational inference, the art of approximate sampling
http://www.batisengul.co.uk/post/variational-inference-the-art-of-approximate-sampling/
Sat, 21 Jul 2018 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/variational-inference-the-art-of-approximate-sampling/In the spirit of looking at fancy word topics, this post is about variational inference. Suppose you granted me one super power and I chose the ability to sample from any distribution in a fast and accurate way. Now, you might think that’s a crappy super-power, but that basically enables me to fit any model I want and provide uncertainty estimates.
To make the problem concrete, lets suppose you are trying to sample from a distribution \(p(x)\).Spike and slab: Bayesian linear regression with variable selection
http://www.batisengul.co.uk/post/spike-and-slab-bayesian-linear-regression-with-variable-selection/
Wed, 20 Jun 2018 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/spike-and-slab-bayesian-linear-regression-with-variable-selection/Spike and slab is a Bayesian model for simultaneously picking features and doing linear regression. Spike and slab is a shrinkage method, much like ridge and lasso regression, in the sense that it shrinks the “weak” beta values from the regression towards zero. Don’t worry if you have never heard of any of those terms, we will explore all of these using Stan. If you don’t know anything about Bayesian statistics, you can read my introductory post before reading this one.Bayesian analysis of Premier League football
http://www.batisengul.co.uk/post/bayesian-analysis-of-premier-league-football/
Mon, 02 Apr 2018 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/bayesian-analysis-of-premier-league-football/In this post we are going to look at some football statistics. In particular, we will examine English football, the Premier League, using Bayesian statistics with Stan. If you have no idea what Bayesian statistics is, you can read my introductory post on it. Otherwise this post shouldn’t be a difficult read.
All right, let’s get to it. First, we need some data. I will use all the matches from the Premier League seasons 16/17 and 17/18 (which is still ongoing at the time of the writing).Summer Olympics: the countries that beat the expectations
http://www.batisengul.co.uk/post/summer-olympics-the-countries-that-beat-the-expectations/
Mon, 19 Mar 2018 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/summer-olympics-the-countries-that-beat-the-expectations/In this post we take a look at the summer Olympics and try to see which countries performed substantially differently than was expected of them. We will look at the Olympics from 1964 through to 2008. For each year, we will run a predictive model, trying to predict the number of medals a country wins, using selected datasets that are available before each of the Olympics. We will see that this model performs well out of sample and this model will be what we expect.Causal impact and Bayesian structural time series
http://www.batisengul.co.uk/post/causal-impact-and-bayesian-structural-time-series/
Sat, 03 Feb 2018 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/causal-impact-and-bayesian-structural-time-series/Causal impact is a tool for estimating the impact of a one time action. As an example (which we will actually look at the data) consider the BP oil spill in 2010. Let’s say you want to evaluate the impact that this had on BP stocks. Typically with questions like this, we would like to be able to collect multiple samples from a control group and a test group. As this is not possible we would have to try something else.Bayes of our lives: a gentle introduction to Bayesian statistics
http://www.batisengul.co.uk/post/bayes-of-our-lives-a-gentle-introduction-to-bayesian-statistics/
Tue, 07 Nov 2017 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/bayes-of-our-lives-a-gentle-introduction-to-bayesian-statistics/Bayesian statistics is an interpretation of statistics. It is used to help explain the frequentist methods and can give much more information. Even if you have never really learnt about Bayesian statistics, I guarantee you have encountered it in some way.
Bayes, it’s everywhere
In this post, we will only consider a linear model: \(y = \beta x + \epsilon\) where \(\epsilon\) is a standard normal. Suppose we have gathered some data \((Y=\{y_i\}_{i=1}^n, X=\{\{x_{k,i}\}_{k=1}^p\}_{i=1}^n)\), which consist of \(p\) predictors and \(n\) observations, and we wish to fit a linear model.Analysis of calving of JH Dorrington Farm Part III
http://www.batisengul.co.uk/post/analysis-of-calving-of-jh-dorrington-farm-part-iii/
Tue, 10 Oct 2017 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/analysis-of-calving-of-jh-dorrington-farm-part-iii/Drum roll please. This is the long awaited third and final part of the analysis from JH Dorrington Farm. If you have not already, read the first part and second part.
Leaving where I left off, almost all of our models fit pretty well except for CART, so in what follows, I will ignore the CART model. That leaves us with linear regression models and MARS. MARS essentially builds a piecewise linear model using hinges.Analysis of calving of JH Dorrington Farm Part II
http://www.batisengul.co.uk/post/analysis-of-calving-of-jh-dorrington-farm-part-ii/
Fri, 22 Sep 2017 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/analysis-of-calving-of-jh-dorrington-farm-part-ii/This is the second part of the analysis for the data from JH Dorrington Farm. You might want to read the first part before reading this one.
Before we put on our science hats, let us make an outline for what we will do. Previously we split the data into training and test sets 80/20. We will fit all of our models and calibrate them on the training set. Decisions about keeping/dropping predictors, transforming predictors and which model to chose will be left to the test set.Analysis of calving of JH Dorrington Farm Part I
http://www.batisengul.co.uk/post/analysis-of-calving-of-jh-dorrington-farm-part-i/
Tue, 19 Sep 2017 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/analysis-of-calving-of-jh-dorrington-farm-part-i/Here I will analyse a real life problem. My friend Chris at JH Dorrington Farm has kindly provided me with the data and allowed me to make this post. This will be several parts as I explore the data and try to fit various models.
I’m going to stop milking this introduction and get right to it.
My friend Chris has been collecting various forms of data about his cows.Correlation in linear regression
http://www.batisengul.co.uk/post/correlation-in-linear-regression/
Sun, 03 Sep 2017 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/post/correlation-in-linear-regression/If you have a data set with large number of predictors, you might use some basic models to try and eliminate some of the predictors that don’t show a significant relationship to the response variable. In such cases it is important to look at the correlation between the predictors. How important? Let’s find out.
Let us consider a very simple example here with two predictors and one response variable.
set.seed(2017) data = tibble(x1 = rnorm(1000)) %>% mutate(y = 2 * x1^3 + rnorm(1000), x2 = 1.About me
http://www.batisengul.co.uk/page/about/
Mon, 01 Jan 0001 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/page/about/Hi! I’m Batı Şengül, a quantitative analyst working in finance. In a previous life, I was a probabilist working in academia. I obtained my PhD from the University of Cambridge, working with Nathanael Berestycki. Then I moved onto doing a postdoc at the University of Bath with Andreas Kyprianou, and a brief postdoc at King’s College London before moving into industry.Curriculum vitae
http://www.batisengul.co.uk/page/cv/
Mon, 01 Jan 0001 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/page/cv/Career now - April-2018 Senior NLP data scientist kalido.me April 2020 - May-2018 Quantitative analyst Oxford Asset Management Apr-2018 - Apr-2017 Associate Quant in electronic FX Bank of America Merrill Lynch I worked as a part of a systematic electronic FX desk which uses algorithms to make a foreign exchange market. My key responsibilities include testing for possible problems in the market data we receive and the prices we send out, as well as providing market analysis for potential extensions of existing strategies.Publications
http://www.batisengul.co.uk/page/papers/
Mon, 01 Jan 0001 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/page/papers/Entrance laws at the origin of self-similar Markov processes in high dimensions [pdf] [arxiv] with Andreas E. Kyprianou, Victor Rivero, Ting Yang
Transactions of AMS (to appear) Existence of a phase transition of the interchange process on the Hamming graph [pdf] [arxiv] with Piotr Miłoś
Electronic Journal of Probability (2018) Cutoff for conjugacy-invariant random walks on the permutation group [pdf] [arxiv] with Nathanaël Berestycki
Probability Theory and Related Fields (2018) Exceptional times of the critical dynamical Erdős-Rényi graph [pdf] [arxiv] with Matthew RobertsSoftware
http://www.batisengul.co.uk/page/software/
Mon, 01 Jan 0001 00:00:00 +0000batisengul@gmail.comhttp://www.batisengul.co.uk/page/software/ A Google Chrome extension which automatically sets a desired quality on YouTube videos.
This is a package written for the Atom.io text editor which implements latex autocompletions.
A Google Chrome extension which displays the rating from IMDB on BBC iPlayer.
Imports bibtex references from MathSciNet. You need a subscription/access to MathSciNet.