Everything You See Is a Computational Process, If You Know How to Look
๐ Abstract
The article explores the author's personal perspective on how they perceive and experience computation, drawing parallels between the abstract nature of programming and the way the world can be viewed through a computational lens. It discusses the author's innate sense of a "machine at work" in various phenomena, from coin flips to language translation, and how this computational mindset has shaped their research career.
๐ Q&A
[01] The author's perspective on computation
1. What is the author's view on the nature of computation?
- The author feels that computation is not just static code, but rather the embodiment of a living, humming creature that follows their instructions.
- The author can "feel the machine" even before touching a computer, and experiences the computational process as a metaphorical machine updating variables, looping, branching, and searching.
- The author sees computation as a way to understand and formalize various phenomena, from seemingly random events like coin flips to complex processes like language translation.
2. How does the author's computational perspective shape their view of the world?
- The author believes that once you start thinking about computation, you start to see it everywhere, such as in the routing process of mailing a letter.
- The author sees computation as a way to manage the randomness and complexity of the world, drawing parallels between computational processes and concepts like randomness and language.
- The author's computational mindset has allowed them to build a research career around the machines that encompass their understanding of the world.
[02] Randomness and computation
1. How does the author explain the concept of randomness from a computational perspective?
- The author argues that seemingly random events, like coin flips, are actually the result of complex computational processes involving many variables.
- The author cites the work of Avi Wigderson, who formally connected randomness with mathematical functions that are hard to compute, showing that "randomness is just computation we cannot predict."
2. What is the author's view on managing randomness and complexity through computation?
- The author suggests that recent progress in artificial intelligence and machine learning has given us a glimpse into how we can manage randomness and complexity through computation.
- Machine learning models can be trained on large datasets to recover the underlying structure and patterns, allowing them to simulate and generate new "random" samples, such as in language translation.
- The author feels the "weights updating" as machine learning models are trained, and sees this as a way to capture the complex calculations behind various processes.
[03] Language and computation
1. How does the author use language translation as an example of a computational process?
- The author compares the brain of a bilingual translator, like Sophie, to a computational machine that follows a process to convert text from one language to another.
- While Sophie may not understand the entire process, the author argues that it is nevertheless happening, just as a computer-based translation system uses machine learning to predict the probability of the next word in a sequence.
- The author suggests that language itself can be seen as "random" samples from the underlying structure of human language, which can be modeled and simulated through computation.
2. What is the author's perspective on the relationship between language and computation?
- The author believes that the computational perspective allows us to capture the complex calculations behind language-related tasks, such as translation, which go beyond what can be described through linguistic tools alone.
- The author sees the advances in machine learning as a way to manage the randomness and complexity of language, by discovering the underlying structure and patterns that can be used to simulate and generate new language samples.