<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>machine learning on Tom Roth</title><link>https://tomroth.dev/tags/machine-learning/</link><description>Recent content in machine learning on Tom Roth</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Mon, 20 Jan 2020 00:00:00 +0000</lastBuildDate><atom:link href="https://tomroth.dev/tags/machine-learning/index.xml" rel="self" type="application/rss+xml"/><item><title>Bypassing ten adversarial detection methods (Carlini and Wagner, 2017)</title><link>https://tomroth.dev/ten-failed-detectors/</link><pubDate>Mon, 20 Jan 2020 00:00:00 +0000</pubDate><guid>https://tomroth.dev/ten-failed-detectors/</guid><description>Some rough notes of this paper.
Paper link: Adversarial examples are not easily detected: Bypassing ten detection methods. (Carlini and Wagner, 2017)
In brief: Adversarial defences are often flimsy. The authors are able to bypass ten detection methods for adversarial examples. They do so with both black-box and white-box attacks. The C&amp;amp;W attack is the main attack used. The most promising defence evaluated the classification uncertanity of each image through generating randomised models.</description></item><item><title>Measuring the Intrinsic Dimension of Objective Landscapes (2018) - summary</title><link>https://tomroth.dev/intdim/</link><pubDate>Tue, 07 Jan 2020 00:00:00 +0000</pubDate><guid>https://tomroth.dev/intdim/</guid><description>The paper in one sentence. The Pareto principle for neural networks: what’s the least number of parameters needed for to achieve most of the results?
Structure of this article. I give an introduction to objective landscapes and talk about how to define solutions. I use these concepts to describe the subspace training method. Finally, I summarise the key results of the paper.
Objective landscapes Link to heading For every combination of neural network architecture and dataset, the shape of the objective/loss function is fixed.</description></item><item><title>Backprop and topological sorting</title><link>https://tomroth.dev/backprop-toposort/</link><pubDate>Sun, 01 Dec 2019 00:00:00 +0000</pubDate><guid>https://tomroth.dev/backprop-toposort/</guid><description>Neural networks need to update their weights with respect to a loss function. Rather than compute these weight updates manually, today we usually use automatic differentiation packages and tools. We call these autodiff systems.
To do their job, autodiff systems construct computational graphs of the function they’re trying to find the gradient of. These computational graphs are key to backpropagation. I won’t go into how these graphs are constructed here.</description></item><item><title>Seq2Sql: paper notes</title><link>https://tomroth.dev/seq2sql/</link><pubDate>Thu, 20 Jun 2019 00:00:00 +0000</pubDate><guid>https://tomroth.dev/seq2sql/</guid><description>Seq2SQL: Generating structured queries from Natural Language using Reinforcement Learning (2017) Link to heading Paper link: https://arxiv.org/pdf/1709.00103.pdf Authors: Victor Zhong, Caiming Xiong, Richard Socher
Here&amp;rsquo;s my notes from this paper.
Seq2SQL uses the Seq2Seq model as a starting point
The output of the seq2seq model is unnecessarily wide for SQL queries. In other words, the paper is only interested in a small subset of the seq2seq output space. As a result, the output of Seq2SQL is limited to the union of words in the question, SQL commands and table headers The paper created its own datasets.</description></item><item><title>Sarsa, expected sarsa and Q-learning on the OpenAI taxi environment</title><link>https://tomroth.dev/sarsa-qlearning/</link><pubDate>Mon, 08 Oct 2018 00:00:00 +0000</pubDate><guid>https://tomroth.dev/sarsa-qlearning/</guid><description>In this post, we&amp;rsquo;ll see how three commonly-used reinforcement algorithms - sarsa, expected sarsa and q-learning - stack up on the OpenAI Gym Taxi (v2) environment.
Note: this post assumes that the reader is familiar with basic RL concepts. A good resource for learning these is the textbook by Sutton and Barto (2018), which is freely available online.
Sarsa, Expected Sarsa and Q-Learning Link to heading So, what are these algorithms?</description></item><item><title>The Keras functional API: five simple examples</title><link>https://tomroth.dev/keras/</link><pubDate>Mon, 06 Nov 2017 00:00:00 +0000</pubDate><guid>https://tomroth.dev/keras/</guid><description>Building models in Keras is straightforward and easy. If you&amp;rsquo;re reading this, you&amp;rsquo;re likely familiar with the Sequential model and stacking layers together to form simple models. But what if you want to do something more complicated?
Enter the functional API. For complex models the functional API is really the only way to go - it can do all sorts of things that just aren&amp;rsquo;t possible with the Sequential model. Models with multiple inputs and outputs, models with shared layers - once you start designing architectures that need these things, you will have to use the functional API to build your model.</description></item><item><title>Building a nearest neighbour classifier in Python</title><link>https://tomroth.dev/nearest-neighbour/</link><pubDate>Sat, 26 Aug 2017 00:00:00 +0000</pubDate><guid>https://tomroth.dev/nearest-neighbour/</guid><description>The nearest neighbour classifier is a very simple algorithm for image classification. While not used much in practice, it is simple to implement and it helps to gain a deeper understanding of the problems in image classification.
Just like other classifiers, if we give the nearest neighbour classifier an image, it&amp;rsquo;ll try and find its closest match. We &amp;ldquo;train&amp;rdquo; the classifier by giving it a large collection of images that it allowed to search through to find matches.</description></item><item><title>Simulating the multi-armed bandit problem</title><link>https://tomroth.dev/bandit/</link><pubDate>Wed, 24 May 2017 00:00:00 +0000</pubDate><guid>https://tomroth.dev/bandit/</guid><description>Machine learning can be split up into many subfields. One of these subfields growing in relevance is reinforcement learning.
One of the core problems in reinforcement learning is the multi-armed bandit problem. This problem has been well studied and is commonly used to explore the tradeoff between exploration and exploitation integral to reinforcement learning.
To illustrate this tradeoff and to visualise different ways of solving the multi-armed bandit problem, I created a simulation using the JavaScript library d3.</description></item></channel></rss>