Smerity

Joined 17 years ago

Karma
5,243
Submissions
490
Member since
Nov 19
Australian in San Francisco focused on making the rapid deep learning advances usable by anyone.

gcc startup.c -o ./startup

I hold a Masters in Computational Science & Engineering from Harvard University and a Bachelor of Information Technology (First Class Honours + University Medal) from the University of Sydney.

Highlights:

- Deep learning: As a senior research scientist at Salesforce Research (via the MetaMind acquisition), I established multiple state-of-the-art results in deep learning research, primarily language modeling, beating results from Google, Facebook, and other strong research groups.

- Big data: Lone engineer at Common Crawl where I produced crawl archives comprising of over 34 billion URLs (~2.5 petabytes).

- STEM education: First employee of Grok Learning, an online interactive platform tailored to teach high school students programming, which teaches tens of thousands of students per year. Nearly spent a decade at the National Computer Science School in Australia where we teach 100+ high school students per year programming at an intensive summer school.

Say hi! =]

Email: [email protected]

Website: http://smerity.com

Like my comments? I share similar things on Twitter a few hundred characters at a time! https://twitter.com/Smerity

View on Hacker News

Recent submissions

Comment · 1 year ago
Ton Roosendaal is brilliant both strategically (taking a closed source codebase and growing it into the open source success story that is Blender today) but also as a person.

When I was 15 or so, mid 2000s, I was heavily into the Blender community. Shortly after the closed source to open source transition I ran into a segfault. I could half heartedly sling code at the time but not enough to work out the issue I had.

After noting the issue on IRC Ton personally helped tease out the bug. I _might_ have misdirected him by saying the bug occurred "with just a cube" (and he was like "Yay! Bugs are easier when they're simple cases!") but I neglected to note it was a cube subdivided half a dozen times, with a few thousand vertices ;)

He had a vision and quiet persistent execution plan for Blender and the community that was far ahead of anything else in those (relatively) early days of OSS and the web.

The Blender community was and is an amazing combination of technology, creativity, and positivity, and I think we owe Ton for helping steward much of it.

Comment · 1 year ago
Comment · 2 years ago
Excited to see more people working on RNNs but wish their citations were better.

In 2016 my team from Salesforce Research published our work on the Quasi-Recurrent Neural Network[1] (QRNN). The QRNN variants we describe are near identical (minGRU) or highly similar (minLSTM) to the work here.

The QRNN was used, many years ago now, in the first version of Baidu's speech recognition system (Deep Voice [6]) and as part of Google's handwriting recognition system in Gboard[5] (2019).

Even if there are expressivity trade-offs when using parallelizable RNNs they've shown historically they can work well and are low resource and incredibly fast. Very few of the possibilities regarding distillation, hardware optimization, etc, have been explored.

Even if you need "exact" recall, various works have shown that even a single layer of attention with a parallelizable RNN can yield strong results. Distillation down to such a model is quite promising.

Other recent fast RNN variants such as the RWKV, S4, Mamba et al. include citations to QRNN (2016) and SRU (2017) for a richer history + better context.

The SRU work has also had additions in recent years (SRU++), doing well in speech recognition and LM tasks where they found similar speed benefits over Transformers.

I note this primarily as the more data points, especially when strongly relevant, the better positioned the research is. A number of the "new" findings from this paper have been previously explored - and do certainly show promise! This makes sure we're asking new questions with new insights (with all the benefit of additional research from ~8 years ago) versus missing the work from those earlier.

[1] QRNN paper: https://arxiv.org/abs/1611.01576

[2] SRU paper: https://arxiv.org/abs/1709.02755

[3]: SRU++ for speech recognition: https://arxiv.org/abs/2110.05571

[4]: SRU++ for language modeling: https://arxiv.org/abs/2102.12459

[5]: https://research.google/blog/rnn-based-handwriting-recogniti...

[6]: https://arxiv.org/abs/1702.07825

Comment · 2 years ago
Comment · 2 years ago
Comment · 2 years ago
In the distant past I was the lone engineer of Common Crawl almost a decade ago. Common Crawl heavily leverages the WARC format.

My favorite capability of the WARC format borrows from the fact that most compression formats can be written to allow random access. Compression formats such as `gzip` and `zstandard` allow multiple compressed streams to be stuck together and act during decompression as if it's one contiguous file.

Hence you can create multiple compressions and literally stick them together:

  $ echo cat > cat.txt
  $ echo dog > dog.txt
  $ zstd cat.txt dog.txt
  $ cat cat.txt.zst dog.txt.zst > catdog.zst
  $ zstdcat catdog.zst
  cat
  dog
For files composed of only a textual / clearly delimited format that means you can fairly trivially leap to a different offset assuming each of the inputs is compressed individually. You lose out on some amount of compression but random lookup seems a fairly reasonable tradeoff. Common Crawl was able to use this to allow entirely random lookups into web crawl datasets dozens / hundreds of terabytes in size without any change in file format for example and utilizing Amazon S3's support for HTTP Range requests[1].

Trading compression for random lookup is even more forgiving if you create a separate compression dictionary tailored toward your dataset. For web crawling you'd likely get you the majority of the compression gains back unless pages from the same website are sequentially written which is unlikely in most situations. The website's shared template/s would result in very high compression gains across files which you'd lose by allowing random lookup but most crawlers don't don't operate sequentially so local compression gains are likely smaller than larger.

[1]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requ...

Comment · 3 years ago
Comment · 4 years ago
Comment · 4 years ago
I have had my XPS 13 laptop die four times in the past two years, needing a replacement logic board each time.

The laptop is amazing when it's working, default Linux support too, but so far have literally had to ship it back to Dell for at least two months total since I've used it. Usually the turn around is only a few days but they were waiting on a part at one stage for weeks.

I am now looking to do a system exchange with them but am not certain if it's going to go through. At this stage I can't imagine they'd be profitable on this machine given how many times I've had to ship it in for repair.

Hence I sadly cannot recommend the XPS 13 even though I truly love it when it's working and laugh with glee at having 32GB of RAM =]

Comment · 4 years ago
Comment · 4 years ago
Comment · 4 years ago

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton