├── README.md ├── aspect.py ├── data ├── semeval15 │ ├── dev_parse │ ├── test_parse │ └── train_parse ├── semeval16 │ ├── dev_parse │ ├── test_parse │ └── train_parse └── sentences │ ├── dev │ └── train ├── decompose_sents.py ├── decompose_sents_aspects.py ├── estimate_dists.py ├── finetune_aspect_based_model.py ├── import_dy.py ├── label_sents.py ├── models.py ├── random_inits.py ├── run_fragment_based_model.py ├── run_sentence_based_model.py ├── test_funcs.py ├── train_funcs.py ├── tree.py └── utils.py /README.md: -------------------------------------------------------------------------------- 1 | # XRTransfer: Transfer Learning Between Related Tasks Using Expected Label Proportions 2 | Code and dataset for EMNLP2019 [paper](https://arxiv.org/abs/1909.00430) "Transfer Learning Between Related Tasks Using Expected Label Proportions". 3 | To run this code you need to download python 2.7, numpy package and the [DyNet framework](https://github.com/clab/dynet). 4 | # Data 5 | 1. To use this code you need to download the glove embeddings vectors, you can download 6 | them [from this link](https://drive.google.com/file/d/1fa2xOnlHJ5A8-Y480Vs5_uGp8X2-PhuM/view) 7 | After downloading, the Glove.txt file should be located in the project's data folder. 8 | 2. You need the unlabeled parsed reviews, download them [from this link](https://drive.google.com/open?id=1xEmLU6UxOlCjfeVqLrMPFfFpuzz4Hjqn) (if you skip to step 7 and download the necessary [files](https://drive.google.com/open?id=1CPNnt5V2wAHI2h01a4sSYmTMV0rkYKJR) to do so then you don't have download this) 9 | 10 | # 11 | # Running 12 | To train an aspect/fragment based model you need to run each of the following steps. Note that if you are only interested in the XR training, you can skip to step 7 by downloading the required files and unzipping them in the main folder, download them [from this link](https://drive.google.com/open?id=1CPNnt5V2wAHI2h01a4sSYmTMV0rkYKJR). 13 | 1. Train a sentence-level classifier-to do so, run "python run_sentence_based_model.py, a model called "BiLSTMClassifier" will be created in the models folder (the "models" folder will be created as well if it does not exist yet). 14 | 2. Decompose the unlabeled parsed reviews, this will create an unlabeled dataset of sentences and fragments-to do so, run "python decompose_sents.py", a file called "unlabeled" will be created in the data folder. 15 | 3. Decompose the semeval dataset, this will create a dataset of sentence, their aspects, and an associated fragments of the aspects-to do so and the data/semeval16 and data/semeval15 folders, run "python decompose_sents_aspects.py", this will create train,dev and test files in the semeval15 and semeval16 folders. 16 | 4. Label the unlabeled decomposed reviews using the sentence-level classifier-to do so run "python label_sents.py data/unlabeled data/xr/train", this will create a file called train in data/xr, this will be the XR training file. 17 | 5. Label the sentences in the semeval train+dev set, this will be used to estimate the distribution of aspects sentiment given sentence sentiment-to do so, run "python label_sents.py data/semeval15/train,data/semeval15/dev data/xr/sents_aspects_labels" this will create the file "sents_aspects_labels" which will contain noisy labels for the sentence-level sentiment of the ABSC datasets. 18 | 6. Estimate the distribution of aspect-level sentiment given sentence-level sentiment, this provides the signal to train a model using the xr loss-to do so run "python estimate_dists.py", this will create a .npy file which will contain the conditional distributions. 19 | 7. Train a fragment based model using the xr loss-to do so run "python run_fragment_based_model.py --train data/xr/train --test data/semeval16/test", this will train a fragment based model and test it on on the semeval-2016 test set, the model will be saved so you can also test it later on the semval15 test so if you run "python run_fragment_based_model.py --test data/semeval15/test". Note that due to the very large corpus, the training procedure might take a while (in our server it took 4-5 days). 20 | 8. If you want to further finetune the fragment-based model to an aspect-based model run "python finetune_aspect_based_model.py", it will finetune it using the semeval16 dataset, if you want to use the semeval15 dataset, run "python finetune_aspect_based_model.py --train data/semeval15/train --dev data/semeval15/dev --test data/semeval15/test --model_path BiLSTMAttFinetuning2015" 21 | 22 | # Cite 23 | If you use the code, please cite the following paper: 24 | ``` 25 | @inproceedings{ben-noach-goldberg-2019-transfer, 26 | title = "Transfer Learning Between Related Tasks Using Expected Label Proportions", 27 | author = "Ben Noach, Matan and 28 | Goldberg, Yoav", 29 | booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP)", 30 | month = nov, 31 | year = "2019", 32 | address = "Hong Kong, China", 33 | publisher = "Association for Computational Linguistics", 34 | url = "https://www.aclweb.org/anthology/D19-1004", 35 | doi = "10.18653/v1/D19-1004", 36 | pages = "31--42", 37 | abstract = "Deep learning systems thrive on abundance of labeled training data but such data is not always available, calling for alternative methods of supervision. One such method is expectation regularization (XR) (Mann and McCallum, 2007), where models are trained based on expected label proportions. We propose a novel application of the XR framework for transfer learning between related tasks, where knowing the labels of task A provides an estimation of the label proportion of task B. We then use a model trained for A to label a large corpus, and use this corpus with an XR loss to train a model for task B. To make the XR framework applicable to large-scale deep-learning setups, we propose a stochastic batched approximation procedure. We demonstrate the approach on the task of Aspect-based Sentiment classification, where we effectively use a sentence-level sentiment predictor to train accurate aspect-based predictor. The method improves upon fully supervised neural system trained on aspect-level data, and is also cumulative with LM-based pretraining, as we demonstrate by improving a BERT-based Aspect-based Sentiment model.", 38 | } 39 | ``` 40 | -------------------------------------------------------------------------------- /aspect.py: -------------------------------------------------------------------------------- 1 | class AspectBasedSent(object): 2 | """ 3 | This class is a container class for a sentence and its aspects. 4 | """ 5 | def __init__(self, sent, aspects): 6 | """ 7 | Constructor for the AspectBasedSent object. 8 | :param sent: The sentence of a sample. 9 | :param aspects: The aspects contained within a sentence. 10 | """ 11 | self.sent = sent 12 | self.aspects = aspects 13 | 14 | 15 | class Aspect(object): 16 | """ 17 | This class is responsible for containing the attributes of a given aspect. 18 | The aspect object contains the following attributes: 19 | gold_sentiment: the gold sentiment of the aspect 20 | pred_sentiment: a prediction sentiment given to it by a classifier 21 | expression_phrase: The expression phrase that represents the aspect (This is usually 22 | noisy a bit, since it is retrieved with parsing and a few heuristics). 23 | shared: the number of aspects that are contained in the same expression term it was found in. 24 | linked_node: The tree node it was linked to. 25 | expression_phrase: The expression phrase that represents the aspect. 26 | conflicted: Boolean to indicate if this aspect is conflicted (i.e. there is some other aspect 27 | in the same sentence with the same term which contains a different sentiment, similar to previous 28 | work, we remove such aspects). 29 | """ 30 | 31 | def __init__(self, expression_phrase, expression_term, gold_sentiment): 32 | """ 33 | Constructor for the aspect class. 34 | :param expression_phrase: The expression phrase that represents the aspect. 35 | :param expression_term: The linguistic term that expressed the aspect (this does not always exist). 36 | :param gold_sentiment: The gold sentiment of the aspect. 37 | """ 38 | self._gold_sentiment = gold_sentiment 39 | self._pred_sentiment = None 40 | self._shared = None 41 | self._expression_term = expression_term 42 | self._linked_node = None 43 | self._expression_phrase = expression_phrase 44 | self.conflicted = True 45 | 46 | @property 47 | def gold_sentiment(self): 48 | """ 49 | Get function for the gold_sentiment attribute. 50 | :return: The gold_sentiment attribute. 51 | """ 52 | return self._gold_sentiment 53 | 54 | @property 55 | def pred_sentiment(self): 56 | """ 57 | Get function for the pred_sentiment attribute. 58 | :return: The pred_sentiment attribute. 59 | """ 60 | return self._pred_sentiment 61 | 62 | @pred_sentiment.setter 63 | def pred_sentiment(self, value): 64 | """ 65 | Set function for the pred_sentiment attribute. 66 | :param value: The value to set pred_sentiment with. 67 | """ 68 | self._pred_sentiment = value 69 | 70 | @property 71 | def shared(self): 72 | """ 73 | Get function for the shared attribute. 74 | :return: The shared attribute. 75 | """ 76 | return self._shared 77 | 78 | @shared.setter 79 | def shared(self, value): 80 | """ 81 | Set function for the shared attribute. 82 | :param value: The value to set shared with. 83 | """ 84 | self._shared = value 85 | 86 | @property 87 | def expression_term(self): 88 | """ 89 | Get function for the expression_term attribute. 90 | :return: The expression_term attribute. 91 | """ 92 | return self._expression_term 93 | 94 | @property 95 | def linked_node(self): 96 | """ 97 | Get function for the linked_node attribute. 98 | :return: The linked_node attribute. 99 | """ 100 | return self._linked_node 101 | 102 | @linked_node.setter 103 | def linked_node(self, value): 104 | """ 105 | Set function for the linked_node attribute. 106 | :param value: The value to set linked_node with. 107 | """ 108 | self._linked_node = value 109 | 110 | @property 111 | def expression_phrase(self): 112 | """ 113 | Get function for the expression_phrase attribute. 114 | :return: The expression_phrase attribute. 115 | """ 116 | return self._expression_phrase 117 | 118 | @expression_phrase.setter 119 | def expression_phrase(self, value): 120 | """ 121 | Set function for the expression_phrase attribute. 122 | :param value: The value to set expression_phrase with. 123 | """ 124 | self._expression_phrase = value 125 | 126 | 127 | 128 | -------------------------------------------------------------------------------- /data/semeval15/dev_parse: -------------------------------------------------------------------------------- 1 | (6<->S (6<->VP (6<->VBG Judging) (6<->PP (6<->IN from) (6<->NP (6<->JJ previous) (6<->NNS posts)))) (6<->DT this) (6<->VP (6<->VBD used) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->NP (6<->DT a) (6<->JJ good) (6<->NN place)))) (6<->, ,) (6<->PRN (6<->CC but) (6<->ADVP (6<->RB not) (6<->RB any) (6<->RBR longer)))) (6<->. .))||||place<->0 2 | (6<->S (6<->S (6<->S (6<->PRP We) (6<->, ,) (6<->S (6<->EX there) (6<->VP (6<->VBD were) (6<->NP (6<->CD four) (6<->PP (6<->IN of) (6<->PRP us))))) (6<->, ,) (6<->VP (6<->VBD arrived) (6<->PP (6<->IN at) (6<->NN noon)))) (6<->PRN (6<->: -) (6<->S (6<->NP (6<->DT the) (6<->NN place)) (6<->VP (6<->VBD was) (6<->JJ empty))) (6<->: -))) (6<->CC and) (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN staff)) (6<->VP (6<->VBD acted) (6<->SBAR (6<->IN like) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->VP (6<->VBG imposing) (6<->PP (6<->IN on) (6<->PRP them)))))))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->ADJP (6<->RB very) (6<->JJ rude))))) (6<->. .))||||staff<->0 3 | (6<->S (6<->PRP They) (6<->VP (6<->RB never) (6<->VP (6<->VP (6<->VBD brought) (6<->PRP us) (6<->NP (6<->JJ complimentary) (6<->NNS noodles))) (6<->, ,) (6<->VP (6<->VBN ignored) (6<->NP (6<->NP (6<->VBN repeated) (6<->NNS requests)) (6<->PP (6<->IN for) (6<->NN sugar)))) (6<->, ,) (6<->CC and) (6<->VP (6<->VBD threw) (6<->NP (6<->PRP$ our) (6<->NNS dishes)) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->NN table)))))) (6<->. .))||||NULL<->0 4 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VBD was) (6<->JJ lousy) (6<->HYPH -) (6<->UCP (6<->ADJP (6<->ADJP (6<->RB too) (6<->JJ sweet)) (6<->CC or) (6<->ADJP (6<->RB too) (6<->JJ salty))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NNS portions)) (6<->JJ tiny))) (6<->. .))||||food<->0||||portions<->0 5 | (6<->S (6<->PP (6<->IN After) (6<->NP (6<->DT all) (6<->DT that))) (6<->, ,) (6<->PRP they) (6<->VP (6<->VBD complained) (6<->PP (6<->IN to) (6<->PRP me)) (6<->PP (6<->IN about) (6<->NP (6<->DT the) (6<->JJ small) (6<->NN tip)))) (6<->. .))||||NULL<->0 6 | (6<->S (6<->VP (6<->VB Avoid) (6<->NP (6<->DT this) (6<->NN place))) (6<->. !))||||place<->0 7 | (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB very) (6<->JJ disappointed) (6<->PP (6<->IN with) (6<->NP (6<->DT this) (6<->NN restaurant))))) (6<->. .))||||restaurant<->0 8 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VB ve) (6<->VP (6<->VBN asked) (6<->NP (6<->DT a) (6<->NN cart) (6<->NN attendant)) (6<->PP (6<->IN for) (6<->NP (6<->DT a) (6<->NN lotus) (6<->NN leaf) (6<->VBN wrapped) (6<->NN rice)))))) (6<->CC and) (6<->S (6<->PRP she) (6<->VP (6<->VP (6<->VBD replied) (6<->RP back) (6<->NN rice)) (6<->CC and) (6<->VP (6<->RB just) (6<->VBD walked) (6<->RB away)))) (6<->. .))||||cart attendant<->0 9 | (6<->S (6<->PRP I) (6<->VP (6<->VBD had) (6<->VP (6<->TO to) (6<->VP (6<->VB ask) (6<->PRP her) (6<->NP (6<->CD three) (6<->NNS times)) (6<->SBAR (6<->IN before) (6<->S (6<->PRP she) (6<->RB finally) (6<->VP (6<->VBD came) (6<->RB back) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->DT the) (6<->NN dish)) (6<->S (6<->PRP I) (6<->VP (6<->VB ve) (6<->VBN requested))))))))))) (6<->. .))||||NULL<->0 10 | (6<->S (6<->NN Food) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ okay) (6<->, ,) (6<->ADJP (6<->NN nothing) (6<->JJ great)))) (6<->. .))||||Food<->2 11 | (6<->S (6<->S (6<->NP (6<->NN Chow) (6<->NN fun)) (6<->VP (6<->VBD was) (6<->JJ dry))) (6<->: ;) (6<->S (6<->NP (6<->NP (6<->NN pork) (6<->NN shu)) (6<->PRP mai)) (6<->VP (6<->VP (6<->VBD was) (6<->ADJP (6<->ADVP (6<->JJR more) (6<->IN than) (6<->RB usually)) (6<->NN greasy))) (6<->CC and) (6<->VP (6<->VBD had) (6<->VP (6<->TO to) (6<->VP (6<->VB share) (6<->NP (6<->NP (6<->DT a) (6<->NN table)) (6<->PP (6<->IN with) (6<->NP (6<->ADJP (6<->JJ loud) (6<->CC and) (6<->JJ rude)) (6<->NN family))))))))) (6<->. .))||||Chow fun<->0||||pork shu mai<->0||||NULL<->0 12 | (6<->S (6<->PRP I) (6<->: /) (6<->PRP we) (6<->VP (6<->MD will) (6<->RB never) (6<->VP (6<->VB go) (6<->ADVP (6<->RB back) (6<->PP (6<->IN to) (6<->NP (6<->DT this) (6<->NN place)))) (6<->RB again))) (6<->. .))||||place<->0 13 | (6<->S (6<->VP (6<->VBD Went) (6<->PP (6<->IN on) (6<->NP (6<->DT a) (6<->ADJP (6<->CD 3) (6<->NN day)) (6<->NN oyster) (6<->NN binge))) (6<->, ,) (6<->PP (6<->IN with) (6<->S (6<->NNP Fish) (6<->VP (6<->VBG bringing) (6<->RP up) (6<->NP (6<->DT the) (6<->NN closing)))))) (6<->, ,) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->VBP am) (6<->ADJP (6<->RB so) (6<->JJ glad) (6<->S (6<->S (6<->DT this) (6<->VBD was) (6<->NP (6<->NP (6<->DT the) (6<->NN place)) (6<->S (6<->NP (6<->PRP it) (6<->UH O) (6<->NN trip)) (6<->VBD ended)))) (6<->, ,) (6<->SBAR (6<->IN because) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB so) (6<->JJ great))))))))) (6<->. !))||||Fish<->1 14 | (6<->S (6<->NN Service) (6<->VBD was) (6<->JJ devine) (6<->, ,) (6<->NP (6<->NNS oysters) (6<->SBAR (6<->WRB where) (6<->S (6<->NP (6<->DT a) (6<->NN sensual)) (6<->SBAR (6<->IN as) (6<->S (6<->PRP they) (6<->VBP come)))))) (6<->, ,) (6<->CC and) (6<->S (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN price)) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VB be) (6<->VBN beat)))) (6<->. !)) (6<->. !)) (6<->. !))||||Service<->1||||oysters<->1||||NULL<->1 15 | (6<->S (6<->PRP You) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VB go) (6<->RB wrong) (6<->RB here))) (6<->. .))||||NULL<->1 16 | (6<->S (6<->NP (6<->NP (6<->DT Every) (6<->NN time)) (6<->PP (6<->IN in) (6<->NP (6<->NNP New) (6<->NNP York)))) (6<->PRP I) (6<->VP (6<->VBP make) (6<->S (6<->PRP it) (6<->NP (6<->DT a) (6<->NN point)) (6<->VP (6<->TO to) (6<->VP (6<->VB visit) (6<->NP (6<->NNP Restaurant) (6<->NNP Saul)) (6<->PP (6<->IN on) (6<->NP (6<->NNP Smith) (6<->NNP Street))))))) (6<->. .))||||Restaurant Saul<->1 17 | (6<->S (6<->S (6<->NN Everything) (6<->VP (6<->VBZ is) (6<->RB always) (6<->VP (6<->VBN cooked) (6<->PP (6<->IN to) (6<->NN perfection))))) (6<->, ,) (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN service)) (6<->VP (6<->VBZ is) (6<->JJ excellent))) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN decor)) (6<->ADJP (6<->JJ cool) (6<->CC and) (6<->VBN understated)))) (6<->. .))||||NULL<->1||||service<->1||||decor<->1 18 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT the) (6<->NN duck) (6<->NN breast)) (6<->NN special)) (6<->PP (6<->IN on) (6<->NP (6<->PRP$ my) (6<->JJ last) (6<->NN visit))))) (6<->CC and) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ incredible))) (6<->. .))||||duck breast special<->1 19 | (6<->S (6<->MD Ca) (6<->RB n't) (6<->VP (6<->VB wait) (6<->VP (6<->VB wait) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ my) (6<->JJ next) (6<->NN visit))))) (6<->. .))||||NULL<->1 20 | (6<->S (6<->PRP We) (6<->VP (6<->VBP have) (6<->VP (6<->VP (6<->VBN been) (6<->PP (6<->IN to) (6<->NP (6<->DT this) (6<->NN place))) (6<->NP (6<->JJ many) (6<->NNS times))) (6<->, ,) (6<->CC and) (6<->VP (6<->RB always) (6<->VB have) (6<->NP (6<->JJ great) (6<->NN food) (6<->, ,) (6<->NN wine) (6<->, ,) (6<->CC and) (6<->NN service))))) (6<->. .))||||food<->1||||wine<->1||||service<->1 21 | (6<->S (6<->PRP We) (6<->VP (6<->VBD were) (6<->ADJP (6<->JJ worried) (6<->S (6<->PRP we) (6<->VP (6<->VP (6<->MD would) (6<->VP (6<->VB have) (6<->NP (6<->NN trouble) (6<->VP (6<->VBG getting) (6<->RP in))))) (6<->, ,) (6<->CC but) (6<->VP (6<->RB somehow) (6<->VBD managed) (6<->VP (6<->TO to) (6<->VP (6<->VB have) (6<->NP (6<->DT a) (6<->JJ short) (6<->NN wait))))))))) (6<->. .))||||wait<->1 22 | (6<->S (6<->ADVP (6<->IN As) (6<->RB always)) (6<->PRP we) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT a) (6<->JJ great) (6<->NN glass)) (6<->PP (6<->IN of) (6<->NN wine))) (6<->SBAR (6<->IN while) (6<->S (6<->PRP we) (6<->VBD waited)))) (6<->. .))||||glass of wine<->1 23 | (6<->S (6<->SBAR (6<->WRB When) (6<->S (6<->PRP we) (6<->VBD sat))) (6<->, ,) (6<->PRP we) (6<->VP (6<->VBD got) (6<->NP (6<->ADJP (6<->JJ great) (6<->CC and) (6<->JJ fast)) (6<->NN service))) (6<->. .))||||service<->1 24 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NNS people)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBP work) (6<->EX there)))) (6<->VP (6<->VBP are) (6<->RB always) (6<->ADJP (6<->ADJP (6<->RB so) (6<->JJ friendly)) (6<->S (6<->PRP you) (6<->VP (6<->VBP forget) (6<->S (6<->PRP you) (6<->VP (6<->VBP are) (6<->PP (6<->IN in) (6<->NP (6<->NNP New) (6<->NNP York))) (6<->RB sometimes))))))) (6<->. .))||||people<->1 25 | (6<->S (6<->VP (6<->VB Make) (6<->ADJP (6<->JJ sure) (6<->S (6<->PRP you) (6<->VP (6<->VBP try) (6<->NP (6<->DT this) (6<->NN place)) (6<->ADVP (6<->ADVP (6<->RB as) (6<->RB often)) (6<->SBAR (6<->IN as) (6<->S (6<->PRP you) (6<->MD can)))))))) (6<->. .))||||place<->1 26 | (6<->S (6<->NP (6<->NNP Hurley) (6<->POS 's)) (6<->VP (6<->VBZ is) (6<->PP (6<->IN like) (6<->NNS Cheers) (6<->WRB where) (6<->S (6<->S (6<->NN everyone) (6<->VP (6<->VBZ knows) (6<->NP (6<->PRP$ your) (6<->NN name)))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBP are) (6<->ADJP (6<->RB ACTUALLY) (6<->ADJP (6<->JJ glad) (6<->S (6<->PRP you) (6<->VBD came))))))))) (6<->. .))||||NULL<->1 27 | (6<->S (6<->VP (6<->VB Try) (6<->NP (6<->DT the) (6<->NN crunchy) (6<->NN tuna))) (6<->, ,) (6<->S (6<->PRP it) (6<->VP (6<->VBZ is) (6<->VP (6<->TO to) (6<->VP (6<->VB die) (6<->IN for))))) (6<->. .))||||crunchy tuna<->1 28 | (6<->S (6<->VP (6<->VB Try) (6<->NP (6<->NN everything) (6<->PP (6<->IN for) (6<->NP (6<->DT that) (6<->NN matter))))) (6<->, ,) (6<->PRP it) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB all) (6<->JJ good))) (6<->. .))||||NULL<->1 29 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->VP (6<->VBN been) (6<->VP (6<->VBG going) (6<->RB there) (6<->SBAR (6<->IN since) (6<->S (6<->PRP it) (6<->VBD opened))))))) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VB get) (6<->JJ enough)))) (6<->. .))||||NULL<->1 30 | (6<->FRAG (6<->PP (6<->IN By) (6<->RB far)) (6<->NP (6<->NP (6<->DT the) (6<->JJS best) (6<->NN salad)) (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->VP (6<->VBN had) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->JJ fast) (6<->NN food) (6<->NN restaurant))))))) (6<->. .))||||salad<->1 31 | (6<->NP (6<->JJ fine) (6<->NN dining) (6<->NN restaurant) (6<->NN quality) (6<->. .))||||dining<->1 32 | (6<->FRAG (6<->QP (6<->IN Over) (6<->CD 100)) (6<->JJ different) (6<->NNS choices) (6<->VP (6<->TO to) (6<->VP (6<->VB create) (6<->NP (6<->PRP$ your) (6<->JJ own)))) (6<->. .))||||NULL<->1 33 | (6<->S (6<->DT A) (6<->VP (6<->MD must) (6<->VB try)) (6<->. !))||||NULL<->1 34 | (6<->S (6<->SBAR (6<->IN If) (6<->S (6<->PRP you) (6<->VP (6<->VBP are) (6<->NP (6<->NP (6<->DT the) (6<->NN type)) (6<->PP (6<->IN of) (6<->NN person)) (6<->SBAR (6<->WP who) (6<->VP (6<->VBZ likes) (6<->VP (6<->VBG being) (6<->JJ scared) (6<->CC and) (6<->VBN entertained)))))))) (6<->, ,) (6<->DT this) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ great) (6<->NN place)) (6<->VP (6<->TO to) (6<->VP (6<->VB go) (6<->CC and) (6<->VB eat))))) (6<->. .))||||place<->1 35 | (6<->S (6<->S (6<->NP (6<->NP (6<->PRP$ My) (6<->NN husband)) (6<->CC and) (6<->PRP I)) (6<->VP (6<->VBP thougt) (6<->S (6<->PRP it) (6<->VP (6<->MD would) (6<->VP (6<->VB be) (6<->JJ great) (6<->VP (6<->TO to) (6<->VP (6<->VB go) (6<->PP (6<->IN to) (6<->NP (6<->DT the) (6<->NNP Jekyll) (6<->CC and) (6<->NNP Hyde) (6<->NNP Pub))) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ our) (6<->NN anniversary)))))))))) (6<->, ,) (6<->CC and) (6<->S (6<->PP (6<->IN to) (6<->NP (6<->PRP$ our) (6<->NN surprise))) (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ fantastic))) (6<->. .))||||Jekyll and Hyde Pub<->1 36 | (6<->S (6<->S (6<->DT The) (6<->VBP have) (6<->NP (6<->NP (6<->QP (6<->IN over) (6<->CD 100)) (6<->JJ different) (6<->NNS beers)) (6<->VP (6<->TO to) (6<->VP (6<->VB offer) (6<->NP (6<->PRP$ thier) (6<->NN guest))))) (6<->SBAR (6<->IN so) (6<->IN that) (6<->S (6<->VP (6<->VBD made) (6<->S (6<->NP (6<->PRP$ my) (6<->NN husband)) (6<->ADJP (6<->RB very) (6<->JJ happy)))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ delicious)))))) (6<->, ,) (6<->SBAR (6<->IN if) (6<->S (6<->S (6<->PRP I) (6<->VP (6<->MD must) (6<->VP (6<->VB recommend) (6<->NP (6<->DT a) (6<->NN dish))))) (6<->S (6<->PRP it) (6<->VP (6<->MD must) (6<->VP (6<->VB be) (6<->NP (6<->DT the) (6<->NN pumkin) (6<->NNS tortelini))))))) (6<->. .))||||beers<->1||||food<->1||||pumkin tortelini<->1 37 | (6<->S (6<->NP (6<->DT The) (6<->NN entertainment)) (6<->VP (6<->VBD was) (6<->JJ great) (6<->S (6<->PRP they) (6<->VP (6<->VBP have) (6<->NP (6<->NNS shows) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBP go) (6<->RP on) (6<->PP (6<->IN through) (6<->IN out) (6<->NP (6<->DT the) (6<->NN dinner))))))))) (6<->. .))||||entertainment<->1 38 | (6<->S (6<->UH Please) (6<->VP (6<->VP (6<->VB take) (6<->NP (6<->PRP$ my) (6<->NN advice))) (6<->, ,) (6<->VP (6<->VB go) (6<->CC and) (6<->VP (6<->VB try) (6<->NP (6<->DT this) (6<->NN place))))) (6<->. .))||||place<->1 39 | (6<->S (6<->PRP You) (6<->VP (6<->MD will) (6<->RB not) (6<->VP (6<->VB be) (6<->VP (6<->VBN disapointed) (6<->ADVP (6<->RB at) (6<->RB all))))) (6<->. .))||||NULL<->1 40 | (6<->S (6<->VP (6<->VBD Enjoyed) (6<->NP (6<->DT a) (6<->ADJP (6<->RB very) (6<->JJ nice)) (6<->NNP Caesar) (6<->NNP Salad)) (6<->SBAR (6<->IN while) (6<->S (6<->NP (6<->PRP$ my) (6<->NN wife)) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->NN arugula) (6<->CC and) (6<->NP (6<->NN goat) (6<->NN cheese))) (6<->: ...) (6<->ADJP (6<->DT both) (6<->ADJP (6<->RB very) (6<->JJ tasty)))))))) (6<->. .))||||Caesar Salad<->1||||arugula and goat cheese<->1 41 | (6<->S (6<->S (6<->NP (6<->PRP We) (6<->DT both)) (6<->VP (6<->VBD opted) (6<->PP (6<->IN for) (6<->NP (6<->DT a) (6<->NN pasta) (6<->NN dish))))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->VP (6<->VBN served) (6<->ADJP (6<->JJ timely) (6<->CC and) (6<->JJ fresh))))) (6<->. .))||||NULL<->1||||pasta dish<->1 42 | (6<->S (6<->PRP We) (6<->VP (6<->VBD concluded) (6<->PP (6<->IN with) (6<->NP (6<->JJ tiramisu) (6<->NN chocolate) (6<->NN cake))) (6<->, ,) (6<->S (6<->DT both) (6<->VP (6<->VBD were) (6<->JJ delicious)))) (6<->. .))||||tiramisu chocolate cake<->1 43 | (6<->S (6<->PRP We) (6<->VP (6<->MD 'd) (6<->VP (6<->VB go) (6<->RB back) (6<->RB again))))||||NULL<->1 44 | (6<->S (6<->NP (6<->DT The) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ BISTRO)) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBZ means) (6<->: :) (6<->S (6<->NP (6<->JJ simple) (6<->NNS dishes) (6<->CC and) (6<->NN wine)) (6<->VP (6<->VBD served) (6<->RB efficiently) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->JJ bustling) (6<->NN atmosphere))))))))) (6<->. .))||||dishes<->1||||wine<->1||||NULL<->1||||atmosphere<->1 45 | (6<->SBARQ (6<->CC And) (6<->WRB where) (6<->SQ (6<->VBZ does) (6<->NNP Patis) (6<->VP (6<->VB go) (6<->RB wrong))) (6<->: ;) (6<->INTJ (6<->UH no) (6<->WRB where)) (6<->. .))||||Patis<->1 46 | (6<->S (6<->PRP You) (6<->VP (6<->VBP are) (6<->RB not) (6<->VP (6<->VBG eating) (6<->NP (6<->NN haut) (6<->VB cuisine)) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->JJ subtle) (6<->NNS hints)) (6<->PP (6<->IN of) (6<->WDT whatever))) (6<->CC but) (6<->: :) (6<->NP (6<->NP (6<->NNP Cassuolet) (6<->, ,) (6<->NNP Steake) (6<->NNP Fritte) (6<->, ,) (6<->NP (6<->NNP Tripe) (6<->NNP Stew)) (6<->, ,) (6<->FW etc)) (6<->: ;) (6<->NP (6<->JJ simple) (6<->NN stuff)))))) (6<->. .))||||NULL<->1||||NULL<->1 47 | (6<->S (6<->CC And) (6<->VP (6<->VBN evaluated) (6<->PP (6<->IN on) (6<->NP (6<->DT those) (6<->NNS terms)))) (6<->NNP Pastis) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB simply) (6<->JJ wonderful))) (6<->. .))||||Pastis<->1 48 | (6<->S (6<->PRP I) (6<->VP (6<->VBD started) (6<->RP out) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->DT a) (6<->NNP Bombay) (6<->NN beer)) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ big) (6<->RB enough) (6<->PP (6<->IN for) (6<->CD two)))))))) (6<->. .))||||Bombay beer<->1 49 | (6<->S (6<->NNP MMmmm) (6<->: ...) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ delicious))) (6<->. .))||||NULL<->1 50 | (6<->S (6<->S (6<->NN Service) (6<->VP (6<->VBD was) (6<->JJ slow))) (6<->, ,) (6<->CC but) (6<->S (6<->NP (6<->DT the) (6<->NNS people)) (6<->VP (6<->VBD were) (6<->JJ friendly))) (6<->. .))||||Service<->0||||people<->1 51 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ 's) (6<->NP (6<->NP (6<->DT a) (6<->JJ nice) (6<->NN place)) (6<->VP (6<->TO to) (6<->VP (6<->VB relax) (6<->CC and) (6<->VP (6<->VB have) (6<->NN conversation)))))) (6<->. .))||||place<->1 52 | (6<->S (6<->PRP I) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VB wait) (6<->VP (6<->TO to) (6<->VP (6<->VB go) (6<->RB back))))) (6<->. .))||||NULL<->1 53 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ authentic) (6<->JJ Italian)) (6<->HYPH -) (6<->JJ delicious)) (6<->. !))||||food<->1 54 | (6<->S (6<->NN Pizza) (6<->VP (6<->VBZ is) (6<->JJ terrific) (6<->, ,) (6<->SBAR (6<->IN as) (6<->SINV (6<->VBZ is) (6<->NP (6<->JJ homemade) (6<->NN pasta))))) (6<->. .))||||Pizza<->1||||homemade pasta<->1 55 | (6<->S (6<->NN Ambience) (6<->VP (6<->VBZ is) (6<->JJ delightful) (6<->, ,) (6<->S (6<->NN service) (6<->JJ impeccable))) (6<->. .))||||Ambience<->1||||service<->1 56 | (6<->S (6<->PRP I) (6<->VP (6<->VBP 'm) (6<->RB still) (6<->ADJP (6<->JJ mad) (6<->SBAR (6<->IN that) (6<->S (6<->PRP i) (6<->VP (6<->VBD had) (6<->VP (6<->TO to) (6<->VP (6<->VB pay) (6<->PP (6<->IN for) (6<->NP (6<->JJ lousy) (6<->NN food)))))))))) (6<->. .))||||food<->0 57 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN hanger) (6<->NN steak)) (6<->VP (6<->VBD was) (6<->PP (6<->IN like) (6<->NN rubber)))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN tuna)) (6<->VP (6<->VBD was) (6<->ADJP (6<->NN flavorless) (6<->S (6<->RB not) (6<->VP (6<->TO to) (6<->VB mention) (6<->S (6<->PRP it) (6<->VP (6<->VBD tasted) (6<->SBAR (6<->IN like) (6<->S (6<->PRP it) (6<->VP (6<->VBD had) (6<->RB just) (6<->VP (6<->VBN been) (6<->VBN thawed)))))))))))) (6<->. .))||||hanger steak<->0||||tuna<->0 58 | (6<->S (6<->S (6<->NN Service) (6<->VP (6<->VBD was) (6<->RB also) (6<->JJ horrible))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN ambience)) (6<->VP (6<->VBZ is) (6<->RB not) (6<->ADJP (6<->RB that) (6<->JJ great)))) (6<->. .))||||Service<->0||||ambience<->0 59 | (6<->S (6<->VP (6<->VB DO) (6<->RB not) (6<->VP (6<->VB try) (6<->SBAR (6<->IN unless) (6<->S (6<->PRP you) (6<->VP (6<->VBP 're) (6<->VP (6<->RB just) (6<->VP (6<->VBG going) (6<->RB there) (6<->VP (6<->TO to) (6<->VP (6<->VB hang) (6<->RP out) (6<->PP (6<->IN like) (6<->NP (6<->NP (6<->DT the) (6<->NN rest)) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->DT the) (6<->NNS hipsters)) (6<->SBAR (6<->WP who) (6<->S (6<->RB apparently) (6<->VP (6<->VBP have) (6<->NP (6<->NP (6<->DT no) (6<->NN sense)) (6<->PP (6<->IN of) (6<->NN taste))))))))))))))))))) (6<->. .))||||NULL<->0 60 | (6<->S (6<->PRP I) (6<->RB absolutely) (6<->VP (6<->VBP love) (6<->NP (6<->DT this) (6<->NN place))) (6<->. !) (6<->. !) (6<->. !))||||place<->1 61 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP like) (6<->NP (6<->DT the) (6<->NN ambience)))) (6<->, ,) (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->ADJP (6<->RB very) (6<->JJ dark) (6<->CC and) (6<->JJ original)))) (6<->. .))||||ambience<->1 62 | (6<->S (6<->NP (6<->DT The) (6<->NN sushi)) (6<->VP (6<->VBZ is) (6<->JJ amazing)) (6<->. !) (6<->. !) (6<->. !))||||sushi<->1 63 | (6<->FRAG (6<->CC And) (6<->ADJP (6<->RB amazingly) (6<->JJ cheap)) (6<->. .))||||NULL<->1 64 | (6<->NP (6<->NP (6<->JJ Big) (6<->NNS thumbs)) (6<->RP up) (6<->. !))||||NULL<->1 65 | (6<->S (6<->S (6<->NN Myagi) (6<->VP (6<->VBZ is) (6<->NP (6<->CD one) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->PRP$ my) (6<->JJ favorite) (6<->NNS restaurants)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NNP City)))))))) (6<->: ;) (6<->S (6<->NP (6<->DT the) (6<->NN place)) (6<->S (6<->NP (6<->DT the) (6<->JJ negative) (6<->NNS reviews)) (6<->VP (6<->VBP describe) (6<->VP (6<->NN sound) (6<->SBAR (6<->IN like) (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->NP (6<->RB somewhere) (6<->RB else))))))))) (6<->. .))||||Myagi<->1 66 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VB 've) (6<->RB never) (6<->VP (6<->VBN had) (6<->NP (6<->JJ bad) (6<->NN service))))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN fish)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ fresh) (6<->CC and) (6<->JJ delicious)))) (6<->. .))||||service<->1||||fish<->1 67 | (6<->S (6<->NP (6<->PRP$ Their) (6<->NN tuna) (6<->DT tartar) (6<->NN appetizer)) (6<->VP (6<->VBZ is) (6<->VP (6<->TO to) (6<->VP (6<->VB die) (6<->IN for)))) (6<->. .))||||tuna tartar appetizer<->1 68 | (6<->S (6<->VP (6<->VB Go) (6<->PP (6<->IN to) (6<->NNP Volare)) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->JJ 1st) (6<->NN class) (6<->NN service)) (6<->CC and) (6<->NP (6<->JJ terrific) (6<->NN food))))) (6<->. .))||||service<->1||||food<->1 69 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NNS portions)) (6<->VP (6<->VBP are) (6<->JJ large))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NNS servers)) (6<->RB always) (6<->VP (6<->VBP surprise) (6<->PRP us) (6<->PP (6<->IN with) (6<->NP (6<->DT a) (6<->JJ different) (6<->NN starter))))) (6<->. .))||||portions<->1 70 | (6<->S (6<->NP (6<->DT The) (6<->NN wine) (6<->NN list)) (6<->VP (6<->VBZ is) (6<->JJ excellent)) (6<->. .))||||wine list<->1 71 | (6<->S (6<->VP (6<->VBD Went) (6<->RB there) (6<->PP (6<->IN with) (6<->NP (6<->PRP$ my) (6<->NN wife)))) (6<->CC and) (6<->S (6<->PRP we) (6<->VP (6<->VBD had) (6<->VP (6<->TO to) (6<->VB wait) (6<->PP (6<->IN for) (6<->NP (6<->DT a) (6<->NN table)))) (6<->SBAR (6<->RB even) (6<->IN though) (6<->S (6<->PRP you) (6<->VP (6<->MD could) (6<->VP (6<->VB see) (6<->S (6<->RB there) (6<->JJ many) (6<->WDT that) (6<->VP (6<->VBD were) (6<->JJ empty) (6<->PP (6<->IN with) (6<->RB not) (6<->VB reservation) (6<->NN sigh) (6<->PP (6<->IN on) (6<->PRP them))))))))))) (6<->. .))||||NULL<->0 72 | (6<->S (6<->NN Service) (6<->VP (6<->VBD was) (6<->JJ slow) (6<->VP (6<->VBD had) (6<->VP (6<->TO to) (6<->VP (6<->VB wait) (6<->VP (6<->IN to) (6<->VB order)))) (6<->CC and) (6<->VP (6<->VB get) (6<->NP (6<->NN food) (6<->SBAR (6<->IN although) (6<->S (6<->RB not) (6<->VBN crowded))))))) (6<->. .))||||Service<->0 73 | (6<->FRAG (6<->NNS Drinks) (6<->VP (6<->ADVP (6<->NN way) (6<->RB over)) (6<->VBN priced)) (6<->. .))||||Drinks<->0 74 | (6<->S (6<->NN Food) (6<->VP (6<->VBD was) (6<->JJ good) (6<->RB not) (6<->JJ great) (6<->RB not) (6<->JJ worth) (6<->NP (6<->NP (6<->DT the) (6<->NN wait)) (6<->CC or) (6<->NP (6<->DT another) (6<->NN visit)))))||||Food<->2||||NULL<->0 75 | (6<->S (6<->NP (6<->NNP Ess) (6<->HYPH -) (6<->NNP A) (6<->HYPH -) (6<->NP (6<->NNP Bagel) (6<->-LRB- -LRB-) (6<->NP (6<->CC either) (6<->IN by) (6<->NP (6<->NNP Sty) (6<->HYPH -) (6<->NN town) (6<->CC or) (6<->NN midtown) (6<->-RRB- -RRB-))))) (6<->VP (6<->VBZ is) (6<->PP (6<->IN by) (6<->RB far)) (6<->NP (6<->NP (6<->DT the) (6<->JJS best) (6<->NN bagel)) (6<->PP (6<->IN in) (6<->NNP NY)))) (6<->. .))||||bagel<->1 76 | (6<->S (6<->NP (6<->DT The) (6<->NNS bagels)) (6<->RB always) (6<->JJ warm) (6<->, ,) (6<->ADJP (6<->JJ soft) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->NN inside)))) (6<->, ,) (6<->VP (6<->VB crispy) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->JJ outside)))) (6<->CC and) (6<->ADJP (6<->JJ enormous) (6<->PP (6<->IN in) (6<->NN size))) (6<->. .))||||bagels<->1||||bagels<->1 77 | (6<->S (6<->S (6<->PRP They) (6<->VP (6<->VBP have) (6<->NP (6<->NP (6<->DT a) (6<->JJ huge) (6<->NN selection)) (6<->PP (6<->IN of) (6<->NP (6<->JJ different) (6<->NN cream) (6<->NNS cheeses)))))) (6<->CC and) (6<->S (6<->NP (6<->DT all) (6<->PP (6<->IN of) (6<->NP (6<->PRP$ their) (6<->NNS salads)))) (6<->VP (6<->VBP are) (6<->JJ great))) (6<->. .))||||salads<->1||||cream cheeses<->1 78 | (6<->S (6<->NP (6<->DT The) (6<->NN lox)) (6<->VP (6<->VBZ is) (6<->RB always) (6<->JJ fresh) (6<->RB too)) (6<->. .))||||lox<->1 79 | (6<->ADJP (6<->RB Highly) (6<->VBN recommended) (6<->PP (6<->IN to) (6<->DT all)) (6<->. !))||||NULL<->1 80 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN location) (6<->CC and) (6<->NN ambience)) (6<->VP (6<->VBZ is) (6<->JJ Ok))) (6<->CC but) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->SBAR (6<->WP what) (6<->VP (6<->VBZ makes) (6<->RP up) (6<->PP (6<->IN for) (6<->PRP it)))))) (6<->. .))||||location<->2||||ambience<->2||||food<->1 81 | (6<->S (6<->EX There) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->NN lot)) (6<->PP (6<->IN of) (6<->NN variety))) (6<->PP (6<->RB even) (6<->IN for) (6<->NP (6<->NNS people) (6<->SBAR (6<->WP who) (6<->VP (6<->VBP eat) (6<->JJ vegetarian) (6<->PP (6<->IN like) (6<->PRP me))))))) (6<->. .))||||NULL<->1 82 | (6<->S (6<->VP (6<->VB Try) (6<->NP (6<->JJ green) (6<->NN curry)) (6<->PP (6<->IN with) (6<->NNS vegetables))) (6<->. .))||||green curry with vegetables<->1 83 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN quantity)) (6<->VP (6<->VBZ is) (6<->RB also) (6<->ADJP (6<->RB very) (6<->JJ good)))) (6<->, ,) (6<->S (6<->PRP you) (6<->VP (6<->MD will) (6<->VP (6<->VB come) (6<->RP out) (6<->JJ satisfied)))) (6<->. .))||||quantity<->1 84 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBZ is) (6<->JJ ok))) (6<->, ,) (6<->S (6<->NP (6<->DT some) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->NNS people)))) (6<->VP (6<->VBD did) (6<->RB n't) (6<->VP (6<->VB get) (6<->SBAR (6<->WP what) (6<->S (6<->PRP they) (6<->VP (6<->VBD asked) (6<->IN for))))))) (6<->. .))||||service<->2 85 | (6<->S (6<->VP (6<->VB Do) (6<->RB n't) (6<->VP (6<->VB dine) (6<->PP (6<->IN at) (6<->NN Tamarind)) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->JJ vegetarian) (6<->NNS dishes))))) (6<->, ,) (6<->S (6<->PRP they) (6<->VP (6<->VBP are) (6<->RB simply) (6<->RB not) (6<->PP (6<->PP (6<->IN up) (6<->PP (6<->IN to) (6<->NN par))) (6<->PP (6<->IN with) (6<->NP (6<->DT the) (6<->AFX non) (6<->HYPH -) (6<->NN veg) (6<->NNS selections)))))) (6<->. .))||||vegetarian dishes<->0||||non - veg selections<->1 86 | (6<->S (6<->NNP Decor) (6<->VP (6<->VBZ is) (6<->JJ nice) (6<->SBAR (6<->IN though) (6<->S (6<->NN service) (6<->VP (6<->MD can) (6<->VP (6<->VB be) (6<->JJ spotty)))))) (6<->. .))||||Decor<->1||||service<->0 87 | (6<->S (6<->NP (6<->DT This) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->RB always) (6<->VBN packed)) (6<->. .))||||place<->2 88 | (6<->S (6<->ADVP (6<->RBS Most) (6<->RB importantly)) (6<->, ,) (6<->NN food) (6<->VP (6<->VBZ is) (6<->JJ excellent)) (6<->. .))||||food<->1 89 | (6<->S (6<->VP (6<->VB Try) (6<->NP (6<->DT the) (6<->NN sea) (6<->NN bass))) (6<->. .))||||sea bass<->1 90 | (6<->ADJP (6<->RB Highly) (6<->VBN recommended) (6<->. .))||||NULL<->1 91 | (6<->FRAG (6<->ADVP (6<->RB First) (6<->PP (6<->IN of) (6<->DT all))) (6<->NP (6<->NP (6<->NNP Dal) (6<->NNP Bukhara)) (6<->NNPS Rocks)) (6<->. .))||||Dal Bukhara<->1 92 | (6<->S (6<->PRP I) (6<->VP (6<->VBP am) (6<->ADJP (6<->JJ happy) (6<->S (6<->PRP i) (6<->VP (6<->VP (6<->VBD did) (6<->NP (6<->DT the) (6<->NN food))) (6<->VP (6<->VBD was) (6<->VBN awsome)))))) (6<->. .))||||food<->1 93 | (6<->FRAG (6<->RB JUST) (6<->NNP AWSOME) (6<->. .))||||NULL<->1 94 | (6<->SINV (6<->CC and) (6<->UH yes) (6<->NP (6<->NNP Dal) (6<->NNP Bukhara)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB so) (6<->JJ dam) (6<->JJ good))) (6<->CC and) (6<->SINV (6<->RB so) (6<->VBP are) (6<->NP (6<->PDT all) (6<->DT the) (6<->NNS kababs))) (6<->. .))||||kababs<->1||||Dal Bukhara<->1 95 | (6<->S (6<->CC but) (6<->S (6<->RB overall) (6<->PRP i) (6<->VP (6<->VBP give) (6<->PRP it) (6<->NP (6<->DT a) (6<->CD 10)))))||||NULL<->1 96 | (6<->CD 10)||||NULL<->1 97 | (6<->S (6<->NP (6<->NNP Chennai) (6<->NNP Garden)) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->PRP$ my) (6<->JJ favorite) (6<->JJ Indian) (6<->NN restaurant)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN city))))) (6<->. .))||||Chennai Garden<->1 98 | (6<->S (6<->PRP They) (6<->VP (6<->VBP have) (6<->NP (6<->JJ authentic) (6<->JJ Indian)) (6<->PP (6<->IN at) (6<->NP (6<->NN amazin) (6<->NNS prices)))) (6<->. .))||||Indian<->1||||Indian<->1 99 | (6<->S (6<->S (6<->NP (6<->DT This) (6<->NN restaurant)) (6<->VP (6<->VBZ is) (6<->NNP VEGETARIAN))) (6<->: ;) (6<->S (6<->EX there) (6<->VP (6<->VBP are) (6<->NP (6<->NP (6<->DT NO) (6<->NN MEAT) (6<->NNS dishes)) (6<->RB whatsoever)))) (6<->. .))||||MEAT dishes<->0 100 | (6<->S (6<->NP (6<->DT The) (6<->NNS seats)) (6<->VP (6<->VBP are) (6<->JJ uncomfortable) (6<->SBAR (6<->IN if) (6<->S (6<->PRP you) (6<->VP (6<->VBP are) (6<->VP (6<->VBG sitting) (6<->PP (6<->IN against) (6<->NP (6<->DT the) (6<->NN wall))) (6<->PP (6<->IN on) (6<->NP (6<->JJ wooden) (6<->NNS benches)))))))) (6<->. .))||||seats<->0 101 | (6<->S (6<->S (6<->PRP It) (6<->VP (6<->VBZ 's) (6<->NP (6<->DT a) (6<->ADJP (6<->RB rather) (6<->JJ cramped) (6<->CC and) (6<->JJ busy)) (6<->NN restaurant)))) (6<->CC and) (6<->S (6<->PRP it) (6<->VP (6<->VBZ closes) (6<->RB early))) (6<->. .))||||restaurant<->0||||restaurant<->0 102 | (6<->S (6<->PRP I) (6<->RB absolutely) (6<->VBD Loved) (6<->NP (6<->DT this) (6<->NN place)) (6<->. .))||||place<->1 103 | (6<->FRAG (6<->NP (6<->JJ Excellent) (6<->NN atmosphere)) (6<->, ,) (6<->NP (6<->NP (6<->JJ delicious) (6<->NNS dishes)) (6<->ADJP (6<->ADJP (6<->JJ good) (6<->CC and) (6<->JJ friendly)) (6<->NN service))) (6<->. .))||||atmosphere<->1||||dishes<->1||||service<->1 104 | (6<->S (6<->DT this) (6<->VP (6<->VBZ is) (6<->VP (6<->MD can) (6<->VP (6<->VBD became) (6<->PP (6<->PP (6<->IN on) (6<->NN e)) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->NNP NY) (6<->NNP Italian) (6<->NNP Food) (6<->NN fare) (6<->NNS institutions))))))) (6<->. .))||||NULL<->1 105 | (6<->S (6<->PRP I) (6<->VP (6<->VBP think) (6<->SBAR (6<->IN that) (6<->S (6<->PRP it) (6<->VP (6<->VBZ is) (6<->NP (6<->ADJP (6<->ADJP (6<->RB absolutely) (6<->JJ brilliant)) (6<->CC and) (6<->ADJP (6<->RB well) (6<->VBN runned))) (6<->NN business) (6<->NN operation)))))) (6<->. .))||||NULL<->1 106 | (6<->S (6<->NP (6<->DT The) (6<->NN wine) (6<->NN list)) (6<->VP (6<->VBZ is) (6<->RB also) (6<->ADJP (6<->RB really) (6<->JJ nice))) (6<->. .))||||wine list<->1 107 | (6<->S (6<->S (6<->NN Everything) (6<->VP (6<->VBD was) (6<->JJ wonderful))) (6<->: ;) (6<->NP (6<->NN food) (6<->, ,) (6<->NNS drinks) (6<->, ,) (6<->NN staff) (6<->, ,) (6<->NN mileau)) (6<->. .))||||NULL<->1||||food<->1||||drinks<->1||||staff<->1||||mileau<->1 108 | (6<->S (6<->PRP I) (6<->VP (6<->MD would) (6<->VP (6<->RB highly) (6<->VB recommend) (6<->NP (6<->DT this) (6<->NN place)))) (6<->. !))||||place<->1 109 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ good)) (6<->. .))||||food<->1 110 | (6<->S (6<->NP (6<->DT The) (6<->NN place)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ nice) (6<->CC and) (6<->JJ calm))) (6<->. .))||||place<->1 111 | (6<->S (6<->CC but) (6<->S (6<->NP (6<->DT the) (6<->NN service)) (6<->VP (6<->VBD was) (6<->ADJP (6<->NP (6<->DT a) (6<->NN bit)) (6<->JJ slow)))) (6<->. .))||||service<->0 112 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD got) (6<->NP (6<->NP (6<->DT an) (6<->JJ excellent) (6<->NN piece)) (6<->PP (6<->IN of) (6<->NN cheesecake))))) (6<->CC and) (6<->S (6<->PRP we) (6<->VP (6<->VBD had) (6<->NP (6<->JJ several) (6<->JJ other) (6<->JJ nice) (6<->NNS pastries)))) (6<->. .))||||cheesecake<->1||||pastries<->1 113 | (6<->S (6<->PRP I) (6<->VP (6<->MD would) (6<->VP (6<->VB recommend) (6<->NP (6<->NP (6<->NNP Roxy) (6<->POS 's)) (6<->PP (6<->PP (6<->IN for) (6<->DT that)) (6<->, ,) (6<->CC but) (6<->RB not) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ their) (6<->NN food))))))) (6<->. .))||||food<->0||||NULL<->1 114 | (6<->S (6<->S (6<->NP (6<->NP (6<->NP (6<->PRP$ My) (6<->NN son)) (6<->CC and) (6<->NP (6<->PRP$ his) (6<->NN girlfriend))) (6<->DT both)) (6<->VP (6<->VBD wanted) (6<->NNS cheeseburgers))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->JJ huge))) (6<->. !))||||cheeseburgers<->2 115 | (6<->S (6<->CC But) (6<->, ,) (6<->PRP they) (6<->VP (6<->VBD were) (6<->ADJP (6<->ADJP (6<->RB too) (6<->JJ big)) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NN bun))))) (6<->. .))||||NULL<->0 116 | (6<->S (6<->RB Consequently) (6<->, ,) (6<->NP (6<->PRP$ their) (6<->NNS burgers)) (6<->VP (6<->VP (6<->VBD fell) (6<->RB apart) (6<->PP (6<->IN in) (6<->NP (6<->PRP$ their) (6<->NNS hands)))) (6<->CC and) (6<->VP (6<->VP (6<->VBD made) (6<->NP (6<->PDT such) (6<->DT a) (6<->NN mess))) (6<->SBAR (6<->WDT that) (6<->S (6<->PRP they) (6<->VP (6<->VBP did'nt) (6<->VP (6<->VBP feel) (6<->PP (6<->IN like) (6<->VP (6<->VBG finishing) (6<->PRP them))))))))) (6<->. .))||||burgers<->0 117 | (6<->S (6<->RB Also) (6<->PRP they) (6<->VP (6<->VBD were) (6<->NP (6<->NP (6<->$ $) (6<->CD 15)) (6<->DT each))) (6<->. !))||||NULL<->0 118 | (6<->S (6<->PRP I) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT a) (6<->JJ huge) (6<->NN pastrami) (6<->NN sandwich)) (6<->PP (6<->IN on) (6<->NP (6<->DT a) (6<->NN roll))))) (6<->. .))||||pastrami sandwich on a roll<->2 119 | (6<->S (6<->S (6<->PRP It) (6<->VP (6<->VBD was) (6<->NP (6<->NP (6<->$ $) (6<->CD 14)) (6<->RB not) (6<->RB really) (6<->JJ bad) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->DT a) (6<->NN pound)) (6<->PP (6<->IN of) (6<->NNP Pastrami))))))) (6<->: -) (6<->CC but) (6<->S (6<->S (6<->PRP it) (6<->VP (6<->VBD did) (6<->RB n't) (6<->VP (6<->VB have) (6<->NP (6<->JJ much) (6<->NN taste))))) (6<->HYPH -) (6<->S (6<->NN I've) (6<->VP (6<->VBD had) (6<->JJR better) (6<->PP (6<->IN for) (6<->RBR less)) (6<->RB elsewhere)))) (6<->. !))||||NULL<->2||||NULL<->0 120 | (6<->S (6<->S (6<->PRP We) (6<->VP (6<->VBD had) (6<->NP (6<->DT the) (6<->NN lobster) (6<->NN sandwich)))) (6<->CC and) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ FANTASTIC))) (6<->. .))||||lobster sandwich<->1 121 | (6<->S (6<->S (6<->NP (6<->PRP$ My) (6<->NN husband)) (6<->VP (6<->VBD said) (6<->S (6<->PRP he) (6<->VP (6<->MD could) (6<->VP (6<->VB 've) (6<->VP (6<->VBN eaten) (6<->NP (6<->JJ several) (6<->JJR more)))))))) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN portion)) (6<->VP (6<->VBD was) (6<->JJ fine) (6<->PP (6<->IN for) (6<->PRP me)))) (6<->PRP he) (6<->RB even) (6<->VP (6<->VBD exclaimed) (6<->SBAR (6<->IN that) (6<->S (6<->NP (6<->DT the) (6<->JJ french) (6<->NNS fries)) (6<->VP (6<->VBD were) (6<->NP (6<->NP (6<->DT the) (6<->JJS best)) (6<->S (6<->PRP he) (6<->VP (6<->VBZ has) (6<->VBN had)))))))) (6<->. .))||||NULL<->0||||portion<->1||||french fries<->1 122 | (6<->S (6<->S (6<->PRP We) (6<->VP (6<->VBD had) (6<->NP (6<->DT the) (6<->NNS scallops)) (6<->PP (6<->IN as) (6<->NP (6<->DT an) (6<->NN appetizer))))) (6<->CC and) (6<->S (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->JJ delicious))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN sauce)) (6<->VP (6<->VBD was) (6<->JJ wonderful)))) (6<->. .))||||scallops<->1||||sauce<->1 123 | (6<->S (6<->PRP We) (6<->VP (6<->VP (6<->VBD waited) (6<->PP (6<->IN at) (6<->NP (6<->DT the) (6<->NN bar)))) (6<->CC and) (6<->VP (6<->VBD had) (6<->NP (6<->NNS martinis) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD were) (6<->ADJP (6<->RB just) (6<->JJ right))))))) (6<->. .))||||martinis<->1 124 | (6<->S (6<->PRP We) (6<->VP (6<->MD will) (6<->VP (6<->VB be) (6<->RB back))) (6<->. .))||||NULL<->1 125 | (6<->S (6<->VP (6<->VB love) (6<->NP (6<->DT the) (6<->NN food))) (6<->. .))||||food<->1 126 | (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->NP (6<->NP (6<->DT the) (6<->JJ only) (6<->NN place)) (6<->S (6<->PRP you) (6<->VP (6<->MD can) (6<->VP (6<->VB get) (6<->NP (6<->JJ yummy) (6<->JJ authentic) (6<->JJ japanese) (6<->NN comfort) (6<->NN food))))))) (6<->. .))||||japanese comfort food<->1 127 | (6<->S (6<->CC and) (6<->PRP you) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VB beat) (6<->NP (6<->DT the) (6<->NNS prices)))) (6<->. .))||||NULL<->1 128 | (6<->ADJP (6<->RB highly) (6<->VBN recommended) (6<->. .))||||NULL<->1 129 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VB 've) (6<->VP (6<->VBN lived) (6<->PP (6<->IN in) (6<->NNP NY)) (6<->PP (6<->IN for) (6<->NP (6<->CD 5) (6<->NNS years)))))) (6<->CC and) (6<->S (6<->NP (6<->DT this) (6<->NN place)) (6<->VP (6<->VBZ has) (6<->NP (6<->PRP it) (6<->DT all)))) (6<->. .))||||place<->1 130 | (6<->NP (6<->NP (6<->JJ Great) (6<->NN food)) (6<->, ,) (6<->NP (6<->JJ good) (6<->NN size) (6<->NN menu)) (6<->, ,) (6<->NP (6<->JJ great) (6<->NN service)) (6<->CC and) (6<->NP (6<->DT an) (6<->JJ unpretensious) (6<->NN setting)) (6<->. .))||||food<->1||||menu<->1||||service<->1||||setting<->1 131 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NNS dishes)) (6<->VBN offered)) (6<->VP (6<->VBD were) (6<->ADJP (6<->JJ unique) (6<->, ,) (6<->ADJP (6<->RB very) (6<->JJ tasty)) (6<->CC and) (6<->JJ fresh) (6<->PP (6<->IN from) (6<->NP (6<->DT the) (6<->NN lamb) (6<->NNS sausages)) (6<->, ,) (6<->NP (6<->NNS sardines) (6<->PP (6<->IN with) (6<->NNS biscuits))) (6<->, ,) (6<->NP (6<->JJ large) (6<->JJ whole) (6<->NN shrimp)) (6<->IN to) (6<->NP (6<->DT the) (6<->JJ amazing) (6<->NN pistachio) (6<->NN ice) (6<->NN cream)) (6<->-LRB- -LRB-) (6<->NP (6<->NP (6<->DT the) (6<->JJS best) (6<->CC and) (6<->JJS freshest)) (6<->S (6<->PRP I) (6<->VP (6<->VP (6<->VB 've) (6<->RB ever) (6<->VBN had)) (6<->-RRB- -RRB-))))))) (6<->. .))||||dishes<->1||||lamb sausages<->1||||sardines with biscuits<->1||||large whole shrimp<->1||||pistachio ice cream<->1 132 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP 'm) (6<->ADJP (6<->JJ glad) (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->VP (6<->VBN introduced) (6<->PP (6<->IN to) (6<->NP (6<->DT this) (6<->NN place))))))))) (6<->CC and) (6<->S (6<->DT this) (6<->VP (6<->VBZ is) (6<->NP (6<->DT a) (6<->JJ rare) (6<->NN gem)) (6<->PP (6<->IN in) (6<->NNP NY)))) (6<->. .))||||place<->1 133 | (6<->FRAG (6<->JJ Average) (6<->PP (6<->IN to) (6<->NP (6<->NP (6<->JJ good) (6<->NNP Thai) (6<->NN food)) (6<->, ,) (6<->CC but) (6<->NP (6<->JJ terrible) (6<->NN delivery)))) (6<->. .))||||Thai food<->1||||delivery<->0 134 | (6<->S (6<->PRP I) (6<->VP (6<->VB 've) (6<->VP (6<->VBN waited) (6<->PP (6<->IN over) (6<->CD one) (6<->NN hour)) (6<->PP (6<->IN for) (6<->NN food)))) (6<->. .))||||NULL<->0 135 | (6<->S (6<->PRP They) (6<->VP (6<->VBD were) (6<->ADJP (6<->RB very) (6<->JJ abrupt) (6<->PP (6<->IN with) (6<->PRP me))) (6<->SBAR (6<->WRB when) (6<->S (6<->PRP I) (6<->VP (6<->VBD called) (6<->CC and) (6<->VP (6<->RB actually) (6<->VBD claimed) (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ late))) (6<->SBAR (6<->IN because) (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->PP (6<->IN out) (6<->PP (6<->IN of) (6<->NN rice)))))))))))) (6<->. .))||||NULL<->0 136 | (6<->FRAG (6<->NP (6<->DT A) (6<->NNP Thai) (6<->NN restaurant)) (6<->PP (6<->IN out) (6<->PP (6<->IN of) (6<->NN rice))) (6<->PP (6<->IN during) (6<->NN dinner)) (6<->. ?))||||Thai restaurant<->0 137 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD arrived) (6<->SBAR (6<->NP (6<->CD 20) (6<->NNS minutes)) (6<->IN after) (6<->PRP I) (6<->VP (6<->VBD called) (6<->, ,) (6<->ADJP (6<->JJ cold) (6<->CC and) (6<->JJ soggy))))) (6<->. .))||||food<->0||||NULL<->0 138 | (6<->S (6<->S (6<->NP (6<->NNP Service) (6<->RB here)) (6<->VP (6<->VBD was) (6<->JJ great))) (6<->, ,) (6<->S (6<->NN food) (6<->VP (6<->VBD was) (6<->JJ fantastic))) (6<->. .))||||Service<->1||||food<->1 139 | (6<->S (6<->S (6<->NP (6<->NN Guacamole) (6<->CC +) (6<->NN shrimp) (6<->NN appetizer)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB really) (6<->JJ great)))) (6<->, ,) (6<->NP (6<->PRP we) (6<->DT both)) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT the) (6<->NN filet)) (6<->, ,) (6<->ADJP (6<->RB very) (6<->JJ good)) (6<->, ,)) (6<->VP (6<->VBD did) (6<->RB n't) (6<->PP (6<->RB much) (6<->IN like) (6<->NP (6<->NP (6<->DT the) (6<->NNS frites)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD came) (6<->IN with))))))) (6<->, ,) (6<->CC but) (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN filet)) (6<->VBD was) (6<->ADJP (6<->RB so) (6<->JJ good))) (6<->, ,) (6<->S (6<->NP (6<->DT neither) (6<->PP (6<->IN of) (6<->PRP us))) (6<->VBD cared))) (6<->. .))||||Guacamole + shrimp appetizer<->1||||filet<->1||||frites<->0 140 | (6<->S (6<->VP (6<->MD Will) (6<->RB absolutely) (6<->VP (6<->VB visit) (6<->RB again))) (6<->. .))||||NULL<->1 141 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ nice) (6<->NN pizza) (6<->NN place)) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->JJ good) (6<->NN selection)) (6<->PP (6<->IN of) (6<->NP (6<->JJ thin) (6<->NN crust) (6<->NN pizza))) (6<->PP (6<->VBG including) (6<->NP (6<->DT the) (6<->NNP Basil) (6<->NN slice))))))) (6<->. .))||||selection of thin crust pizza<->1||||selection of thin crust pizza<->1||||pizza place<->1||||Basil slice<->1 142 | (6<->S (6<->NP (6<->PRP$ Their) (6<->NNS calzones)) (6<->VP (6<->VBP are) (6<->NP (6<->JJ horrific) (6<->, ,) (6<->JJ bad) (6<->, ,) (6<->NN vomit) (6<->HYPH -) (6<->NN inducing) (6<->, ,) (6<->NNP YUCK))) (6<->. .))||||calzones<->0 143 | (6<->S (6<->PRP They) (6<->VP (6<->VBP smell) (6<->SBAR (6<->UH like) (6<->S (6<->PRP they) (6<->VP (6<->VBP stuff) (6<->PRP them) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->JJ old) (6<->JJ canned) (6<->NNS vegetables)) (6<->PP (6<->IN like) (6<->NP (6<->DT the) (6<->NN spinach) (6<->NN mushroom) (6<->NN calzone))))))))) (6<->. .))||||NULL<->0 144 | (6<->S (6<->NP (6<->DT The) (6<->NN counter) (6<->NN service)) (6<->VP (6<->VBZ is) (6<->JJ bad)) (6<->. .))||||counter service<->0 145 | (6<->S (6<->PRP They) (6<->VP (6<->VBP charge) (6<->NP (6<->JJ different) (6<->NNS prices)) (6<->NP (6<->PDT all) (6<->DT the) (6<->NN time))) (6<->. .))||||NULL<->0 146 | (6<->S (6<->PRP They) (6<->VP (6<->VBP 're) (6<->ADJP (6<->JJ rude) (6<->PP (6<->IN at) (6<->NNS times)) (6<->, ,) (6<->CC and) (6<->ADJP (6<->RB not) (6<->RB very) (6<->JJ friendly)))) (6<->. .))||||NULL<->0 147 | (6<->NP (6<->NP (6<->DT NO) (6<->NNP PIZZA) (6<->CD 33)) (6<->PP (6<->IN for) (6<->PRP me)) (6<->. !))||||PIZZA 33<->0 148 | (6<->S (6<->NP (6<->NN Anybody) (6<->SBAR (6<->WP who) (6<->VP (6<->VBZ likes) (6<->NP (6<->DT this) (6<->NN place))))) (6<->VP (6<->MD must) (6<->VP (6<->VB be) (6<->PP (6<->IN from) (6<->NP (6<->NP (6<->DT a) (6<->JJ different) (6<->NN planet)) (6<->, ,) (6<->SBAR (6<->WRB where) (6<->S (6<->ADJP (6<->NN greasy) (6<->, ,) (6<->JJ dry) (6<->CC and) (6<->JJ tasteless)) (6<->VP (6<->VBP are) (6<->JJ complimentary)))))))) (6<->. .))||||NULL<->0 149 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NNS dosas)) (6<->VP (6<->VBP are) (6<->ADJP (6<->JJ skimpy) (6<->, ,) (6<->JJ unattractive) (6<->CC and) (6<->VP (6<->VBP drip) (6<->PP (6<->IN with) (6<->NN grease)))))) (6<->, ,) (6<->CC and) (6<->S (6<->RB personally) (6<->PRP I) (6<->VP (6<->MD 'd) (6<->VP (6<->VB drink) (6<->NP (6<->JJ popcorn) (6<->NN topping)) (6<->SBAR (6<->IN before) (6<->S (6<->PRP I) (6<->VP (6<->MD 'd) (6<->VP (6<->VB eat) (6<->NP (6<->NP (6<->DT another) (6<->CD one)) (6<->PP (6<->IN of) (6<->DT these)))))))))) (6<->. .))||||dosas<->0||||dosas<->0 150 | (6<->S (6<->NP (6<->DT The) (6<->NNS sandwiches)) (6<->VP (6<->VBP are) (6<->ADJP (6<->JJ dry) (6<->, ,) (6<->JJ tasteless) (6<->CC and) (6<->NN way) (6<->JJ overpriced))) (6<->. .))||||sandwiches<->0||||sandwiches<->0 151 | (6<->S (6<->S (6<->VP (6<->VBG Calling) (6<->NP (6<->NP (6<->DT the) (6<->NN place)) (6<->NP (6<->NNP Hampton) (6<->NNP Chutney) (6<->NNP Co) (6<->. .)))) (6<->VP (6<->VBZ does) (6<->VP (6<->VB warn) (6<->PRP you) (6<->SBAR (6<->IN that) (6<->S (6<->NP (6<->DT these) (6<->NNS folks)) (6<->VP (6<->VBP offer) (6<->NP (6<->NP (6<->JJR more) (6<->NN style)) (6<->PP (6<->IN than) (6<->NN substance))))))))) (6<->, ,) (6<->CC but) (6<->S (6<->PP (6<->IN in) (6<->NP (6<->NP (6<->DT this) (6<->JJ unattractive) (6<->NN room)) (6<->PP (6<->IN with) (6<->NP (6<->JJ unhelpful) (6<->NNS clerks))))) (6<->EX there) (6<->VP (6<->VBD was) (6<->NP (6<->DT a) (6<->NN dearth)) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->JJ former))) (6<->RB too))) (6<->. .))||||place<->0||||room<->0||||clerks<->0 152 | (6<->S (6<->NP (6<->NP (6<->JJ Good) (6<->NNS spreads)) (6<->, ,) (6<->NP (6<->JJ great) (6<->NN beverage) (6<->NNS selections)) (6<->CC and) (6<->NNS bagels)) (6<->ADJP (6<->RB really) (6<->JJ tasty)) (6<->. .))||||spreads<->1||||beverage selections<->1||||bagels<->1 153 | (6<->NP (6<->NP (6<->DT THE) (6<->NNP BIG) (6<->NNP COMPLAINT)) (6<->: :) (6<->NP (6<->DT NO) (6<->NN TOASTING) (6<->NNPS AVAILABLE)) (6<->. .))||||NULL<->0 154 | (6<->S (6<->NNP Murray) (6<->VP (6<->MD wo) (6<->RB n't) (6<->VP (6<->VB do) (6<->PRP it))) (6<->. .))||||NULL<->0 155 | (6<->S (6<->CC But) (6<->WP who) (6<->VP (6<->VBZ says) (6<->S (6<->NP (6<->NNP Murray) (6<->POS 's)) (6<->VP (6<->VBZ is) (6<->NP (6<->NN anything) (6<->PP (6<->IN about) (6<->NN service)))))) (6<->. .))||||service<->0 156 | (6<->FRAG (6<->ADJP (6<->RB So) (6<->JJ close)) (6<->, ,) (6<->CC but) (6<->RB not) (6<->JJ good) (6<->RB enough) (6<->. .))||||NULL<->2 157 | (6<->S (6<->NP (6<->DT This) (6<->JJ tiny) (6<->NNP Williamsburg) (6<->NN spot)) (6<->VP (6<->VBZ is) (6<->RB always) (6<->ADJP (6<->RB pleasantly) (6<->JJ surprising))) (6<->. .))||||Williamsburg spot<->1 158 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN pizza)) (6<->VP (6<->VBZ is) (6<->JJ delicious))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN proprietor)) (6<->VP (6<->VBZ is) (6<->NP (6<->CD one) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->DT the) (6<->JJS nicest)) (6<->PP (6<->IN in) (6<->NNP NYC))))))) (6<->. .))||||pizza<->1||||proprietor<->1 159 | (6<->S (6<->PRP I) (6<->VP (6<->VP (6<->VB 've) (6<->VP (6<->VBN been) (6<->NP (6<->JJ many) (6<->NN time)))) (6<->CC and) (6<->VP (6<->VBP have) (6<->RB never) (6<->VP (6<->VBN been) (6<->VBN disappointed)))) (6<->. .))||||NULL<->1 160 | (6<->S (6<->PRP They) (6<->RB even) (6<->VP (6<->VBP scoop) (6<->PRP it) (6<->RP out) (6<->JJ nice) (6<->PRN (6<->-LRB- -LRB-) (6<->PP (6<->IN for) (6<->NP (6<->DT those) (6<->PP (6<->IN on) (6<->NP (6<->DT a) (6<->NN diet))))) (6<->-RRB- -RRB-)) (6<->RB not) (6<->RB too) (6<->JJ much) (6<->RB not) (6<->PP (6<->IN to) (6<->JJ little))) (6<->. .))||||NULL<->1 161 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN cream) (6<->NNS cheeses)) (6<->VP (6<->VBP are) (6<->PP (6<->IN out) (6<->PP (6<->IN of) (6<->NP (6<->DT this) (6<->NN world)))))) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->VBP love) (6<->NP (6<->DT that) (6<->NN coffee)))) (6<->. !) (6<->. !))||||cream cheeses<->1||||coffee<->1 162 | (6<->S (6<->ADJP (6<->NP (6<->DT A) (6<->JJ little)) (6<->JJ crowded)) (6<->CC but) (6<->S (6<->PRP they) (6<->VP (6<->VBP move) (6<->NP (6<->DT that) (6<->NN line)) (6<->ADVP (6<->RB really) (6<->RB fast)))) (6<->. !))||||NULL<->1||||NULL<->0 163 | (6<->S (6<->ADJP (6<->NP (6<->DT A) (6<->JJ little)) (6<->JJ pricey)) (6<->CC but) (6<->PRP it) (6<->RB really) (6<->VP (6<->VBZ hits) (6<->NP (6<->DT the) (6<->NN spot)) (6<->PP (6<->IN on) (6<->NP (6<->DT a) (6<->NNP Sunday) (6<->NN morning)))) (6<->. !))||||NULL<->0||||NULL<->1 164 | (6<->FRAG (6<->JJ Good) (6<->, ,) (6<->JJ fast) (6<->NN service) (6<->. .))||||service<->1 165 | (6<->S (6<->PRP I) (6<->VP (6<->MD would) (6<->VP (6<->RB highly) (6<->VB recommend))) (6<->. .))||||NULL<->1 166 | (6<->S (6<->NN Food) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ great) (6<->CC and) (6<->JJ inexpensive))) (6<->. .))||||Food<->1||||Food<->1 167 | (6<->S (6<->NP (6<->DT The) (6<->NN location)) (6<->VP (6<->VBZ is) (6<->JJ perfect)) (6<->. .))||||location<->1 168 | (6<->S (6<->VP (6<->VB Give) (6<->PRP it) (6<->NP (6<->DT a) (6<->NN try)) (6<->CC and) (6<->VB enjoy)) (6<->. .))||||NULL<->1 169 | (6<->NP (6<->NP (6<->NNP Awsome) (6<->NNP Pizza)) (6<->RB especially) (6<->NP (6<->DT the) (6<->NNP Margheritta) (6<->NN slice)) (6<->. .))||||Pizza<->1||||Margheritta slice<->1 170 | (6<->FRAG (6<->RB Always) (6<->JJ busy) (6<->CC but) (6<->ADJP (6<->RB fast) (6<->NN moving)) (6<->. .))||||NULL<->1 171 | (6<->FRAG (6<->ADJP (6<->JJ Great) (6<->RB atmoshere)) (6<->CC and) (6<->ADJP (6<->JJ worth) (6<->NP (6<->DT every) (6<->NN bit))) (6<->. .))||||atmoshere<->1||||NULL<->1 172 | (6<->S (6<->VB Open) (6<->RB late) (6<->-LRB- -LRB-) (6<->ADVP (6<->RB well) (6<->ADVP (6<->RB as) (6<->RB late) (6<->SBAR (6<->IN as) (6<->S (6<->PRP I) (6<->RB ever) (6<->VP (6<->VBD got) (6<->RB there)))))) (6<->CC and) (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP 'm) (6<->NP (6<->DT a) (6<->NN night) (6<->NN person)))) (6<->-RRB- -RRB-)))||||NULL<->1 173 | (6<->S (6<->NP (6<->NN Everything) (6<->PP (6<->IN about) (6<->NP (6<->DT this) (6<->NN restaurant)))) (6<->VP (6<->VBD was) (6<->JJ special)) (6<->. .))||||restaurant<->1 174 | (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ attentive) (6<->, ,) (6<->CC yet) (6<->RB discreet))) (6<->. .))||||service<->1 175 | (6<->S (6<->NP (6<->DT The) (6<->NNS flavors)) (6<->ADJP (6<->JJ robust) (6<->CC and) (6<->JJ subtle)) (6<->. .))||||NULL<->1 176 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN brioche) (6<->CC and) (6<->NNS lollies)) (6<->PP (6<->IN as) (6<->NP (6<->NN party) (6<->NNS favors)))) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->ADJP (6<->JJ cute) (6<->CC and) (6<->JJ sweet)) (6<->NN touch)) (6<->PP (6<->IN to) (6<->NP (6<->DT a) (6<->ADJP (6<->RBS most) (6<->JJ memorable)) (6<->NN meal))))) (6<->. .))||||brioche and lollies<->1 177 | (6<->S (6<->PRP I) (6<->VP (6<->VBP 'm) (6<->VP (6<->VBG saving) (6<->RP up) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ my) (6<->JJ next) (6<->NN visit))))) (6<->. .))||||NULL<->1 178 | (6<->S (6<->VP (6<->VBP Have) (6<->VP (6<->VBN eaten) (6<->PP (6<->IN at) (6<->NP (6<->NNP Ginger) (6<->NNP House))) (6<->NP (6<->JJ several) (6<->NNS times)))) (6<->, ,) (6<->CC and) (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->RB always) (6<->JJ good))) (6<->. .))||||Ginger House<->1 179 | (6<->S (6<->NP (6<->DT The) (6<->VBN fried) (6<->NNS dumplings)) (6<->VP (6<->VBP are) (6<->JJ GREAT)) (6<->. !))||||fried dumplings<->1 180 | (6<->FRAG (6<->RB Finally) (6<->NP (6<->DT a) (6<->JJ reliable) (6<->JJ Chinese) (6<->NN restaurant)) (6<->. !))||||Chinese restaurant<->1 181 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB absolutely) (6<->JJ amazing))) (6<->. !) (6<->. !))||||food<->1 182 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->JJ baked) (6<->VBZ clams) (6<->NN octopus)) (6<->S (6<->PRP we) (6<->VP (6<->VBD shared) (6<->PP (6<->IN as) (6<->NNS appetizers))))) (6<->VP (6<->VBD were) (6<->NP (6<->NP (6<->DT the) (6<->JJS best)) (6<->S (6<->PRP we) (6<->VP (6<->VB 've) (6<->RB ever) (6<->VBN had))))) (6<->. !) (6<->. !))||||baked clams octopus<->1 183 | (6<->S (6<->NP (6<->DT The) (6<->NN lamb)) (6<->VBD was) (6<->ADJP (6<->JJ tender) (6<->ADJP (6<->RB so) (6<->JJ full) (6<->PP (6<->IN of) (6<->NN flavor)))) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN dessert)) (6<->VP (6<->VBD was) (6<->JJ divine))) (6<->. !) (6<->. !))||||lamb<->1||||dessert<->1 184 | (6<->S (6<->NP (6<->DT The) (6<->NN waiter)) (6<->VP (6<->VBD was) (6<->JJ attentive)) (6<->. .))||||waiter<->1 185 | (6<->S (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN place)) (6<->PRP itself)) (6<->VP (6<->VBZ is) (6<->JJ beautiful))) (6<->NP (6<->DT the) (6<->NN bar) (6<->NN scene)) (6<->VP (6<->VBZ seems) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->VBG happening)))) (6<->. .))||||place<->1||||bar scene<->1 186 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->JJ perfect) (6<->NN spot)) (6<->PP (6<->IN for) (6<->NP (6<->NN meeting) (6<->NP (6<->NNS friends) (6<->, ,) (6<->VBG having) (6<->NP (6<->NN lunch) (6<->, ,) (6<->NN dinner) (6<->, ,) (6<->NN pre) (6<->HYPH -) (6<->NN theatre) (6<->CC or) (6<->IN after) (6<->HYPH -) (6<->NP (6<->NN theatre) (6<->NNS drinks)))))))) (6<->. !))||||spot<->1 187 | (6<->S (6<->-LRB- -LRB-) (6<->RB Always) (6<->VP (6<->VB ask) (6<->NP (6<->DT the) (6<->NN bartender)) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NNP SEASONAL) (6<->NN beer)))) (6<->. !) (6<->. !) (6<->. !))||||SEASONAL beer<->1 188 | (6<->S (6<->VP (6<->VBN Guaranteed) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->NP (6<->DT a) (6<->JJ tasty) (6<->NN experience))))) (6<->. !) (6<->-RRB- -RRB-))||||NULL<->1 189 | (6<->FRAG (6<->NP (6<->JJ Excellent) (6<->NN spot)) (6<->PP (6<->IN for) (6<->NN holiday)) (6<->VP (6<->VBP get) (6<->NNS togethers) (6<->PP (6<->IN with) (6<->NP (6<->NN co) (6<->, -) (6<->NP (6<->NP (6<->NNS workers) (6<->CC or) (6<->NNS friends)) (6<->SBAR (6<->WDT that) (6<->S (6<->PRP you) (6<->VP (6<->VBP have) (6<->RB n't) (6<->VP (6<->VBN seen) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->NN while))))))))))) (6<->. .))||||spot<->1 190 | (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->VP (6<->VP (6<->VBN been) (6<->VP (6<->VBG doing) (6<->DT all) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->JJ above))) (6<->PP (6<->IN at) (6<->NP (6<->DT the) (6<->NNP Heartland) (6<->NNP Brewery))) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->QP (6<->IN over) (6<->CD 5)) (6<->NNS years)) (6<->RB now))))) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->VBP HAVE) (6<->RB NEVER) (6<->VP (6<->VBN BEEN) (6<->VBN DISAPPOINTED)))))) (6<->. !))||||Heartland Brewery<->1 191 | (6<->S (6<->NP (6<->NP (6<->PDT All) (6<->DT the) (6<->NNS people)) (6<->SBAR (6<->WDT that) (6<->S (6<->PRP I) (6<->VP (6<->VBP bring) (6<->RB there))))) (6<->VP (6<->VP (6<->VBP go) (6<->ADVP (6<->RB back) (6<->PP (6<->IN on) (6<->NP (6<->PRP$ their) (6<->JJ own))))) (6<->CC and) (6<->VP (6<->VB bring) (6<->NP (6<->PRP$ THEIR) (6<->NNS friends)))) (6<->. !))||||NULL<->1 192 | (6<->S (6<->S (6<->VP (6<->VB Go) (6<->ADVP (6<->RB there) (6<->RB once))) (6<->CC and) (6<->S (6<->INTJ (6<->UH oh) (6<->UH yes)) (6<->: ...) (6<->PRP you) (6<->VP (6<->MD will) (6<->VP (6<->VB go) (6<->RB back))))) (6<->: ...) (6<->S (6<->PRP you) (6<->MD will)) (6<->. ...))||||NULL<->1 193 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN shrimp) (6<->NN scampi)) (6<->VP (6<->VBD was) (6<->JJ excellent))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN antipasti)) (6<->VP (6<->VBD were) (6<->JJ plentiful))) (6<->. .))||||shrimp scampi<->1||||antipasti<->1 194 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ expensive) (6<->CC but) (6<->ADJP (6<->RB well) (6<->JJ worth) (6<->NP (6<->DT the) (6<->NN money))))) (6<->. .))||||NULL<->0||||NULL<->1 195 | (6<->S (6<->SBAR (6<->IN If) (6<->S (6<->PRP you) (6<->VP (6<->VP (6<->VBP venture) (6<->PP (6<->IN off) (6<->NP (6<->NP (6<->DT the) (6<->NN island)) (6<->PP (6<->IN of) (6<->NNP Manhattan))))) (6<->CC and) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VB seem) (6<->VP (6<->TO to) (6<->VP (6<->VB find) (6<->NP (6<->DT a) (6<->JJ great) (6<->JJ Italian) (6<->NN restaurant))))))))) (6<->, ,) (6<->VP (6<->VB drive) (6<->PP (6<->IN to) (6<->NNP Corona))) (6<->. .))||||Corona<->1 196 | (6<->S (6<->S (6<->NP (6<->NP (6<->PRP$ My) (6<->NN friend)) (6<->PP (6<->PP (6<->IN from) (6<->NNP Milan)) (6<->CC and) (6<->PRP myself))) (6<->VP (6<->VBD were) (6<->ADJP (6<->RB pleasantly) (6<->JJ surprised)) (6<->SBAR (6<->WRB when) (6<->S (6<->PRP we) (6<->VBD arrived))))) (6<->CC and) (6<->S (6<->NN everyone) (6<->VP (6<->VBD spoke) (6<->JJ italian))) (6<->. .))||||NULL<->1 197 | (6<->FRAG (6<->ADJP (6<->RB Too) (6<->JJ bad)) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->RB n't) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->JJ same) (6<->NN heritage))))) (6<->. .))||||food<->0 198 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN porcini) (6<->NN mushroom) (6<->NN pasta) (6<->JJ special)) (6<->VP (6<->VBD was) (6<->JJ tasteless))) (6<->, ,) (6<->RB so) (6<->VBD was) (6<->NP (6<->DT the) (6<->NN seafood) (6<->NN tagliatelle)) (6<->. .))||||porcini mushroom pasta special<->0||||seafood tagliatelle<->0 199 | (6<->NP (6<->DT A) (6<->JJ real) (6<->NN dissapointment) (6<->. .))||||NULL<->0 200 | (6<->S (6<->CC But) (6<->DT that) (6<->VP (6<->VBD was) (6<->RB n't) (6<->NP (6<->NP (6<->NP (6<->DT the) (6<->NN icing)) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->NN cake)))) (6<->: :) (6<->NP (6<->NP (6<->DT a) (6<->NN tiramisu)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD resembled) (6<->NP (6<->NN nothing) (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->RB ever) (6<->VBN had))))))))) (6<->. .))||||tiramisu<->0 201 | (6<->S (6<->PRP They) (6<->VP (6<->MD should) (6<->VP (6<->VB have) (6<->VP (6<->VBN called) (6<->PRP it) (6<->NP (6<->NN mascarpone) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->NN chocolate) (6<->NNS chips)) (6<->HYPH -) (6<->JJ good) (6<->CC but) (6<->NP (6<->NP (6<->DT a) (6<->JJ far) (6<->NN cry)) (6<->PP (6<->IN from) (6<->SBAR (6<->WP what) (6<->S (6<->NP (6<->DT the) (6<->NN name)) (6<->VBZ implies))))))))))) (6<->. .))||||NULL<->0 202 | (6<->S (6<->VP (6<->VBN Priced) (6<->PP (6<->IN at) (6<->NP (6<->JJ upper) (6<->JJ intermediate) (6<->NN range)))) (6<->. .))||||NULL<->0 203 | (6<->S (6<->PRP I) (6<->RB really) (6<->VP (6<->VBD liked) (6<->NP (6<->DT this) (6<->NN place))) (6<->. .))||||place<->1 204 | (6<->S (6<->S (6<->NP (6<->NN Everything) (6<->S (6<->PRP I) (6<->VBD had))) (6<->VP (6<->VBD was) (6<->JJ good))) (6<->, ,) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->VBP 'm) (6<->NP (6<->DT a) (6<->NN eater)))) (6<->. .))||||NULL<->1 205 | (6<->S (6<->PRP It) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB pretty) (6<->JJ inexpensive)) (6<->RB too)) (6<->. .))||||NULL<->1 206 | (6<->S (6<->S (6<->PRP I) (6<->RB recently) (6<->VP (6<->VBD tried) (6<->NNP Suan))) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->VBD thought) (6<->SBAR (6<->IN that) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ great)))))) (6<->. .))||||Suan<->1 207 | (6<->S (6<->S (6<->NP (6<->DT This) (6<->JJ little) (6<->NN place)) (6<->RB definitely) (6<->VP (6<->VBD exceeded) (6<->NP (6<->PRP$ my) (6<->NNS expectations)))) (6<->CC and) (6<->S (6<->PRP you) (6<->RB sure) (6<->VP (6<->VBP get) (6<->NP (6<->NP (6<->NP (6<->DT a) (6<->NN lot)) (6<->PP (6<->IN of) (6<->NN food))) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ your) (6<->NN money)))))) (6<->. .))||||food<->1||||place<->1||||food<->1 208 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ fast) (6<->CC and) (6<->JJ friendly)))) (6<->CC and) (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB very) (6<->JJ tasty)))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT the) (6<->JJS best) (6<->JJ hot) (6<->NN sauce)) (6<->VP (6<->TO to) (6<->VP (6<->VB add) (6<->PP (6<->IN to) (6<->NP (6<->PRP$ your) (6<->NNS meals))))))))) (6<->. .))||||service<->1||||food<->1||||hot sauce<->1 209 | (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->VP (6<->TO to) (6<->VB say) (6<->SBAR (6<->IN that) (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP am) (6<->ADJP (6<->RB pleasantly) (6<->VBN suprised)))) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->MD will) (6<->RBS most) (6<->JJ likely) (6<->VP (6<->VB stop) (6<->RP in) (6<->RB again) (6<->SBAR (6<->IN if) (6<->S (6<->PRP I) (6<->VP (6<->VBP am) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN neighborhood))))))))))))) (6<->. .))||||NULL<->1 210 | (6<->FRAG (6<->NP (6<->JJ Great) (6<->NN spot)) (6<->, ,) (6<->SBAR (6<->IN whether) (6<->VP (6<->VBG looking) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->DT a) (6<->NN couple)) (6<->PP (6<->IN of) (6<->NP (6<->NNS drinks) (6<->CC or) (6<->NP (6<->JJ quiet) (6<->NN dinner)))))))) (6<->. .))||||spot<->1||||spot<->1 211 | (6<->FRAG (6<->ADJP (6<->ADJP (6<->JJ Warm) (6<->CC and) (6<->JJ friendly)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN winter)))) (6<->CC and) (6<->NP (6<->NP (6<->JJ terrific) (6<->JJ outdoor) (6<->NN seating)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->JJR warmer) (6<->NNS months)))) (6<->. .))||||NULL<->1||||outdoor seating<->1 212 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->JJ great))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBP have) (6<->NP (6<->NP (6<->DT a) (6<->JJ good) (6<->NN selecion)) (6<->PP (6<->IN of) (6<->NNS wines))) (6<->PP (6<->IN at) (6<->NP (6<->JJ reasonable) (6<->NNS prices))))) (6<->. .))||||food<->1||||wines<->1||||wines<->1 213 | (6<->S (6<->VP (6<->VBP Have) (6<->VP (6<->VBN been) (6<->NP (6<->JJ several) (6<->NNS times)))) (6<->CC and) (6<->S (6<->PRP it) (6<->RB never) (6<->VBZ dissapoints)) (6<->. .))||||NULL<->1 214 | (6<->S (6<->VP (6<->VB go) (6<->RB here) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NNS drinks)))) (6<->. !))||||drinks<->1 215 | (6<->S (6<->NP (6<->DT the) (6<->NNS drinks)) (6<->VP (6<->VBP are) (6<->JJ amazing) (6<->CC and) (6<->ADVP (6<->RB half) (6<->RB off)) (6<->PP (6<->IN till) (6<->NP (6<->CD 8p) (6<->NN m)))) (6<->. .))||||drinks<->1||||drinks<->1 216 | (6<->S (6<->VP (6<->VB Ask) (6<->PP (6<->IN for) (6<->NP (6<->NNP Usha) (6<->, ,) (6<->NP (6<->NP (6<->DT the) (6<->JJS nicest) (6<->NN bartender)) (6<->PP (6<->IN in) (6<->NNP manhattan)))))) (6<->. .))||||Usha<->1 217 | (6<->S (6<->NP (6<->PRP$ My) (6<->NN fav)) (6<->VP (6<->VBD was) (6<->NP (6<->DT the) (6<->JJ sassy) (6<->NN lassi))) (6<->. ...))||||sassy lassi<->1 218 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT an) (6<->JJ amazing) (6<->NN place)) (6<->VP (6<->TO to) (6<->VP (6<->VB try) (6<->NP (6<->DT some) (6<->NN roti) (6<->NNS rolls)))))) (6<->. .))||||roti rolls<->1 219 | (6<->S (6<->PRP I) (6<->RB really) (6<->VP (6<->VBP recommend) (6<->NP (6<->DT the) (6<->ADJP (6<->RB very) (6<->JJ simple)) (6<->NNP Unda) (6<->-LRB- -LRB-) (6<->NNP Egg) (6<->-RRB- -RRB-) (6<->VBZ rolls))) (6<->. .))||||Unda ( Egg ) rolls<->1 220 | (6<->NP (6<->NP (6<->NP (6<->JJ Delicate) (6<->NNS spices)) (6<->, ,) (6<->NNS onions) (6<->, ,) (6<->NNS eggs) (6<->CC and) (6<->NP (6<->DT a) (6<->NN kick))) (6<->HYPH -) (6<->NP (6<->NN ass) (6<->NN roti)) (6<->. .))||||spices<->1||||onions<->1||||eggs<->1||||roti<->1 221 | (6<->ADJP (6<->JJ Amazing) (6<->. !))||||NULL<->1 222 | (6<->S (6<->PRP I) (6<->VP (6<->VP (6<->VBD went) (6<->PP (6<->IN to) (6<->NNP Areo)) (6<->PP (6<->IN on) (6<->NP (6<->NP (6<->DT a) (6<->NNP Sunday) (6<->NN afternoon)) (6<->PP (6<->IN with) (6<->NP (6<->CD four) (6<->PP (6<->IN of) (6<->NP (6<->PRP$ my) (6<->NNS girlfriends)))))))) (6<->, ,) (6<->CC and) (6<->VP (6<->VBD spent) (6<->NP (6<->CD three) (6<->JJ enjoyable) (6<->NNS hours)) (6<->RB there))) (6<->. .))||||Areo<->1 223 | (6<->S (6<->NP (6<->JJS Most) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->NNS servers)))) (6<->VP (6<->VBP are) (6<->ADJP (6<->RB very) (6<->JJ attentive) (6<->, ,) (6<->JJ friendly) (6<->CC and) (6<->ADJP (6<->RB quite) (6<->JJ attractive)))) (6<->. .))||||servers<->1 224 | (6<->S (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN vibe)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB very) (6<->JJ relaxed) (6<->CC and) (6<->JJ cozy)))) (6<->, ,) (6<->S (6<->NN service) (6<->VP (6<->VBD was) (6<->JJ great)))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ excellent))) (6<->. !))||||vibe<->1||||service<->1||||food<->1 225 | (6<->S (6<->NP (6<->PRP Me) (6<->CC and) (6<->NP (6<->PRP$ my) (6<->NNS girls))) (6<->VP (6<->MD will) (6<->RB definitely) (6<->VP (6<->VB go) (6<->RB back))) (6<->. .))||||NULL<->1 -------------------------------------------------------------------------------- /data/semeval16/dev_parse: -------------------------------------------------------------------------------- 1 | (6<->S (6<->VP (6<->VBG Judging) (6<->PP (6<->IN from) (6<->NP (6<->JJ previous) (6<->NNS posts)))) (6<->DT this) (6<->VP (6<->VBD used) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->NP (6<->DT a) (6<->JJ good) (6<->NN place)))) (6<->, ,) (6<->PRN (6<->CC but) (6<->ADVP (6<->RB not) (6<->RB any) (6<->RBR longer)))) (6<->. .))||||place<->0 2 | (6<->S (6<->S (6<->S (6<->PRP We) (6<->, ,) (6<->S (6<->EX there) (6<->VP (6<->VBD were) (6<->NP (6<->CD four) (6<->PP (6<->IN of) (6<->PRP us))))) (6<->, ,) (6<->VP (6<->VBD arrived) (6<->PP (6<->IN at) (6<->NN noon)))) (6<->PRN (6<->: -) (6<->S (6<->NP (6<->DT the) (6<->NN place)) (6<->VP (6<->VBD was) (6<->JJ empty))) (6<->: -))) (6<->CC and) (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN staff)) (6<->VP (6<->VBD acted) (6<->SBAR (6<->IN like) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->VP (6<->VBG imposing) (6<->PP (6<->IN on) (6<->PRP them)))))))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->ADJP (6<->RB very) (6<->JJ rude))))) (6<->. .))||||staff<->0 3 | (6<->S (6<->PRP They) (6<->VP (6<->RB never) (6<->VP (6<->VP (6<->VBD brought) (6<->PRP us) (6<->NP (6<->JJ complimentary) (6<->NNS noodles))) (6<->, ,) (6<->VP (6<->VBN ignored) (6<->NP (6<->NP (6<->VBN repeated) (6<->NNS requests)) (6<->PP (6<->IN for) (6<->NN sugar)))) (6<->, ,) (6<->CC and) (6<->VP (6<->VBD threw) (6<->NP (6<->PRP$ our) (6<->NNS dishes)) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->NN table)))))) (6<->. .))||||NULL<->0 4 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VBD was) (6<->JJ lousy) (6<->HYPH -) (6<->UCP (6<->ADJP (6<->ADJP (6<->RB too) (6<->JJ sweet)) (6<->CC or) (6<->ADJP (6<->RB too) (6<->JJ salty))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NNS portions)) (6<->JJ tiny))) (6<->. .))||||food<->0||||portions<->0 5 | (6<->S (6<->PP (6<->IN After) (6<->NP (6<->DT all) (6<->DT that))) (6<->, ,) (6<->PRP they) (6<->VP (6<->VBD complained) (6<->PP (6<->IN to) (6<->PRP me)) (6<->PP (6<->IN about) (6<->NP (6<->DT the) (6<->JJ small) (6<->NN tip)))) (6<->. .))||||NULL<->0 6 | (6<->S (6<->VP (6<->VB Avoid) (6<->NP (6<->DT this) (6<->NN place))) (6<->. !))||||place<->0 7 | (6<->S (6<->S (6<->NP (6<->PRP$ Their) (6<->NN sake) (6<->NN list)) (6<->VP (6<->VBD was) (6<->JJ extensive))) (6<->, ,) (6<->CC but) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->VP (6<->VBG looking) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->NNP Purple) (6<->NNP Haze)) (6<->, ,) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBD was) (6<->RB n't) (6<->VP (6<->VBN listed) (6<->CC but) (6<->VP (6<->VBN made) (6<->PP (6<->IN for) (6<->PRP us)) (6<->PP (6<->IN upon) (6<->NN request))))))))))) (6<->. !))||||sake list<->1||||NULL<->1 8 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->JJ spicy) (6<->NN tuna) (6<->NN roll)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB unusually) (6<->JJ good)))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN rock) (6<->NN shrimp) (6<->NN tempura)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ awesome) (6<->, ,) (6<->NP (6<->NP (6<->JJ great) (6<->NN appetizer)) (6<->VP (6<->TO to) (6<->VB share)))))) (6<->. !))||||spicy tuna roll<->1||||rock shrimp tempura<->1 9 | (6<->S (6<->S (6<->PRP We) (6<->VP (6<->VBD went) (6<->ADVP (6<->RB around) (6<->CD 9:30)) (6<->PP (6<->IN on) (6<->NP (6<->DT a) (6<->NNP Friday))))) (6<->CC and) (6<->PRP it) (6<->VP (6<->VBD had) (6<->VP (6<->VBN died) (6<->IN down) (6<->NP (6<->DT a) (6<->NN bit)) (6<->PP (6<->IN by) (6<->RB then)))) (6<->RB so) (6<->S (6<->NP (6<->DT the) (6<->NN service)) (6<->VP (6<->VBD was) (6<->JJ great))) (6<->. !))||||service<->1 10 | (6<->S (6<->NP (6<->RB Surprisingly) (6<->NN nothing)) (6<->VP (6<->MD could) (6<->VP (6<->VB be) (6<->JJ further) (6<->PP (6<->IN from) (6<->NP (6<->DT the) (6<->NN truth))))) (6<->. .))||||NULL<->1 11 | (6<->S (6<->PP (6<->IN In) (6<->NP (6<->DT the) (6<->NN evening))) (6<->, ,) (6<->NP (6<->DT this) (6<->NN place)) (6<->VP (6<->VBD attracted) (6<->NP (6<->DT a) (6<->ADJP (6<->RB well) (6<->VBN dressed)) (6<->, ,) (6<->PP (6<->IN with) (6<->PRP it)) (6<->, ,) (6<->NP (6<->NNP NY) (6<->NN crowd)))) (6<->. .))||||crowd<->1 12 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB well) (6<->JJ prepared)))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN service)) (6<->JJ impecable)) (6<->. .))||||food<->1||||service<->1 13 | (6<->S (6<->PRP I) (6<->VP (6<->VBP 'm) (6<->VP (6<->VBG going) (6<->RB back))) (6<->. .))||||NULL<->1 14 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->JJ terrific) (6<->, ,) (6<->SBAR (6<->IN as) (6<->SINV (6<->VBZ is) (6<->NP (6<->DT the) (6<->NN value))))) (6<->. .))||||NULL<->1||||NULL<->1 15 | (6<->S (6<->NP (6<->$ $) (6<->CD 6)) (6<->CC and) (6<->EX there) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->ADJP (6<->RB much) (6<->JJ tasty)) (6<->NN food)) (6<->, ,) (6<->S (6<->NP (6<->DT all) (6<->PP (6<->IN of) (6<->PRP it))) (6<->JJ fresh) (6<->CC and) (6<->VP (6<->RB continually) (6<->VBN refilled))))) (6<->. .))||||food<->1||||food<->1||||food<->1 16 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP am) (6<->RB not) (6<->NP (6<->DT a) (6<->NN vegetarian)))) (6<->CC but) (6<->, ,) (6<->S (6<->NP (6<->RB almost) (6<->PDT all) (6<->DT the) (6<->NNS dishes)) (6<->VP (6<->VBD were) (6<->JJ great))) (6<->. .))||||dishes<->1 17 | (6<->S (6<->VP (6<->VP (6<->VB Go) (6<->JJ hungry)) (6<->CC and) (6<->VB enjoy)) (6<->. .))||||NULL<->1 18 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN food)) (6<->RB here)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB rather) (6<->JJ good)) (6<->, ,) (6<->CC but) (6<->SBAR (6<->RB only) (6<->IN if) (6<->S (6<->PRP you) (6<->VP (6<->VBP like) (6<->VP (6<->TO to) (6<->VP (6<->VB wait) (6<->PP (6<->IN for) (6<->PRP it)))))))) (6<->. .))||||food<->1||||NULL<->0 19 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP like) (6<->NP (6<->NP (6<->DT the) (6<->NNS somosas)) (6<->, ,) (6<->NN chai) (6<->, ,) (6<->CC and) (6<->NP (6<->DT the) (6<->NN chole))))) (6<->, ,) (6<->CC but) (6<->S (6<->NP (6<->DT the) (6<->NNS dhosas) (6<->CC and) (6<->JJ dhal)) (6<->VP (6<->VBD were) (6<->ADJP (6<->RB kinda) (6<->VBG dissapointing)))) (6<->. .))||||somosas<->1||||chai<->1||||chole<->1||||dhosas<->0||||dhal<->0 20 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBZ varys) (6<->PP (6<->PP (6<->IN from) (6<->NN day)) (6<->PP (6<->IN to) (6<->NN day))))) (6<->: -) (6<->S (6<->RB sometimes) (6<->PRP they) (6<->VP (6<->VBP 're) (6<->ADJP (6<->RB very) (6<->JJ nice))) (6<->, ,) (6<->CC and) (6<->FRAG (6<->RB sometimes) (6<->RB not))) (6<->. .))||||service<->0 21 | (6<->S (6<->NP (6<->DT The) (6<->NN kitchen)) (6<->RB however) (6<->, ,) (6<->VP (6<->VBZ is) (6<->ADVP (6<->RB almost) (6<->RB always)) (6<->JJ slow)) (6<->. .))||||kitchen<->0 22 | (6<->S (6<->RB Also) (6<->, ,) (6<->VP (6<->VB specify) (6<->SBAR (6<->IN if) (6<->S (6<->PRP you) (6<->VP (6<->VBP like) (6<->S (6<->NP (6<->PRP$ your) (6<->NN food)) (6<->NN spicy)))))) (6<->: -) (6<->S (6<->PRP$ its) (6<->ADJP (6<->RB rather) (6<->JJ bland)) (6<->SBAR (6<->IN if) (6<->S (6<->PRP you) (6<->VP (6<->VBP do) (6<->RB n't))))) (6<->. .))||||food<->0 23 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN ambience)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->ADJP (6<->RB pretty) (6<->CC and) (6<->JJ nice)) (6<->PP (6<->IN for) (6<->NN conversation))))) (6<->, ,) (6<->CC so) (6<->S (6<->NP (6<->NP (6<->DT a) (6<->JJ casual) (6<->NN lunch)) (6<->RB here)) (6<->VP (6<->MD would) (6<->RB probably) (6<->VP (6<->VB be) (6<->JJS best)))) (6<->. .))||||ambience<->1||||NULL<->1 24 | (6<->S (6<->NP (6<->JJS Best) (6<->VB Pastrami)) (6<->PRP I) (6<->RB ever) (6<->VP (6<->VBD had) (6<->CC and) (6<->NP (6<->JJ great) (6<->NN portion)) (6<->PP (6<->IN without) (6<->VP (6<->VBG being) (6<->JJ ridiculous)))) (6<->. .))||||Pastrami<->1||||portion<->1 25 | (6<->S (6<->NP (6<->PRP$ My) (6<->NN wife)) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT the) (6<->VBN fried) (6<->NN shrimp)) (6<->SBAR (6<->WDT which) (6<->VP (6<->VP (6<->VBP are) (6<->JJ huge)) (6<->CC and) (6<->VP (6<->VBD loved) (6<->PRP it)))))) (6<->. .))||||fried shrimp<->1||||fried shrimp<->1 26 | (6<->S (6<->NP (6<->DT This) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->JJ great)) (6<->. .))||||place<->1 27 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD had) (6<->NP (6<->DT a) (6<->JJ huge) (6<->NN group)) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ my) (6<->NN birthday))))) (6<->CC and) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->RB well) (6<->VBN taken) (6<->NN care) (6<->IN of))) (6<->. .))||||NULL<->1 28 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN waitress)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB very) (6<->JJ patient) (6<->PP (6<->IN with) (6<->PRP us))))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->JJ phenomenal))) (6<->. !))||||waitress<->1||||food<->1 29 | (6<->S (6<->NN Service) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ prompt) (6<->, ,) (6<->JJ friendly) (6<->CC and) (6<->JJ great))) (6<->. .))||||Service<->1 30 | (6<->FRAG (6<->PP (6<->RB Slightly) (6<->IN on) (6<->NP (6<->DT the) (6<->JJ pricey) (6<->NN side))) (6<->CC but) (6<->ADJP (6<->JJ worth) (6<->PRP it)) (6<->. !))||||NULL<->0||||NULL<->1 31 | (6<->S (6<->NP (6<->NP (6<->NP (6<->NN Pizza) (6<->: -) (6<->NP (6<->NP (6<->DT the) (6<->JJ only) (6<->NN pizza)) (6<->PP (6<->IN in) (6<->NNP NYC)) (6<->SBAR (6<->WDT that) (6<->VP (6<->MD should) (6<->RB not) (6<->VP (6<->VB have) (6<->NP (6<->JJ additional) (6<->NNS toppings))))))) (6<->: -)) (6<->NP (6<->DT the) (6<->NN crust))) (6<->VP (6<->VBZ tastes) (6<->PP (6<->IN like) (6<->NP (6<->NP (6<->DT the) (6<->JJS best)) (6<->, ,) (6<->NP (6<->ADJP (6<->RB freshly) (6<->VBN baked)) (6<->NN bread))))) (6<->. !))||||crust<->1||||pizza<->1 32 | (6<->S (6<->PRP I) (6<->VP (6<->VBP take) (6<->NP (6<->PDT all) (6<->PRP$ my) (6<->NNP NYC) (6<->NNS guests)) (6<->PP (6<->IN to) (6<->NP (6<->NNP VT) (6<->POS 's)))) (6<->. .))||||VT 's<->1 33 | (6<->S (6<->NP (6<->NNP Raga) (6<->POS 's)) (6<->VP (6<->VBZ is) (6<->NP (6<->DT a) (6<->JJ romantic) (6<->, ,) (6<->JJ cozy) (6<->NN restaurant))) (6<->. .))||||Raga 's<->1 34 | (6<->S (6<->NP (6<->DT The) (6<->JJ exotic) (6<->NN food)) (6<->VP (6<->VP (6<->VBZ is) (6<->VP (6<->RB beautifully) (6<->VBN presented))) (6<->CC and) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->NN delight)) (6<->PP (6<->IN in) (6<->NP (6<->JJ delicious) (6<->NNS combinations)))))) (6<->. .))||||exotic food<->1||||exotic food<->1 35 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->RB also) (6<->ADJP (6<->ADVP (6<->RB extremely) (6<->RB well)) (6<->VBN priced))) (6<->. .))||||NULL<->1 36 | (6<->S (6<->NP (6<->DT The) (6<->NN staff)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB incredibly) (6<->JJ helpful) (6<->CC and) (6<->JJ attentive))) (6<->. .))||||staff<->1 37 | (6<->S (6<->NP (6<->DT The) (6<->NN bar)) (6<->VP (6<->VBZ is) (6<->ADVP (6<->RB very) (6<->RB well)) (6<->VBN stocked) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->JJ interesting) (6<->NNS beers)) (6<->CC and) (6<->NP (6<->ADJP (6<->RB well) (6<->VBN priced)) (6<->NNS wines))))) (6<->. .))||||bar<->1||||beers<->1||||wines<->1 38 | (6<->S (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->CD one) (6<->PP (6<->IN of) (6<->NP (6<->PRP$ my) (6<->JJ favorite) (6<->NNS restaurants)))))) (6<->CC and) (6<->S (6<->PRP it) (6<->VP (6<->VBZ is) (6<->RB not) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->VBN missed))))) (6<->. .))||||NULL<->1 39 | (6<->S (6<->NP (6<->PRP$ Your) (6<->NNS friends)) (6<->VP (6<->MD will) (6<->VP (6<->VB thank) (6<->PRP you) (6<->PP (6<->IN for) (6<->VP (6<->VBG introducing) (6<->PRP them) (6<->PP (6<->IN to) (6<->NP (6<->DT this) (6<->NN gem))))))) (6<->. !))||||NULL<->1 40 | (6<->S (6<->PRP We) (6<->VP (6<->VBD had) (6<->NP (6<->DT a) (6<->JJ great) (6<->NN time)) (6<->PP (6<->IN at) (6<->NP (6<->DT the) (6<->NNP Jekyll) (6<->CC and) (6<->JJ hyde) (6<->NNP Pub))) (6<->NP (6<->JJ last) (6<->NN night))) (6<->. .))||||Jekyll and hyde Pub<->1 41 | (6<->S (6<->PP (6<->IN After) (6<->VP (6<->RB really) (6<->VBG enjoying) (6<->PRP ourselves) (6<->PP (6<->IN at) (6<->NP (6<->DT the) (6<->NN bar))))) (6<->PRP we) (6<->VP (6<->VP (6<->VBD sat) (6<->RP down) (6<->PP (6<->IN at) (6<->NP (6<->DT a) (6<->NN table)))) (6<->CC and) (6<->VP (6<->VBD had) (6<->NN dinner))) (6<->. .))||||bar<->1 42 | (6<->S (6<->NP (6<->DT The) (6<->NN server)) (6<->VP (6<->VP (6<->VBD was) (6<->ADJP (6<->RB really) (6<->JJ cool))) (6<->CC and) (6<->VP (6<->VBD served) (6<->PRP us) (6<->NP (6<->PRP$ our) (6<->NN food) (6<->CC and) (6<->VBZ drinks)) (6<->PP (6<->IN with) (6<->NP (6<->DT a) (6<->NN smile))))) (6<->. .))||||server<->1 43 | (6<->S (6<->NP (6<->NP (6<->NP (6<->DT The) (6<->NN place) (6<->POS 's)) (6<->NN decor)) (6<->CC and) (6<->NP (6<->VBN hidden) (6<->NNS bathrooms))) (6<->VP (6<->VBN made) (6<->PP (6<->IN for) (6<->NP (6<->DT a) (6<->JJ good) (6<->NN laugh)))) (6<->. .))||||decor<->1||||hidden bathrooms<->1 44 | (6<->S (6<->PRP I) (6<->VP (6<->RB highly) (6<->VBP recommend) (6<->VP (6<->VP (6<->VBG visiting) (6<->NP (6<->DT this) (6<->NN restaurant))) (6<->CC and) (6<->VP (6<->VBG having) (6<->NP (6<->NN dinner) (6<->CC and) (6<->NNS drinks))))) (6<->. !))||||restaurant<->1 45 | (6<->S (6<->PRP We) (6<->VP (6<->VBD were) (6<->RB not) (6<->VP (6<->VBN dissappointed) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->JJS least) (6<->NN bit)) (6<->PP (6<->IN by) (6<->NP (6<->DT this) (6<->JJ little) (6<->NN gem)))))) (6<->. .))||||NULL<->1 46 | (6<->S (6<->NP (6<->DT The) (6<->NN bagel)) (6<->VP (6<->VBD was) (6<->JJ huge)) (6<->. .))||||bagel<->1 47 | (6<->S (6<->PRP They) (6<->VP (6<->VBD were) (6<->VP (6<->VP (6<->VBN served) (6<->JJ warm)) (6<->CC and) (6<->VP (6<->VBD had) (6<->NP (6<->DT a) (6<->JJ soft) (6<->JJ fluffy) (6<->NN interior))))) (6<->. .))||||NULL<->1 48 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NNS workers)) (6<->RB there)) (6<->RB also) (6<->RB absolutely) (6<->VBP load) (6<->NP (6<->DT the) (6<->NN bagel)) (6<->PP (6<->IN with) (6<->NP (6<->JJ cream) (6<->NN cheese))) (6<->-LRB- -LRB-) (6<->VP (6<->VBZ gets) (6<->ADJP (6<->NP (6<->DT a) (6<->JJ little)) (6<->JJ messy))) (6<->-RRB- -RRB-) (6<->. .))||||bagel<->0 49 | (6<->S (6<->PRP I) (6<->VP (6<->VP (6<->VBD loved) (6<->PRP it)) (6<->CC and) (6<->VP (6<->MD would) (6<->NP (6<->NNP HIGHLY) (6<->NNP RECOMMEND)))) (6<->. .))||||NULL<->1 50 | (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBD was) (6<->NP (6<->NP (6<->DT the) (6<->JJ only) (6<->NN thing)) (6<->JJ good) (6<->PP (6<->IN about) (6<->NP (6<->DT this) (6<->NN restaurant))))) (6<->. .))||||service<->1||||restaurant<->0 51 | (6<->S (6<->S (6<->S (6<->PRP It) (6<->VP (6<->VBZ 's) (6<->VBG boring) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->NN inside))))) (6<->, ,) (6<->CC and) (6<->S (6<->NP (6<->PRP$ our) (6<->NN sushi)) (6<->VP (6<->VBD was) (6<->PP (6<->RB pretty) (6<->IN below) (6<->JJ average))))) (6<->: ...) (6<->S (6<->S (6<->NP (6<->DT the) (6<->NN tuna)) (6<->VP (6<->VBD was) (6<->JJ soggy))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->JJ other) (6<->NNS rolls)) (6<->VP (6<->VBD had) (6<->NP (6<->DT no) (6<->NN flavor))))) (6<->. .))||||NULL<->0||||sushi<->0||||tuna<->0||||rolls<->0 52 | (6<->S (6<->PRP I) (6<->RB definitely) (6<->VP (6<->MD would) (6<->RB n't) (6<->VP (6<->VB go) (6<->RB back))) (6<->. .))||||NULL<->0 53 | (6<->S (6<->S (6<->NP (6<->PRP$ Their) (6<->NN pad) (6<->NN penang)) (6<->VP (6<->VBZ is) (6<->JJ delicious))) (6<->CC and) (6<->S (6<->NP (6<->NN everything) (6<->RB else)) (6<->VP (6<->VBZ is) (6<->JJ fantastic))) (6<->. .))||||pad penang<->1||||NULL<->1 54 | (6<->S (6<->NP (6<->DT The) (6<->NN price)) (6<->VP (6<->VBZ is) (6<->JJ reasonable) (6<->SBAR (6<->IN although) (6<->S (6<->NP (6<->DT the) (6<->NN service)) (6<->VP (6<->VBZ is) (6<->JJ poor))))) (6<->. .))||||NULL<->1||||service<->0 55 | (6<->S (6<->PP (6<->IN On) (6<->NP (6<->DT a) (6<->JJ hot) (6<->NN day))) (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ fabulous) (6<->VP (6<->TO to) (6<->VP (6<->VP (6<->VB stop) (6<->RP in)) (6<->CC and) (6<->VP (6<->VB enjoy) (6<->NN lunch))))) (6<->. .))||||NULL<->1 56 | (6<->S (6<->NN Ambience) (6<->VP (6<->VBZ is) (6<->ADJP (6<->ADJP (6<->RB so) (6<->JJ cute) (6<->CC and) (6<->JJ quaint) (6<->, ,) (6<->ADJP (6<->JJ good) (6<->PP (6<->IN for) (6<->NN business)))) (6<->SBAR (6<->IN although) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->RB there) (6<->PP (6<->IN on) (6<->NN vacation))))))) (6<->. .))||||Ambience<->1||||NULL<->1 57 | (6<->S (6<->NNS Salads) (6<->VP (6<->VBD were) (6<->JJ fantastic)) (6<->. .))||||Salads<->1 58 | (6<->S (6<->IN Although) (6<->S (6<->PRP we) (6<->VBD were) (6<->VBG looking) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->JJ regular) (6<->NN lettuce)) (6<->CC and) (6<->NP (6<->DT some) (6<->VBZ walnuts))))) (6<->NP (6<->DT the) (6<->NNS salads) (6<->S (6<->PRP we) (6<->VBD got))) (6<->VP (6<->VBD were) (6<->JJ great)) (6<->. .))||||salads<->1 59 | (6<->S (6<->NNS Ingredients) (6<->VP (6<->VBP are) (6<->JJ organic) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ real) (6<->CC plus)) (6<->PP (6<->IN for) (6<->PRP me)))))) (6<->. .))||||Ingredients<->1 60 | (6<->S (6<->PRP We) (6<->VP (6<->MD will) (6<->VP (6<->VB be) (6<->RB back))) (6<->. .))||||NULL<->1 61 | (6<->S (6<->PRP I) (6<->RB recently) (6<->VP (6<->VP (6<->VBD went) (6<->PP (6<->IN to) (6<->NP (6<->DT this) (6<->NN restaurant))) (6<->PP (6<->IN with) (6<->NP (6<->DT some) (6<->NN co))) (6<->, -) (6<->NP (6<->NNS workers) (6<->PP (6<->IN for) (6<->NN lunch)))) (6<->CC and) (6<->VP (6<->VBD had) (6<->NP (6<->DT an) (6<->JJ amazing) (6<->NN time)))) (6<->. .))||||restaurant<->1 62 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN staff)) (6<->VP (6<->VBD was) (6<->VBG accomodating))) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB absolutely) (6<->JJ delicious)))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->JJ lovely))) (6<->. .))||||staff<->1||||food<->1||||place<->1 63 | (6<->S (6<->PRP We) (6<->RB even) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT a) (6<->NN visit)) (6<->PP (6<->IN from) (6<->NP (6<->NP (6<->DT the) (6<->NNP Manager)) (6<->SBAR (6<->WP who) (6<->VP (6<->VBD wanted) (6<->VP (6<->TO to) (6<->VP (6<->VB make) (6<->ADJP (6<->JJ sure) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->VP (6<->VBG enjoying) (6<->PRP ourselves))))))))))))) (6<->. .))||||Manager<->1 64 | (6<->S (6<->S (6<->UH Yes) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NNS prices)) (6<->VP (6<->VBP are) (6<->JJ high)))) (6<->, ,) (6<->CC but) (6<->S (6<->PRP I) (6<->VP (6<->VBD felt) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ worth) (6<->PRP it)))))) (6<->. .))||||NULL<->0||||NULL<->1 65 | (6<->S (6<->NP (6<->PRP We) (6<->DT all)) (6<->VP (6<->VBD felt) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ worth) (6<->PRP it))))) (6<->. .))||||NULL<->1 66 | (6<->S (6<->NP (6<->DT The) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ BISTRO)) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBZ means) (6<->: :) (6<->S (6<->NP (6<->JJ simple) (6<->NNS dishes) (6<->CC and) (6<->NN wine)) (6<->VP (6<->VBD served) (6<->RB efficiently) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->JJ bustling) (6<->NN atmosphere))))))))) (6<->. .))||||dishes<->1||||wine<->1||||NULL<->1||||atmosphere<->1 67 | (6<->SBARQ (6<->CC And) (6<->WRB where) (6<->SQ (6<->VBZ does) (6<->NNP Patis) (6<->VP (6<->VB go) (6<->RB wrong))) (6<->: ;) (6<->INTJ (6<->UH no) (6<->WRB where)) (6<->. .))||||Patis<->1 68 | (6<->S (6<->PRP You) (6<->VP (6<->VBP are) (6<->RB not) (6<->VP (6<->VBG eating) (6<->NP (6<->NN haut) (6<->VB cuisine)) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->JJ subtle) (6<->NNS hints)) (6<->PP (6<->IN of) (6<->WDT whatever))) (6<->CC but) (6<->: :) (6<->NP (6<->NP (6<->NNP Cassuolet) (6<->, ,) (6<->NNP Steake) (6<->NNP Fritte) (6<->, ,) (6<->NP (6<->NNP Tripe) (6<->NNP Stew)) (6<->, ,) (6<->FW etc)) (6<->: ;) (6<->NP (6<->JJ simple) (6<->NN stuff)))))) (6<->. .))||||NULL<->1||||NULL<->1 69 | (6<->S (6<->CC And) (6<->VP (6<->VBN evaluated) (6<->PP (6<->IN on) (6<->NP (6<->DT those) (6<->NNS terms)))) (6<->NNP Pastis) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB simply) (6<->JJ wonderful))) (6<->. .))||||Pastis<->1 70 | (6<->S (6<->PRP I) (6<->VP (6<->VBP 'm) (6<->RB still) (6<->ADJP (6<->JJ mad) (6<->SBAR (6<->IN that) (6<->S (6<->PRP i) (6<->VP (6<->VBD had) (6<->VP (6<->TO to) (6<->VP (6<->VB pay) (6<->PP (6<->IN for) (6<->NP (6<->JJ lousy) (6<->NN food)))))))))) (6<->. .))||||food<->0 71 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN hanger) (6<->NN steak)) (6<->VP (6<->VBD was) (6<->PP (6<->IN like) (6<->NN rubber)))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN tuna)) (6<->VP (6<->VBD was) (6<->ADJP (6<->NN flavorless) (6<->S (6<->RB not) (6<->VP (6<->TO to) (6<->VB mention) (6<->S (6<->PRP it) (6<->VP (6<->VBD tasted) (6<->SBAR (6<->IN like) (6<->S (6<->PRP it) (6<->VP (6<->VBD had) (6<->RB just) (6<->VP (6<->VBN been) (6<->VBN thawed)))))))))))) (6<->. .))||||hanger steak<->0||||tuna<->0 72 | (6<->S (6<->S (6<->NN Service) (6<->VP (6<->VBD was) (6<->RB also) (6<->JJ horrible))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN ambience)) (6<->VP (6<->VBZ is) (6<->RB not) (6<->ADJP (6<->RB that) (6<->JJ great)))) (6<->. .))||||Service<->0||||ambience<->0 73 | (6<->S (6<->VP (6<->VB DO) (6<->RB not) (6<->VP (6<->VB try) (6<->SBAR (6<->IN unless) (6<->S (6<->PRP you) (6<->VP (6<->VBP 're) (6<->VP (6<->RB just) (6<->VP (6<->VBG going) (6<->RB there) (6<->VP (6<->TO to) (6<->VP (6<->VB hang) (6<->RP out) (6<->PP (6<->IN like) (6<->NP (6<->NP (6<->DT the) (6<->NN rest)) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->DT the) (6<->NNS hipsters)) (6<->SBAR (6<->WP who) (6<->S (6<->RB apparently) (6<->VP (6<->VBP have) (6<->NP (6<->NP (6<->DT no) (6<->NN sense)) (6<->PP (6<->IN of) (6<->NN taste))))))))))))))))))) (6<->. .))||||NULL<->0 74 | (6<->S (6<->PRP I) (6<->RB absolutely) (6<->VP (6<->VBP love) (6<->NP (6<->DT this) (6<->NN place))) (6<->. !) (6<->. !) (6<->. !))||||place<->1 75 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP like) (6<->NP (6<->DT the) (6<->NN ambience)))) (6<->, ,) (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->ADJP (6<->RB very) (6<->JJ dark) (6<->CC and) (6<->JJ original)))) (6<->. .))||||ambience<->1 76 | (6<->S (6<->NP (6<->DT The) (6<->NN sushi)) (6<->VP (6<->VBZ is) (6<->JJ amazing)) (6<->. !) (6<->. !) (6<->. !))||||sushi<->1 77 | (6<->FRAG (6<->CC And) (6<->ADJP (6<->RB amazingly) (6<->JJ cheap)) (6<->. .))||||NULL<->1 78 | (6<->NP (6<->NP (6<->JJ Big) (6<->NNS thumbs)) (6<->RP up) (6<->. !))||||NULL<->1 79 | (6<->S (6<->S (6<->NN Myagi) (6<->VP (6<->VBZ is) (6<->NP (6<->CD one) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->PRP$ my) (6<->JJ favorite) (6<->NNS restaurants)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NNP City)))))))) (6<->: ;) (6<->S (6<->NP (6<->DT the) (6<->NN place)) (6<->S (6<->NP (6<->DT the) (6<->JJ negative) (6<->NNS reviews)) (6<->VP (6<->VBP describe) (6<->VP (6<->NN sound) (6<->SBAR (6<->IN like) (6<->S (6<->PRP they) (6<->VP (6<->VBD were) (6<->NP (6<->RB somewhere) (6<->RB else))))))))) (6<->. .))||||Myagi<->1 80 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VB 've) (6<->RB never) (6<->VP (6<->VBN had) (6<->NP (6<->JJ bad) (6<->NN service))))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN fish)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ fresh) (6<->CC and) (6<->JJ delicious)))) (6<->. .))||||service<->1||||fish<->1 81 | (6<->S (6<->NP (6<->PRP$ Their) (6<->NN tuna) (6<->DT tartar) (6<->NN appetizer)) (6<->VP (6<->VBZ is) (6<->VP (6<->TO to) (6<->VP (6<->VB die) (6<->IN for)))) (6<->. .))||||tuna tartar appetizer<->1 82 | (6<->NP (6<->NP (6<->DT A) (6<->NN restaurant)) (6<->WDT that) (6<->VP (6<->VBZ does) (6<->RB n't) (6<->VP (6<->VB try) (6<->TO to) (6<->VP (6<->VB do) (6<->NN anything) (6<->PP (6<->IN except) (6<->VP (6<->VB serve) (6<->NP (6<->JJ great) (6<->NN food)) (6<->PP (6<->IN with) (6<->NP (6<->JJ great) (6<->NN service))) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->JJ pleasant) (6<->NN atmosphere)))))))) (6<->. .))||||food<->1||||service<->1||||atmosphere<->1 83 | (6<->S (6<->NP (6<->DT No) (6<->NNS gimmicks)) (6<->RB here) (6<->: -) (6<->: -) (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBZ speaks) (6<->PP (6<->IN for) (6<->PRP itself)) (6<->PP (6<->IN in) (6<->NP (6<->PRP$ its) (6<->NN freshness) (6<->CC and) (6<->NN preparation)))) (6<->. .))||||food<->1 84 | (6<->S (6<->NP (6<->DT The) (6<->NN dining) (6<->NN room)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB quietly) (6<->JJ elegant)) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->DT no) (6<->NN music)) (6<->VP (6<->TO to) (6<->VP (6<->VB shout) (6<->IN over))))) (6<->HYPH -) (6<->HYPH -) (6<->INTJ (6<->WRB how) (6<->NN refreshing))) (6<->. !))||||dining room<->1 85 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ impeccable) (6<->CC and) (6<->JJ unobtrusive)))) (6<->HYPH -) (6<->: -) (6<->S (6<->NP (6<->DT the) (6<->NN staff)) (6<->VP (6<->VBZ knows) (6<->SBAR (6<->SBAR (6<->WP what) (6<->PRP they) (6<->VP (6<->VBP are) (6<->RB there) (6<->VP (6<->TO to) (6<->VB do)))) (6<->HYPH -) (6<->: -) (6<->VP (6<->TO to) (6<->VP (6<->VP (6<->VB know) (6<->NP (6<->PRP$ their) (6<->NN menu))) (6<->, ,) (6<->VP (6<->VB present) (6<->NP (6<->PRP$ your) (6<->NN meal))) (6<->, ,) (6<->CC and) (6<->VP (6<->VB attend) (6<->PP (6<->IN to) (6<->NP (6<->PRP$ your) (6<->NNS needs))))))))) (6<->. .))||||service<->1||||staff<->1 86 | (6<->S (6<->VP (6<->VBG Looking) (6<->RB around)) (6<->, ,) (6<->PRP I) (6<->VP (6<->VBD saw) (6<->NP (6<->NP (6<->DT a) (6<->NN room)) (6<->ADJP (6<->JJ full) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->NNP New) (6<->NNPS Yorkers)) (6<->VP (6<->VBG enjoying) (6<->NP (6<->NP (6<->DT a) (6<->JJ real) (6<->NN meal)) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->JJ real) (6<->NN restaurant)))) (6<->, ,) (6<->RB not) (6<->NP (6<->NP (6<->DT a) (6<->NN clubhouse)) (6<->PP (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->JJ fabulous))) (6<->VP (6<->VBG trying) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->VBN seen)))))))))))) (6<->. .))||||meal<->1||||restaurant<->1 87 | (6<->NP (6<->JJ Beautiful) (6<->NN experience) (6<->. .))||||NULL<->1 88 | (6<->S (6<->VP (6<->VB Go) (6<->PP (6<->IN to) (6<->NNP Volare)) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->JJ 1st) (6<->NN class) (6<->NN service)) (6<->CC and) (6<->NP (6<->JJ terrific) (6<->NN food))))) (6<->. .))||||service<->1||||food<->1 89 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NNS portions)) (6<->VP (6<->VBP are) (6<->JJ large))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NNS servers)) (6<->RB always) (6<->VP (6<->VBP surprise) (6<->PRP us) (6<->PP (6<->IN with) (6<->NP (6<->DT a) (6<->JJ different) (6<->NN starter))))) (6<->. .))||||portions<->1||||servers<->1 90 | (6<->S (6<->NP (6<->DT The) (6<->NN wine) (6<->NN list)) (6<->VP (6<->VBZ is) (6<->JJ excellent)) (6<->. .))||||wine list<->1 91 | (6<->S (6<->NP (6<->DT This) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->ADJP (6<->RB so) (6<->JJ much)) (6<->NN fun))) (6<->. .))||||place<->1 92 | (6<->S (6<->NP (6<->PRP$ Our) (6<->NN family)) (6<->RB never) (6<->VP (6<->VBD expected) (6<->NP (6<->JJ such) (6<->JJ incredible) (6<->NN entertainment)) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->NN restaurant)))) (6<->. .))||||restaurant<->1 93 | (6<->S (6<->NP (6<->PRP$ Our) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ great) (6<->RB too)) (6<->. !))||||food<->1 94 | (6<->FRAG (6<->CC And) (6<->NP (6<->RB really) (6<->JJ large) (6<->NNS portions)) (6<->. .))||||portions<->1 95 | (6<->S (6<->NP (6<->DT The) (6<->NN staff)) (6<->VP (6<->VBD was) (6<->NP (6<->NP (6<->DT the) (6<->JJS friendliest)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBP have) (6<->VP (6<->VBN seen) (6<->PP (6<->IN in) (6<->NP (6<->NNP New) (6<->NNP York)))))))) (6<->. .))||||staff<->1 96 | (6<->S (6<->PRP We) (6<->VP (6<->MD will) (6<->VP (6<->VB go) (6<->RB back) (6<->NP (6<->NP (6<->DT every) (6<->NN time)) (6<->S (6<->PRP we) (6<->VP (6<->VBP are) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NNP City)))))))) (6<->. .))||||NULL<->1 97 | (6<->SBAR (6<->IN If) (6<->S (6<->PRP you) (6<->VP (6<->VBP want) (6<->NP (6<->NN something) (6<->ADJP (6<->ADJP (6<->RB really) (6<->JJ different)) (6<->PP (6<->IN than) (6<->VP (6<->VB try) (6<->NP (6<->NNP Jekyll) (6<->CC and) (6<->NNP Hyde)))))))) (6<->. .))||||Jekyll and Hyde<->1 98 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->NP (6<->DT a) (6<->NN lot)) (6<->PP (6<->IN of) (6<->NN fun))) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->JJ live) (6<->NN entertainment)) (6<->CC and) (6<->NP (6<->NP (6<->DT all) (6<->NNS kinds)) (6<->PP (6<->IN of) (6<->NP (6<->NNP Disney) (6<->NN type) (6<->JJ special) (6<->NNS effects)))))))) (6<->. .))||||NULL<->1 99 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB pretty) (6<->JJ tradional)))) (6<->CC but) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ hot) (6<->CC and) (6<->JJ good) (6<->PP (6<->IN with) (6<->NP (6<->JJ large) (6<->NNS portions)))))) (6<->. .))||||food<->1||||portions<->1 100 | (6<->S (6<->PRP I) (6<->VP (6<->RB highly) (6<->VBP recommend) (6<->PRP it)) (6<->. .))||||NULL<->1 101 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->RB there) (6<->SBAR (6<->IN on) (6<->VBN sat)) (6<->. .) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ my) (6<->NN birthday))))) (6<->CC and) (6<->S (6<->PRP we) (6<->VP (6<->VBD had) (6<->NP (6<->DT an) (6<->JJ excellent) (6<->NN time)))) (6<->. .))||||NULL<->1 102 | (6<->S (6<->PRP I) (6<->VP (6<->VBD had) (6<->NP (6<->NP (6<->DT the) (6<->JJS best) (6<->JJ ravioli)) (6<->RB ever))) (6<->. .))||||ravioli<->1 103 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN wine)) (6<->NP (6<->DT the) (6<->NN service))) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB very) (6<->JJ good)) (6<->RB too)) (6<->. .))||||wine<->1||||service<->1 104 | (6<->NP (6<->JJ Moderate) (6<->NNS prices) (6<->. .))||||NULL<->2 105 | (6<->S (6<->NP (6<->DT A) (6<->JJ little) (6<->NN noise)) (6<->CC but) (6<->S (6<->PRP I) (6<->VP (6<->VBP think) (6<->S (6<->DT that) (6<->VP (6<->VBD was) (6<->PP (6<->IN because) (6<->IN of) (6<->NP (6<->PRP$ our) (6<->NN party))))))) (6<->. !))||||NULL<->2 106 | (6<->S (6<->NP (6<->DT This) (6<->ADJP (6<->JJ quaint) (6<->CC and) (6<->JJ romantic)) (6<->NN trattoria)) (6<->VP (6<->VBZ is) (6<->PP (6<->IN at) (6<->NP (6<->NP (6<->DT the) (6<->NN top)) (6<->PP (6<->IN of) (6<->NP (6<->PRP$ my) (6<->NNP Manhattan) (6<->NN restaurant) (6<->NN list)))))) (6<->. .))||||trattoria<->1||||trattoria<->1 107 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->JJ delicious) (6<->PRN (6<->: -) (6<->PP (6<->PP (6<->IN from) (6<->NP (6<->DT the) (6<->NNS specials))) (6<->PP (6<->IN to) (6<->NP (6<->DT the) (6<->JJ regular) (6<->NN menu)))) (6<->HYPH -)) (6<->NN fare))) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NNS dishes)) (6<->VP (6<->VBP are) (6<->RB never) (6<->NP (6<->DT a) (6<->NN disappointment)))) (6<->. .))||||food<->1||||dishes<->1||||specials<->1||||regular menu - fare<->1 108 | (6<->S (6<->SBAR (6<->IN Whether) (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->NP (6<->NP (6<->DT the) (6<->JJ parmesean) (6<->NNS porcini) (6<->NN souffle)) (6<->CC or) (6<->NP (6<->NP (6<->DT the) (6<->NN lamb)) (6<->VP (6<->VBN glazed) (6<->PP (6<->IN with) (6<->NP (6<->JJ balsamic) (6<->NN vinegar))))))))) (6<->, ,) (6<->PRP you) (6<->VP (6<->MD will) (6<->RB surely) (6<->VP (6<->VB be) (6<->VP (6<->VBN transported) (6<->PP (6<->IN to) (6<->NP (6<->NNP Northern) (6<->NNP Italy))) (6<->PP (6<->IN with) (6<->NP (6<->CD one) (6<->NN bite)))))) (6<->. .))||||parmesean porcini souffle<->1||||lamb glazed with balsamic vinegar<->1 109 | (6<->S (6<->SBAR (6<->IN Although) (6<->S (6<->NP (6<->DT the) (6<->NNS tables)) (6<->VP (6<->MD may) (6<->VP (6<->VB be) (6<->ADJP (6<->RB closely) (6<->VBN situated)))))) (6<->, ,) (6<->NP (6<->NP (6<->DT the) (6<->NN candle)) (6<->PRN (6<->HYPH -) (6<->NN light) (6<->, ,) (6<->NN food) (6<->HYPH -)) (6<->NN quality) (6<->CC and) (6<->NN service)) (6<->NN overcompensate) (6<->. .))||||candle - light<->1||||food<->1||||service<->1||||tables<->0 110 | (6<->NP (6<->DT A) (6<->NN guaranteeed) (6<->NN delight) (6<->. !))||||NULL<->1 111 | (6<->S (6<->PRP I) (6<->VP (6<->VBD found) (6<->S (6<->S (6<->DT the) (6<->NN food) (6<->, ,) (6<->NN service) (6<->CC and) (6<->NN value) (6<->JJ exceptional)) (6<->NP (6<->NN everytime) (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->VP (6<->VBN been) (6<->RB there))))))) (6<->. .))||||food<->1||||service<->1||||NULL<->1 112 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ authentic)) (6<->. .))||||food<->1 113 | (6<->S (6<->PRP I) (6<->VP (6<->VBD felt) (6<->SBAR (6<->IN as) (6<->IN though) (6<->S (6<->PRP I) (6<->VP (6<->VBD were) (6<->VP (6<->VBG eating) (6<->PP (6<->IN in) (6<->NNP Paris))))))) (6<->. .))||||NULL<->1 114 | (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ excellent) (6<->HYPH -) (6<->ADJP (6<->JJ friendly) (6<->CC and) (6<->JJ attentive)))) (6<->. .))||||service<->1 115 | (6<->S (6<->NP (6<->DT The) (6<->NNS prices)) (6<->VP (6<->VBP are) (6<->ADJP (6<->RB wonderfully) (6<->JJ low))) (6<->. .))||||NULL<->1 116 | (6<->NP (6<->RB Very) (6<->JJ good) (6<->NN wine) (6<->NNS choices) (6<->. .))||||wine choices<->1 117 | (6<->S (6<->NNP Amma) (6<->VP (6<->VBZ is) (6<->NP (6<->NN nothing) (6<->JJ special))) (6<->. .))||||Amma<->2 118 | (6<->S (6<->PRP I) (6<->VP (6<->VP (6<->VBD ate) (6<->RB here) (6<->ADVP (6<->NP (6<->DT a) (6<->NN week)) (6<->RB ago))) (6<->CC and) (6<->VP (6<->VBD found) (6<->NP (6<->NP (6<->JJS most) (6<->NNS dishes)) (6<->ADJP (6<->ADJP (6<->JJ average) (6<->PP (6<->IN at) (6<->JJS best))) (6<->CC and) (6<->ADJP (6<->RB too) (6<->JJ expensive)))))) (6<->. .))||||dishes<->0||||dishes<->0 119 | (6<->S (6<->MD Will) (6<->RB not) (6<->VP (6<->VB be) (6<->RB back)) (6<->. .))||||NULL<->0 120 | (6<->S (6<->VP (6<->VB Do) (6<->RB n't) (6<->VP (6<->VB dine) (6<->PP (6<->IN at) (6<->NN Tamarind)) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->JJ vegetarian) (6<->NNS dishes))))) (6<->, ,) (6<->S (6<->PRP they) (6<->VP (6<->VBP are) (6<->RB simply) (6<->RB not) (6<->PP (6<->PP (6<->IN up) (6<->PP (6<->IN to) (6<->NN par))) (6<->PP (6<->IN with) (6<->NP (6<->DT the) (6<->AFX non) (6<->HYPH -) (6<->NN veg) (6<->NNS selections)))))) (6<->. .))||||vegetarian dishes<->0||||non - veg selections<->1 121 | (6<->S (6<->NNP Decor) (6<->VP (6<->VBZ is) (6<->JJ nice) (6<->SBAR (6<->IN though) (6<->S (6<->NN service) (6<->VP (6<->MD can) (6<->VP (6<->VB be) (6<->JJ spotty)))))) (6<->. .))||||Decor<->1||||service<->0 122 | (6<->S (6<->NP (6<->DT This) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->RB always) (6<->VBN packed)) (6<->. .))||||place<->2 123 | (6<->S (6<->ADVP (6<->RBS Most) (6<->RB importantly)) (6<->, ,) (6<->NN food) (6<->VP (6<->VBZ is) (6<->JJ excellent)) (6<->. .))||||food<->1 124 | (6<->S (6<->VP (6<->VB Try) (6<->NP (6<->DT the) (6<->NN sea) (6<->NN bass))) (6<->. .))||||sea bass<->1 125 | (6<->ADJP (6<->RB Highly) (6<->VBN recommended) (6<->. .))||||NULL<->1 126 | (6<->FRAG (6<->ADVP (6<->RB First) (6<->PP (6<->IN of) (6<->DT all))) (6<->NP (6<->NP (6<->NNP Dal) (6<->NNP Bukhara)) (6<->NNPS Rocks)) (6<->. .))||||Dal Bukhara<->1 127 | (6<->S (6<->PRP I) (6<->VP (6<->VBP am) (6<->ADJP (6<->JJ happy) (6<->S (6<->PRP i) (6<->VP (6<->VP (6<->VBD did) (6<->NP (6<->DT the) (6<->NN food))) (6<->VP (6<->VBD was) (6<->VBN awsome)))))) (6<->. .))||||food<->1 128 | (6<->FRAG (6<->RB JUST) (6<->NNP AWSOME) (6<->. .))||||NULL<->1 129 | (6<->SINV (6<->CC and) (6<->UH yes) (6<->NP (6<->NNP Dal) (6<->NNP Bukhara)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB so) (6<->JJ dam) (6<->JJ good))) (6<->CC and) (6<->SINV (6<->RB so) (6<->VBP are) (6<->NP (6<->PDT all) (6<->DT the) (6<->NNS kababs))) (6<->. .))||||kababs<->1||||Dal Bukhara<->1 130 | (6<->S (6<->CC but) (6<->S (6<->RB overall) (6<->PRP i) (6<->VP (6<->VBP give) (6<->PRP it) (6<->NP (6<->DT a) (6<->CD 10)))))||||NULL<->1 131 | (6<->CD 10)||||NULL<->1 132 | (6<->S (6<->NP (6<->NNP Haru) (6<->PP (6<->IN on) (6<->NP (6<->NNP Park) (6<->NNP S)))) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB simply) (6<->JJ disgusting))) (6<->. .))||||Haru on Park S<->0 133 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN fish)) (6<->VP (6<->VBD was) (6<->RB not) (6<->JJ fresh))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN rice)) (6<->VP (6<->VBD tasted) (6<->ADJP (6<->JJ old) (6<->CC and) (6<->JJ stale)))) (6<->. .))||||fish<->0||||rice<->0 134 | (6<->S (6<->ADVP (6<->RB Quite) (6<->RB frankly)) (6<->, ,) (6<->DT this) (6<->VP (6<->VBZ is) (6<->NP (6<->DT some) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->DT the) (6<->JJS worst) (6<->NN sushi)) (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->RB ever) (6<->VBN tried))))))) (6<->. .))||||sushi<->0 135 | (6<->S (6<->MD Will) (6<->RB never) (6<->VP (6<->VB be) (6<->RB back)) (6<->. .))||||NULL<->0 136 | (6<->X (6<->WDT What) (6<->DT a) (6<->JJ great) (6<->NN place) (6<->. .))||||place<->1 137 | (6<->S (6<->NP (6<->DT The) (6<->NN ambience)) (6<->VP (6<->VBD was) (6<->UCP (6<->ADJP (6<->RB so) (6<->JJ fun)) (6<->, ,) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NNS prices)) (6<->VP (6<->VBD were) (6<->JJ great))) (6<->, ,) (6<->PP (6<->IN on) (6<->NP (6<->NN top) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->NN fact) (6<->SBAR (6<->IN that) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB really) (6<->JJ tasty))))))))))) (6<->. .))||||ambience<->1||||NULL<->1||||food<->1 138 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->RB n't) (6<->VP (6<->VBN thrilled) (6<->VP (6<->TO to) (6<->VP (6<->VB have) (6<->VP (6<->TO to) (6<->VP (6<->VB wait) (6<->PP (6<->IN on) (6<->NN line)) (6<->PP (6<->IN for) (6<->NP (6<->CD thirty) (6<->NNS minutes)))))))))) (6<->, ,) (6<->CC but) (6<->S (6<->PRP I) (6<->VP (6<->VBP guess) (6<->S (6<->DT that) (6<->VP (6<->VBZ 's) (6<->NP (6<->NP (6<->DT the) (6<->NN price)) (6<->S (6<->PRP you) (6<->VP (6<->VBP pay) (6<->PP (6<->IN for) (6<->NP (6<->DT a) (6<->JJ popular) (6<->NN place)))))))))) (6<->. .))||||NULL<->2 139 | (6<->S (6<->PRP I) (6<->VP (6<->MD would) (6<->RB definitely) (6<->VP (6<->VB recommend) (6<->NNP SEA) (6<->SBAR (6<->IN if) (6<->S (6<->PRP you) (6<->VP (6<->VBP like) (6<->NP (6<->JJ thai) (6<->NN cuisine))))))) (6<->. !))||||thai cuisine<->1 140 | (6<->S (6<->NP (6<->DT The) (6<->NN buffet)) (6<->VP (6<->VBD had) (6<->NP (6<->DT a) (6<->JJ nice) (6<->NN selection))) (6<->. .))||||buffet<->1 141 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ average) (6<->CC or) (6<->IN above)) (6<->PP (6<->VBG including) (6<->NP (6<->DT some) (6<->JJ surprising) (6<->JJ tasty) (6<->NNS dishes)))) (6<->. .))||||food<->1||||dishes<->1 142 | (6<->S (6<->NN Service) (6<->VP (6<->VBD was) (6<->RB also) (6<->ADJP (6<->RB very) (6<->JJ good))) (6<->. .))||||Service<->1 143 | (6<->S (6<->PRP I) (6<->VP (6<->MD would) (6<->VP (6<->VB go) (6<->RB back))) (6<->. .))||||NULL<->1 144 | (6<->NP (6<->NP (6<->DT The) (6<->JJS freshest) (6<->, ,) (6<->JJS best) (6<->NN variety)) (6<->, ,) (6<->CC and) (6<->NP (6<->DT the) (6<->JJS fastest) (6<->NN delivery)) (6<->. .))||||NULL<->1||||NULL<->1||||delivery<->1 145 | (6<->FRAG (6<->RB Also) (6<->ADJP (6<->RB very) (6<->JJ inexpensive)) (6<->. .))||||NULL<->1 146 | (6<->FRAG (6<->NP (6<->DT A) (6<->JJ great) (6<->NN choice)) (6<->PP (6<->PP (6<->IN at) (6<->NP (6<->DT any) (6<->NN cost))) (6<->CC and) (6<->NP (6<->DT a) (6<->JJ great) (6<->NN deal))) (6<->. .))||||NULL<->1||||NULL<->1 147 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ wonderful) (6<->NN place)) (6<->PP (6<->IN on) (6<->NP (6<->NP (6<->DT all) (6<->NN stand) (6<->NNS points)) (6<->RB especially) (6<->NN value) (6<->NN ofr) (6<->NN money))))) (6<->. .))||||place<->1||||place<->1 148 | (6<->NP (6<->DT An) (6<->JJ excellent) (6<->NN service))||||service<->1 149 | (6<->S (6<->NNP Mizu) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->NNPS Japenese) (6<->VBP find)) (6<->PP (6<->IN in) (6<->NNP Grammercy)))) (6<->. .))||||Mizu<->1 150 | (6<->S (6<->SBAR (6<->IN While) (6<->S (6<->NP (6<->PRP$ their) (6<->NN kitchen) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->JJ delicious)))) (6<->, ,) (6<->NP (6<->PRP$ their) (6<->NNP Sushi)) (6<->VP (6<->VBZ is) (6<->PP (6<->IN out) (6<->PP (6<->IN of) (6<->NP (6<->DT this) (6<->NN world))))) (6<->. .))||||kitchen food<->1||||Sushi<->1 151 | (6<->S (6<->NNP Mizu) (6<->VP (6<->VBZ is) (6<->NP (6<->NN home) (6<->PP (6<->TO to) (6<->NP (6<->NP (6<->ADJP (6<->JJ creative) (6<->CC and) (6<->JJ unique)) (6<->NNS rolls)) (6<->UCP (6<->RB not) (6<->VP (6<->TO to) (6<->VP (6<->VBN found) (6<->NP (6<->RB anywhere) (6<->RB else))))))))) (6<->. .))||||rolls<->1 152 | (6<->S (6<->SINV (6<->CONJP (6<->RB Not) (6<->RB only)) (6<->VBZ is) (6<->NP (6<->DT the) (6<->NN cuisine)) (6<->NP (6<->NP (6<->DT the) (6<->JJS best)) (6<->RB around))) (6<->, ,) (6<->NP (6<->DT the) (6<->NN service)) (6<->VP (6<->VBZ has) (6<->RB always) (6<->VP (6<->VBN been) (6<->ADJP (6<->JJ attentive) (6<->CC and) (6<->JJ charming)))) (6<->. .))||||cuisine<->1||||service<->1 153 | (6<->NP (6<->NN Warning) (6<->: :) (6<->S (6<->PRP You) (6<->VP (6<->MD may) (6<->VP (6<->VB find) (6<->S (6<->S (6<->PRP it) (6<->JJ difficult) (6<->VP (6<->TO to) (6<->VP (6<->VB dine) (6<->PP (6<->IN at) (6<->NP (6<->JJ other) (6<->JJ Japanese) (6<->NNS restaurants)))))) (6<->PP (6<->IN after) (6<->NP (6<->NP (6<->DT a) (6<->NN visit)) (6<->PP (6<->IN to) (6<->NNP Mizu)))))))) (6<->. !))||||Mizu<->1 154 | (6<->NP (6<->NP (6<->NP (6<->JJ Authentic) (6<->JJ Taiwanese) (6<->NN food)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBZ 's) (6<->JJ cheap)))) (6<->NFP ...) (6<->WHNP (6<->WP what) (6<->JJR more)) (6<->SQ (6<->MD could) (6<->PRP you) (6<->VP (6<->VB ask) (6<->IN for))) (6<->. ?))||||Taiwanese food<->1||||Taiwanese food<->1 155 | (6<->S (6<->-LRB- -LRB-) (6<->IN Besides) (6<->IN that) (6<->EX there) (6<->VP (6<->MD should) (6<->VP (6<->VB be) (6<->NP (6<->NP (6<->JJR more) (6<->NNS restaurants)) (6<->PP (6<->IN like) (6<->PRP it))) (6<->PP (6<->IN around) (6<->NP (6<->DT the) (6<->NN city))))) (6<->-RRB- -RRB-) (6<->. .))||||NULL<->1 156 | (6<->S (6<->NP (6<->DT The) (6<->JJ cold) (6<->NN appetizer) (6<->NNS dishes)) (6<->VP (6<->VBP taste) (6<->PP (6<->IN like) (6<->NP (6<->NP (6<->DT the) (6<->NN way)) (6<->S (6<->PRP I) (6<->VP (6<->VBP remember) (6<->PRP them) (6<->VP (6<->TO to) (6<->VP (6<->VB taste) (6<->SBAR (6<->WRB when) (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->VP (6<->VBG growing) (6<->RP up) (6<->PP (6<->IN in) (6<->NNP Taiwan))))))))))))) (6<->. .))||||cold appetizer dishes<->1 157 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->PDT such) (6<->DT a) (6<->JJ lovely) (6<->, ,) (6<->JJ peaceful) (6<->NN place)) (6<->VP (6<->TO to) (6<->VP (6<->VB eat) (6<->RB outside))))) (6<->. .))||||place<->1 158 | (6<->S (6<->NP (6<->DT The) (6<->NN restaurant)) (6<->VP (6<->VBZ looks) (6<->RP out) (6<->PP (6<->IN over) (6<->NP (6<->NP (6<->JJ beautiful) (6<->JJ green) (6<->NNS lawns)) (6<->PP (6<->IN to) (6<->NP (6<->NP (6<->DT the) (6<->NNP Hudson) (6<->NNP River)) (6<->CC and) (6<->NP (6<->NP (6<->DT the) (6<->NNP Statue)) (6<->PP (6<->IN of) (6<->NNP Liberty)))))))) (6<->. .))||||restaurant<->1 159 | (6<->S (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->VP (6<->VBN set) (6<->ADVP (6<->RB far) (6<->PP (6<->IN from) (6<->NP (6<->NP (6<->DT the) (6<->JJ small) (6<->NN street)) (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->RB on))))))))) (6<->, ,) (6<->CC and) (6<->S (6<->EX there) (6<->VP (6<->VBZ is) (6<->NP (6<->DT no) (6<->NN traffic) (6<->NN noise)))) (6<->. .))||||NULL<->1 160 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->JJ good) (6<->, ,) (6<->NP (6<->RB especially) (6<->NP (6<->PRP$ their) (6<->ADJP (6<->JJR more) (6<->JJ basic)) (6<->NNS dishes))))) (6<->, ,) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NNS drinks)) (6<->VP (6<->VBP are) (6<->JJ delicious))) (6<->. .))||||food<->1||||basic dishes<->1||||drinks<->1 161 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->NP (6<->DT a) (6<->JJ great) (6<->NN place)) (6<->VP (6<->VP (6<->TO to) (6<->VB take) (6<->RP out)) (6<->HYPH -) (6<->IN of) (6<->HYPH -) (6<->NNS towners))) (6<->, ,) (6<->CC and) (6<->ADJP (6<->JJ perfect) (6<->PP (6<->IN for) (6<->VP (6<->VBG watching) (6<->NP (6<->DT the) (6<->NN sunset))))))) (6<->. .))||||place<->1 162 | (6<->S (6<->NP (6<->NP (6<->JJ Good) (6<->NNS spreads)) (6<->, ,) (6<->NP (6<->JJ great) (6<->NN beverage) (6<->NNS selections)) (6<->CC and) (6<->NNS bagels)) (6<->ADJP (6<->RB really) (6<->JJ tasty)) (6<->. .))||||spreads<->1||||beverage selections<->1||||bagels<->1 163 | (6<->NP (6<->NP (6<->DT THE) (6<->NNP BIG) (6<->NNP COMPLAINT)) (6<->: :) (6<->NP (6<->DT NO) (6<->NN TOASTING) (6<->NNPS AVAILABLE)) (6<->. .))||||NULL<->0 164 | (6<->S (6<->NNP Murray) (6<->VP (6<->MD wo) (6<->RB n't) (6<->VP (6<->VB do) (6<->PRP it))) (6<->. .))||||NULL<->0 165 | (6<->S (6<->MD Wo) (6<->RB n't) (6<->CC or) (6<->MD Ca) (6<->RB n't) (6<->VP (6<->VBZ is) (6<->RB not) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN service) (6<->NN directory)))) (6<->. .))||||NULL<->0 166 | (6<->S (6<->CC But) (6<->WP who) (6<->VP (6<->VBZ says) (6<->S (6<->NP (6<->NNP Murray) (6<->POS 's)) (6<->VP (6<->VBZ is) (6<->NP (6<->NN anything) (6<->PP (6<->IN about) (6<->NN service)))))) (6<->. .))||||service<->0 167 | (6<->FRAG (6<->ADJP (6<->RB So) (6<->JJ close)) (6<->, ,) (6<->CC but) (6<->RB not) (6<->JJ good) (6<->RB enough) (6<->. .))||||NULL<->2 168 | (6<->S (6<->S (6<->NNS Bagels) (6<->VP (6<->VBP are) (6<->JJ ok))) (6<->, ,) (6<->CC but) (6<->VP (6<->VB be) (6<->ADJP (6<->JJ sure) (6<->S (6<->RB not) (6<->VP (6<->TO to) (6<->VP (6<->VB make) (6<->NP (6<->DT any) (6<->JJ special) (6<->NNS requests))))))) (6<->. !))||||Bagels<->2||||NULL<->0 169 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD asked) (6<->PP (6<->IN for) (6<->NP (6<->DT an) (6<->JJ open) (6<->JJ faced) (6<->NN cheese) (6<->NN sandwich))))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN manager)) (6<->RB basically) (6<->VP (6<->VBD told) (6<->PRP me) (6<->VP (6<->TO to) (6<->VP (6<->VB take) (6<->NP (6<->PRP$ my) (6<->NN business)) (6<->RB elsewhere))))) (6<->. !))||||manager<->0 170 | (6<->S (6<->VP (6<->VP (6<->VB Be) (6<->ADJP (6<->JJ sure) (6<->S (6<->RB not) (6<->VP (6<->TO to) (6<->VP (6<->VB get) (6<->NP (6<->NN anything) (6<->ADJP (6<->JJ other) (6<->PP (6<->IN than) (6<->NNS bagels))))))))) (6<->. !)) (6<->NFP ..))||||NULL<->0||||bagels<->1 171 | (6<->S (6<->NP (6<->DT the) (6<->NN turkey) (6<->NNS burgers)) (6<->VP (6<->VBP are) (6<->JJ scary)) (6<->. !))||||turkey burgers<->0 172 | (6<->NP (6<->NP (6<->NP (6<->DT The) (6<->JJS worst) (6<->NN excuse)) (6<->PP (6<->IN for) (6<->NP (6<->JJ Japanese) (6<->NN food)))) (6<->S (6<->PRP I) (6<->VP (6<->VB 've) (6<->RB ever) (6<->VBN encountered))) (6<->. .))||||Japanese food<->0 173 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN soup)) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->JJ udon)))) (6<->VP (6<->VBD was) (6<->NP (6<->NN soy) (6<->NN sauce) (6<->CC and) (6<->NN water))) (6<->. .))||||soup for the udon<->0 174 | (6<->S (6<->NP (6<->DT The) (6<->NN sushi)) (6<->VP (6<->VBD was) (6<->JJ awful)) (6<->. !))||||sushi<->0 175 | (6<->S (6<->NP (6<->DT The) (6<->NN rice)) (6<->VP (6<->VP (6<->VBD was) (6<->NP (6<->JJ poor) (6<->NN quality))) (6<->CC and) (6<->VP (6<->VBD was) (6<->VP (6<->VBN cooked) (6<->ADVP (6<->ADVP (6<->RB so) (6<->RB badly)) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ hard))))))) (6<->. .))||||rice<->0 176 | (6<->S (6<->S (6<->RB Furthermore) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN rice)) (6<->VP (6<->VBD had) (6<->NP (6<->DT no) (6<->NN seasoning))))) (6<->, ,) (6<->CC so) (6<->S (6<->NP (6<->DT the) (6<->NN sushi)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ bland) (6<->CC and) (6<->JJ disgusting)))) (6<->. .))||||rice<->0||||sushi<->0 177 | (6<->S (6<->NP (6<->DT The) (6<->NN fish)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ adequate) (6<->, ,) (6<->CC but) (6<->VP (6<->RB inexpertly) (6<->VBN sliced)))) (6<->. .))||||fish<->0 178 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->JJ obvious) (6<->SBAR (6<->IN that) (6<->S (6<->NP (6<->NP (6<->DT no) (6<->NN one)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN restaurant)))) (6<->VP (6<->VBZ has) (6<->NP (6<->NP (6<->DT any) (6<->NN idea)) (6<->RB about) (6<->CC or) (6<->VB experience) (6<->PP (6<->IN with) (6<->NP (6<->JJ Japanese) (6<->NN cuisine)))))))) (6<->. .))||||Japanese cuisine<->0 179 | (6<->S (6<->NNP Suan) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ great) (6<->NN place)) (6<->SBAR (6<->WDT that) (6<->S (6<->PRP I) (6<->RB often) (6<->VP (6<->VBP take) (6<->NP (6<->NP (6<->PRP$ my) (6<->NNS friends)) (6<->-LRB- -LRB-) (6<->NNS classmates) (6<->-RRB- -RRB-)) (6<->RB too)))))) (6<->. .))||||Suan<->1 180 | (6<->S (6<->S (6<->NP (6<->PRP$ Its) (6<->NN location)) (6<->VP (6<->VBZ is) (6<->JJ good))) (6<->CC and) (6<->NP (6<->DT the) (6<->NN fact) (6<->SBAR (6<->IN that) (6<->S (6<->S (6<->NP (6<->NNP Hutner) (6<->NNP College)) (6<->VP (6<->VBZ is) (6<->JJ near))) (6<->CC and) (6<->S (6<->NP (6<->PRP$ their) (6<->NNS prices)) (6<->VP (6<->VBP are) (6<->ADJP (6<->RB very) (6<->JJ reasonable))))))) (6<->, ,) (6<->VP (6<->VBZ makes) (6<->S (6<->NNS students) (6<->VP (6<->VB go) (6<->PP (6<->RB back) (6<->PP (6<->IN to) (6<->NNP Suan))) (6<->ADVP (6<->RB again) (6<->CC and) (6<->RB again))))) (6<->. .))||||location<->1||||Suan<->1 181 | (6<->S (6<->PRP I) (6<->VP (6<->VBP LOVE) (6<->NP (6<->PRP$ their) (6<->NNP Thai))))||||Thai<->1 182 | (6<->S (6<->NP (6<->NNS noodles) (6<->PP (6<->IN with) (6<->NP (6<->NN shrimp) (6<->CC and) (6<->NN chicken) (6<->CC and) (6<->NP (6<->NN coconut) (6<->NN juice))))) (6<->VP (6<->VBZ is) (6<->NP (6<->DT the) (6<->NNP MUST))) (6<->. !))||||noodles with shrimp and chicken and coconut juice<->1 183 | (6<->S (6<->PRP I) (6<->VP (6<->MD will) (6<->VP (6<->VB go) (6<->RB back) (6<->PP (6<->IN to) (6<->NNP Suan)) (6<->RB soon))) (6<->. !))||||Suan<->1 184 | (6<->FRAG (6<->PP (6<->IN In) (6<->NN summer)) (6<->HYPH -) (6<->VB eat) (6<->RB outside) (6<->PP (6<->IN on) (6<->NP (6<->DT a) (6<->NN terrace))) (6<->-LRB- -LRB-) (6<->NP (6<->NP (6<->DT another) (6<->JJ great) (6<->NN feature)) (6<->PP (6<->IN of) (6<->NNP Suan))) (6<->-RRB- -RRB-) (6<->. !) (6<->. !) (6<->. !))||||terrace<->1 185 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->NN kind)) (6<->PP (6<->IN of) (6<->NN place)) (6<->S (6<->PRP you) (6<->VP (6<->MD 'd) (6<->VP (6<->VB like) (6<->VP (6<->TO to) (6<->VP (6<->VP (6<->VB take) (6<->NP (6<->DT all) (6<->PRP$ your) (6<->NNS friends)) (6<->IN to)) (6<->CC and) (6<->VP (6<->RB still) (6<->VB keep) (6<->NP (6<->DT a) (6<->NN secret)))))))))) (6<->. .))||||place<->1 186 | (6<->S (6<->NP (6<->DT The) (6<->NN setting)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ casual) (6<->CC and) (6<->JJ romantic))) (6<->. .))||||setting<->1 187 | (6<->S (6<->NNS Prices) (6<->VP (6<->VBP are) (6<->ADJP (6<->RB very) (6<->JJ good))) (6<->. .))||||NULL<->1 188 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->JJ excellent)) (6<->. !))||||food<->1 189 | (6<->S (6<->SBAR (6<->IN if) (6<->S (6<->PRP you) (6<->VP (6<->VBP 're) (6<->VBG daring)))) (6<->, ,) (6<->VP (6<->VB try) (6<->NP (6<->NP (6<->DT the) (6<->JJ balsamic) (6<->NN vinegar)) (6<->PP (6<->IN over) (6<->NN icecream)))) (6<->, ,) (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->JJ wonderful)) (6<->. !))||||balsamic vinegar over icecream<->1 190 | (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB pleasantly) (6<->VBN suprised))) (6<->. .))||||NULL<->1 191 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ exceptional)) (6<->. .))||||food<->1 192 | (6<->S (6<->PRP I) (6<->VP (6<->VBP choose) (6<->VP (6<->TO to) (6<->VP (6<->VB go) (6<->PP (6<->IN with) (6<->NP (6<->CD one) (6<->IN of) (6<->NP (6<->NP (6<->DT the) (6<->JJ special)) (6<->, ,) (6<->NP (6<->NP (6<->DT the) (6<->VBN braised) (6<->NN lamb) (6<->VBN shank)) (6<->PP (6<->IN in) (6<->NP (6<->JJ red) (6<->NN wine))) (6<->, ,) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBD was) (6<->JJ excellent)))))))))) (6<->. .))||||braised lamb shank in red wine<->1 193 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN service)) (6<->VP (6<->VBD was) (6<->JJ friendly))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN atmosphere)) (6<->VP (6<->VBD was) (6<->JJ casual))) (6<->. .))||||service<->1||||atmosphere<->2 194 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN restaurant)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->NP (6<->DT a) (6<->NN bit)) (6<->JJ noisy)))) (6<->CC but) (6<->S (6<->DT that) (6<->VP (6<->VBZ is) (6<->NP (6<->NN something) (6<->SBAR (6<->WDT that) (6<->VP (6<->MD can) (6<->VP (6<->VB be) (6<->VP (6<->VBN overlooked) (6<->SBAR (6<->IN once) (6<->S (6<->PRP you) (6<->VP (6<->VP (6<->VBP sit) (6<->RP down)) (6<->CC and) (6<->VP (6<->VB enjoy) (6<->NP (6<->DT a) (6<->JJ great) (6<->NN meal))))))))))))))||||meal<->1||||restaurant<->2 195 | (6<->S (6<->NP (6<->JJ Great) (6<->NNS bagels)) (6<->VP (6<->VBD made) (6<->NP (6<->DT the) (6<->JJ old) (6<->HYPH -) (6<->JJ fashioned) (6<->NN way))) (6<->. .))||||bagels<->1||||bagels<->1 196 | (6<->S (6<->NNS Drawbacks) (6<->: :) (6<->S (6<->S (6<->NN service) (6<->VP (6<->VBZ is) (6<->JJ slow))) (6<->CC and) (6<->S (6<->PRP they) (6<->VP (6<->VBP do) (6<->RB n't) (6<->VB toast)))) (6<->. !))||||service<->0 197 | (6<->NP (6<->JJ Fantastic) (6<->NN place) (6<->. .))||||place<->1 198 | (6<->ADJP (6<->ADJP (6<->JJ Cute) (6<->CC and) (6<->JJ decorative)) (6<->. .))||||NULL<->1 199 | (6<->NP (6<->DT A) (6<->JJ pleasant) (6<->NN surprise) (6<->. .))||||NULL<->1 200 | (6<->S (6<->VP (6<->VB Go) (6<->RB there) (6<->VP (6<->TO to) (6<->VP (6<->VB relax) (6<->CC and) (6<->VP (6<->VB feel) (6<->PP (6<->IN like) (6<->NP (6<->PRP$ your) (6<->RB somewhere) (6<->RB else))))))) (6<->. .))||||NULL<->1 201 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN shrimp) (6<->NN scampi)) (6<->VP (6<->VBD was) (6<->JJ excellent))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN antipasti)) (6<->VP (6<->VBD were) (6<->JJ plentiful))) (6<->. .))||||shrimp scampi<->1||||antipasti<->1 202 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ expensive) (6<->CC but) (6<->ADJP (6<->RB well) (6<->JJ worth) (6<->NP (6<->DT the) (6<->NN money))))) (6<->. .))||||NULL<->0||||NULL<->1 203 | (6<->S (6<->SBAR (6<->IN If) (6<->S (6<->PRP you) (6<->VP (6<->VP (6<->VBP venture) (6<->PP (6<->IN off) (6<->NP (6<->NP (6<->DT the) (6<->NN island)) (6<->PP (6<->IN of) (6<->NNP Manhattan))))) (6<->CC and) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VB seem) (6<->VP (6<->TO to) (6<->VP (6<->VB find) (6<->NP (6<->DT a) (6<->JJ great) (6<->JJ Italian) (6<->NN restaurant))))))))) (6<->, ,) (6<->VP (6<->VB drive) (6<->PP (6<->IN to) (6<->NNP Corona))) (6<->. .))||||Corona<->1 204 | (6<->S (6<->S (6<->PRP i) (6<->VP (6<->VB 've) (6<->VP (6<->VBN been) (6<->PP (6<->TO to) (6<->VB sapphire)) (6<->RB twice)))) (6<->CC and) (6<->S (6<->NP (6<->DT both) (6<->NNS times)) (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ fine) (6<->, ,) (6<->SBAR (6<->IN if) (6<->RB not) (6<->JJ good))))) (6<->. .))||||food<->1 205 | (6<->S (6<->VP (6<->VB stick) (6<->PP (6<->IN with) (6<->NP (6<->DT the) (6<->NN chicken) (6<->, ,) (6<->NN beef) (6<->, ,) (6<->CC and) (6<->NN lamb) (6<->NNS dishes)))) (6<->. .))||||chicken<->1||||beef<->1||||lamb dishes<->1 206 | (6<->S (6<->NN service) (6<->VP (6<->VP (6<->VBZ is) (6<->JJ friendly)) (6<->, ,) (6<->CC and) (6<->VP (6<->RB never) (6<->VBD had) (6<->NP (6<->NP (6<->DT a) (6<->NN problem)) (6<->VP (6<->VP (6<->VBG walking) (6<->IN in)) (6<->CC and) (6<->VP (6<->VBG getting) (6<->NP (6<->DT a) (6<->NN table))))))) (6<->. .))||||service<->1||||NULL<->1 207 | (6<->S (6<->VP (6<->NN skip) (6<->NN dessert)) (6<->. .))||||dessert<->0 208 | (6<->S (6<->VP (6<->VB go) (6<->RB here) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NNS drinks)))) (6<->. !))||||drinks<->1 209 | (6<->S (6<->NP (6<->DT the) (6<->NNS drinks)) (6<->VP (6<->VBP are) (6<->JJ amazing) (6<->CC and) (6<->ADVP (6<->RB half) (6<->RB off)) (6<->PP (6<->IN till) (6<->NP (6<->CD 8p) (6<->NN m)))) (6<->. .))||||drinks<->1||||drinks<->1 210 | (6<->S (6<->VP (6<->VB Ask) (6<->PP (6<->IN for) (6<->NP (6<->NNP Usha) (6<->, ,) (6<->NP (6<->NP (6<->DT the) (6<->JJS nicest) (6<->NN bartender)) (6<->PP (6<->IN in) (6<->NNP manhattan)))))) (6<->. .))||||Usha<->1 211 | (6<->S (6<->NP (6<->PRP$ My) (6<->NN fav)) (6<->VP (6<->VBD was) (6<->NP (6<->DT the) (6<->JJ sassy) (6<->NN lassi))) (6<->. ...))||||sassy lassi<->1 212 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN food)) (6<->RB here)) (6<->VP (6<->VBZ does) (6<->NP (6<->DT a) (6<->JJ great) (6<->NN service)) (6<->IN to) (6<->NP (6<->NP (6<->DT the) (6<->NN name)) (6<->-LRB- -LRB-) (6<->S (6<->NNP Cantonese) (6<->WDT that) (6<->VBZ is)) (6<->NFP ...) (6<->-RRB- -RRB-))) (6<->. .))||||food<->1 213 | (6<->S (6<->PRP I) (6<->VP (6<->VBD fell) (6<->PP (6<->IN in) (6<->NN love)) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->DT the) (6<->NN egg) (6<->NNS noodles)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN beef) (6<->NN broth))))) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->NN shrimp) (6<->NNS dumplings)) (6<->CC and) (6<->NP (6<->NNS slices) (6<->PP (6<->IN of) (6<->NP (6<->NNP BBQ) (6<->NN roast) (6<->NN pork))))))) (6<->. .))||||egg noodles in the beef broth with shrimp dumplings and slices of BBQ roast pork<->1 214 | (6<->S (6<->S (6<->NP (6<->DT This) (6<->NN dish)) (6<->VP (6<->VBZ is) (6<->NP (6<->PRP$ my) (6<->JJ favorite)))) (6<->CC and) (6<->S (6<->PRP I) (6<->RB always) (6<->VP (6<->VBP get) (6<->PRP it) (6<->SBAR (6<->WRB when) (6<->S (6<->PRP I) (6<->VP (6<->VP (6<->VBP go) (6<->RB there)) (6<->CC and) (6<->RB never) (6<->VP (6<->VB get) (6<->ADJP (6<->JJ tired) (6<->PP (6<->IN of) (6<->PRP it))))))))) (6<->. .))||||dish<->1 215 | (6<->S (6<->VP (6<->VB Try) (6<->NP (6<->NP (6<->NP (6<->DT the) (6<->NN congee)) (6<->CC and) (6<->NP (6<->DT the) (6<->NN donut))) (6<->PP (6<->IN like) (6<->NP (6<->NP (6<->JJ deep) (6<->VBN fried) (6<->NN dough)) (6<->S (6<->PRP they) (6<->VP (6<->VBP call) (6<->NP (6<->NP (6<->NNP Ow) (6<->NNP Ley) (6<->NNP Soh)) (6<->, ,) (6<->NP (6<->DT a) (6<->ADJP (6<->JJ delicious) (6<->CC and) (6<->JJ sweet)) (6<->VBG tasting) (6<->NN bread))))))))) (6<->. .))||||congee<->1||||Ow Ley Soh<->1 216 | (6<->NP (6<->RB Simply) (6<->DT some) (6<->JJ good) (6<->JJ tasting) (6<->JJ Chinese) (6<->NN food) (6<->PP (6<->IN at) (6<->NP (6<->JJ incredible) (6<->NNS prices))) (6<->. ...))||||Chinese food<->1||||Chinese food<->1 217 | (6<->S (6<->NN Service) (6<->VP (6<->VBZ is) (6<->RB not) (6<->SBAR (6<->WP what) (6<->S (6<->PRP you) (6<->VP (6<->VBP are) (6<->VP (6<->VBG coming) (6<->RB here) (6<->IN for)))))) (6<->. ...))||||Service<->0 218 | (6<->S (6<->NP (6<->NNP Big) (6<->NNP Wong)) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ great) (6<->NN place)) (6<->VP (6<->TO to) (6<->VP (6<->VB eat) (6<->CC and) (6<->VP (6<->VB fill) (6<->NP (6<->PRP$ your) (6<->NN stomach))))))) (6<->. .))||||Big Wong<->1 219 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP am) (6<->ADJP (6<->RB relatively) (6<->JJ new) (6<->PP (6<->IN to) (6<->NP (6<->DT the) (6<->NN area))))) (6<->CC and) (6<->VP (6<->VP (6<->VBD tried) (6<->VP (6<->VB Pick) (6<->NP (6<->DT a) (6<->NN bgel)) (6<->PP (6<->IN on) (6<->NN 2nd)))) (6<->CC and) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ disappointed) (6<->PP (6<->IN with) (6<->NP (6<->DT the) (6<->NN service))))))) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->VBD thought) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VP (6<->VBD was) (6<->VBN overated)) (6<->CC and) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->JJ pricey) (6<->NN side))))))) (6<->. .))||||service<->0||||food<->0||||food<->0 220 | (6<->S (6<->PRP I) (6<->VP (6<->VBP love) (6<->PRP it)) (6<->. .))||||NULL<->1 221 | (6<->S (6<->PRP I) (6<->VP (6<->VBP plan) (6<->PP (6<->IN on) (6<->VP (6<->VBG stopping) (6<->PP (6<->IN by) (6<->NP (6<->JJ next) (6<->NN week))) (6<->ADVP (6<->RB as) (6<->RB well))))) (6<->. .))||||NULL<->1 222 | (6<->S (6<->PRP I) (6<->VP (6<->VBD found) (6<->PRP it) (6<->PP (6<->IN on) (6<->NP (6<->NP (6<->DT a) (6<->JJ cold) (6<->NN night)) (6<->, ,) (6<->NP (6<->NP (6<->DT the) (6<->JJ perfect) (6<->NN spot)) (6<->VP (6<->TO to) (6<->VP (6<->VB warm) (6<->RP up))))))) (6<->. .))||||spot<->1 223 | (6<->S (6<->PRP I) (6<->VP (6<->VBD recieved) (6<->NP (6<->JJ prompt) (6<->NN service)) (6<->PP (6<->IN with) (6<->NP (6<->DT a) (6<->NN smile)))) (6<->. .))||||service<->1 224 | (6<->S (6<->PP (6<->IN To) (6<->PRP me)) (6<->PRP it) (6<->VP (6<->VBZ exemplifies) (6<->NNP Soho) (6<->, ,) (6<->JJ cute) (6<->, ,) (6<->JJ artsy) (6<->, ,) (6<->JJ interesting)) (6<->. .))||||NULL<->1 225 | (6<->S (6<->RB Definately) (6<->VP (6<->VB check) (6<->PRP it) (6<->RP out)) (6<->. !) (6<->. !) (6<->. !))||||NULL<->1 226 | (6<->S (6<->NP (6<->DT This) (6<->NN place)) (6<->VP (6<->VBD blew) (6<->PRP me) (6<->RB away) (6<->NFP ...) (6<->PP (6<->PP (6<->IN by) (6<->RB far)) (6<->NP (6<->NP (6<->PRP$ my) (6<->JJ new) (6<->JJ favorite) (6<->NN restaurant)) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->JJ uppereast) (6<->NN side)))))) (6<->. .))||||place<->1 227 | (6<->S (6<->NP (6<->DT The) (6<->NN wine) (6<->NN list)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ extensive) (6<->CC and) (6<->JJ impressive))) (6<->. .))||||wine list<->1 228 | (6<->S (6<->VP (6<->VB LOVE) (6<->NP (6<->DT the) (6<->NN atmosphere))) (6<->: -) (6<->VP (6<->VBD felt) (6<->SBAR (6<->IN like) (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->PP (6<->IN in) (6<->NNP Paris)))))) (6<->. .))||||atmosphere<->1 229 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NNS mussels)) (6<->VP (6<->VBD were) (6<->JJ fantastic))) (6<->CC and) (6<->SINV (6<->RB so) (6<->VBD was) (6<->NP (6<->NP (6<->DT the) (6<->NN dessert)) (6<->: ...) (6<->VP (6<->RB definitely) (6<->VBG going) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->RB back) (6<->ADVP (6<->RB very) (6<->RB soon))))))) (6<->. .))||||mussels<->1||||dessert<->1||||NULL<->1 230 | (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->VP (6<->TO to) (6<->VP (6<->VB say) (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->RB never) (6<->VP (6<->VBN had) (6<->NP (6<->DT a) (6<->VBG disapointing) (6<->NN meal)) (6<->RB here))))))) (6<->. .))||||meal<->1 231 | (6<->S (6<->PRP We) (6<->VP (6<->MD could) (6<->VP (6<->VB have) (6<->VP (6<->VBN made) (6<->NP (6<->DT a) (6<->NN meal)) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->JJ yummy) (6<->NNS dumplings))) (6<->PP (6<->IN from) (6<->NP (6<->DT the) (6<->VBG dumpling) (6<->NN menu)))))) (6<->. .))||||dumplings<->1 232 | (6<->S (6<->RB Luckily) (6<->PRP we) (6<->VP (6<->VBD saved) (6<->NP (6<->NN room) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NX (6<->NX (6<->NNP BBQ) (6<->NNP Salmon)) (6<->, ,) (6<->NP (6<->NNP Sea) (6<->NNP Bass)) (6<->CC and) (6<->NP (6<->NNP Crispy) (6<->NNP Duck))))))) (6<->. .))||||BBQ Salmon<->1||||Sea Bass<->1||||Crispy Duck<->1 233 | (6<->S (6<->NP (6<->DT The) (6<->JJ Cypriot) (6<->NN restaurant)) (6<->VP (6<->VBZ has) (6<->NP (6<->NP (6<->DT a) (6<->NN lot)) (6<->VP (6<->VBG going) (6<->PP (6<->IN for) (6<->PRP it))))) (6<->. .))||||Cypriot restaurant<->1 234 | (6<->S (6<->CC But) (6<->NP (6<->NP (6<->DT the) (6<->JJS best) (6<->NN pork) (6<->VBZ souvlaki)) (6<->S (6<->PRP I) (6<->RB ever) (6<->VBD had))) (6<->VP (6<->VBZ is) (6<->NP (6<->DT the) (6<->JJ main) (6<->NN thing))) (6<->. .))||||pork souvlaki<->1 235 | (6<->S (6<->VB Run) (6<->VP (6<->VBP do) (6<->RB n't) (6<->VB walk)) (6<->. .))||||NULL<->1 236 | (6<->FRAG (6<->NN Way) (6<->IN below) (6<->JJ average))||||NULL<->0 237 | (6<->S (6<->PRP I) (6<->VP (6<->VBP think) (6<->S (6<->NP (6<->DT the) (6<->NN pizza)) (6<->VP (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB so) (6<->JJ overrated))) (6<->CC and) (6<->VP (6<->VBD was) (6<->PP (6<->IN under) (6<->VBN cooked)))))) (6<->. .))||||pizza<->0 238 | (6<->SQ (6<->VP (6<->VBD Had) (6<->NP (6<->DT no) (6<->NN flavor))) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN staff)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ rude) (6<->CC and) (6<->RB not) (6<->JJ attentive)))) (6<->. .))||||staff<->0||||NULL<->0 239 | (6<->SQ (6<->MD Would) (6<->RB NEVER) (6<->VP (6<->VB go) (6<->RB back)))||||NULL<->0 240 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->CD one) (6<->PP (6<->IN of) (6<->NP (6<->PRP$ my) (6<->JJ favorite) (6<->NN spot)))) (6<->, ,) (6<->S (6<->ADJP (6<->ADJP (6<->RB very) (6<->VBG relaxing)) (6<->NP (6<->DT the) (6<->NN food))) (6<->VP (6<->VBZ is) (6<->JJ great) (6<->NP (6<->PDT all) (6<->DT the) (6<->NNS times)))) (6<->, ,) (6<->VBD celebrated) (6<->NP (6<->PRP$ my) (6<->NN engagement)) (6<->CC and) (6<->NP (6<->PRP$ my) (6<->NN wedding)) (6<->RB here) (6<->, ,) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB very) (6<->RB well) (6<->JJ organized))))) (6<->. .))||||NULL<->1||||NULL<->1||||food<->1||||NULL<->1 241 | (6<->S (6<->NP (6<->DT The) (6<->NN staff)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB very) (6<->JJ good))) (6<->. .))||||staff<->1 242 | (6<->S (6<->VP (6<->VB Love) (6<->NP (6<->PRP$ their) (6<->NN drink) (6<->NN menu))) (6<->. .))||||drink menu<->1 243 | (6<->S (6<->PRP I) (6<->VP (6<->RB highly) (6<->VBP recommend) (6<->NP (6<->DT this) (6<->JJ beautiful) (6<->NN place))) (6<->. .))||||place<->1||||place<->1 244 | (6<->S (6<->NP (6<->NNP Raymond) (6<->DT the) (6<->NN bartender)) (6<->NNS rocks) (6<->. !))||||Raymond<->1 245 | (6<->S (6<->NN Pacifico) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->JJ great) (6<->NN place)) (6<->VP (6<->TO to) (6<->VP (6<->RB casually) (6<->VB hang) (6<->RP out))))) (6<->. .))||||Pacifico<->1 246 | (6<->S (6<->NP (6<->DT The) (6<->NNS drinks)) (6<->VP (6<->VBP are) (6<->JJ great) (6<->, ,) (6<->SBAR (6<->RB especially) (6<->WRB when) (6<->VP (6<->VBN made) (6<->PP (6<->IN by) (6<->NNP Raymond))))) (6<->. .))||||drinks<->1||||Raymond<->1 247 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN omlette)) (6<->PP (6<->IN for) (6<->NN brunch))) (6<->VP (6<->VBZ is) (6<->JJ great)) (6<->. ...))||||omlette for brunch<->1 248 | (6<->S (6<->NP (6<->DT the) (6<->NN spinach)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ fresh) (6<->, ,) (6<->RB definately) (6<->RB not) (6<->JJ frozen))) (6<->. ...))||||spinach<->1 249 | (6<->S (6<->NP (6<->NN quacamole) (6<->PP (6<->IN at) (6<->NN pacifico))) (6<->VP (6<->VBZ is) (6<->JJ yummy) (6<->, ,) (6<->SBAR (6<->IN as) (6<->SINV (6<->VBP are) (6<->NP (6<->DT the) (6<->NNS wings)) (6<->PP (6<->IN with) (6<->NN chimmichuri))))) (6<->. .))||||quacamole<->1||||wings with chimmichuri<->1 250 | (6<->S (6<->NP (6<->DT A) (6<->NN weakness)) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->NN chicken)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NNS salads))))) (6<->. .))||||chicken in the salads<->0 251 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ 's) (6<->ADJP (6<->RB just) (6<->JJ average)) (6<->, ,) (6<->ADJP (6<->RB just) (6<->JJ shredded)) (6<->, ,) (6<->NP (6<->NP (6<->DT no) (6<->NN seasoning)) (6<->PP (6<->IN on) (6<->PRP it)))) (6<->. .))||||NULL<->0 252 | (6<->S (6<->RB Also) (6<->, ,) (6<->PRP I) (6<->RB personally) (6<->VP (6<->VBD was) (6<->RB n't) (6<->NP (6<->NP (6<->DT a) (6<->NN fan)) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->NN portobello) (6<->CC and) (6<->JJ asparagus) (6<->NN mole))))) (6<->. .))||||portobello and asparagus mole<->0 253 | (6<->FRAG (6<->JJ Overall) (6<->, ,) (6<->NP (6<->JJ decent) (6<->NN food)) (6<->PP (6<->IN at) (6<->NP (6<->DT a) (6<->JJ good) (6<->NN price))) (6<->, ,) (6<->PP (6<->IN with) (6<->NP (6<->JJ friendly) (6<->NNS people))) (6<->. .))||||food<->2||||food<->1||||people<->1 254 | (6<->ADJP (6<->JJ Impressed) (6<->. ...))||||NULL<->1 255 | (6<->NP (6<->JJ Subtle) (6<->NN food) (6<->CC and) (6<->NN service))||||food<->1||||service<->1 256 | (6<->S (6<->NP (6<->NN Noodle) (6<->NN pudding)) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->RB exactly) (6<->DT the) (6<->NN type)) (6<->PP (6<->IN of) (6<->NP (6<->NN service) (6<->CC and) (6<->NN food))) (6<->S (6<->PRP I) (6<->VBP enjoy)))) (6<->. .))||||service<->1||||food<->1 257 | (6<->S (6<->S (6<->NNS Servers) (6<->VP (6<->VBP are) (6<->RB all) (6<->JJ different))) (6<->, ,) (6<->S (6<->NNP Greg) (6<->VP (6<->VBZ is) (6<->NP (6<->PRP$ my) (6<->JJ favorite)))) (6<->. .))||||Greg<->1 258 | (6<->S (6<->S (6<->RB Sometimes) (6<->S (6<->NNS tables) (6<->VP (6<->VBP do) (6<->RB n't) (6<->VP (6<->VB understand) (6<->NP (6<->NP (6<->PRP$ his) (6<->NN sense)) (6<->PP (6<->IN of) (6<->NN humor))))))) (6<->CC but) (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->JJ refreshing) (6<->VP (6<->TO to) (6<->VP (6<->VB have) (6<->NP (6<->NP (6<->DT a) (6<->NN server)) (6<->SBAR (6<->WP who) (6<->VP (6<->VP (6<->VBZ has) (6<->NP (6<->NN personality) (6<->, ,) (6<->NN professionalism))) (6<->, ,) (6<->CC and) (6<->VP (6<->VBZ respects) (6<->NP (6<->NP (6<->DT the) (6<->NN privacy)) (6<->PP (6<->IN of) (6<->NP (6<->PRP$ your) (6<->NN dinner)))))))))))) (6<->. .))||||server<->1 259 | (6<->S (6<->DT This) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->JJ first) (6<->NN place)) (6<->PRP I) (6<->VB 've) (6<->VP (6<->VBN been) (6<->SBAR (6<->SBAR (6<->IN that) (6<->S (6<->NP (6<->DT a) (6<->NN runner)) (6<->VP (6<->VBZ remembers) (6<->NP (6<->PRP$ my) (6<->NN order))))) (6<->: ...) (6<->VP (6<->VBP hope) (6<->S (6<->PRP he) (6<->VP (6<->VBZ likes) (6<->NP (6<->PRP$ his) (6<->NN job)) (6<->SBAR (6<->IN because) (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->NP (6<->NP (6<->PDT half) (6<->DT a) (6<->NN mind)) (6<->VP (6<->TO to) (6<->VP (6<->VB steal) (6<->PRP him) (6<->PP (6<->IN for) (6<->NP (6<->PRP$ my) (6<->NN restaurant)))))))))))))))) (6<->. .))||||runner<->1 260 | (6<->S (6<->NNS Prices) (6<->VP (6<->VBP are) (6<->JJ fair) (6<->PP (6<->IN across) (6<->NP (6<->DT the) (6<->NN board))) (6<->PP (6<->IN for) (6<->NP (6<->DT both) (6<->NN food) (6<->CC and) (6<->NN bev)))) (6<->. .))||||food<->1||||bev<->1 261 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP go) (6<->RP out) (6<->VP (6<->TO to) (6<->VB eat)))) (6<->CC and) (6<->S (6<->VP (6<->VB like) (6<->NP (6<->PRP$ my) (6<->NNS courses))) (6<->, ,) (6<->NNS servers) (6<->VP (6<->VP (6<->VBP are) (6<->JJ patient)) (6<->CC and) (6<->VP (6<->RB never) (6<->VP (6<->VB rush) (6<->NNS courses)) (6<->CC or) (6<->VP (6<->VB force) (6<->NP (6<->DT another) (6<->NN drink)))))) (6<->. .))||||servers<->1 262 | (6<->S (6<->VBN Maggot) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN food))) (6<->. !))||||food<->0 263 | (6<->S (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN menu)) (6<->VP (6<->VBD looked) (6<->JJ great))) (6<->, ,) (6<->CC and) (6<->S (6<->NP (6<->DT the) (6<->NN waiter)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB very) (6<->JJ nice))))) (6<->, ,) (6<->CC but) (6<->S (6<->SBAR (6<->WRB when) (6<->S (6<->NP (6<->DT the) (6<->NN food)) (6<->VBD came))) (6<->, ,) (6<->PRP it) (6<->VP (6<->VBD was) (6<->JJ average))) (6<->. .))||||menu<->1||||waiter<->1||||food<->2 264 | (6<->S (6<->S (6<->RB Nevertheless) (6<->, ,) (6<->PRP I) (6<->VP (6<->VBD finished) (6<->NP (6<->PRP$ my) (6<->NN plate)))) (6<->, ,) (6<->CC and) (6<->S (6<->DT that) (6<->VP (6<->VBZ 's) (6<->SBAR (6<->WRB when) (6<->S (6<->PRP I) (6<->VP (6<->VBD found) (6<->NP (6<->DT a) (6<->NN maggot)) (6<->PP (6<->IN in) (6<->NP (6<->NN mushroom) (6<->NN sauce))) (6<->PP (6<->IN at) (6<->NP (6<->DT the) (6<->NN bottom)))))))) (6<->. .))||||mushroom sauce<->0 265 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD showed) (6<->PRP it) (6<->PP (6<->IN to) (6<->NP (6<->DT the) (6<->NN manager))))) (6<->, ,) (6<->CC and) (6<->S (6<->PRP he) (6<->VP (6<->VP (6<->VP (6<->RB smilingly) (6<->VBD apologized)) (6<->CC and) (6<->VP (6<->VBD brought) (6<->PRP us) (6<->NP (6<->CD two) (6<->JJ free) (6<->NNS desserts))) (6<->-LRB- -LRB-) (6<->CC but) (6<->VP (6<->VBD did) (6<->RB not) (6<->VP (6<->VB ask) (6<->PRP us) (6<->SBAR (6<->WP what) (6<->S (6<->PRP we) (6<->VBD wanted))))) (6<->CC and) (6<->VP (6<->RB so) (6<->VBD brought) (6<->NP (6<->NP (6<->DT the) (6<->JJ last) (6<->CD two) (6<->NNS desserts)) (6<->S (6<->PRP we) (6<->VP (6<->MD would) (6<->VP (6<->VB have) (6<->VP (6<->VBN asked) (6<->IN for)))))))) (6<->-RRB- -RRB-))) (6<->. .))||||manager<->1||||manager<->0 266 | (6<->S (6<->S (6<->SBAR (6<->WRB When) (6<->S (6<->NP (6<->DT the) (6<->NN bill)) (6<->VBD came))) (6<->, ,) (6<->S (6<->NN nothing) (6<->VP (6<->VBD was) (6<->VBN comped)))) (6<->, ,) (6<->CC so) (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD told) (6<->NP (6<->DT the) (6<->NN manager)) (6<->ADVP (6<->RB very) (6<->RB politely)) (6<->SBAR (6<->IN that) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->ADJP (6<->JJ willing) (6<->VP (6<->TO to) (6<->VP (6<->VB pay) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NN wine))))))))))) (6<->, ,) (6<->CC but) (6<->S (6<->PRP I) (6<->VP (6<->VBD did) (6<->RB n't) (6<->VP (6<->VB think) (6<->S (6<->PRP I) (6<->VP (6<->MD should) (6<->VP (6<->VB have) (6<->VP (6<->TO to) (6<->VP (6<->VB pay) (6<->PP (6<->IN for) (6<->NP (6<->NN food) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->DT a) (6<->NN maggot)) (6<->PP (6<->IN in) (6<->PRP it))))))))))))))) (6<->. .))||||NULL<->0 267 | (6<->S (6<->NP (6<->DT The) (6<->NN manager)) (6<->RB finally) (6<->VP (6<->VBD said) (6<->S (6<->PRP he) (6<->VP (6<->MD would) (6<->VP (6<->VP (6<->VB comp) (6<->NP (6<->NP (6<->DT the) (6<->CD two) (6<->NNS glasses)) (6<->PP (6<->IN of) (6<->NN wine)) (6<->-LRB- -LRB-) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBP cost) (6<->NP (6<->JJR less) (6<->PP (6<->IN than) (6<->NP (6<->DT the) (6<->NN food)))))) (6<->-RRB- -RRB-))) (6<->, ,) (6<->CC and) (6<->VP (6<->VBD made) (6<->S (6<->PRP it) (6<->VP (6<->VB seem) (6<->PP (6<->IN like) (6<->NP (6<->DT a) (6<->JJ big) (6<->NN concession)))))))))) (6<->. .))||||manager<->0 268 | (6<->S (6<->PRP We) (6<->VP (6<->VBD paid) (6<->CC and) (6<->VBD left) (6<->SBAR (6<->IN because) (6<->S (6<->PRP we) (6<->VP (6<->VBD did) (6<->RB n't) (6<->VP (6<->VB feel) (6<->PP (6<->IN like) (6<->VP (6<->VBG arguing) (6<->NP (6<->DT any) (6<->RBR more))))))))) (6<->. .))||||NULL<->0 269 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->VP (6<->VP (6<->VBN worked) (6<->PP (6<->IN in) (6<->NNS restaurants))) (6<->CC and) (6<->VP (6<->VB cook) (6<->NP (6<->DT a) (6<->NN lot)))))) (6<->, ,) (6<->CC and) (6<->S (6<->EX there) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT no) (6<->NN way)) (6<->S (6<->NP (6<->DT a) (6<->NN maggot)) (6<->VP (6<->MD should) (6<->VP (6<->VB be) (6<->ADJP (6<->JJ able) (6<->VP (6<->TO to) (6<->VP (6<->VB get) (6<->PP (6<->IN into) (6<->NP (6<->ADJP (6<->RB well) (6<->JJ prepared)) (6<->NN food)))))))))))) (6<->. .))||||food<->0 270 | (6<->S (6<->PP (6<->IN For) (6<->NP (6<->NP (6<->NP (6<->DT a) (6<->NN restaurant)) (6<->PP (6<->IN with) (6<->NP (6<->PDT such) (6<->DT a) (6<->JJ good) (6<->NN reputation)))) (6<->CC and) (6<->SBAR (6<->DT that) (6<->VP (6<->VBZ is) (6<->RB usually) (6<->ADJP (6<->RB so) (6<->JJ packed)))))) (6<->, ,) (6<->EX there) (6<->VP (6<->VBD was) (6<->NP (6<->NP (6<->DT no) (6<->NN reason)) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->PDT such) (6<->DT a) (6<->NN lack)) (6<->PP (6<->IN of) (6<->NP (6<->JJ intelligent) (6<->NN customer) (6<->NN service))))))) (6<->. .))||||restaurant<->1||||customer service<->0 271 | (6<->NN Unhygienic)||||NULL<->0 272 | (6<->S (6<->PRP I) (6<->VP (6<->VBP do) (6<->RB not) (6<->VB recommend)) (6<->. .))||||NULL<->0 273 | (6<->S (6<->PRP I) (6<->VP (6<->VBD got) (6<->NN hair) (6<->IN in) (6<->NP (6<->PRP$ my) (6<->NN food)) (6<->NP (6<->NP (6<->CD 2) (6<->NNS times)) (6<->PP (6<->IN of) (6<->RB then)))) (6<->. !))||||food<->0 274 | (6<->NP (6<->NP (6<->NP (6<->NNP Patsy) (6<->POS 's)) (6<->NN Pizza)) (6<->SYM =) (6<->NP (6<->JJ true) (6<->NN love)))||||Patsy 's Pizza<->1 275 | (6<->S (6<->NNS Hands) (6<->IN down) (6<->NP (6<->NP (6<->DT the) (6<->JJS best) (6<->NN pizza)) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->NN planet)))) (6<->. .))||||pizza<->1 276 | (6<->S (6<->PP (6<->IN In) (6<->NP (6<->QP (6<->RB about) (6<->CD 12)) (6<->NNS minutes))) (6<->, ,) (6<->NP (6<->DT the) (6<->NN thing)) (6<->VP (6<->VBZ is) (6<->VBN gone)) (6<->. .))||||NULL<->1 277 | (6<->FRAG (6<->CC But) (6<->NP (6<->$ $) (6<->CD 500)) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->DT a) (6<->NN dinner)) (6<->PP (6<->IN for) (6<->CD two)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD did) (6<->RB n't) (6<->VP (6<->VB include) (6<->NNP Wine)))))) (6<->. ?))||||dinner for two<->0 278 | (6<->S (6<->VB Look) (6<->, ,) (6<->NP (6<->DT the) (6<->NNS appetizers)) (6<->VP (6<->VBD were) (6<->ADJP (6<->RB really) (6<->JJ good))) (6<->. .))||||appetizers<->1 279 | (6<->S (6<->NP (6<->DT The) (6<->NN entree)) (6<->VP (6<->VBD was) (6<->RB also) (6<->ADJP (6<->RB very) (6<->JJ good))) (6<->. .))||||entree<->1 280 | (6<->S (6<->S (6<->MD Ca) (6<->RB n't) (6<->VP (6<->VB argue) (6<->PP (6<->IN about) (6<->DT that)))) (6<->, ,) (6<->CC but) (6<->S (6<->PRP they) (6<->VP (6<->VBP are) (6<->RB clearly) (6<->ADJP (6<->RB over) (6<->VBN priced)))) (6<->. .))||||NULL<->0 281 | (6<->S (6<->SBAR (6<->WP What) (6<->S (6<->PRP you) (6<->VP (6<->VBP are) (6<->VP (6<->VBG paying) (6<->IN for))))) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->NN environment)) (6<->CC and) (6<->NP (6<->DT the) (6<->NN name)))) (6<->. .))||||environment<->2||||NULL<->2||||NULL<->0 282 | (6<->S (6<->S (6<->UH Yes) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN place)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ classy) (6<->CC and) (6<->JJ beautiful))))) (6<->, ,) (6<->CC but) (6<->S (6<->PRP they) (6<->ADVP (6<->RBS most) (6<->RB certainly)) (6<->VP (6<->VBP target) (6<->NP (6<->NP (6<->NP (6<->DT the) (6<->NN uber) (6<->NN whealthy)) (6<->RB Not) (6<->NP (6<->DT the) (6<->JJ common) (6<->NN joe))) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBZ wants) (6<->VP (6<->TO to) (6<->VP (6<->VB go) (6<->ADVP (6<->RB all) (6<->RB out)) (6<->NP (6<->DT every) (6<->RB once)) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->NN while)))))))))) (6<->. .))||||place<->1||||place<->0 283 | (6<->SBAR (6<->WHNP (6<->WDT Which) (6<->PP (6<->IN of) (6<->NN course))) (6<->VP (6<->VBZ is) (6<->RB not) (6<->NP (6<->NP (6<->JJ real) (6<->NNP Kobe)) (6<->CC but) (6<->NP (6<->NNP Wagyu) (6<->NN beef)))) (6<->. .))||||NULL<->0 284 | (6<->FRAG (6<->JJ Surprised) (6<->SBAR (6<->IN that) (6<->S (6<->NP (6<->NP (6<->DT a) (6<->NN place)) (6<->PP (6<->IN of) (6<->NP (6<->DT this) (6<->NN caliber)))) (6<->VP (6<->MD would) (6<->VP (6<->VB advertise) (6<->PRP it) (6<->PP (6<->IN as) (6<->NNP Kobe)))))) (6<->. .))||||NULL<->0 285 | (6<->S (6<->NNP Vanison) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ good) (6<->CC but) (6<->RB not) (6<->JJ amazing))) (6<->. .))||||Vanison<->2 286 | (6<->S (6<->NNP Bison) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB quite) (6<->JJ excellent)) (6<->RB however)) (6<->. .))||||Bison<->1 287 | (6<->NP (6<->NNP Dessert) (6<->: :) (6<->NP (6<->JJ pure) (6<->NN disaster)) (6<->. .))||||Dessert<->0 288 | (6<->FRAG (6<->RB Just) (6<->RB not) (6<->JJ good) (6<->ADVP (6<->RB at) (6<->RB all)) (6<->. .))||||NULL<->0 289 | (6<->S (6<->NP (6<->DT Some) (6<->NNP Pineapple)) (6<->VP (6<->VBD covered) (6<->PP (6<->IN in) (6<->NP (6<->NP (6<->DT a) (6<->NN glaze)) (6<->PP (6<->IN of) (6<->NP (6<->DT some) (6<->NN kind)))))) (6<->CC and) (6<->S (6<->NP (6<->DT some) (6<->NN pear) (6<->JJ tart) (6<->NN thing)) (6<->RB Not) (6<->JJ impressive) (6<->ADVP (6<->RB at) (6<->RB all))) (6<->. .))||||NULL<->0||||NULL<->0 290 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP read) (6<->NNS reviews) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD called) (6<->S (6<->NP (6<->DT the) (6<->NN restaurant)) (6<->ADJP (6<->RB too) (6<->JJ expensive))))))) (6<->CC and) (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD thought) (6<->PP (6<->IN to) (6<->PRP myself)))) (6<->, ,) (6<->CC but) (6<->VP (6<->MD may) (6<->VP (6<->VB be) (6<->S (6<->PRP it) (6<->VP (6<->VBZ is) (6<->ADJP (6<->JJ worth) (6<->PRP it))))))) (6<->. .))||||restaurant<->0||||restaurant<->0 291 | (6<->S (6<->S (6<->S (6<->NP (6<->DT The) (6<->NNP Four) (6<->NNPS Seasons)) (6<->VP (6<->VBZ has) (6<->NN history))) (6<->CC and) (6<->S (6<->PRP it) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT a) (6<->NN sort)) (6<->PP (6<->IN of) (6<->NP (6<->NN landmark) (6<->PP (6<->IN of) (6<->NP (6<->NNP New) (6<->NNP York) (6<->NNP City) (6<->NNS restaurants))))))))) (6<->, ,) (6<->CC but) (6<->S (6<->VP (6<->VB trust) (6<->PRP me)) (6<->, ,) (6<->PRP they) (6<->VP (6<->MD will) (6<->VP (6<->VB charge) (6<->PRP you) (6<->PP (6<->IN through) (6<->NP (6<->DT the) (6<->NN nose))) (6<->SBAR (6<->RB just) (6<->IN so) (6<->IN that) (6<->S (6<->PRP you) (6<->VP (6<->MD can) (6<->VP (6<->VB say) (6<->SBAR (6<->`` ") (6<->S (6<->PRP I) (6<->VP (6<->VB 've) (6<->VP (6<->VBN been) (6<->PP (6<->PP (6<->IN to) (6<->NP (6<->DT the) (6<->CD four) (6<->NNS seasons) (6<->NN restaurant))) (6<->'' "))))))))))))) (6<->. .))||||The Four Seasons<->2||||The Four Seasons<->0 292 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBD wanted) (6<->TO to) (6<->VP (6<->VP (6<->VB go) (6<->RB there)) (6<->VP (6<->TO to) (6<->VP (6<->VB see) (6<->SBAR (6<->IN if) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->ADJP (6<->JJ worth) (6<->PRP it)))))))))) (6<->CC and) (6<->S (6<->RB sadly) (6<->, ,) (6<->S (6<->NN curiousity) (6<->VP (6<->VBD got) (6<->NP (6<->NP (6<->DT the) (6<->JJS best)) (6<->PP (6<->IN of) (6<->PRP me))))) (6<->CC and) (6<->S (6<->PRP I) (6<->VP (6<->VBD paid) (6<->RB dearly) (6<->PP (6<->IN for) (6<->PRP it))))) (6<->. .))||||NULL<->0||||NULL<->0 293 | (6<->S (6<->NP (6<->DT All) (6<->PP (6<->IN in) (6<->DT all))) (6<->, ,) (6<->NP (6<->DT the) (6<->NN food)) (6<->VP (6<->VBD was) (6<->JJ great) (6<->-LRB- -LRB-) (6<->PP (6<->IN except) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NNS dessserts)))) (6<->-RRB- -RRB-)) (6<->. .))||||food<->1||||dessserts<->0 294 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN environment)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->RB very) (6<->JJ upscale)))) (6<->CC and) (6<->S (6<->PRP you) (6<->VP (6<->MD will) (6<->VP (6<->VB see) (6<->NP (6<->NP (6<->DT a) (6<->NN lot)) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->JJ rich) (6<->NNS guys)) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->NN trophy) (6<->NNS wives)) (6<->CC or) (6<->NP (6<->RB just) (6<->ADJP (6<->RB highly) (6<->VBN paid)) (6<->NNS escorts)))))))))) (6<->. .))||||environment<->2||||NULL<->2 295 | (6<->S (6<->SBAR (6<->IN If) (6<->S (6<->PRP you) (6<->VP (6<->VBP are) (6<->VP (6<->VBG going) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->NN food))))))) (6<->, ,) (6<->PRP it) (6<->VP (6<->MD will) (6<->RB not) (6<->VP (6<->VB be) (6<->ADJP (6<->JJ worth) (6<->PRP it)))) (6<->. .))||||food<->0 296 | (6<->S (6<->PRP You) (6<->VP (6<->MD would) (6<->VP (6<->VB think) (6<->S (6<->S (6<->PRP they) (6<->VP (6<->MD would) (6<->VP (6<->VB make) (6<->RP up) (6<->PP (6<->PP (6<->IN for) (6<->PRP it)) (6<->PP (6<->IN with) (6<->NN service)))))) (6<->, ,) (6<->RB sadly) (6<->, ,) (6<->UH no)))) (6<->. .))||||service<->0 297 | (6<->S (6<->S (6<->NN Service) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB just) (6<->JJ ok)))) (6<->, ,) (6<->S (6<->PRP it) (6<->VP (6<->VBZ is) (6<->RB not) (6<->SBAR (6<->WP what) (6<->S (6<->PRP you) (6<->VP (6<->MD 'd) (6<->VP (6<->VB expect) (6<->PP (6<->IN for) (6<->NP (6<->$ $) (6<->CD 500))))))))) (6<->. .))||||Service<->0||||NULL<->0 298 | (6<->NP (6<->JJ Great) (6<->JJ Indian) (6<->NN food))||||Indian food<->1 299 | (6<->S (6<->S (6<->S (6<->NN Food) (6<->VP (6<->VBD was) (6<->JJ amazing))) (6<->: -) (6<->S (6<->PRP I) (6<->VP (6<->VP (6<->VBP love) (6<->NP (6<->JJ Indian) (6<->NN food))) (6<->CC and) (6<->VP (6<->VB eat) (6<->PRP it) (6<->ADVP (6<->RB quite) (6<->RB regularly)))))) (6<->, ,) (6<->CC but) (6<->S (6<->PRP I) (6<->VP (6<->MD can) (6<->VP (6<->VB say) (6<->S (6<->DT this) (6<->VP (6<->VBZ is) (6<->NP (6<->CD one) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->DT the) (6<->JJS best)) (6<->S (6<->PRP I) (6<->VP (6<->VB 've) (6<->VBN had))))))))))) (6<->. .))||||Food<->1 300 | (6<->FRAG (6<->NP (6<->NP (6<->RB Very) (6<->`` ") (6<->JJ normal) (6<->JJ Indian) (6<->NN food)) (6<->'' ")) (6<->, ,) (6<->CC but) (6<->VP (6<->VBN done) (6<->ADVP (6<->RB really) (6<->RB well))) (6<->. .))||||Indian food<->2||||Indian food<->1 301 | (6<->S (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->PRP it) (6<->NP (6<->DT a) (6<->CD 4)) (6<->PP (6<->RB instead) (6<->IN of) (6<->CD 5)) (6<->IN because) (6<->IN of) (6<->NP (6<->DT the) (6<->NN price)) (6<->PRN (6<->-LRB- -LRB-) (6<->NP (6<->NP (6<->RB just) (6<->NN chicken) (6<->NN tikka) (6<->NN masala)) (6<->: -) (6<->NP (6<->NP (6<->DT no) (6<->NN bread)) (6<->PP (6<->IN of) (6<->NN rice))) (6<->HYPH -)) (6<->VBZ is) (6<->NP (6<->$ $) (6<->CD 25)) (6<->-RRB- -RRB-)) (6<->, ,) (6<->SBAR (6<->WDT which) (6<->S (6<->PRP I) (6<->VP (6<->MD would) (6<->VP (6<->VB expect) (6<->PP (6<->IN at) (6<->NP (6<->DT a) (6<->JJ upscale) (6<->JJ Indian) (6<->NN restaurant))))))))) (6<->CC but) (6<->S (6<->NP (6<->DT this) (6<->NN place)) (6<->VP (6<->VBZ does) (6<->RB n't) (6<->VP (6<->VB have) (6<->NP (6<->DT an) (6<->JJ upscale) (6<->NN feel))))) (6<->. .))||||place<->1||||place<->0||||chicken tikka masala<->0||||feel<->0 302 | (6<->S (6<->RB Also) (6<->, ,) (6<->NNS waiters) (6<->VP (6<->VP (6<->VBP try) (6<->VP (6<->TO to) (6<->VP (6<->VB push) (6<->NP (6<->JJR more) (6<->NN food)) (6<->PP (6<->IN on) (6<->PRP you))))) (6<->, ,) (6<->VP (6<->UH like) (6<->VP (6<->VB suggest) (6<->NNS things) (6<->SBAR (6<->IN as) (6<->IN if) (6<->S (6<->S (6<->PRP they) (6<->VP (6<->VBP are) (6<->JJ complimentary))) (6<->SBAR (6<->WRB when) (6<->S (6<->PRP they) (6<->RB actually) (6<->VP (6<->VBD cost) (6<->$ $))))))))) (6<->. .))||||waiters<->0 303 | (6<->S (6<->PRP I) (6<->VP (6<->VBP do) (6<->RB n't) (6<->VP (6<->VB appreciate) (6<->NP (6<->NP (6<->NP (6<->NNS places) (6<->CC or) (6<->NNS people)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBP try) (6<->VP (6<->TO to) (6<->VP (6<->VB drive) (6<->RP up) (6<->NP (6<->DT the) (6<->NN bill)) (6<->PP (6<->IN without) (6<->NP (6<->NP (6<->DT the) (6<->NN patron) (6<->POS 's)) (6<->NN knowledge)))))))) (6<->IN so) (6<->S (6<->DT that) (6<->VP (6<->VBD was) (6<->NP (6<->NP (6<->DT a) (6<->JJ huge) (6<->NN turnoff)) (6<->-LRB- -LRB-) (6<->NP (6<->JJR more) (6<->PP (6<->IN than) (6<->NP (6<->DT the) (6<->NN price)))) (6<->-RRB- -RRB-))))))) (6<->. .))||||NULL<->0||||NULL<->0 304 | (6<->S (6<->CC But) (6<->SBAR (6<->IN if) (6<->S (6<->PRP you) (6<->VP (6<->VBP 're) (6<->ADJP (6<->JJ prepared) (6<->VP (6<->TO to) (6<->VP (6<->VB spend) (6<->NP (6<->NP (6<->DT some) (6<->$ $)) (6<->CC and) (6<->VB remember)) (6<->VP (6<->TO to) (6<->VP (6<->VB ask) (6<->SBAR (6<->IN if) (6<->S (6<->NP (6<->NN something) (6<->S (6<->PRP they) (6<->VBP offer))) (6<->VP (6<->VBZ is) (6<->JJ complimentary)))))))))))) (6<->, ,) (6<->RB then) (6<->DT this) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->NN place)) (6<->VP (6<->TO to) (6<->VP (6<->VB go) (6<->PP (6<->IN for) (6<->NP (6<->JJ Indian) (6<->NN food))))))))||||Indian food<->1||||place<->0 305 | (6<->ADJP (6<->JJ Wretched) (6<->CC and) (6<->VBG retching))||||NULL<->0 306 | (6<->S (6<->PRP I) (6<->VP (6<->VBP have) (6<->RB never) (6<->VP (6<->VBN been) (6<->VP (6<->RB so) (6<->VBN disgusted) (6<->PP (6<->IN by) (6<->NP (6<->DT both) (6<->NN food) (6<->NP (6<->DT an) (6<->NN service))))))) (6<->. .))||||food<->0||||service<->0 307 | (6<->S (6<->PP (6<->IN For) (6<->NNS starters)) (6<->PRP they) (6<->VP (6<->VBD delivered) (6<->PRP us) (6<->NP (6<->NP (6<->NN someone) (6<->RB else) (6<->POS 's)) (6<->NN order))) (6<->. .))||||NULL<->0 308 | (6<->S (6<->RB However) (6<->, ,) (6<->SBAR (6<->IN once) (6<->S (6<->PRP I) (6<->VP (6<->VBD received) (6<->NP (6<->NP (6<->PRP$ my) (6<->ADJP (6<->RB predictably) (6<->JJ mediocre)) (6<->NN order)) (6<->PP (6<->IN of) (6<->SBAR (6<->WP what) (6<->S (6<->NNP Dokebi) (6<->VP (6<->VBZ thinks) (6<->VP (6<->VBZ passes) (6<->PP (6<->IN as) (6<->NP (6<->JJ Korean) (6<->NN fair)))))))))))) (6<->, ,) (6<->-LRB- -LRB-) (6<->S (6<->RB sometimes) (6<->PRP you) (6<->VBP have) (6<->VP (6<->TO to) (6<->VP (6<->VB settle) (6<->SBAR (6<->WRB when) (6<->S (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->NP (6<->PRP$ your) (6<->JJ only) (6<->NN option)))))))) (6<->-RRB- -RRB-) (6<->, ,) (6<->PRP I) (6<->VP (6<->VBD got) (6<->RP through) (6<->NP (6<->QP (6<->IN about) (6<->PDT half)) (6<->PRP$ my) (6<->NN kimchee)) (6<->SBAR (6<->IN before) (6<->S (6<->PRP I) (6<->VP (6<->VBD found) (6<->NP (6<->NP (6<->DT a) (6<->NN piece)) (6<->PP (6<->IN of) (6<->NP (6<->JJ random) (6<->NN lettuce))) (6<->VP (6<->VBN accompanied) (6<->PP (6<->IN by) (6<->NP (6<->NP (6<->DT a) (6<->ADJP (6<->RB far) (6<->RBR more) (6<->JJ disgusting)) (6<->, ,) (6<->JJ slimy) (6<->, ,) (6<->ADJP (6<->RB clearly) (6<->JJ bad)) (6<->NN piece)) (6<->PP (6<->IN of) (6<->NP (6<->NN fish) (6<->NN skin))))))))))) (6<->. .))||||kimchee<->0||||Korean fair<->0 309 | (6<->S (6<->S (6<->NP (6<->PRP$ My) (6<->JJ main) (6<->NN concern)) (6<->VP (6<->VBD was) (6<->NP (6<->NP (6<->DT the) (6<->NN sanity)) (6<->PP (6<->IN of) (6<->NP (6<->NP (6<->DT the) (6<->NN food)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD was) (6<->VP (6<->VBG being) (6<->VP (6<->VBN sent) (6<->RP out) (6<->PP (6<->IN to) (6<->NP (6<->PRP myself) (6<->CC and) (6<->NNS others)))))))))))) (6<->, ,) (6<->CC but) (6<->S (6<->S (6<->PRP I) (6<->VP (6<->MD would) (6<->VP (6<->VB be) (6<->VBG lying)))) (6<->VP (6<->VBZ is) (6<->S (6<->PRP I) (6<->VP (6<->VBD said) (6<->SBAR (6<->IN that) (6<->S (6<->PP (6<->IN as) (6<->NP (6<->NN someone) (6<->SBAR (6<->WP who) (6<->VP (6<->VBZ has) (6<->VP (6<->VBN worked) (6<->PP (6<->IN in) (6<->NNS restaurants)) (6<->PP (6<->IN since) (6<->NP (6<->NP (6<->DT the) (6<->NN age)) (6<->PP (6<->IN of) (6<->CD fifteen))))))))) (6<->PRP I) (6<->VP (6<->VBD was) (6<->VP (6<->VBG expecting) (6<->NP (6<->ADVP (6<->IN at) (6<->JJS least)) (6<->DT a) (6<->JJ minimal) (6<->NN effort)) (6<->PP (6<->IN on) (6<->NP (6<->NP (6<->DT the) (6<->NN part)) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->NN restaurant))))) (6<->VP (6<->TO to) (6<->VP (6<->VB amend) (6<->NP (6<->DT the) (6<->NN situation)))))))))))) (6<->. .))||||food<->0||||NULL<->0 310 | (6<->S (6<->S (6<->NN None) (6<->VP (6<->VBD was) (6<->VBN made))) (6<->IN so) (6<->S (6<->PRP i) (6<->VP (6<->VBD hung) (6<->RP up))) (6<->. .))||||NULL<->0 311 | (6<->S (6<->NP (6<->QP (6<->JJR Less) (6<->IN than) (6<->CD three)) (6<->NNS minutes)) (6<->VBN passed) (6<->SBAR (6<->IN before) (6<->S (6<->PRP I) (6<->VP (6<->VBD found) (6<->S (6<->PRP myself) (6<->VP (6<->VBD doubled) (6<->PP (6<->IN over) (6<->NP (6<->DT the) (6<->NN toilet)))))))) (6<->. .))||||NULL<->0 312 | (6<->S (6<->NP (6<->PRP$ My) (6<->NN girlfriend)) (6<->, ,) (6<->VP (6<->VP (6<->VBG being) (6<->ADJP (6<->RB slightly) (6<->RBR more) (6<->JJ aggressive))) (6<->, ,) (6<->CC and) (6<->VP (6<->VBG having) (6<->VP (6<->VBN been) (6<->ADJP (6<->RB equally) (6<->VBN disgusted)) (6<->VP (6<->VBG causing) (6<->S (6<->PRP her) (6<->VP (6<->TO to) (6<->VP (6<->VB throw) (6<->RP out) (6<->NP (6<->NP (6<->DT the) (6<->NN remainder)) (6<->PP (6<->IN of) (6<->NP (6<->PRP$ her) (6<->ADJP (6<->RB barely) (6<->VBN eaten)) (6<->NN meal))))))))))) (6<->, ,) (6<->VP (6<->VP (6<->VBN called) (6<->RB back)) (6<->SBAR (6<->RB only) (6<->VP (6<->TO to) (6<->VP (6<->VB be) (6<->VP (6<->VBN informed) (6<->SBAR (6<->SBAR (6<->SBAR (6<->IN that) (6<->S (6<->PRP I) (6<->VP (6<->VBD was) (6<->RB probably) (6<->JJ wrong)))) (6<->CC and) (6<->SBAR (6<->IN that) (6<->S (6<->PRP it) (6<->VP (6<->VBD was) (6<->ADVP (6<->RBS most) (6<->JJ likely)) (6<->NP (6<->DT an) (6<->NN oyster)))))) (6<->, ,) (6<->CC and) (6<->SBAR (6<->IN that) (6<->S (6<->PRP we) (6<->VP (6<->VBD were) (6<->RB also) (6<->VP (6<->VBN blacklisted) (6<->PP (6<->IN from) (6<->NP (6<->PRP$ their) (6<->NN restaurant))))))))))))) (6<->. .))||||meal<->0||||NULL<->0 313 | (6<->S (6<->S (6<->PRP It) (6<->VP (6<->VBD was) (6<->RB n't) (6<->SBAR (6<->IN as) (6<->SBAR (6<->IN if) (6<->S (6<->NP (6<->DT this) (6<->NN restaurant)) (6<->VP (6<->VBD had) (6<->NP (6<->DT any) (6<->JJ major) (6<->NN bragging) (6<->NNS points)) (6<->PP (6<->IN before) (6<->NN hand)))))))) (6<->, ,) (6<->CC but) (6<->S (6<->RB now) (6<->PRP it) (6<->VP (6<->VBZ 's) (6<->ADJP (6<->RB simply) (6<->JJ repulsive)))) (6<->. .))||||restaurant<->0 314 | (6<->S (6<->VP (6<->VB Eat) (6<->PP (6<->IN at) (6<->NP (6<->PRP$ your) (6<->JJ own) (6<->NN risk)))) (6<->. .))||||NULL<->0 315 | (6<->S (6<->NP (6<->DT The) (6<->JJ hot) (6<->NNS dogs)) (6<->VBP are) (6<->JJ good) (6<->, ,) (6<->UH yes) (6<->, ,) (6<->CC but) (6<->S (6<->NP (6<->NP (6<->DT the) (6<->NN reason)) (6<->VP (6<->TO to) (6<->VP (6<->VB get) (6<->RP over) (6<->RB here)))) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT the) (6<->JJ fantastic) (6<->NN pork) (6<->NN croquette) (6<->NN sandwich)) (6<->, ,) (6<->ADJP (6<->JJ perfect) (6<->PP (6<->IN on) (6<->NP (6<->PRP$ its) (6<->NN supermarket) (6<->NN squishy) (6<->NN bun))))))) (6<->. .))||||hot dogs<->1||||pork croquette sandwich<->1||||bun<->1 316 | (6<->NP (6<->NP (6<->NNP Single) (6<->NNP Worst) (6<->NNP Restaurant)) (6<->PP (6<->IN in) (6<->NNP Manhattan)))||||Restaurant<->0 317 | (6<->S (6<->PRP I) (6<->VP (6<->MD 'll) (6<->VP (6<->VBG being) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->NP (6<->DT a) (6<->NN couple)) (6<->PP (6<->IN of) (6<->NNS positives))) (6<->: :) (6<->NP (6<->NP (6<->JJ cool) (6<->NN decor)) (6<->, ,) (6<->NP (6<->JJ good) (6<->NN pita) (6<->CC and) (6<->NN hummus)) (6<->, ,) (6<->CC and) (6<->NP (6<->NP (6<->VBN grilled) (6<->NN octopus)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD was) (6<->RB actually) (6<->ADJP (6<->RB pretty) (6<->JJ tasty)))))))))) (6<->. .))||||decor<->1||||pita<->1||||hummus<->1||||grilled octopus<->1 318 | (6<->S (6<->SBAR (6<->IN If) (6<->S (6<->PRP I) (6<->VP (6<->MD could) (6<->VP (6<->VB give) (6<->NP (6<->CD 0) (6<->NNS stars)))))) (6<->PRP I) (6<->VP (6<->MD would) (6<->VP (6<->VB do) (6<->RB so) (6<->PP (6<->IN for) (6<->NP (6<->DT this) (6<->NN place))))) (6<->. .))||||place<->0 319 | (6<->S (6<->NP (6<->NP (6<->DT The) (6<->NN reason)) (6<->S (6<->EX there) (6<->VP (6<->VBP are) (6<->NP (6<->CD 4) (6<->JJ different) (6<->NNS results)) (6<->PP (6<->PP (6<->IN on) (6<->NN citysearch)) (6<->PP (6<->IN for) (6<->NP (6<->DT the) (6<->JJ same) (6<->NN place))))))) (6<->VP (6<->VBZ is) (6<->SBAR (6<->IN because) (6<->S (6<->PRP they) (6<->VP (6<->VBP keep) (6<->VP (6<->VBG trying) (6<->VP (6<->TO to) (6<->VP (6<->VB start) (6<->NP (6<->DT a) (6<->JJ new) (6<->NN thread)) (6<->SBAR (6<->IN so) (6<->S (6<->PRP they) (6<->VP (6<->MD can) (6<->VP (6<->VB stock) (6<->PRP it) (6<->PP (6<->IN with) (6<->NP (6<->JJ positive) (6<->NNS reviews)))))))))))))) (6<->. .))||||NULL<->0 320 | (6<->S (6<->UH Well) (6<->NFP ...) (6<->S (6<->PRP they) (6<->VP (6<->MD can) (6<->VB run))) (6<->CC but) (6<->S (6<->PRP they) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VB hide))) (6<->. .))||||NULL<->0 321 | (6<->FRAG (6<->NP (6<->DT This) (6<->NN place)) (6<->: ...) (6<->UH god) (6<->WRB where) (6<->SQ (6<->VBP do) (6<->PRP i) (6<->VB begin)) (6<->. .))||||place<->0 322 | (6<->S (6<->PRP It) (6<->VP (6<->VBZ is) (6<->NP (6<->PDT quite) (6<->DT a) (6<->JJ spectacular) (6<->NN scene)) (6<->S (6<->PRP i) (6<->VP (6<->MD 'll) (6<->VP (6<->VB give) (6<->PRP them) (6<->DT that))))) (6<->. .))||||scene<->1 323 | (6<->S (6<->NP (6<->DT The) (6<->NN decor)) (6<->RB however) (6<->VBZ seems) (6<->TO to) (6<->VB be) (6<->NP (6<->DT the) (6<->NN distraction)) (6<->IN so) (6<->PRP you) (6<->MD wo) (6<->RB n't) (6<->VB notice) (6<->SBAR (6<->SBAR (6<->IN that) (6<->PRP you) (6<->RB just) (6<->VBD payed) (6<->NP (6<->CD 300) (6<->NNS bucks)) (6<->IN for) (6<->NP (6<->NP (6<->DT some) (6<->JJ cold) (6<->NN eggplant)) (6<->SBAR (6<->WDT that) (6<->VP (6<->VBD took) (6<->NP (6<->CD 2) (6<->NNS FRICKIN) (6<->NNS HOURS)) (6<->VP (6<->TO TO) (6<->VB COME)))))) (6<->. !)) (6<->. !) (6<->. !))||||decor<->2||||eggplant<->0||||eggplant<->0||||NULL<->0 324 | (6<->S (6<->SBAR (6<->WRB How) (6<->S (6<->NP (6<->DT this) (6<->NN place)) (6<->VP (6<->VBZ survives) (6<->NP (6<->DT the) (6<->JJ competitive) (6<->JJ west) (6<->NN village) (6<->NN market)) (6<->PP (6<->IN in) (6<->NP (6<->NP (6<->DT this) (6<->NN economy)) (6<->, ,) (6<->CC or) (6<->NP (6<->NP (6<->DT any) (6<->JJ other)) (6<->PP (6<->IN for) (6<->NP (6<->DT that) (6<->NN matter)))) (6<->, ,)))))) (6<->VP (6<->VBZ is) (6<->PP (6<->IN beyond) (6<->PRP me))) (6<->. .))||||place<->0 325 | (6<->S (6<->NN Maitre) (6<->HYPH -) (6<->NNP D) (6<->: -) (6<->`` ") (6<->VB Eat) (6<->CC and) (6<->VB get) (6<->RP out) (6<->'' "))||||Maitre - D<->0 326 | (6<->S (6<->NP (6<->DT The) (6<->NN food) (6<->CC and) (6<->NN service)) (6<->VP (6<->VBD were) (6<->JJ fine) (6<->, ,) (6<->RB however) (6<->S (6<->NP (6<->NP (6<->DT the) (6<->NN maitre)) (6<->HYPH -) (6<->NNP D)) (6<->VP (6<->VBD was) (6<->ADJP (6<->RB incredibly) (6<->VBG unwelcoming) (6<->CC and) (6<->JJ arrogant))))) (6<->. .))||||food<->1||||service<->1||||maitre - D<->0 327 | (6<->S (6<->SBAR (6<->IN While) (6<->VP (6<->VBG finishing) (6<->NP (6<->PRP$ our) (6<->NNS meals)) (6<->SBAR (6<->WDT which) (6<->VP (6<->VBD included) (6<->NP (6<->NP (6<->DT a) (6<->JJ high) (6<->HYPH -) (6<->NN end) (6<->NN bottle)) (6<->PP (6<->IN of) (6<->NN wine))))))) (6<->, ,) (6<->NP (6<->NP (6<->PRP$ our) (6<->NN son) (6<->POS 's)) (6<->NN fiance)) (6<->VP (6<->VBD joined) (6<->PRP us) (6<->PP (6<->IN for) (6<->NP (6<->NP (6<->DT a) (6<->NN glass)) (6<->PP (6<->IN of) (6<->NP (6<->NN wine) (6<->CC and) (6<->NN dessert)))))) (6<->. .))||||bottle of wine<->1 328 | (6<->S (6<->S (6<->NP (6<->DT This) (6<->NN guy)) (6<->VP (6<->VBD refused) (6<->VP (6<->TO to) (6<->VP (6<->VB seat) (6<->PRP her))))) (6<->CC and) (6<->S (6<->PRP she) (6<->VP (6<->VBD left) (6<->, ,) (6<->VP (6<->VBN followed) (6<->PP (6<->RB shortly) (6<->PP (6<->IN by) (6<->NP (6<->NP (6<->DT the) (6<->CD four)) (6<->PP (6<->IN of) (6<->PRP us))))))) (6<->, ,) (6<->CC but) (6<->SBAR (6<->RB not) (6<->SBAR (6<->IN before) (6<->S (6<->PRP I) (6<->VP (6<->VBD told) (6<->PRP him) (6<->SBAR (6<->IN that) (6<->IN in) (6<->NP (6<->NP (6<->PRP$ my) (6<->CD 40) (6<->NNS years)) (6<->PP (6<->IN of) (6<->NP (6<->NN world) (6<->NN travel))) (6<->, ,) (6<->PP (6<->VBG including) (6<->NNP Paris)) (6<->, ,)) (6<->SBAR (6<->IN that) (6<->S (6<->PRP I) (6<->VP (6<->VBD had) (6<->RB never) (6<->VP (6<->VBN seen) (6<->NP (6<->NP (6<->PDT such) (6<->DT a) (6<->NN display)) (6<->PP (6<->PP (6<->IN of) (6<->NP (6<->JJ bad) (6<->NN behavior))) (6<->PP (6<->IN by) (6<->NP (6<->NP (6<->DT a) (6<->NN frontman)) (6<->PP (6<->IN in) (6<->NP (6<->DT a) (6<->NN restaurant))))))))))))))))) (6<->. .))||||frontman<->0 329 | (6<->S (6<->NP (6<->PRP$ His) (6<->NN response)) (6<->VP (6<->VBD was) (6<->UCP (6<->JJ smug) (6<->, ,) (6<->JJ arrogant) (6<->, ,) (6<->CC and) (6<->VBG condescending) (6<->, ,) (6<->ADJP (6<->RB totally) (6<->JJ consistent) (6<->PP (6<->IN with) (6<->NP (6<->NP (6<->PRP$ his) (6<->NN deportment)) (6<->PP (6<->IN on) (6<->NN display)) (6<->NP (6<->DT all) (6<->NN evening))))))) (6<->. .))||||NULL<->0 330 | (6<->FRAG (6<->NP (6<->NP (6<->DT A) (6<->NN word)) (6<->PP (6<->IN to) (6<->NP (6<->DT the) (6<->JJ wise)))) (6<->: :) (6<->S (6<->PRP you) (6<->VP (6<->MD ca) (6<->RB n't) (6<->VP (6<->VP (6<->VB dine) (6<->RB here)) (6<->CC and) (6<->VP (6<->VB disturb) (6<->NP (6<->NP (6<->DT the) (6<->NN maitre)) (6<->HYPH -) (6<->NP (6<->NP (6<->NNP D) (6<->POS 's)) (6<->NN sense))) (6<->PP (6<->IN of) (6<->`` ") (6<->NP (6<->NN table) (6<->NN turnover)) (6<->'' ")) (6<->, ,) (6<->SBAR (6<->RB as) (6<->JJ whacked) (6<->SBAR (6<->IN as) (6<->S (6<->PRP it) (6<->VBZ is)))) (6<->, ,) (6<->CC or) (6<->RB else))))) (6<->. .))||||maitre - D<->0 331 | (6<->S (6<->SBAR (6<->IN If) (6<->S (6<->PRP you) (6<->VP (6<->VBP go) (6<->RB here)))) (6<->, ,) (6<->VP (6<->VB do) (6<->PRP it) (6<->PP (6<->IN on) (6<->NP (6<->NP (6<->PRP$ his) (6<->JJ off)) (6<->HYPH -) (6<->NN night)))) (6<->. .))||||NULL<->0 332 | (6<->NP (6<->NNP Great) (6<->NNP Atmosphere))||||Atmosphere<->1 333 | (6<->S (6<->PRP I) (6<->VP (6<->RB highly) (6<->VBP recommend) (6<->NP (6<->NP (6<->DT the) (6<->NN fish) (6<->NNS tacos)) (6<->, ,) (6<->S (6<->NP (6<->NN everything) (6<->RB else)) (6<->VP (6<->VBD was) (6<->JJ ok))))) (6<->. .))||||fish tacos<->1||||NULL<->2 334 | (6<->FRAG (6<->NP (6<->JJ Cool) (6<->NN atmosphere)) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN fire) (6<->NN place)) (6<->PP (6<->IN in) (6<->NP (6<->DT the) (6<->NN back))) (6<->ADVP (6<->RB really) (6<->NNS ads)) (6<->PP (6<->IN to) (6<->PRP it))) (6<->CC but) (6<->VP (6<->VBZ needs) (6<->NP (6<->ADJP (6<->DT a) (6<->NN bit) (6<->JJR more)) (6<->NN heat)) (6<->PP (6<->IN throughout) (6<->PP (6<->IN on) (6<->NP (6<->DT a) (6<->JJ cold) (6<->NN night))))) (6<->. .))||||atmosphere<->1||||fire place<->1||||NULL<->0 335 | (6<->SBARQ (6<->WDT What) (6<->DT a) (6<->NN hassle) (6<->. !))||||NULL<->0 336 | (6<->S (6<->NP (6<->DT The) (6<->NN food)) (6<->VP (6<->VBZ is) (6<->ADJP (6<->ADJP (6<->RB very) (6<->JJ good)) (6<->, ,) (6<->CC but) (6<->RB not) (6<->JJ outstanding))) (6<->. .))||||food<->2 337 | (6<->S (6<->EX There) (6<->VP (6<->VBZ is) (6<->NP (6<->NP (6<->DT no) (6<->NN way)) (6<->S (6<->PRP it) (6<->VP (6<->VBZ justifies) (6<->NP (6<->NP (6<->NP (6<->DT the) (6<->NNS accolades)) (6<->S (6<->PRP it) (6<->VBZ receives))) (6<->, ,) (6<->NP (6<->NP (6<->DT the) (6<->NN attitude)) (6<->PP (6<->IN of) (6<->NP (6<->DT the) (6<->NN staff)))) (6<->CC or) (6<->NP (6<->NP (6<->DT the) (6<->NN wait)) (6<->PP (6<->IN for) (6<->NP (6<->DT a) (6<->NN table))))))))) (6<->. .))||||staff<->0||||NULL<->0||||wait<->0 338 | (6<->S (6<->PP (6<->IN On) (6<->NP (6<->PRP$ our) (6<->JJ last) (6<->NN visit))) (6<->, ,) (6<->PRP they) (6<->VP (6<->VBD skipped) (6<->IN over) (6<->NP (6<->NP (6<->PRP$ our) (6<->NN name)) (6<->PP (6<->IN on) (6<->NP (6<->DT the) (6<->NN list)))) (6<->, ,) (6<->VP (6<->VBG leaving) (6<->S (6<->PRP us) (6<->VP (6<->VBG waiting) (6<->NP (6<->DT an) (6<->JJ extra) (6<->NN hour)) (6<->PP (6<->IN for) (6<->NP (6<->DT a) (6<->NN table))))))) (6<->. .))||||NULL<->0 339 | (6<->S (6<->S (6<->NNS Mistakes) (6<->VBP happen)) (6<->, ,) (6<->CC but) (6<->S (6<->PRP they) (6<->VP (6<->VBP are) (6<->RB usually) (6<->VP (6<->VBN accompanied) (6<->PP (6<->IN by) (6<->NP (6<->NP (6<->DT an) (6<->NN apology)) (6<->, ,) (6<->RB perhaps) (6<->RB even) (6<->NP (6<->NP (6<->DT a) (6<->NN glass)) (6<->PP (6<->IN of) (6<->NN wine))) (6<->: ...) (6<->CC but) (6<->RB not) (6<->NP (6<->NP (6<->DT the) (6<->NN grunt)) (6<->SBAR (6<->IN that) (6<->S (6<->PRP we) (6<->VP (6<->VBD received) (6<->PP (6<->IN from) (6<->NP (6<->DT the) (6<->NNP Al) (6<->NNP Di) (6<->NNP La) (6<->NN staff)))))))))))) (6<->. .))||||staff<->0 340 | (6<->JJ Expensive)||||NULL<->0 341 | (6<->S (6<->S (6<->NP (6<->DT The) (6<->NN bread)) (6<->VP (6<->VBD was) (6<->JJ stale))) (6<->, ,) (6<->S (6<->NP (6<->DT the) (6<->NN salad)) (6<->VP (6<->VBD was) (6<->ADJP (6<->VBN overpriced) (6<->CC and) (6<->JJ empty)))) (6<->. .))||||bread<->0||||salad<->0||||salad<->0 342 | (6<->S (6<->NP (6<->DT The) (6<->NN pasta)) (6<->VP (6<->VP (6<->VBD was) (6<->VP (6<->RB well) (6<->VBN cooked))) (6<->, ,) (6<->VP (6<->VBD did) (6<->RB n't) (6<->VP (6<->VB have) (6<->NP (6<->NP (6<->JJ enough) (6<->NN sauce)) (6<->UCP (6<->IN though) (6<->CC or) (6<->NN flavor)))))) (6<->. .))||||pasta<->1||||pasta<->0||||pasta<->0 -------------------------------------------------------------------------------- /decompose_sents.py: -------------------------------------------------------------------------------- 1 | from tree import fill_govern_tag, op_tags, find_pot_aspects, noun_tags, count_node_aspects, decompse_sent 2 | from utils import read_file_lines, convert_lines_to_trees, write_file_lines 3 | # Decompose sentences without aspects by using nouns as pivots to decompose the sentence. 4 | if __name__ == "__main__": 5 | lines = read_file_lines("data/parsed") 6 | sents = list() 7 | for i in range(0, len(lines), 1000): 8 | print str(i) + " Sentences Decomposed" 9 | # Convert trees in string format to trees in object format. 10 | trees = convert_lines_to_trees(lines[i:i+1000]) 11 | for tree in trees: 12 | """ 13 | Find which nodes govern opinions (i.e. a node governs an opinion if one of its 14 | leafs decendants contains an adjective or a verb). 15 | """ 16 | fill_govern_tag(tree, op_tags) 17 | aspects = list() 18 | # Add all nouns to a list. 19 | find_pot_aspects(tree, aspects, noun_tags) 20 | # Count the number of aspects (nouns in this case), governed by each node. 21 | count_node_aspects(tree, aspects) 22 | # Decompose the sentence to several fragments. 23 | decompse_sent(tree, aspects) 24 | label = tree.label 25 | sent_string = tree.phrase + u"<->6" 26 | sents_parts = set() 27 | # Write the sentence with its label and its fragments. 28 | for asp in aspects: 29 | if asp.linked_node is not None and asp.linked_node.papa is not None: 30 | sents_parts.add(asp.linked_node.phrase) 31 | for part in sents_parts: 32 | sent_string += u"||||" + part + u"<->NULL<->6" 33 | sents.append(sent_string) 34 | 35 | write_file_lines("data/unlabeled", u"\n".join(sents)) -------------------------------------------------------------------------------- /decompose_sents_aspects.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | from tree import fill_govern_tag, op_tags, find_pot_aspects, noun_tags, count_node_aspects, decompse_sent 4 | from utils import read_file_lines, convert_lines_to_trees, write_file_lines, Aspect 5 | 6 | # Decompose sentences with aspects by the aspects as pivots to decompose the sentence. 7 | if __name__ == "__main__": 8 | files = ['data/semeval15/train', 'data/semeval15/dev', 'data/semeval15/test', 9 | 'data/semeval16/train', 'data/semeval16/dev', 'data/semeval16/test'] 10 | for file in files: 11 | lines = read_file_lines(file + "_parse") 12 | sents = list() 13 | for line in lines: 14 | line_splitted = line.split(u'||||') 15 | tree = convert_lines_to_trees([line_splitted[0]])[0] 16 | 17 | aspects = list() 18 | for aspect in line_splitted[1:]: 19 | aspect_splitted = aspect.split(u'<->') 20 | aspects.append(Aspect(None, aspect_splitted[0], aspect_splitted[1])) 21 | # Count the number of aspects governed by each node. 22 | count_node_aspects(tree, aspects) 23 | """ 24 | Find which nodes govern opinions (i.e. a node governs an opinion if one of its 25 | leafs decendants contains an adjective or a verb). 26 | """ 27 | fill_govern_tag(tree, op_tags, aspects) 28 | # Decompose the sentence to several fragments, where each fragment is linked to an aspect. 29 | decompse_sent(tree, aspects) 30 | label = tree.label 31 | sent_string = tree.phrase + u"<->6" 32 | sents_parts = set() 33 | # Write the sentence with its label and its fragments. 34 | for asp in aspects: 35 | sent_string += u"||||" + asp.linked_node.phrase + u"<->" + asp.expression_term + u"<->" + str(asp.gold_sentiment) 36 | sents.append(sent_string) 37 | 38 | write_file_lines(file, u"".join(sents)) -------------------------------------------------------------------------------- /estimate_dists.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | from utils import read_file_lines, aspects_sent_convert 4 | from random_inits import np 5 | # Estimate the aspects distribution given sentence level labels. 6 | if __name__ == "__main__": 7 | samples = aspects_sent_convert(read_file_lines("data/xr/sents_aspects_labels")) 8 | total_aspects = 0.0 9 | total_sents = len(samples) 10 | aspects_stats = np.zeros((3, 3)) 11 | for sample in samples: 12 | total_aspects += len(sample.aspects) 13 | for aspect in sample.aspects: 14 | sent_sentiment = int(sample.sent[1]) 15 | aspects_stats[sent_sentiment, aspect.gold_sentiment] += 1.0 16 | for i in range(3): 17 | if sum(aspects_stats[i]) != 0.0: 18 | aspects_stats[i] /= sum(aspects_stats[i]) 19 | np.save("data/xr/dists.npy", aspects_stats) 20 | print aspects_stats 21 | -------------------------------------------------------------------------------- /finetune_aspect_based_model.py: -------------------------------------------------------------------------------- 1 | import os 2 | import pickle 3 | import sys 4 | from argparse import ArgumentParser 5 | 6 | from utils import * 7 | 8 | 9 | def train_command_parser(): 10 | """ 11 | Create argument parser with the desired arguments for it. 12 | :return: an argument parser object. 13 | """ 14 | parser = ArgumentParser(description='arguments for training a model') 15 | # Arguments that have to be sent to train a model. 16 | parser.add_argument('--train', action="store", dest="train", default="data/semeval16/train") 17 | parser.add_argument('--dev', action="store", dest="dev", default="data/semeval16/dev") 18 | parser.add_argument('--test', action="store", dest="test", default="data/semeval16/test") 19 | parser.add_argument('--pretrained_model', action="store", dest="pretrained_model", default="BiLSTMXR") 20 | parser.add_argument('--model_path', action="store", dest="model_path", default="BiLSTMAttFinetuning") 21 | parser.add_argument('--seed', action="store", dest="seed", type=int, default=32) 22 | parser.add_argument('--batch_size', action="store", dest="batch_size", type=int, default=30) 23 | parser.add_argument('--embpath', action="store", dest='embpath', default="data/Glove.txt") 24 | parser.add_argument('--epochs', action="store", dest="epochs", type=int, default=30) 25 | parser.add_argument('--dynet-gpu', action="store_true", dest='root_only', default=False) 26 | parser.add_argument('--dynet-devices', action="store", dest="dynet-devices") 27 | return parser 28 | 29 | 30 | 31 | # Finetune an aspect-based model. 32 | if __name__ == "__main__": 33 | parser = train_command_parser() 34 | args = parser.parse_args() 35 | # Read the aspect-based data. 36 | train = aspects_sent_convert(read_file_lines(args.train), no_conflicts=True, aspect_batch=True) 37 | dev = aspects_sent_convert(read_file_lines(args.dev), no_conflicts=True) 38 | test = aspects_sent_convert(read_file_lines(args.test), no_conflicts=True) 39 | 40 | sents = list() 41 | 42 | model_path = "models/" + args.model_path 43 | 44 | random.seed(args.seed) 45 | np.random.seed(args.seed) 46 | import dynet_config 47 | dynet_config.set(random_seed=args.seed) 48 | from train_funcs import * 49 | 50 | dyparams = dy.DynetParams() 51 | dyparams.set_autobatch(True) 52 | from models import BiLSTM, LSTMAtt 53 | 54 | model = dy.ParameterCollection() 55 | model_params = model 56 | W2I, vecs = pickle.load(open("models/" + args.pretrained_model + "/Model.meta", "rb")), None 57 | 58 | # Create the base bilstm network, which will be pretrained. 59 | base_network = BiLSTM(1, 300, 150, W2I, model, vecs) 60 | # Load the pretrained bilstm network 61 | base_network.load_model("models/" + args.pretrained_model + "/Model") 62 | # Add attention weights to the pretrained bilstm network. 63 | network = LSTMAtt(base_network, model, 300, 150) 64 | if not os.path.exists(model_path): 65 | os.makedirs(model_path) 66 | os.makedirs(model_path + "/Results") 67 | command_line_file = open(model_path + "/Command_Lines.txt", 'w') 68 | for arg in sys.argv: 69 | command_line_file.write(arg + "\n") 70 | command_line_file.close() 71 | else: 72 | print "Model Folder Already exists." 73 | sys.exit(1) 74 | network.save_meta(model_path + "/Model.meta") 75 | trainer = dy.AdamTrainer(model) 76 | # Finetune the model. 77 | cross_entropy_train(network, trainer, train, dev, args.epochs, args.batch_size, model_path, train_type=aspect_cross_entropy_iteration, test_type=aspect_test) 78 | network.load_model(model_path + "/Model") 79 | acc, loss, f1 = aspect_test(test, network, args.batch_size) 80 | test_acc = "Test Accuarcy:" + str(acc) 81 | test_loss = "Test Loss:" + str(loss) 82 | test_f1 = "Test F1:" + str(f1) 83 | print test_acc 84 | print test_loss 85 | print test_f1 86 | test_results_file = open(model_path + '/Results/test_results.txt', 'w') 87 | test_results_file.write(test_acc + "\n" + test_loss + "\n" + test_f1) 88 | test_results_file.close() -------------------------------------------------------------------------------- /import_dy.py: -------------------------------------------------------------------------------- 1 | import dynet as dy -------------------------------------------------------------------------------- /label_sents.py: -------------------------------------------------------------------------------- 1 | import os 2 | import pickle 3 | import sys 4 | 5 | 6 | from models import BiLSTM 7 | from utils import aspects_sent_convert, read_file_lines, write_file_lines 8 | from import_dy import dy 9 | from random_inits import np 10 | 11 | # Use a sentence level classifier to automatically label sentences. 12 | if __name__ == "__main__": 13 | label_files = sys.argv[1].split(',') 14 | lines = list() 15 | for label_file in label_files: 16 | lines += read_file_lines(label_file) 17 | model = dy.ParameterCollection() 18 | 19 | W2I = pickle.load(open("models/SentenceLevelBiLSTM" + "/Model.meta", "rb")) 20 | network = BiLSTM(1, 300, 150, W2I, model) 21 | network.load_model("models/SentenceLevelBiLSTM/Model") 22 | new_samples = list() 23 | 24 | for i in range(0, len(lines), 1000): 25 | print str(i) + " Sentences Labeled" 26 | 27 | samples = aspects_sent_convert(lines[i:i+1000]) 28 | for sample in samples: 29 | dy.renew_cg() 30 | sent = sample.sent 31 | h = network(sent[0]) 32 | dist = network.classify(h) 33 | prediction = np.argmax(dist.npvalue()) 34 | 35 | sample_str = sent[0] + u"<->" + str(prediction) 36 | 37 | for aspect in sample.aspects: 38 | sample_str += u"||||" + aspect.expression_phrase 39 | sample_str += u"<->" + aspect.expression_term 40 | sample_str += u"<->" + str(aspect.gold_sentiment) 41 | new_samples.append(sample_str) 42 | if not os.path.exists('data/xr'): 43 | os.mkdir('data/xr') 44 | write_file_lines(sys.argv[2], u"\n".join(new_samples)) 45 | 46 | -------------------------------------------------------------------------------- /models.py: -------------------------------------------------------------------------------- 1 | import pickle 2 | 3 | from import_dy import dy 4 | 5 | 6 | class BaseModel(object): 7 | """ 8 | BaseModel class is an abstract class that every model should inherit from, it contains basic 9 | functions which would be necessary for every model. 10 | """ 11 | 12 | def save_model(self, model_file): 13 | """ 14 | Save the model. 15 | :param model_file: The model file name to soad. 16 | """ 17 | self._model.save(model_file) 18 | 19 | def load_model(self, model_file): 20 | """ 21 | Load the model. 22 | :param model_file: The model file name to load. 23 | """ 24 | self._model.populate(model_file) 25 | 26 | def load_meta(self, meta_file): 27 | """ 28 | Load the w2i dictionary. 29 | :param meta_file: The dictionary file. 30 | """ 31 | self._w2i = pickle.load(open(meta_file, "rb")) 32 | 33 | def save_meta(self, meta_file): 34 | """ 35 | Save the w2i dictionary. 36 | :param meta_file: The file of the dicitonary. 37 | """ 38 | pickle.dump(self._w2i, open(meta_file, "wb")) 39 | 40 | def get_model(self): 41 | """ 42 | Get the parameter collection of a model. 43 | :return: The parameter collection of a model. 44 | """ 45 | return self._model 46 | 47 | 48 | class LinearClassifier(BaseModel): 49 | """ 50 | Linear classifier class is a linear classifier used on top of some deep model (mlp with one layer). 51 | """ 52 | def __init__(self, input_dim, output_dim, model): 53 | """ 54 | Constructor. 55 | :param input_dim: The input dimension for the linear classifier. 56 | :param output_dim: The number of labels. 57 | :param model: The parameter collection of the model it used on top of. 58 | """ 59 | self._model = model 60 | self._W = model.add_parameters((output_dim, input_dim)) 61 | self._b = model.add_parameters(output_dim) 62 | 63 | def classify(self, h, train=False): 64 | """ 65 | Classify a vector to one of the labels. 66 | :param h: A vector to classify. 67 | :param train: Boolean to indicate if this is train mode or not. 68 | :return: The probabilities given by the classifier. 69 | """ 70 | if train: 71 | h = dy.dropout(h, 0.5) 72 | prediction = dy.softmax(self._W * h + self._b) 73 | return prediction 74 | 75 | 76 | class BiLSTM(BaseModel): 77 | """ 78 | BiLSTM class, an implementation of the BiLSTM network, contains model parameters and functions 79 | for the forward pass. 80 | """ 81 | 82 | def __init__(self, layers, in_dim, lstm_dim, word_vocab, model, pre_trained=None): 83 | """ 84 | Constructor for the BiLSTMNetwork 85 | :param layers: The number of layers of the BiLSTM (default is one). 86 | :param in_dim: The input dim of the model (the dimension of the embedding vectors). 87 | :param lstm_dim: Number of the dimension of the output of the lstm. 88 | :param word_vocab: The word 2 key dictionary. 89 | :param model: The parameter collection. 90 | :param pre_trained: Pretrained embedding vectors. 91 | """ 92 | self._model = model 93 | if pre_trained is None: 94 | self._E = model.add_lookup_parameters((len(word_vocab), in_dim)) 95 | else: 96 | self._E = model.lookup_parameters_from_numpy(pre_trained) 97 | self._fwd_RNN_first = dy.VanillaLSTMBuilder(layers, in_dim, lstm_dim, model) 98 | self._bwd_RNN_first = dy.VanillaLSTMBuilder(layers, in_dim, lstm_dim, model) 99 | self._classifier = LinearClassifier(2 * lstm_dim, 3, model) 100 | self._w2i = word_vocab 101 | 102 | def __call__(self, sequence): 103 | """ 104 | Standard classification output, i.e. read from start to end and from end to start and 105 | concatenate the two vectors. 106 | :param sequence: The sequence to read. 107 | :return: A concatenation of the forward and backward pass. 108 | """ 109 | fwd_states, bwd_states = self.encode_fwd_bwd(sequence) 110 | return dy.concatenate([fwd_states[-1], bwd_states[-1]]) 111 | 112 | def embed(self, sequence): 113 | """ 114 | Embed the input words to word vectors. 115 | :param sequence: A sequence of words. 116 | :return: A sequence of embedding vectors. 117 | """ 118 | words = sequence.split(' ') 119 | vecs = [self._E[self._w2i[i]] if i in self._w2i else self._E[self._w2i["UNK"]] 120 | for i in words] 121 | return vecs 122 | 123 | def encode_vecs(self, vecs, lstm): 124 | """ 125 | Encode a sequence of vectors using the lstm equations. 126 | :param vecs: A sequence of vectors. 127 | :param lstm: An lstm to encode the sequence vectors. 128 | :return: The states of the lstm. 129 | """ 130 | initial_state = lstm.initial_state() 131 | states = initial_state.transduce(vecs) 132 | return states 133 | 134 | def encode_fwd_bwd(self, sequence): 135 | """ 136 | Encode a sequence of words from start to end and from end to start. 137 | :param sequence: a sequence of words. 138 | :return: A list of states start to end and a list of states from end to start. 139 | """ 140 | vecs = self.embed(sequence) 141 | fwd_states = self.encode_vecs(vecs, self._fwd_RNN_first) 142 | bwd_states = self.encode_vecs(vecs[::-1], self._bwd_RNN_first) 143 | return fwd_states, bwd_states 144 | 145 | def encode(self, sequence): 146 | """ 147 | Encode a sequence of words from start to end and end to start and concatenate the states 148 | of the forward and backward passes. 149 | :param sequence: A sequence of words. 150 | :return: A concatenation of the forward and backward states. 151 | """ 152 | fwd_states, bwd_states = self.encode_fwd_bwd(sequence) 153 | bwd_states = bwd_states[::-1] 154 | return [dy.concatenate([fwd_states[i], bwd_states[i]]) for i in range(len(fwd_states))] 155 | 156 | def encode_aspects(self, sample): 157 | """ 158 | Encode a list of aspects using the expression phrase that is linked to them. 159 | :param sample: a sample of sentence and its aspects. 160 | :return: A list of outputs corresponding to the aspects. 161 | """ 162 | outputs = list() 163 | for asp in sample.aspects: 164 | output = self(asp.expression_phrase) 165 | outputs.append(output) 166 | return outputs 167 | 168 | def classify(self, expr, train=False): 169 | """ 170 | Classify a vector using the linear classifier. 171 | :param expr: The vector to classify. 172 | :param train: Boolean to indicate if this is during training or not. 173 | :return: The probabilities given by the classifier. 174 | """ 175 | return self._classifier.classify(expr, train=train) 176 | 177 | @property 178 | def w2i(self): 179 | """ 180 | Get function for the word to dictionary (w2i) attribute. 181 | :return: The w2i attribute 182 | """ 183 | return self._w2i 184 | 185 | @property 186 | def E(self): 187 | """ 188 | Get function for the embedding matrix. 189 | :return: The embedding matrix. 190 | """ 191 | return self._E 192 | 193 | 194 | class LSTMAtt(BaseModel): 195 | """ 196 | LSTM Att class is an attention based bilstm model. The model adds attention parameters on top 197 | of a bilstm and uses the word embeddings of an aspect to calculate an attention score 198 | on the bilstm states. 199 | """ 200 | 201 | def __init__(self, seq_model, model, in_dim, lstm_dim): 202 | """ 203 | Constructor. 204 | :param seq_model: The BiLSTM model the attention is based on. 205 | :param model: Parameter collection. 206 | :param in_dim: The input dimension of the BiLSTM (dimension of word embeddings). 207 | :param lstm_dim: The output dimension the BiLSTM. 208 | """ 209 | self._model = model 210 | self._seq_model = seq_model 211 | self._w2i = seq_model.w2i 212 | self._E = seq_model.E 213 | self._Wa = model.add_parameters((2 * lstm_dim, in_dim)) 214 | self._Wd = model.add_parameters((2 * lstm_dim, 4 * lstm_dim)) 215 | self._bd = model.add_parameters(2 * lstm_dim) 216 | 217 | def __call__(self, sequence, aspect): 218 | """ 219 | Encode an aspect representation based on the sentence and the aspect. 220 | :param sequence: A sequence of words. 221 | :param aspect: The aspect to encode. 222 | :return: The representation of the aspect. 223 | """ 224 | sequence_vec = self._seq_model.encode(sequence) 225 | asp_words = aspect.expression_term.split(' ') 226 | asp_vecs = [self._E[self._w2i[word]] if word in self._w2i else self._E[self._w2i["UNK"]] 227 | for word in asp_words] 228 | t = dy.average(asp_vecs) 229 | 230 | seq_conc = dy.concatenate_cols(sequence_vec) 231 | beta = dy.tanh(dy.transpose(seq_conc) * self._Wa * t) 232 | alpha = dy.softmax(beta) 233 | z_list = list() 234 | for i in range(len(sequence_vec)): 235 | z_list.append(sequence_vec[i] * alpha[i]) 236 | z = dy.esum(z_list) 237 | return z 238 | 239 | def encode_aspects(self, sample): 240 | """ 241 | Encode the aspects in a sentence. 242 | :param sample: A sample containing a sentence and its aspects. 243 | :return: the representation of each aspect in the sample. 244 | """ 245 | outputs = list() 246 | for asp in sample.aspects: 247 | output = self(sample.sent[0], asp) 248 | outputs.append(output) 249 | return outputs 250 | 251 | def classify(self, expr, train=False): 252 | """ 253 | Classify an aspect expression using a linear classifier. 254 | :param expr: The expression vector of an aspect. 255 | :param train: Boolean to indicate if this is in training or not. 256 | :return: The probabilities of the classifier. 257 | """ 258 | return self._seq_model._classifier.classify(expr, train=train) 259 | -------------------------------------------------------------------------------- /random_inits.py: -------------------------------------------------------------------------------- 1 | import random 2 | import numpy as np 3 | 4 | -------------------------------------------------------------------------------- /run_fragment_based_model.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | from argparse import ArgumentParser 4 | 5 | from utils import * 6 | 7 | 8 | def train_command_parser(): 9 | """ 10 | Create argument parser with the desired arguments for it. 11 | :return: an argument parser object. 12 | """ 13 | parser = ArgumentParser() 14 | # Arguments that have to be sent to train a model. 15 | parser.add_argument('--train', action="store", dest="train") 16 | parser.add_argument('--dev', action="store", dest="dev", default='data/semeval15/dev') 17 | parser.add_argument('--test', action="store", dest="test") 18 | parser.add_argument('--model_path', action="store", dest="model_path", default="BiLSTMXR") 19 | parser.add_argument('--dist_path', action="store", dest="dist_path", default="data/xr/dists.npy") 20 | parser.add_argument('--seed', action="store", dest="seed", type=int, default=32) 21 | parser.add_argument('--batch_size', action="store", dest="batch_size", type=int, default=450) 22 | parser.add_argument('--embpath', action="store", dest='embpath', default="data/Glove.txt") 23 | parser.add_argument('--epochs', action="store", dest="epochs", type=int, default=30) 24 | parser.add_argument('-T', action="store", dest="T", type=float, default=1.0) 25 | parser.add_argument('--dynet-gpu', action="store_true", dest='root_only', default=False) 26 | parser.add_argument('--dynet-devices', action="store", dest="dynet-devices") 27 | return parser 28 | 29 | 30 | # Train a fragment based model using XR training. 31 | if __name__ == "__main__": 32 | parser = train_command_parser() 33 | args = parser.parse_args() 34 | dev = aspects_sent_convert(read_file_lines(args.dev)) 35 | test = aspects_sent_convert(read_file_lines(args.test), no_conflicts=True) 36 | W2I, vecs = read_glove(args.embpath) 37 | model_path = "models/" + args.model_path 38 | random.seed(args.seed) 39 | np.random.seed(args.seed) 40 | import dynet_config 41 | 42 | dynet_config.set(random_seed=args.seed) 43 | from import_dy import dy 44 | 45 | dyparams = dy.DynetParams() 46 | dyparams.set_autobatch(True) 47 | 48 | model = dy.ParameterCollection() 49 | from models import BiLSTM 50 | from train_funcs import * 51 | 52 | network = BiLSTM(1, 300, 150, W2I, model, vecs) 53 | if args.train is not None: 54 | train = aspects_sent_convert(read_file_lines(args.train)) 55 | 56 | if not os.path.exists(model_path): 57 | os.makedirs(model_path) 58 | os.makedirs(model_path + "/Results") 59 | command_line_file = open(model_path + "/Command_Lines.txt", 'w') 60 | for arg in sys.argv: 61 | command_line_file.write(arg + "\n") 62 | command_line_file.close() 63 | else: 64 | print "Model Folder Already exists." 65 | sys.exit(1) 66 | network.save_meta(model_path + "/Model.meta") 67 | trainer = dy.AdamTrainer(model) 68 | 69 | dists = np.load(args.dist_path) 70 | xr_train(network, trainer, train, dev, args.epochs, 30, model_path, dists, 71 | T_value=args.T, batch_size=args.batch_size) 72 | network.load_model(model_path + "/Model") 73 | acc, loss, f1 = aspect_test(test, network, 30) 74 | test_acc = "Test Accuarcy:" + str(acc) 75 | test_loss = "Test Loss:" + str(loss) 76 | test_f1 = "Test F1:" + str(f1) 77 | print test_acc 78 | print test_loss 79 | print test_f1 80 | test_results_file = open(model_path + '/Results/test_results.txt', 'w') 81 | test_results_file.write(test_acc + "\n" + test_loss + "\n" + test_f1) 82 | test_results_file.close() 83 | -------------------------------------------------------------------------------- /run_sentence_based_model.py: -------------------------------------------------------------------------------- 1 | import os 2 | import sys 3 | from argparse import ArgumentParser 4 | 5 | from utils import * 6 | 7 | 8 | def train_command_parser(): 9 | """ 10 | Create argument parser with the desired arguments for it. 11 | :return: an argument parser object. 12 | """ 13 | parser = ArgumentParser() 14 | # Arguments that have to be sent to train a model. 15 | parser.add_argument('--train', action="store", dest="train", default="data/sentences/train") 16 | parser.add_argument('--dev', action="store", dest="dev", default="data/sentences/dev") 17 | 18 | parser.add_argument('--model_path', action="store", dest="model_path", default="SentenceLevelBiLSTM") 19 | parser.add_argument('--seed', action="store", dest="seed", type=int, default=42) 20 | parser.add_argument('--batch_size', action="store", dest="batch_size", type=int, default=30) 21 | parser.add_argument('--embpath', action="store", dest='embpath', default="data/Glove.txt") 22 | parser.add_argument('--epochs', action="store", dest="epochs", type=int, default=30) 23 | parser.add_argument('--dynet-gpu', action="store_true", dest='root_only', default=False) 24 | parser.add_argument('--dynet-devices', action="store", dest="dynet-devices") 25 | return parser 26 | 27 | 28 | 29 | # Train a sentiment level classifier using cross entropy training. 30 | if __name__ == "__main__": 31 | parser = train_command_parser() 32 | args = parser.parse_args() 33 | train_files = args.train.split(',') 34 | train = [(line.split('<->')[0], int(line.split('<->')[1])) for line in read_file_lines(args.train)] 35 | dev = [(line.split('<->')[0], int(line.split('<->')[1])) for line in read_file_lines(args.dev)] 36 | sents = list() 37 | W2I, vecs = read_glove(args.embpath) 38 | 39 | model_path = "models/" + args.model_path 40 | random.seed(args.seed) 41 | np.random.seed(args.seed) 42 | import dynet_config 43 | dynet_config.set(random_seed=args.seed) 44 | from train_funcs import * 45 | 46 | dyparams = dy.DynetParams() 47 | dyparams.set_autobatch(True) 48 | from models import BiLSTM 49 | 50 | model = dy.ParameterCollection() 51 | model_params = model 52 | 53 | network = BiLSTM(1, 300, 150, W2I, model, vecs) 54 | if not os.path.exists(model_path): 55 | os.makedirs(model_path) 56 | os.makedirs(model_path + "/Results") 57 | command_line_file = open(model_path + "/Command_Lines.txt", 'w') 58 | for arg in sys.argv: 59 | command_line_file.write(arg + "\n") 60 | command_line_file.close() 61 | else: 62 | print "Model Folder Already exists." 63 | sys.exit(1) 64 | network.save_meta(model_path + "/Model.meta") 65 | trainer = dy.AdamTrainer(model) 66 | cross_entropy_train(network, trainer, train, dev, args.epochs, args.batch_size, model_path) 67 | -------------------------------------------------------------------------------- /test_funcs.py: -------------------------------------------------------------------------------- 1 | from import_dy import dy 2 | from random_inits import * 3 | 4 | 5 | def aspect_test(dev, model, mini_batch_size): 6 | """ 7 | This function tests predictions on aspects. 8 | :param dev: Dataset to test predictions on. 9 | :param model: A model to test the predictions of. 10 | :param mini_batch_size: The minibatch size to test on. 11 | :return: the accuracy, loss and f1-score. 12 | """ 13 | total_loss = 0.0 14 | conf = np.zeros((3, 3)) 15 | mini_batches = [dev[i:i + mini_batch_size] for i in range(0, len(dev), mini_batch_size)] 16 | for mini_batch in mini_batches: 17 | losses = list() 18 | dy.renew_cg() 19 | for sample in mini_batch: 20 | outputs = model.encode_aspects(sample) 21 | for aspect, expr in zip(sample.aspects, outputs): 22 | probs = model.classify(expr) 23 | loss = -dy.log(dy.pick(probs, aspect.gold_sentiment)) 24 | prediction = np.argmax(probs.npvalue()) 25 | losses.append(loss) 26 | conf[aspect.gold_sentiment, prediction] += 1.0 27 | if len(losses) != 0: 28 | batch_loss = dy.esum(losses) 29 | total_loss += batch_loss.value() 30 | total = conf.sum() 31 | total_correct = np.trace(conf) 32 | acc = (total_correct / total) 33 | loss = total_loss / total 34 | precision = [0.0, 0.0, 0.0] 35 | recall = [0.0, 0.0, 0.0] 36 | for i in range(len(conf)): 37 | if conf[i][i] == 0: 38 | precision[i] = 0.0 39 | recall[i] = 0.0 40 | else: 41 | precision[i] = conf[i][i] / (sum(conf[:, i])) 42 | recall[i] = conf[i][i] / (sum(conf[i, :])) 43 | ave_prec = sum(precision) / len(precision) 44 | ave_recall = sum(recall) / len(recall) 45 | f1 = (2.0 * (ave_prec * ave_recall)) / (ave_prec + ave_recall) 46 | 47 | return acc, loss, f1 48 | 49 | def sents_test(dev, model, mini_batch_size): 50 | """ 51 | This function tests predictions on sentences. 52 | :param dev: Dataset to test predictions on. 53 | :param model: A model to test the predictions of. 54 | :param mini_batch_size: The minibatch size to test on. 55 | :return: the accuracy and loss. 56 | """ 57 | total_loss = 0.0 58 | correct = 0.0 59 | total = 0.0 60 | mini_batches = [dev[i:i + mini_batch_size] for i in range(0, len(dev), mini_batch_size)] 61 | for mini_batch in mini_batches: 62 | losses = list() 63 | dy.renew_cg() 64 | for sent in mini_batch: 65 | expr = model(sent[0]) 66 | probs = model.classify(expr) 67 | loss = -dy.log(dy.pick(probs, sent[1])) 68 | prediction = np.argmax(probs.npvalue()) 69 | losses.append(loss) 70 | if prediction == sent[1]: 71 | correct += 1.0 72 | total += 1.0 73 | if len(losses) != 0: 74 | batch_loss = dy.esum(losses) 75 | total_loss += batch_loss.value() 76 | if total == 0.0: 77 | acc = 0.0 78 | loss = 0.0 79 | else: 80 | acc = correct / total 81 | loss = total_loss / total 82 | return acc, loss, None 83 | -------------------------------------------------------------------------------- /train_funcs.py: -------------------------------------------------------------------------------- 1 | from test_funcs import * 2 | 3 | 4 | def xr_iteration(sets, model, trainer, T_value): 5 | """ 6 | This function does an XR iteration using sets and their distribution. 7 | :param sets: The sets of samples to train on. 8 | :param model: A model to train. 9 | :param trainer: An optimizer to train with. 10 | :param T_value: A temperature parameter (by default is one). 11 | :return: The XR loss value. 12 | """ 13 | total_loss = 0.0 14 | for set in sets: 15 | dy.renew_cg() 16 | all_probs = list() 17 | 18 | for sample in set[0]: 19 | expr = model(sample) 20 | probs = model.classify(expr, train=True) 21 | probs = dy.pow(probs, dy.scalarInput(1.0 / T_value)) 22 | all_probs.append(probs) 23 | if len(all_probs) > 0: 24 | q = dy.esum(all_probs) 25 | p = dy.cdiv(q, dy.sum_elems(q)) 26 | loss = -(dy.scalarInput(set[1][0]) * dy.log(dy.pick(p, 0))) 27 | for i in range(1, len(set[1])): 28 | loss += -(dy.scalarInput(set[1][i]) * dy.log(dy.pick(p, i))) 29 | total_loss += loss.value() 30 | loss.backward() 31 | trainer.update() 32 | return total_loss / len(sets) 33 | 34 | 35 | def sents_cross_entropy_iteration(model, trainer, mini_batches): 36 | """ 37 | This function trains a sentence-level sentiment classifier using cross entropy loss. 38 | :param model: A model to train. 39 | :param trainer: An optimizer to train with. 40 | :param mini_batches: Minibatches of samples to train on. 41 | :return: The accuracy and loss value of the iteration. 42 | """ 43 | total_loss = 0.0 44 | correct = 0.0 45 | incorrect = 0.0 46 | for mini_batch in mini_batches: 47 | losses = list() 48 | dy.renew_cg() 49 | for sample in mini_batch: 50 | sent_expr = model(sample[0]) 51 | probs = model.classify(sent_expr, train=True) 52 | loss = -dy.log(dy.pick(probs, sample[1])) 53 | prediction = np.argmax(probs.npvalue()) 54 | losses.append(loss) 55 | if prediction == sample[1]: 56 | correct += 1.0 57 | else: 58 | incorrect += 1.0 59 | if len(losses) != 0: 60 | batch_loss = dy.esum(losses) 61 | total_loss += batch_loss.value() 62 | batch_loss.backward() 63 | trainer.update() 64 | if correct + incorrect == 0.0: 65 | train_acc = 0.0 66 | train_loss = 0.0 67 | else: 68 | train_acc = correct / (correct + incorrect) 69 | train_loss = total_loss / (correct + incorrect) 70 | return train_acc, train_loss 71 | 72 | 73 | def aspect_cross_entropy_iteration(model, trainer, mini_batches): 74 | """ 75 | This function trains a aspect-level sentiment classifier using cross entropy loss. 76 | :param model: A model to train. 77 | :param trainer: An optimizer to train with. 78 | :param mini_batches: Minibatches of aspect-sentence tuples to train on. 79 | :return: The accuracy and loss value of the iteration. 80 | """ 81 | total_loss = 0.0 82 | correct = 0.0 83 | incorrect = 0.0 84 | for mini_batch in mini_batches: 85 | losses = list() 86 | dy.renew_cg() 87 | for sample in mini_batch: 88 | outputs = model.encode_aspects(sample) 89 | for output, aspect in zip(outputs, sample.aspects): 90 | probs = model.classify(output, train=True) 91 | loss = -dy.log(dy.pick(probs, aspect.gold_sentiment)) 92 | prediction = np.argmax(probs.npvalue()) 93 | losses.append(loss) 94 | if prediction == aspect.gold_sentiment: 95 | correct += 1.0 96 | else: 97 | incorrect += 1.0 98 | if len(losses) != 0: 99 | batch_loss = dy.esum(losses) 100 | total_loss += batch_loss.value() 101 | batch_loss.backward() 102 | trainer.update() 103 | if correct + incorrect == 0.0: 104 | train_acc = 0.0 105 | train_loss = 0.0 106 | else: 107 | train_acc = correct / (correct + incorrect) 108 | train_loss = total_loss / (correct + incorrect) 109 | return train_acc, train_loss 110 | 111 | 112 | def cross_entropy_train(model, trainer, train, dev, epochs, mini_batch_size, model_folder, 113 | train_type=sents_cross_entropy_iteration, test_type=sents_test): 114 | """ 115 | This function trains a model using cross entropy loss. 116 | :param model: A model to train. 117 | :param trainer: An optimizer to train with. 118 | :param train: A train set. 119 | :param dev: A validation set. 120 | :param epochs: The number of epochs to train. 121 | :param mini_batch_size: The minibatch size. 122 | :param model_folder: The model folder to save the model and the results. 123 | :param train_type: The function type for training (sentence-level or aspect-level) 124 | :param test_type: The function type for testing (sentence-level or aspect-level) 125 | """ 126 | train_acc_file = open(model_folder + '/Results/train_acc.txt', 'w') 127 | train_loss_file = open(model_folder + '/Results/train_loss.txt', 'w') 128 | dev_acc_file = open(model_folder + '/Results/dev_acc.txt', 'w') 129 | dev_loss_file = open(model_folder + "/Results/dev_loss.txt", 'w') 130 | dev_acc, dev_loss, f1 = test_type(dev, model, mini_batch_size) 131 | print "Validation Accuracy:", dev_acc 132 | dev_acc_file.write(str(dev_acc) + "\n") 133 | print "Validation Loss:", dev_loss 134 | dev_loss_file.write(str(dev_loss) + "\n") 135 | 136 | train_acc_file.close() 137 | train_loss_file.close() 138 | dev_acc_file.close() 139 | dev_loss_file.close() 140 | dev_loss_file.close() 141 | best_dev = -float("Inf") 142 | 143 | for i in range(0, epochs): 144 | random.shuffle(train) 145 | train_sample = train 146 | mini_batches = [train_sample[k:k + mini_batch_size] for k in range(0, len(train_sample), mini_batch_size)] 147 | train_acc, train_loss = train_type(model, trainer, mini_batches) 148 | print "Itertation:", str(i + 1) 149 | 150 | print "Training Accuracy:", train_acc 151 | print "Training Loss:", train_loss 152 | 153 | train_acc_file = open(model_folder + '/Results/train_acc.txt', 'a') 154 | train_loss_file = open(model_folder + '/Results/train_loss.txt', 'a') 155 | train_acc_file.write(str(train_acc) + "\n") 156 | train_loss_file.write(str(train_loss) + "\n") 157 | train_acc_file.close() 158 | train_loss_file.close() 159 | dev_acc, dev_loss, f1 = test_type(dev, model, mini_batch_size) 160 | print "Sentence Validation Accuracy:", dev_acc 161 | print "Validation Loss:", dev_loss 162 | 163 | dev_acc_file = open(model_folder + '/Results/dev_acc.txt', 'a') 164 | dev_loss_file = open(model_folder + "/Results/dev_loss.txt", 'a') 165 | dev_acc_file.write(str(dev_acc) + "\n") 166 | dev_loss_file.write(str(dev_loss) + "\n") 167 | dev_acc_file.close() 168 | dev_loss_file.close() 169 | if dev_acc > best_dev: 170 | model.save_model(model_folder + "/Model") 171 | best_dev = dev_acc 172 | print "Best Model, Saving Model" 173 | 174 | 175 | def create_sets(samples, dists, batch_size): 176 | """ 177 | This function partition fragments according to their sentence-level sentiment. 178 | :param samples: Samples of sentence and their fragments. 179 | :param dists: The distributions of fragment/aspect sentiment given their sentence-level sentiment. 180 | :param batch_size: The batch-size/set-size. 181 | :return: Partitioned sets according to the sentence-level sentiment. 182 | """ 183 | partitioned_set = [list(), list(), list()] 184 | for sample in samples: 185 | for aspect in sample.aspects: 186 | partitioned_set[sample.sent[1]].append(aspect.expression_phrase) 187 | sets = list() 188 | for i in range(len(partitioned_set)): 189 | random.shuffle(partitioned_set[i]) 190 | for j in range(0, len(partitioned_set[i]), batch_size): 191 | new_group = (partitioned_set[i][j:j + batch_size], dists[i]) 192 | sets.append(new_group) 193 | random.shuffle(sets) 194 | return sets 195 | 196 | 197 | def xr_train(model, trainer, train, dev, epochs, mini_batch_size, model_folder, dists, 198 | T_value=1.0, batch_size=450): 199 | """ 200 | This function trains a model using XR loss. 201 | :param model: A model to train. 202 | :param trainer: An optimizer to train with. 203 | :param train: A train set. 204 | :param dev: A validation set. 205 | :param epochs: The number of epochs to train. 206 | :param mini_batch_size: The minibatch size to test. 207 | :param model_folder: The model folder to save the model and the results. 208 | :param dists: The distributions of the sets in training. 209 | :param T_value: The temperature parameter. 210 | :param batch_size: The batch_size/set size. 211 | """ 212 | xr_loss_file = open(model_folder + '/Results/group_loss.txt', 'w') 213 | dev_acc_file = open(model_folder + '/Results/dev_acc.txt', 'w') 214 | dev_loss_file = open(model_folder + "/Results/dev_loss.txt", 'w') 215 | acc, loss, f1 = aspect_test(dev, model, mini_batch_size) 216 | print "Aspect Validation Accuracy:", acc 217 | print "Aspect Validation Loss:", loss 218 | dev_acc_file.write(str(acc) + "\n") 219 | dev_loss_file.write(str(loss) + "\n") 220 | 221 | dev_acc_file.close() 222 | xr_loss_file.close() 223 | dev_loss_file.close() 224 | best_dev = -float("Inf") 225 | for i in range(0, epochs): 226 | groups = create_sets(train, dists, batch_size) 227 | xr_loss = xr_iteration(groups, model, trainer, T_value) 228 | print "Itertation:", str(i + 1) 229 | print "XR Loss", xr_loss 230 | xr_loss_file = open(model_folder + '/Results/xr_loss.txt', 'a') 231 | xr_loss_file.write(str(xr_loss) + "\n") 232 | xr_loss_file.close() 233 | 234 | acc, loss, f1 = aspect_test(dev, model, mini_batch_size) 235 | dev_acc_file = open(model_folder + '/Results/dev_acc.txt', 'a') 236 | dev_loss_file = open(model_folder + "/Results/dev_loss.txt", 'a') 237 | print "Aspect Validation Accuracy:", acc 238 | print "Aspect Validation Loss:", loss 239 | dev_acc_file.write(str(acc) + "\n") 240 | dev_loss_file.write(str(loss) + "\n") 241 | dev_acc_file.close() 242 | dev_loss_file.close() 243 | 244 | if acc > best_dev: 245 | model.save_model(model_folder + "/Model") 246 | best_dev = acc 247 | print "Best Model, Saving Model" 248 | -------------------------------------------------------------------------------- /tree.py: -------------------------------------------------------------------------------- 1 | from aspect import Aspect 2 | 3 | op_tags = ["JJ", "JJR", "JJS", "VB", "VBD", "VBN", "VBG", "VBP", "VBZ"] 4 | noun_tags = ["NN", "NNS", "NNP", "NNPS"] 5 | 6 | 7 | class Tree(object): 8 | """ 9 | # Tree class to represent constituent trees. 10 | """ 11 | 12 | def __init__(self, label, tag=None): 13 | """ 14 | Constructor for the tree object. 15 | :param label: The sentiment label of this node (if exists). 16 | :param tag: A constitue syntax tag of this node. 17 | """ 18 | self._children = [] 19 | self._label = label 20 | self._tag = tag 21 | 22 | self._papa = None 23 | self._height = None 24 | self._phrase = None 25 | self._phraselen = None 26 | self._has_op = False 27 | self._asp_num = 0 28 | 29 | @property 30 | def tag(self): 31 | """ 32 | Get function for the syntax tag of this node. 33 | :return: the syntax tag of this node. 34 | """ 35 | return self._tag 36 | 37 | @tag.setter 38 | def tag(self, value): 39 | """ 40 | Set function of the syntax tag of this node. 41 | :param value: The syntax tag of this node. 42 | """ 43 | self._tag = value 44 | 45 | @property 46 | def phraselen(self): 47 | """ 48 | Get function of the phrase length of this node. 49 | :return: the phrase length of this node. 50 | """ 51 | return self._phraselen 52 | 53 | @property 54 | def phrase(self): 55 | """ 56 | Get function the phrase of this node. 57 | :return: the phrase length of this node. 58 | """ 59 | return self._phrase 60 | 61 | @phrase.setter 62 | def phrase(self, value): 63 | """ 64 | Set function of the phrase of this node. 65 | :param value: the phrase of this node. 66 | """ 67 | self._phraselen = len(value.split(' ')) 68 | self._phrase = value 69 | 70 | @property 71 | def children(self): 72 | """ 73 | Get function of the number of children of this node. 74 | :return: the number of children of this node. 75 | """ 76 | return len(self._children) 77 | 78 | def add_child(self, child): 79 | """ 80 | A function that adds a new child to this node. 81 | :param child: the child to add to the tree. 82 | """ 83 | self._children.append(child) 84 | 85 | def get_child(self, idx): 86 | """ 87 | A function the returns the child in index idx of the root of the tree. 88 | :param idx: the index of the child of the root of the tree. 89 | :return: the child of this node according to the index given. 90 | """ 91 | return self._children[idx] 92 | 93 | @property 94 | def label(self): 95 | """ 96 | Get function for the label of this node. 97 | :return: the label of this node. 98 | """ 99 | return self._label 100 | 101 | @label.setter 102 | def label(self, value): 103 | """ 104 | Set function for the label of this node. 105 | :param value: the label to be set. 106 | """ 107 | self._label = value 108 | 109 | @property 110 | def papa(self): 111 | """ 112 | Get function for the parent of the node. 113 | :return: the parent of the node. 114 | """ 115 | return self._papa 116 | 117 | @papa.setter 118 | def papa(self, value): 119 | """ 120 | Set function for the parent of the node. 121 | :param value: The parent to be set. 122 | """ 123 | self._papa = value 124 | 125 | @property 126 | def height(self): 127 | """ 128 | Get function of the height of this node 129 | :return: The height of this node. 130 | """ 131 | return self._height 132 | 133 | @height.setter 134 | def height(self, value): 135 | """ 136 | Set function of the height of this node. 137 | :param value: The height of this node to be set. 138 | """ 139 | self._height = value 140 | 141 | @staticmethod 142 | def is_leaf(): 143 | """ 144 | Function that returns if the this tree is a leaf. 145 | :return: Always false since this class is not a leaf. 146 | """ 147 | return False 148 | 149 | @property 150 | def has_op(self): 151 | """ 152 | Get function that returns true if this node governs an opinion, else false 153 | :return: A boolean to indicate if this node governs an opinion. 154 | """ 155 | return self._has_op 156 | 157 | @has_op.setter 158 | def has_op(self, value): 159 | """ 160 | Set function to set the boolean that indicates if this node governs an opinion. 161 | :param value: A boolean to indicate if this node governs an opinion. 162 | """ 163 | self._has_op = value 164 | 165 | @property 166 | def asp_num(self): 167 | """ 168 | Get function that returns the number of aspects governed by this node. 169 | :return: The number of aspects governed by this node. 170 | """ 171 | return self._asp_num 172 | 173 | def add_asp(self): 174 | """ 175 | Add one to the number of aspects governed by this node. 176 | """ 177 | self._asp_num += 1 178 | 179 | 180 | class Leaf(object): 181 | """ 182 | The leaf class represents a leaf of a tree. 183 | """ 184 | 185 | def __init__(self, label, word, tag=None): 186 | """ 187 | Constructor. 188 | :param label: The sentiment label of this node (if exists). 189 | :param word: The word represented in this leaf. 190 | :param tag: A constitute syntax tag of this node. 191 | """ 192 | self._label = label 193 | self._word = word 194 | self._papa = None 195 | self._tag = tag 196 | 197 | @property 198 | def tag(self): 199 | """ 200 | Get function for the pos tag of this leaf. 201 | :return: The pos tag of this leaf 202 | """ 203 | return self._tag 204 | 205 | @tag.setter 206 | def tag(self, value): 207 | """ 208 | Set function for the pos tag of this leaf 209 | :param value: The pos tag of this leaf 210 | """ 211 | self._tag = value 212 | 213 | @property 214 | def height(self): 215 | """ 216 | Get function for the height of this node. 217 | :return: 0, since this is a leaf node. 218 | """ 219 | return 0 220 | 221 | @property 222 | def label(self): 223 | """ 224 | Get function for the sentiment label of the leaf. 225 | :return: The sentiment label of the leaf. 226 | """ 227 | return self._label 228 | 229 | @label.setter 230 | def label(self, value): 231 | """ 232 | Set function for the sentiment label of the leaf. 233 | :param value: The label to be set. 234 | """ 235 | self._label = value 236 | 237 | @property 238 | def papa(self): 239 | """ 240 | Get function for the parent of the leaf. 241 | :return: The parent of the leaf. 242 | """ 243 | return self._papa 244 | 245 | @papa.setter 246 | def papa(self, value): 247 | """ 248 | Set function for the parent of the leaf. 249 | :param value: the parent to be set. 250 | """ 251 | self._papa = value 252 | 253 | @property 254 | def word(self): 255 | """ 256 | Get function for the word of the leaf. 257 | :return: the word of the leaf. 258 | """ 259 | return self._word 260 | 261 | @staticmethod 262 | def is_leaf(): 263 | """ 264 | Function to check if the this tree is a leaf. 265 | :return: Always true since this class is a leaf. 266 | """ 267 | return True 268 | 269 | @property 270 | def has_op(self): 271 | """ 272 | Get function that returns a boolean that indicates if the leaf governs an opinion. 273 | :return: Always false since this is a leaf and does not have decedents, and can't govern 274 | an opinion. 275 | """ 276 | 277 | return False 278 | 279 | @property 280 | def asp_num(self): 281 | """ 282 | Get function for the number of aspects linked to this node. 283 | :return: Zero. 284 | """ 285 | return 0 286 | 287 | @property 288 | def phraselen(self): 289 | """ 290 | Get function for the phrase length of this node. 291 | :return: 1, since this is a leaf node. 292 | """ 293 | return 1 294 | 295 | @property 296 | def phrase(self): 297 | """ 298 | Get the phrase of this node. 299 | :return: the phrase of this node 300 | """ 301 | return self._word 302 | 303 | @phrase.setter 304 | def phrase(self, value): 305 | """ 306 | Set the phrase of this node. 307 | :param value: the phrase of this node 308 | """ 309 | self._word = value 310 | 311 | 312 | def count_node_aspects(tree, aspects): 313 | """ 314 | A recursive function that counts the number of aspects governed by each node. 315 | :param tree: A node. 316 | :param aspects: The aspects in a sentence. 317 | """ 318 | if not tree.is_leaf(): 319 | for asp in aspects: 320 | if asp.expression_term in tree.phrase: 321 | tree.add_asp() 322 | for i in range(tree.children): 323 | count_node_aspects(tree.get_child(i), aspects) 324 | 325 | 326 | def find_pot_aspects(tree, pot_aspects, tags): 327 | """ 328 | A recursive function that finds each noun in a sentence and appends them to a list. 329 | :param tree: A node. 330 | :param pot_aspects: A list of the current noun phrases found in a tree. 331 | :param tags: The tags of nouns. 332 | """ 333 | if tree.is_leaf(): 334 | if tree.tag in tags: 335 | pot_aspects.append(Aspect(None, tree.phrase, 6)) 336 | else: 337 | for i in range(tree.children): 338 | child = tree.get_child(i) 339 | find_pot_aspects(child, pot_aspects, tags) 340 | 341 | 342 | def fill_govern_tag(tree, tags, aspects=list()): 343 | """ 344 | A recursive function that sets if a node governs an opinion or not on each node of a tree. 345 | :param tree: A node. 346 | :param tags: A list of tags that might indicate an opinion (verbs or adjectives) 347 | :param aspects: A list of aspects. 348 | :return: Boolean to indicate if the current node governs an opinion or not. 349 | """ 350 | if tree.is_leaf(): 351 | if tree.tag in tags: 352 | for asp in aspects: 353 | if tree.phrase in asp.expression_term or asp.expression_term in tree.phrase: 354 | return False 355 | return True 356 | else: 357 | for i in range(tree.children): 358 | child = tree.get_child(i) 359 | if fill_govern_tag(child, tags, aspects): 360 | tree.has_op = True 361 | if tree.has_op: 362 | return True 363 | return tree.has_op 364 | 365 | 366 | def decompse_sent(tree, aspects): 367 | """ 368 | A recursive function to decompose a sentence according to a few heuristics. 369 | :param tree: A constituent tree of a sentence. 370 | :param aspects: A list of aspects. 371 | """ 372 | if len(aspects) == 1: 373 | if tree.papa is None: 374 | aspects[0].pred_sentiment = tree.label 375 | aspects[0].linked_node = tree 376 | else: 377 | if tree.has_op: 378 | if aspects[0].pred_sentiment is None: 379 | aspects[0].pred_sentiment = tree.label 380 | aspects[0].shared = tree.asp_num 381 | aspects[0].linked_node = tree 382 | 383 | if len(aspects) > 1: 384 | if not tree.is_leaf(): 385 | for i in range(tree.children): 386 | child = tree.get_child(i) 387 | child_asps = list() 388 | for asp in aspects: 389 | if child.is_leaf(): 390 | if asp.expression_term == child.phrase: 391 | child_asps.append(asp) 392 | else: 393 | if asp.expression_term in child.phrase: 394 | child_asps.append(asp) 395 | decompse_sent(child, child_asps) 396 | if tree.has_op or tree.papa is None: 397 | for asp in aspects: 398 | if asp.pred_sentiment is None or asp.linked_node.asp_num == tree.asp_num: 399 | asp.pred_sentiment = tree.label 400 | asp.linked_node = tree 401 | 402 | 403 | -------------------------------------------------------------------------------- /utils.py: -------------------------------------------------------------------------------- 1 | import io 2 | 3 | from aspect import * 4 | from random_inits import * 5 | from tree import Tree, Leaf 6 | 7 | 8 | def read_file_lines(file_name): 9 | """ 10 | A function that reads file lines. 11 | :param file_name: file name to read. 12 | :return: the lines of the file. 13 | """ 14 | reading_file = io.open(file_name, 'r', encoding='utf8') 15 | 16 | lines = reading_file.readlines() 17 | reading_file.close() 18 | return lines 19 | 20 | 21 | def write_file_lines(file_name, lines, mode='w'): 22 | """ 23 | A function that writes lines to a file file. 24 | :param file_name: the file name to write. 25 | :param lines: the lines to write to the file. 26 | """ 27 | output = io.open(file_name, mode, encoding='utf8') 28 | output.write(lines) 29 | output.close() 30 | 31 | 32 | def find_word(tree): 33 | """ 34 | A function that looks for the word in a leaf string format. 35 | :param tree: a node from a tree in a string format. 36 | :return: the word of that leaf. 37 | """ 38 | global counter 39 | word = "" 40 | while ')' != tree[counter]: 41 | word += tree[counter] 42 | 43 | counter += 1 44 | if '-LRB-' in word: 45 | word = word.replace('-LRB-', '(') 46 | if '-RRB-' in word: 47 | word = word.replace('-RRB-', ')') 48 | if '-LSB-' in word: 49 | word = word.replace('-LSB-', '[') 50 | if '-RSB-' in word: 51 | word = word.replace('-RSB-', ']') 52 | if '-LCB-' in word: 53 | word = word.replace('-LCB-', '{') 54 | if '-RCB-' in word: 55 | word = word.replace('-RCB-', '}') 56 | 57 | return word 58 | 59 | 60 | def create_leaf(tree, label, tag=None): 61 | """ 62 | A function that creates a leaf from a tree in a string format. 63 | :param tree: the tree in a string format. 64 | :param label: the sentiment label of this leaf (if exists). 65 | :param tag: the constituent tag of this leaf. 66 | :return: the leaf created according to the word and labels. 67 | """ 68 | global counter 69 | word = find_word(tree) 70 | leaf = Leaf(label, word, tag) 71 | counter += 1 72 | return leaf 73 | 74 | 75 | def convert_line_to_tree(tree): 76 | """ 77 | A recursive function which converts a tree in string format to a an object of tree. 78 | :param tree: a tree in a string format. 79 | :return: the root tree in an object format of a tree. 80 | """ 81 | global counter 82 | root = None 83 | while counter < len(tree): 84 | if ' ' in tree[counter]: 85 | counter += 1 86 | continue 87 | if '(' == tree[counter]: 88 | 89 | if root is None: 90 | 91 | label_start = counter + 1 92 | while ' ' != tree[counter]: 93 | counter += 1 94 | label_end = counter 95 | counter += 1 96 | labels = tree[label_start:label_end].split('<->') 97 | if len(labels) >= 2: 98 | label = int(labels[0]) 99 | tag = labels[1] 100 | else: 101 | if labels[0].isdigit(): 102 | label = int(labels[0]) 103 | tag = None 104 | else: 105 | label = 6 106 | tag = labels[0] 107 | if '(' == tree[counter]: 108 | root = Tree(label, tag) 109 | root.add_child(convert_line_to_tree(tree)) 110 | root.get_child(0).papa = root 111 | else: 112 | leaf = create_leaf(tree, label, tag) 113 | return leaf 114 | else: 115 | 116 | child = convert_line_to_tree(tree) 117 | root.add_child(child) 118 | 119 | elif ')' == tree[counter]: 120 | counter += 1 121 | if root.children == 1: 122 | root = root.get_child(0) 123 | else: 124 | phrase = "" 125 | max_height = 0 126 | for i in range(root.children): 127 | child = root.get_child(i) 128 | phrase += child.phrase + " " 129 | if child.height > max_height: 130 | max_height = child.height 131 | child.papa = root 132 | root.height = max_height + 1 133 | root.phrase = phrase[:-1] 134 | return root 135 | raise RuntimeError 136 | 137 | 138 | def convert_lines_to_trees(lines): 139 | """ 140 | A function which convert a list of trees in a string format to a list of trees in object 141 | format. 142 | :param lines: a list of trees in a string format. 143 | :return: a list of trees in an object format and a mapping from syntax tag to their index. 144 | """ 145 | trees = list() 146 | global counter 147 | for i, line in enumerate(lines): 148 | counter = 0 149 | tree = convert_line_to_tree(line) 150 | trees.append(tree) 151 | return trees 152 | 153 | 154 | def read_glove(file_name): 155 | """ 156 | A function that reads the glove vectors file. 157 | :param file_name: the glove vectors file. 158 | :return: a dictionary to map each word to its key and a numpy array that will contain the 159 | glove vectors, each word will be positioned according to the dictionary mapping that will 160 | be returned as well. 161 | """ 162 | glove_file = open(file_name, 'r') 163 | line = glove_file.readline() 164 | vecs = list() 165 | W2I = dict() 166 | while True: 167 | line = line.strip('\n') 168 | parsed_line = line.split(' ') 169 | 170 | if parsed_line[0] not in W2I: 171 | W2I[parsed_line[0]] = len(W2I) 172 | vecs.append(np.array(parsed_line[1:]).astype(np.float32)) 173 | 174 | line = glove_file.readline() 175 | if line == '': 176 | break 177 | if "UNK" not in W2I: 178 | W2I["UNK"] = len(W2I) 179 | vecs.append(np.random.rand(vecs[0].size)) 180 | return W2I, np.array(vecs) 181 | 182 | 183 | def different_aspects(aspects): 184 | """ 185 | A function that finds aspects which are conflicted, i.e. aspects with the same term, 186 | but a different sentiment. 187 | :param aspects: a list of aspects. 188 | :return: boolean to indicate if there aren't duplicate aspects in the list. 189 | """ 190 | for i in range(len(aspects)): 191 | for j in range(i + 1, len(aspects)): 192 | if aspects[i].gold_sentiment != aspects[j].gold_sentiment \ 193 | and aspects[i].expression_term == aspects[j].expression_term: 194 | aspects[i].conflicted = False 195 | aspects[j].conflicted = False 196 | return True 197 | 198 | 199 | def aspects_sent_convert(lines, no_conflicts=False, aspect_batch=False): 200 | """ 201 | A function that gets lines in sentence-aspect string format and converts them to 202 | AspectBasedSent objects. 203 | :param lines: A list of lines that contains sentence-aspect string format 204 | :param no_conflicts: A boolean to indicate if we should remove the conflicting aspects, similar to previous 205 | work, we remove such aspects. 206 | :param aspect_batch: A boolean to indicate if to return a list samples according to the aspects 207 | and not the sentence (i.e. for each aspect a sample is created with its corresponding sentence, 208 | therefore sentence can appear more than once with different aspects.) 209 | :return: A list of samples containing sentence-aspect objects. 210 | """ 211 | sents_aspects = list() 212 | for line in lines: 213 | line = line.strip() 214 | splitted_lines = line.split("||||") 215 | splitted_sent = splitted_lines[0].split('<->') 216 | sent = [splitted_sent[0]] 217 | for label in splitted_sent[1:]: 218 | sent.append(int(label)) 219 | aspects = list() 220 | for aspect in splitted_lines[1:]: 221 | aspect_dits = aspect.split('<->') 222 | 223 | aspects.append(Aspect(aspect_dits[0], aspect_dits[1], int(aspect_dits[2]))) 224 | if no_conflicts: 225 | new_aspects = list() 226 | different_aspects(aspects) 227 | for asp in aspects: 228 | if asp.conflicted: 229 | new_aspects.append(asp) 230 | aspects = new_aspects 231 | if aspect_batch: 232 | for asp in aspects: 233 | aspect_sent = AspectBasedSent(sent, [asp]) 234 | sents_aspects.append(aspect_sent) 235 | else: 236 | aspect_sent = AspectBasedSent(sent, aspects) 237 | sents_aspects.append(aspect_sent) 238 | return sents_aspects 239 | --------------------------------------------------------------------------------