4 ms·
To those criticizing the title, how would you improve it? Dependencies do the heavy lifting , but that's true even for a hello-world. It seems obvious enough th
by lynndotpy 4y ago
To those criticizing the title, how would you improve it? Dependencies do the heavy lifting , but that's true even for a hello-world. It seems obvious enough that I wouldn't see a reason to clarify.
Instead, to me, this reads, "Hey C++ fans, you don't need Python for nice things. Look at what you can do in 284 lines of code!"
I don't have C++ chops, so this is nontrivial for me. I appreciate OP sharing this!
- itcrowd 4y agoShow HN: State-of-the-Art German Speech Recognition in C++
- lynndotpy 4y agoThat makes sense, but knowing it's 284 LOC means I can casually read it and learn something from that. That would be different at 2840 LOC or very very different at 284000 LOC.
- fxtentacle 4y agoYes, this is precisely why I included it. I wanted to highlight for people who have experience with speech recognition in general that this is a magnitude easier to read than Mozilla's DeepSpeech.
- UncleEntity 4y ago> To those criticizing the title, how would you improve it? By not making false assertions? Judging by the comments the 284 lines is in addition to many hours of GPU training time plus some magic and a huge library. I didn’t even click the link because I knew it was 284 lines of plumbing code on top of something else. I once wrote a entire renderman compatible renderer in a couple hundred lines of python — which was really a super dumb script which generated ctypes bindings from the header for an actual renderer (pixie if anyone is curious).
- fxtentacle 4y agoThe core difference in my opinion is that the 284 lines of code here effect a relative 16% improvement in result quality over what until now was the best publicly available research. That's why I wrote "State-of-the-Art" at the beginning of the title. Because this is based on new research and it works better than previous research.
- UncleEntity 4y agoI don’t doubt you put blood, sweat and tears into this just that the title is misleading.
- lynndotpy 4y agoI really don't think it's a false assertion. What code isn't "plumbing"? For example, you can get 90% of the way to a CSV parser in Python in one line (as `[line.split(",") for line in open("some.csv").readlines()]`). Should we consider it a false assertion to call that a "one liner" and if so, how should it properly be described?
- UncleEntity 4y ago—edit- And misread CSV for SVG it seems. I actually wrote a generator for a SVG parser/writer and not counting the xml library it came in at around close to 40k lines of code. Or maybe 70k lines, don’t recall just know it is a lot. If I split it up into one class per file it took something like 45 minutes to compile (it is a C-API extension) so I would dump all the code into a single file for faster compiles. Haven’t looked at it in a while but the generator file is probably around 400 something lines. Certainly not going to claim its a validating SVG library in 400 odd lines of code. Think I had some cockamamie scheme to make a SVG to grease pencil converter for blender and only got around to shaving that one yak.
- rob74 4y agoMaybe "Show HN: State-of-the-Art German Speech Recognition in 284 lines of C++ glue logic" ?
- fxtentacle 4y agoThat would leave out the fact that those 284 lines contain the new decoder based on our paper which leads to the relative 16% reduction in word error rate. Also, it's 3 characters too long to be a valid HN title. And lastly, this does contain the parameters for a new AI model which is based on my research, so it's not all "glue logic" ;)
- glouwbug 4y agoSure, but even something like `int main() {}` relies on an operating system, the C runtime, a standard library, and hardware to boot. Best build the universe to make an apple pie
- deleted 4y ago[deleted]