Skip to content

ellisk42/sasquatch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Unsupervised program synthesis #

The general idea is to find the most compressive representation of the
data, where we consider representations that are of the form f(x_i),
where f is a program to be synthesized and x_i is an unobserved
argument to that program. Through some noise model, f(x_i) produces
the ith observation.

Thus, we compress, or "squash" the data, hence the name Sasquatch.

To run this software on the SVRT problems:
- setup a python virtual environment
- install Z3 locally into the virtual environment
- clone this repo into the virtual environment
- Download SVRT to gain access to the images
- run `python parse.py <n>` where `<n>` is an SVRT problem number

## Dependencies ##
- Z3

## Project Structure ##

The project includes the following files:

- README: this file
- setup.py: installation information for pip
- bin/: the executable files associated with this project
  - experiment.sh: a wrapper for running iterative experiments on MIT's athena computers
- sasquatch/: the project's python files
  - sasquatch.py: the core wrapper around Z3 for squashing via program synthesis
  - experiments/: applications of Sasquatch
    - morphology/: an experiment in discovering programs for English morphology
      - celex.py
      - corpus.py
      - ipa.py
      - language.py
      - lexicon.py
      - loop_language.py
      - morphology.py
      - morphology_baseline.py
      - process_verbs.py
      - verbs
    - regress/: an experiment in discovering programs for linear regression
      - regress.py
    - svrt/: an experiment in discovering programs for SVRT image classification
      - classifier.py
      - dinnerParty.py: an implementation of parallel mapping
      - find_bad_parses.py
      - parse.py
      - parser_utilities.py
      - vision.py
      - vision_data.py
      - vision_notes
      - analysis/:
        - accuracies.py
        - curves.py
        - figures.py
      - final_data/:
        - many data files
      - neural/:
        - collect_data.py
        - neural.lua

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages