Giter Site home page Giter Site logo

jaydeepb-inexture / sippycup Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wcmac/sippycup

0.0 0.0 0.0 421 KB

SippyCup is a simple semantic parser, written in Python, created purely for didactic purposes.

License: GNU General Public License v2.0

Python 56.57% Jupyter Notebook 43.43%

sippycup's Introduction

SippyCup

Bill MacCartney
Spring 2015

SippyCup is a simple semantic parser, written in Python, created purely for didactic purposes. The design favors simplicity and readability over efficiency and performance. The goal is to make semantic parsing look easy!

SippyCup demonstrates an approach to semantic parsing based around:

  • a context-free grammar with semantic attachments,
  • a chart-parsing algorithm,
  • a linear, feature-based scoring function for ranking candidate parses,
  • learning of scoring parameters using stochastic gradient descent, and
  • limited forms of grammar induction.

We present applications of SippyCup to three different domains:

  • natural language arithmetic: "two times three plus four"
  • travel queries: "driving directions to williamsburg virginia"
  • geographical queries: "how many states border the largest state"

SippyCup was inspired by, and partly adapted from, the demonstration code published as a companion to Liang & Potts 2015, "Bringing machine learning and compositional semantics together". It was developed primarily for the benefit of students in Stanford's CS224U: Natural Language Understanding, and therefore contains exercises (without solutions) for use in the class. However, it should be of use to anyone interested in learning about semantic parsing. If you're new to Python, you might find this Python tutorial useful.

In addition to the Python source code, SippyCup includes a codelab on semantic parsing, published as a sequence of four IPython Notebooks:

  • Unit 0: Introduction to semantic parsing
  • Unit 1: Natural language arithmetic
  • Unit 2: Travel queries
  • Unit 3: Geography queries

SippyCup remains a work in progress, and you will find a number of TODOs throughout this notebook and the accompanying Python codebase. You will likely also find errors! You can help to contribute to SippyCup by sending corrections to the author or by sending a pull request to the SippyCup GitHub repository.

sippycup's People

Contributors

cgpotts avatar wcmac avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.