Neal Parikh

  • Home
  • Loose Notions
  • Notes
  • Quotes
  • Images
  • Linkroll
  • About









Graphical Models for Primarily Unsupervised Sequence Labeling (link)

ABSTRACT: Most models used in natural language processing must be trained on large corpora of labeled text. This tutorial explores a "primarily unsupervised" approach (based on graphical models) that augments a corpus of unlabeled text with some form of prior domain knowledge, but does not require any fully labeled examples. We survey probabilistic graphical models for (supervised) classification and sequence labeling and then present the prototype-driven approach of Haghighi and Klein (2006) to sequence labeling in detail, including a discussion of the theory and implementation of both conditional random fields and prototype learning. We show experimental results for English part of speech tagging.

Notes on Types and Programming Languages (PDF)

A (highly) compressed coverage of the topics in Types and Programming Languages by Benjamin Pierce. Includes material on type systems and functional languages as well as fundamentals of the lambda calculus. Covers Chapters 1-12.

Unix

MySQL Cheat Sheet

MySQL is a useful database server, but sometimes I forget the syntax of some commands that I use a little less often, so I decided to make myself a cheat sheet of common commands.

Terminal Basics

This is a popular introduction to Unix document I wrote a while ago. I haven't updated it in a long while, as it was initially written when Unix was completely new to the Mac community — now there are many more comprehensive resources (e.g. from O'Reilly). This said, this one is free, and some people still seem to find it useful, though some of the information in it may no longer apply to recent versions of Mac OS X (like the material on NetInfo, which is now gone). Sections include Why Unix?; What's Darwin?; Basics of Darwin; Introduction to shells; Running system commands; Basic shell customization (see my article below for more info on customizing tcsh/zsh); Permissions; Running programs; What's NetInfo?; Basics of compiling; Process management; Introduction to text editors (thorough explanation of pico, vi, and emacs); and Introduction to X Windows. Currently at version 2.1.2.

Customizing your shell prompt

This is a tutorial on how to customize your tcsh or zsh shell prompt using funky formatting sequences and colors. I didn't include bash because I've never really used it much.

zshrc

This is my zshrc configuration file. It's somewhat elaborate.

vimrc

My vim configuration file. Thanks to David Rainsford for suggestions and comments.