logoalt Hacker News

porridgeraisinyesterday at 2:26 PM1 replyview on HN

Basically, you have a bunch of Q,A pairs in the training dataset. Here, it was trained to next-word predict the question itself, as well as next-word predict the answer given the question as prompt. This is bog-standard, no one's complaining.

In the test dataset's Q,A pairs, it was only trained to next-word predict the question itself, and it was not given the answer at all.

It was then evaluated by seeing if it is able to output A_test given the Q_test as prompt.

What would be cheating is training it to produce A_test (given Q_test as prompt) as well, since then you can always make a model that scores 100% by just memorising Q_test, A_test pairs.

The complaints online mostly stem from not reading that properly and assuming they trained on Q_test,A_test instead of just Q_test. This is further because these days large LLMs are inadvertently trained on many benchmark solutions even unintentionally due to the massive scale of data and the infeasibility of auditing it all. But none of that is the case here.

The reason you want to train on Q_test is because in these AR transformer models, they learn useful composable encodings of Q by simply learning to next-word predict Q. So you enable the model to learn composable encodings of the test questions, so that it can hopefully "connect it" to an earlier train problem it had seen, and adapt the solution it had seen for that, much like humans do in school exams.

Without this step, you are making it difficult for the model to "connect" the test question to a train question it had seen earlier, and then it still has to adapt the solution. This way, you precompute that "this test question is like this train question" and then during the exam you only have to do the adapting the solution part after a simpler "retrieval" process.

You can just think of next-word training Q_test as a "retrieval" process.

This practice often used in continual learning or "test time training" is not yet useful in general real world ML tasks due to the differences in memory and compute requirements, and more so the general fragility of training large neural networks in a streaming realtime way (as opposed to large data, batched), versus inferencing from a static neural network. It is due to that fragility that I believe (correct me if I am wrong) this guy had to train on a batch of Q_tests. If you enforced that you will not provide Q_test_2 before they answer Q_test_1, the performance will drop.

While the increased compute and memory is difficult to solve inherently, there are various efforts being made to fix the fragility, especially in reinforcement learning where this is called "streaming RL", there is revival of interest as seen in RLC 2026.

[Note] Arc-AGI-1 doesn't have any actual english words or such, but it's simpler to pretend it was a basic Q&A benchmark to explain the above


Replies

bee_rideryesterday at 3:13 PM

Further question—the model produces an answer to the question, it sends the answer, and then gets graded. Does it get to know immediately how it did, or does it get the grade back at the end after answering all the questions?

If it is the former case, it would be possible to add the generated question/answer pair into the training set as well. Would that be considered fair? (Of course this is a moot point if the answers all get graded simultaneously at the end). Then the model could explore interesting strategies around what order to answer questions in.

In my uninformed opinion, the various permutations of question ordering/answer revealing all map to different real-world scenarios… and any of them could be interesting!

show 2 replies