European privacy laws make no sense for companies that use machine learning

The new European GDPR personal privacy data laws allow users to ask any company to delete all their personal data and to provide a copy on demand. Non-compliance leads to harsh penalties.

Those laws don’t make any sense (in that it is impossible to comply) for companies that are developing any kind of machine learning / neural networks / artificial intelligence that learn global models of any kind from attributes gathered from multiple users. This is why:

Lawyers expect that personal data is localized and understandable. But increasingly we are aggregating personal data into all kinds of computer models about users where that data becomes diffuse and incomprehensible.

Just think of it as someone asking you to forget they ever existed and to roll yourself back to whatever you would have been like if you had never had any contact with them, and also they want an exhaustive list of the personal neural mental data you are currently holding on them in a form that they can understand.

It’s important for users to know that, as technology is progressing, their data is being utilized in ways that cannot be undone, and that a request for the stored data is becoming impossible to fulfill. However lawyers and regulators should also understand that aggregating personal data in machine learning algorithms can be an effective form of anonymization.

How to remove all Adobe software from your Mac

No AdobeAdobe likes to take over your computer, especially if you have installed a number of products, or enrolled in Creative Cloud. There will be many Adobe processes running all the time and various ones running at startup or login. Adobe is well known for creating buggy products with security vulnerabilities, like Flash, and running many processes that bog down your machine. I just wanted to be rid of them altogether. Here’s what worked for me on a MacBook with OSX 10.13.4.

The goal is to get the following results at the terminal command line: find ~/Library | grep -i adobe returns no results; ps aux | grep -i adobe returns only the ps command itself; find /Applications | grep -i adobe returns only other applications that reference Adobe in some passive way (in my case Xcode has some Flash related libraries); and most importantly launchctl list | grep -i adobe returns no results.

The first thing that I personally had to do was to pay over $100 to terminate my Creative Cloud contract with Adobe. Hopefully you don’t have to do that.

To begin this journey, ensure that no applications are running except for a finder window and a terminal window, and maybe this blog entry copied to a text file (not PDF), or printed.

Continue reading

Nixie display module is now available

Nixie Module

I have worked hard to bring a production version of my Nixie display controller to market. You can now actually order these units from my Etsy store here

Features

  • High quality gold plated surface mount PCB
  • Four digit Nixie display; product includes tubes.
  • RGB LED back-lighting on each tube independently programmable to generate multiple colors
  • The colon indicator can also be turned on and off
  • Modules can be stacked next to each other for more digits
  • Runs from 9-12V, with on-board 180V power supply
  • Easily controlled by a serial line from the Arduino or any micro-controller or laptop to display any digits
  • The board can also function as a stand-alone voltmeter
  • Based on the familiar ATMega328
  • Comes pre-programmed with open source display software
  • Easily customized via the ISP port using standard tools
  • Most spare micro-controller pins are accessible at the connector
  • Based on plug-in IN-4 Nixies which are easily replaced
  • Schematics and code are available for easy hacking

High quality streamable free-viewpoint video

free viewpointMicrosoft just recently presented the paper “High quality streamable free-viewpoint video” at SIGGRAPH. In this presentation, they are capturing live 3D views of actors on a stage using multiple cameras and using computer vision to construct detailed texture mapped mesh models which are then compressed for live viewing. On the viewer you have the freedom to move around the model in 3D.

I contributed to this project for a year or so when I was employed at Microsoft, working on 3D reconstruction from multiple infra-red camera views, so it was nice to get an acknowledgment. Some of this work was inspired by our earlier work at Microsoft Research which I co-presented at SIGGRAPH in 2004.

It’s very nice to see how far they have progressed with this project and to see the possible links that it can have with the Hololens virtual reality system.

 

Two-wheeled rolling robot

I am passionate about machine learning, intelligence, and robotics. I have a number of robot projects on the go. I wanted to build a platform that would allow me to do a lot of complex experiments on sensor fusion and creating intelligent emergent behaviors. I needed to make a robot that has quite a number of sensor inputs, but not so many that it would overload the processing capability to do anything useful. I decided to make a simple two-wheeled robotic platform that has a lot of flexibility and load it up with appropriate sensors.

One of the aspects of my robotics philosophy is that information from simple sensors can be highly informative and that current robot designs jump too quickly to complex high bandwidth data sources and they then do a marginal job of interpreting the information from those sources in software. I am inspired by insects and other small creatures that seem to have small numbers of sensors, for example eyes with only a few photoreceptors, but still have very complex adaptive behaviors which are often leagues beyond what we can do with today’s machines. Part of this is due to the efficiency with which they extract every little bit of useful information out of the sensory data, including correlations we would never think of. I am interested in applying experience gained from machine learning in order to extract from sensors information that could not easily be determined by using hand coded algorithms.

Rolling RobotMy rolling robot has two wheels and these have wheel encoders to give a feedback of position or wheel rotation speed. It also has an infra red range finder that can indicate the Continue reading

Check out the new Tree Crafter Web Site

Tree CrafterI created a graphic design app for the iPad last year called Tree Crafter that lets you create tree inspired organic vector art and animations. It is fun to play with and quite relaxing. Also you can create great designs for web graphics or for merchandise with relative ease.

Recently I built a new web site for this app: http://treecrafter.com

If you have an iPad you should give it a go and let me know what you think. I am very keen to get it reviewed, so if you are an app reviewer, I can give you a promo code if you would like to write about it.

Calculating Engine Accepted at Maker Faire

Maker FaireI received the good news that my Relay Calculating Engine has been accepted for showing at the Maker Faire in San Francisco in May. I’m looking forward to taking it down there and showing it to interested people.

Make Magazine also interviewed me about this project and plan to feature the work too. I’m excited to see what they write about it.

My main concern is to finish it and get it all working in time for May. This should not be a problem since I currently have the luxury to be able to work full time on the project and at present, I am about 90% complete.

I hope that you can come along and check it out. I will also be showing some of the other projects on which I have been working. I’ll also be attending the Seattle Mini Maker Faire, but not showing anything off there.

Analyzing the Market – Part 3

BitcoinThis is part 3 of my series of posts on the statistics of financial markets. Part 1 is here.

In previous posts, I have found that working in log prices makes sense and that the double exponential distribution is a good fit to price change data. In this post, I will look at correlations over time in price changes.

Let’s ask a simple question: Does yesterday’s price change predict today’s price change? Continue reading

Analyzing the Market – Part 2

BitcoinThis is part 2 of my series of posts on the statistics of financial markets. Part 1 is here.

I have established that a double exponential distribution fits price movements when they are converted to log prices, at least for bitcoin, Apple, and Dell. (Actually I have checked it on a few other NASDAQ stocks too.)

Once we have a statistical model, we can generate some data to see if it produces results that look like the actual price graph. Below you can see the real 2 month bitcoin price graph, together with two graphs that were obtained by using a model based on the Continue reading

Analyzing the Market – Part 1

BitcoinThis series of blog posts is intended to document some mathematical analysis that I have been doing on the bitcoin price graph and on price histories of securities in the stock market. The purpose is to understand something about the statistics of these price movements, and to learn about the behavior of the stock market in general.

One thing that is useful about bitcoin is that trading is never stopped. Because everything runs 24 hours 7 days per week, there are no artifacts to do with starting and stopping trading on specific exchanges and transitioning between financial Continue reading