breuderink

Joined 15 years ago

Karma
13
Submissions
17
Member since
Aug 28
Machine learning consultant. Interested in people, simplicity, math, and constructs that outsmarts me. Python addict. Father.
View on Hacker News

Recent submissions

Comment · 6 years ago
Here is a more recent paper [1] from Pentti Kanerva that gives a great introduction: http://www.rctn.org/vs265/kanerva09-hyperdimensional.pdf. More papers can be found with the query "vector symbolic architecture". I find it utterly fascinating.

[1] Kanerva, Pentti. “Hyperdimensional Computing: An Introduction to Computing in Distributed Representation with High-Dimensional Random Vectors.” Cognitive Computation 1 (2009): 139-159.

Comment · 6 years ago
While it is difficult to get a useful signal out of EEG, a PCA doesn't show that there is only one 'channel'. A lot of interesting signals have very low power. With multiple EEG sensors, one can focus on smaller spatial regions.
Comment · 7 years ago
> But recent advances in causal discovery have actually rendered it possible to black box the structure of a DAG from data -- happy to provide citations if this is down the rabbit hole.

I would be very interested in these references.

Comment · 8 years ago
The reservoir can compute non-linear functions of the input over time. So, with a reservoir, you can train a linear projection of the reservoir state that responds non-linearly to the input. Without the reservoir, the output projection can only be linearly related to the input.
Comment · 11 years ago
Further, these inputs were /optimized/ to confuse the particular classification software. If only we would be able to optimise optical illusions for a given human viewer...
Comment · 11 years ago
> They only have enough room to tersely describe directly relevant background material and will assume you are knowledgable in the domain.

I feel like it just is the dominant style; it doesn't have to be that way. Sometimes there are these gems, that are extraordinarily well written and bring new ideas in a gentle way. Some examples:

- Zhang, Cha, John C. Platt, and Paul A. Viola. "Multiple instance boosting for object detection." Advances in neural information processing systems. 2005.

- Gelman, Andrew, et al. Bayesian data analysis. Vol. 2. Chapman & Hall/CRC, 2014.

So, IMHO it can be done, but it is a talent.

Comment · 12 years ago
> For those with positive coefficients we can expect that the language is associated with, ceteris paribus, a greater number of defect fixes. These languages include C, C++, JavaScript, Objective-C, Php, and Python. The languages Clojure, Haskell, Ruby, Scala, and TypeScript, all have negative coefficients implying that these languages are less likely than the average to result in defect fixing commits.

Notice how top projects in popular languages do have tendency to have more fixes than top projects in more obscure languages. Perhaps these projects have simply more users, leading to more reported bugs and community pressure? Interesting paper, but it is all to easy to jump to conclusions.

Comment · 12 years ago
I don't know, I think I used about 40 languages. The beauty is that zip-compression captures rich statistical properties of the languages, so representation-wise it should come a long way. But counting compressed output length discretises the lang-lang distance. For shorter text this might be troubling, since this could easily result in ties. So, maybe. Perhaps I should try :).
Comment · 12 years ago
Comment · 13 years ago
I would like to add a different perspective. I used to work on a Thinkpad, and loved the machine. Last year I changed to a MacBook Air (MBA). I also like this machine. But one of the biggest changes was that people seemed to be much more easily convinced when I showed them results on the MBA. This is a major point to consider IMHO.
Comment · 13 years ago
Like other people, I use the 'dipping in the stream' approach. Still, vocal people drown some of the other people. I am experimenting a bit with machine learning methods to rank tweets based on how interesting I find them. Does anyone know of similar solutions?
Comment · 13 years ago
No, not without some radical new insights :). But, why replace them? If you need something to replace them, probably you have a different need (e.g. hands-free, private communication, or expressing something that is hard to do consciously, like the level of pain, tiredness of familiarity of a face). Perhaps EEG can be used to fulfill that need instead.
Comment · 13 years ago
Comment · 13 years ago
Hmm, difficult question. In the US there are some groups doing very advanced work with implants to restore limb or prosthesis control, and there are some very impressive movies of monkey's controlling robotic arms. But invasive (i.e. with implants) work is not really my thing. And in these studies, often the monkey is the one doing the learning — it is not the device that adapts to the user.

For non-invase (i.e. EEG measured from outside the body) EEG I think that is still far off. The problem is that the signals are measured from a distance, and that it is very hard isolate signals from a precise region in the brain which is needed for accurate control.

I typically express the performance of these brain-computer interfaces in bits/minute. Keyboard gets roughly around 300 bits/min, brain-computer interfaces 2-20 bits/min. I would not know the bandwidth (and latency) requirements for reliable prosthesis control, but that would probably depend on intended use of the prosthesis. But then again, not all the actuators need to be controlled individually; maybe it is feasible with a smart controller and a forgiving application. And of course usability plays a major role; I cannot imagine controlling a prosthesis using the keyboard, although the information throughput might be sufficient :).

Comment · 13 years ago
I have a background in these so-called brain computer interfaces. Typically, research know some of the properties of the EEG signal during specific tasks. Using signal processing and machine learning methods (and sometimes human training), these tasks can be recognized by 'decoding' the EEG.

Some of these signals are spontaneous (realizing an error has been made), some are produced by voluntarily executing some mental task. Currently, the amount of these 'channels' that is available is limited by 1) the amount of detectors that a lab is willing to build, and 2) how many tasks the user can simultaneously execute — which is typically very low. If you really want a number, I would settle for four as the current state of the art.

I have been working on a method to make problem 1) so easy it can be solved by laymen by just collecting examples of EEG during the task of interest. Now we are founding a startup to make this happen commercially :).

PS: I think this technology does not lend itself well for analogies with channels or buttons. Buttons were invented for a physical world. Brain-computer interfaces lend itself to interact with signals there are /not/ available in normal interaction (i.e. relevance, errors, intended movements etc).

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton