Nicholas Carlini

Nicholas writes things.
https://nicholas.carlini.com/ (RSS)
visit blog
Regex Chess: A 2-ply minimax chess engine in 84,688 regular expressions
6 Jan 2025 | original ↗

Over the holidays I decided it's been too long since I did something with entirely no purpose. So without further ado, I present to you ... Regex Chess: sequence of 84,688 regular expressions that, when executed in order, will play a (valid; not entirely terrible) move given a chess board as input.

Letting Language Models Write my Website
25 Dec 2024 | original ↗

I let a language model write my bio. It went about as well as you might expect.

You should forecast the future of AI
25 Nov 2024 | original ↗

The field of AI is progressing much faster than many expected. When things are changing so fast, it can be hard to remember what you thought was impossible just a few years ago, and conversely, what you thought was obviously going to be trivially solved that still hasn't been.

How I use "AI"
1 Aug 2024 | original ↗

I don't think that "AI" models [a] (by which I mean: large language models) are over-hyped.

Why I attack
24 Jun 2024 | original ↗

Yesterday I was forwarded a bunch of messages that Prof. Ben Zhao (a computer science professor [a] A full professor with tenure, so I feel entirely within my rights to call him out here. at the University of Chicago) wrote about me on a public Discord server with 15,000 members, including this gem:

(yet another) Broken Adversarial Example Defense at IEEE S&P 2024
6 May 2024 | original ↗

IEEE SP 2024 (one of the top computer security conferences) has, again, accepted an adversarial example defense paper that is broken with simple attacks. It contains claims that are mathematically impossible, does not follow recommended guidance on evaluating adversarial robustness, and its own figures present all the necessary evidence that the...

My benchmark for large language models
19 Feb 2024 | original ↗

A benchmark of ~100 tests for language models, collected from actual questions I've asked of language models in the last year.

My research idea logfile, 2016-2019
21 Jan 2024 | original ↗

How do I pick what research problems I want to solve? I get asked this question often, most recently in December at NeurIPS, and so on my flight back I decided to describe the only piece of my incredibly rudimentary system that's at all a process. I maintain a single file called ideas.txt, where I just append a new entry every time I think of...

Reading Data off an Apple ProFile Hard Drive with an Arduino
3 Dec 2023 | original ↗

So let's suppose you had a 1980s Apple ProFile Hard Drive, and you wanted to recover the data.

Playing chess with large language models
22 Sept 2023 | original ↗

Building a chess bot that queries GPT-3.5-turbo-instruct to play chess at the level of a skilled human player.

Little Bobby |endoftext|
3 Aug 2023 | original ↗

TODO

A ChatGPT clone, in 3000 bytes of C, backed by GPT-2
2 Apr 2023 | original ↗

This program is a dependency-free implementation of GPT-2, including byte-pair encoding and transformer inference, in ~3000 bytes of C. I then use this to create something like Chat GPT.

Reflecting on Towards Evaluating the Robustness of Neural Networks
17 Aug 2022 | original ↗

I recently got back from attending USENIX Security 2022, and someone pointed out to me that it's been five years since I wrote Towards Evaluating the Robustness of Neural Networks (with my at-the-time advisor) and they asked if I had any thoughts on this paper. I didn't respond with that great an answer, but thought it was an interesting...

Rapid Iteration in Machine Learning Research
19 Jun 2022 | original ↗

A brief discussion about a tool I use to make rapid iteration in ML research possible.

A Case of Plagarism in Machine Learning Research
8 Apr 2022 | original ↗

A recent paper ('A Roadmap for Big Model') has copied a bunch of text from over a dozen prior papers. This is bad.

Multiplexing Circuits on the Game of Life - Part 5
27 Feb 2022 | original ↗

Abstract: Improving digital logic gates on Conway's game of life by allowing 8-bit logic gates instead of boolean logic gates.

Research Paper Release Checklist
30 Jan 2022 | original ↗

This page contains a few checklists that help prevent embarrassing issues when releasing research papers online (e.g., via arXiv or a conference publication).

A Simple CPU on the Game of Life - Part 4
30 Dec 2021 | original ↗

Abstract: An implementation of a minimal CPU on Conway's the Game of Life (an 'unlimited register machine'), and runs at ~10Hz.

Improved Logic Gates on Conway's Game of Life - Part 3
23 Mar 2021 | original ↗

Abstract: This post describes improvemnets made to my prior digital logic gate constructions (e.g., AND/OR/NOT) built on top of Conway's Game of Life, resulting in 100x faster simulations.

Yet Another Space Game (In 13kb of JavaScript)
19 Dec 2020 | original ↗

This year I entered in JS13K 2020, a game jam for JavaScript games in under 13KB (total size). I wrote a 3rd-person space shooter game, building on top of game engine I built last year for a doom clone.

InstaHide Disappointingly Wins Bell Labs Prize, 2nd Place
5 Dec 2020 | original ↗

InstaHide (a recent method that claims to give a way to train neural networks while preserving training data privacy) was just awarded the 2nd place Bell Labs Prize (an award for finding solutions to some of the greatest challenges facing the information and telecommunications industry.). This is a grave error.

Yet Another MOBA (In 13kb of JavaScript)
21 Nov 2020 | original ↗

For the third year in a row, I participated in JS13k 2021, where you're tasked with making a game in 13kB of JavaScript. Each year I enter participate I try to learn something new I didn't know how to do before. This year's motivation: I wanted to make a multiplayer game with some nontrivial networking aspects. So below you'll find a description...

Realtime Screen Recording of Breaking a Defense to Adversarial Examples
15 Sept 2020 | original ↗

I recently broke a defense to be published at CCS 2020, and this time I recorded my screen the entire time---all two hours of it. Typically when I break defenses, I'll write a short paper, stick it on arXiv, and then move on. Pedagogically, this isn't very useful. [a] (Don't you worry, I did that again this time, too.) So for this defense I...

An Introduction to Circuit Design on Conway's Game of Life - Part 2
1 Jun 2020 | original ↗

Abstract: Using AND/OR/NOT gates built on top of Conway's Game of Life, this post walks through how to construct a actual circuits, for example a 7-segment display.

Digital Logic Gates on Conway's Game of Life - Part 1
1 Apr 2020 | original ↗

Abstract: This post walks through how to construct digital logic gates (AND/OR/NOT) on top of Conway's Game of Life, demonstrating its Turing completeness.

Are adversarial example defenses improving?
20 Feb 2020 | original ↗

Abstract: We (again) broke a large collection of published defenses to adversarial examples. Here's how and why.

Yet Another Doom Clone (In 13kb of JavaScript)
13 Sept 2019 | original ↗

This year I entered in JS13K 2019, which asks people to develop games in under 13K of JavaScript. I entered a Doom Clone called ... Yet Another Doom Clone.

3D Shadow Mapping Renderer in JavaScript
12 Aug 2019 | original ↗

Late last year I decided it would be fun to build a 3D renderer in JavaScript. Recently it got into some sort of finished state and decided to put it here. This isn't so much of a tutorial on how to get there, but rather more of a here's a fun thing to do with nice pictures. But it was interesting to do. So here's that.

A Complete List of All (arXiv) Adversarial Example Papers
15 Jun 2019 | original ↗

Abstract: A continuously-updating list of all 1000+ papers posted to arXiv about adversarial examples.

Adversarial Machine Learning Reading List
15 Jul 2018 | original ↗

Abstract: This reading list provides an introduction to the field of adversarial examples for machine learning models.

Recommendations for Evaluating Adversarial Example Defenses
26 May 2018 | original ↗

Abstract: This document contains a collection of advice for performing adversarial example defense evaluations.

↑ These items are from RSS. Visit the blog itself at https://nicholas.carlini.com/ to find everything else and to appreciate author's digital home.