sivareddyg / QuestionAnsweringOverFB

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

QuestionAnsweringOverFB

For details, please read our paper:

Kun Xu, Siva Reddy, Yansong Feng, Songfang Huang and Dongyan Zhao. Question Answering on Freebase via Relation Extraction and Textual Evidence. In Proceedings of ACL-2016.

@inproceedings{kun_question_2016, author = {Kun Xu and Siva Reddy and Yansong Feng and Songfang Huang and Dongyan Zhao}, title = {{Question Answering on Freebase via Relation Extraction and Textual Evidence}}, booktitle={Proceedings of the Association for Computational Linguistics (ACL 2016)}, month = {August}, year = {2016}, address = {Berlin, Germany}, publisher = {Association for Computational Linguistics}, url = {http://sivareddy.in/papers/kun2016question.pdf}, }

Before installation

Let's setup Freebase server first.

  1. Install virtuso. See http://virtuoso.openlinksw.com/dataspace/doc/dav/wiki/Main/VOSUbuntuNotes
  2. Download our Freebase version at https://www.dropbox.com/sh/zxv2mos2ujjyxnu/AAACCR4AJ1MMTCe8ElfBN39Ha?dl=0
  3. In a terminal, cd to the folder which you just downloaded
  4. Run "pwd"
  5. Replace /dev/shm/vdb/ in virtuoso.ini with the output of Step 4.
  6. Run "virtuoso-t -f"

Installation

Run the following commands for installation

git clone https://github.com/sivareddyg/QuestionAnsweringOverFB.git

sh install.sh

Replicating experiments in the paper

To reproduce our results, there are two main steps, i.e., KB-based joint inference and Wiki-based inference. You should perform the inferences in the following order

Perform the Freebase based joint inference.

java -cp target/classes:target/lib/* Joint_EL_RE/Test

This will write the output in resources/JointInference/Test/joint_inference.predicted.final

Perform the wikipedia based inference

java -cp target/classes:target/lib/* InferenceOverWiki/Test

This will write the output in resources/WikiInference/Test/predicted.8_30

To train your own models:

The following command will split questions to subquestions and store them in resources/JointInference/Train/train.data. It also creates a feature file at resources/RE/param/params.69 required to train SVMRank model for relation prediction.

java -cp target/classes:target/lib/* Joint_EL_RE/Train

To build the relation extraction model resources/tool/libsvm-ranksvm-3.20/svm.model, run the following command. [TODO:add the commands]. This model file is required by Joint_EL_RE/Test

About


Languages

Language:C 26.9%Language:Java 24.5%Language:C++ 23.6%Language:HTML 9.1%Language:Python 7.3%Language:M4 7.3%Language:Makefile 0.9%Language:MATLAB 0.2%Language:Shell 0.0%