Conditional Random Field (CRF) is undirected graphical models, a special case of which correspond to conditionally-trained finite state machines. A key advantage of CRFs is their great flexibility to include a wide variety of arbitrary, non-independent features of the input. It used linear chains, recent applications of CRF have also used more general graphical structures. It is used to encode known relationships between observations and construct consistent interpretations. CRF is often used for labeling or parsing of sequential data, such as natural language text or biological sequences and in computer vision.