{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/pixology-probing-the-linguistic-and-visual","title":"Pixology: Probing the Linguistic and Visual Capabilities of Pixel-based Language Models","arxiv_id":"2410.12011","date":"2024-10-15","proceeding":null,"authors":["Kushal Tatariya","Vladimir Araujo","Thomas Bauwens","Miryam de Lhoneux"],"abstract":"Pixel-based language models have emerged as a compelling alternative to subword-based language modelling, particularly because they can represent virtually any script. PIXEL, a canonical example of such a model, is a vision transformer that has been pre-trained on rendered text. While PIXEL has shown promising cross-script transfer abilities and robustness to orthographic perturbations, it falls short of outperforming monolingual subword counterparts like BERT in most other contexts. This discrepancy raises questions about the amount of linguistic knowledge learnt by these models and whether their performance in language tasks stems more from their visual capabilities than their linguistic ones. To explore this, we probe PIXEL using a variety of linguistic and visual tasks to assess its position on the vision-to-language spectrum. Our findings reveal a substantial gap between the model's visual and linguistic understanding. The lower layers of PIXEL predominantly capture superficial visual features, whereas the higher layers gradually learn more syntactic and semantic abstractions. Additionally, we examine variants of PIXEL trained with different text rendering strategies, discovering that introducing certain orthographic constraints at the input level can facilitate earlier learning of surface-level features. With this study, we hope to provide insights that aid the further development of pixel-based language models.","url_abs":"https://arxiv.org/abs/2410.12011v1","url_pdf":"https://arxiv.org/pdf/2410.12011v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"pixology-probing-the-linguistic-and-visual","repo_url":"https://github.com/kushaltatariya/Pixology","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"language-modelling","task_name":"Language Modelling"}],"methods":[{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"attention-dropout","method_name":"Attention Dropout"},{"method_slug":"bert","method_name":"BERT"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"linear-warmup-with-linear-decay","method_name":"Linear Warmup With Linear Decay"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"vision-transformer","method_name":"Vision Transformer"},{"method_slug":"weight-decay","method_name":"Weight Decay"},{"method_slug":"wordpiece","method_name":"WordPiece"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2410.12011","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2410.12011"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"deterministic:regex_extraction","url":"https://github.com/kushaltatariya/Pixology","reach":{"status":"ok"}}],"summary":{"ran":8},"by_repo_kind":{"official":{"samples":8,"ran":8,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":8,"samples":[{"code_sha256_prefix":"5c8aeb16ab6fb862","entry":"collate_fn","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"finetuning/cifar_finetune.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/finetuning/cifar_finetune.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5c8aeb16ab6fb862"}},{"code_sha256_prefix":"7e409034d19c43ff","entry":"compute_metrics","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"finetuning/cifar_finetune.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/finetuning/cifar_finetune.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7e409034d19c43ff"}},{"code_sha256_prefix":"cdee6e11330b3ad7","entry":"countTsvValues","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"generation/tsv.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/generation/tsv.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"cdee6e11330b3ad7"}},{"code_sha256_prefix":"fa25f1de9598406d","entry":"dataset_countCharacter","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"generation/visual_tasks.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/generation/visual_tasks.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"fa25f1de9598406d"}},{"code_sha256_prefix":"8fc204fd65fc4d75","entry":"get_classif_name","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"probing/splitclassifier.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/probing/splitclassifier.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8fc204fd65fc4d75"}},{"code_sha256_prefix":"70442a9bb235a356","entry":"get_optimizer","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"probing/classifier.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/probing/classifier.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"70442a9bb235a356"}},{"code_sha256_prefix":"3aaf66d1b0f0952b","entry":"limitTsvValueCount","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"generation/tsv.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/generation/tsv.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3aaf66d1b0f0952b"}},{"code_sha256_prefix":"5eb59a7c782f8a1f","entry":"tuplesToFile","repo":"kushaltatariya/Pixology","repo_kind":"official","path":"generation/tsv.py","file_url":"https://github.com/kushaltatariya/Pixology/blob/HEAD/generation/tsv.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5eb59a7c782f8a1f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}