README.md (3284B)
1 Counterfacto 2 ============ 3 4 Counterfactual (noun) 5 6 Definition: the tendency to create possible alternatives to life events 7 that have already occurred; something that is contrary to what actually 8 happened. 9 10 Effects: it starts off with disappointment, then one will be able to 11 uncover insights or knowledge that can be used to enhance future 12 performance, leading to a better outcome in life. 13 14 ----------------------------------------------------------------------- 15 16 Counterfacto is a small software tool that can analyse search results 17 on twitter to highlight counterfactual statements on certain topics. 18 19 This tool is used by PIEnews.eu researchers for sentiment analysis 20 about poverty and other related topics, to understand actual stories 21 elaborated as counterfactual. 22 23 We deem such a tool as a useful experiment, considering the importance 24 of counterfactual analysis for political sentiment assessments and 25 focus on news stories. 26 27 Dependencies 28 ------------ 29 30 Python is required along the following packages: 31 32 ``` 33 python-twitter python-nltk 34 ``` 35 36 Your distro may have an outdated nltk (less than 3.2) without the 37 perceptron module, in that case an update from `pip` is needed: 38 39 ``` 40 pip install nltk --upgrade 41 ``` 42 43 After installing the necessary python modules, run `make`, which will 44 then download the needed data for nltk, and tell you how to use your 45 twitter credentials in counterfacto 46 47 Running the web edition of counterfacto 48 --------------------------------------- 49 50 To run counterfacto along with its web interface, you will need 51 additional dependencies: 52 53 ``` 54 python-flask 55 ``` 56 57 Usage 58 ----- 59 60 ``` 61 usage: ./counterfacto [-a account] [-f tweetfile] [-s searchterm] 62 ``` 63 64 The web interface can be ran with (port defaults to 5000): 65 66 ``` 67 usage: ./counterfacto-web [-p port] 68 ``` 69 70 References 71 ---------- 72 73 * [Learning Representations for Counterfactual Inference (2016)](http://jmlr.org/proceedings/papers/v48/johansson16.pdf) 74 * [Bounding and Minimizing Counterfactual Error (2016)](https://arxiv.org/abs/1606.03976) 75 * [Counterfactuals in the Language of Social Media: A Natural Language Processing Project in Conjunction with the World Well Being Project (2015)](http://www.seas.upenn.edu/~cse400/CSE400_2015_2016/reports/report_15.pdf) 76 77 Licensing 78 --------- 79 80 Counterfacto is Copyright (C) 2016-2017 by the Dyne.org Foundation 81 as part of the PIEnews project 82 83 Software written by Ivan J. <parazyd@dyne.org> 84 with contributions by Denis Roio <jaromil@dyne.org> 85 86 This source code is free software; you can redistribute it and/or 87 modify it under the terms of the GNU Public License as published by the 88 Free Software Foundation; either version 3 of the License, or (at your 89 option) any later version. 90 91 This source code is distributed in the hope that it will be useful, but 92 WITHOUT ANY WARRANTY; without even the implied warranty of 93 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Please refer to 94 the GNU Public License for more details. 95 96 You should have received a copy of the GNU Public License along with 97 this source code; if not, write to: Free Software Foundation, Inc., 98 Mass Ave, Cambridge, MA 02139, USA. 99 100 This project has received funding from the European Union’s Horizon 2020 101 Programme for research, technological development and demonstration under 102 grant agreement nr. 687922