A medical record is a mix of numbers, diagnoses, and categories. A typical neural network (a program that learns) gets lost because it can't match protein levels (numbers) with diagnoses (yes/no) and tumor subtypes (categories). Their errors are incomparable, like a translator confusing centimeters with kilograms. The authors abandoned exact values and translated everything into the language of order. The program simply asks: is this patient's indicator higher or lower than the neighbor's? Such ranking makes errors commensurate.
First, a common block of the network sifts through hundreds of genes, leaving only those important for all tasks at once. A special technique (it zeros out the contribution of useless genes) removes the noise. Then, for each task, the network outputs conditional scores and compares them by order. The questions 'Is the diagnosis correct?' and 'Is the protein level accurate?' reduce to one: was the order among patients guessed correctly?
On 234 lung cancer patients, accuracy rose from 0.951 to 0.968—per thousand patients, that's 17 saved from false diagnoses. Among the selected genes, not only lung-related ones: E2F1 (previously linked to breast cancer) and Scd1 (fat metabolism). Thus, the 'order translator' finds common ground between immunity and the tumor.
The rigid 'greater/less' rule was replaced with a smooth S-shaped curve so the computer could learn gradually, without jumps. And the idea of comparing orders was proposed back in 1987.
It's like a universal translator from sci-fi movies, only instead of languages, it's types of medical data.