this post was submitted on 25 Jul 2024
993 points (97.4% liked)
Technology
59651 readers
2683 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Yeah, for sure since programming is also a language. But IMHO, for a machine learning model the best way to approach it is not as a natural language but rather as its AST/machine representation and not the text token. That way the model not only understands the token pattern but also the structure since most programming languages are well defined.
Note that, even if we refer to Java, Python, Rust etc. by the same word "language" as we refer to Mandarin, English, Spanish etc., they're apples and oranges - one set is unlike the other, even if both have some similarities.
That's relevant here, for two major reasons:
Regarding the first point, I'll give you an example. You suggested abstract syntax trees for the internal representation of programming code, right? That might work really well for programming, dunno, but for human languages I bet that it would be worse than the current approach. That's because, for human languages, what matters the most are the semantic and pragmatic layers, and those are a mess - with the meaning of each word in a given utterance being dictated by the other words there.
Yeah, that's my point ma dude. The current LLM tasks are ill suited for programming, the only reason it works is sheer coincidence (alright, maybe not sheer coincidence, I know its all statistics and so on). The better approach to make LLM for programming is a model that can transform/"translate" a natural language that humans use to AST, the language that computers use but still close to human language. But the problem is that to do such tasks, LLM needs to actually have an understanding of concepts from the natural language which is debatable at best.
Sorry - then I misread you. Fair point.