dylanbfox
How RLHF Preference Model Tuning Works (and How Things May Go Wrong)
How to run Stable Diffusion locally
AssemblyAI (YC S17) Is Hiring Senior Research Engineers
We're AssemblyAI - and we're building APIs to transcribe and understand audio data at scale.* About us *- We just raised a $28M Series A from Accel, YC, Stripe's founders, Nat Friedman, and Daniel Gross. We grew revenue 4x in the past year, have hundreds of paying customers (startups and Fortune 500s), and thousands of developers using our APIs- We're processing millions of audio files every...
AssemblyAI (YC S17) is hiring senior engineers to build ML systems at scale
Hey HN --We're AssemblyAI - and we're building APIs to transcribe and understand audio data. Some notes about us:- Just raised a $28M Series A from Accel, YC, Stripe founders, Nat Friedman, and Daniel Gross (raised $36M total to date) - Grew revenue 4x in the past year - Have hundreds of paying customers (startups and Fortune 500s), and thousands of developers using our APIsWe're processing...
Differentiable Programming – A Simple Introduction
Is hybrid work the worst of both worlds?
Is light pollution a problem? [video]
Space pictures from the Voyager 1 and 2 missions
Text Segmentation – Approaches, Datasets, and Evaluation Metrics
An Overview of Transducer Models for ASR
This blog is more of an intro to a few high level concepts (multi-GPU and multi-node training, fp32 vs fp16, buying hardware and dedicated machines vs AWS/GCP, etc) for startups that are early into their deep learning journey, and that might need a nudge in the right direction.
If you're looking for a deep dive into the best GPUs to buy (cost/perf, etc), the link in the below comment gives a pretty good overview.
PS - I can send you some benchmarks we did that show (at least for us) Horovod is ~10% faster than DDP for multi-node training FWIW. Email is in my profile!
In general - this is expensive stuff. Training big, accurate models just requires a lot of compute, and there is a "barrier to entry" wrt costs, even if you're able to get those costs down. I think it's similar to startups not really being able to get into the aerospace industry unless they raise lots of funding (ie, Boom Supersonic).
Practically speaking though, for startups without funding, or access to cloud credits, my advice would be to just train the best model you can, with the compute resources you have available. Try to close your first customer with an "MVP" model. Even if your model is not good enough for most customers - you can close one, get some incremental revenue, and keep iterating.
When we first started (2017), I trained models that were ~1/10 the size of our current models on a few K80s in AWS. These models were much worse compared to our models today, but they helped us make incremental progress to get to where we are now.
You can also signup for a free account and test from the dashboard without having to write any code if that's easier.
Other than lots of crosstalk in your group conversations - is there anything else challenging about your audio (eg, distance from microphones, background noise, etc?)
There are some open source libraries that make this relatively easy:
- https://github.com/Kitt-AI/snowboy (looks to be shutdown now) - https://github.com/cmusphinx/pocketsphinx
This avoids having to stream audio 24x7 to a cloud model which would be super expensive. This being said, I'm pretty sure what the Alexa does, for example, is send any positive wake word to a cloud model (that is bigger and more accurate) to verify the prediction of the local wake word detection model AFAIK.
Once you are positive you have a positive wake word detected - that's when you start streaming to an accurate cloud based transcription model like Assembly to minimize costs!
For example if you take the WER of "I live in New York" and "i live in new york" the WER would be 60% because you're comparing a capitalized version vs an uncapitalized version.
This is why public WER results vary so widely.
We publish our own WER results and normalize the human and automatic transcription text as much as possible to get as close to "true" numbers as possible. But in reality, we see a lot of people comparing ASR services simply by doing diffs of transcripts.
Yes exactly. Managing that much compute requires many humans!
https://news.ycombinator.com/item?id=26251322
My email is in my profile if you want to reach out to chat more!
How to train large deep learning models as a startup
Exactly. Errors with proper nouns are usually more problematic than errors with stop words, yet they're weighted equally in the WER calculation. Ie, deleting "Bob" and "but" both count as a deletion of the same degree according to WER, but we as humans know that deleting "Bob" is potentially a lot more problematic than deleting "but".
CER is definitely more granular. There are papers that basically count Deletions, for example, as 0.5(D) when calculating WER - since they consider Deletions "less bad", but if these weights aren't standardized then WER scores will be super hard to compare.
Personally I think some metric including some type of perplexity is the way to go.