diff --git a/README.md b/README.md index e69de29..1f2e11d 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,31 @@ +# Classifying Evolutionary Forces in Languages Change + +A fundamental problem in research into language and cultural change is the difficulty of +distinguishing processes of stochastic drift (also known as neutral evolution) from +processes that are subject to certain selection pressures. In this article, we describe a +new technique based on Deep Neural Networks, in which we reformulate the detection of +evolutionary forces in cultural change as a binary classification task. Using Residual +Networks for time series trained on artificially generated samples of cultural change, we +demonstrate that this technique is able to efficiently, accurately and consistently learn +which aspects of the time series are distinctive for drift and selection. We compare the +model with a recently proposed statistical test, the Frequency Increment Test, and show +that the neural time series classification system provides a possible solution to some of +the key problems of this test. + +## Data + +Code to reconstruct the past-tense data set can be obtained from +https://github.com/mnewberry/ldrift. To run the past-tense analysis in +`notebooks/past-tense.ipynb`, save the frequency list under `data/coha-past-tense.txt`. + +## Requirements +All code is implemented in Python 3.7. A detailed list of the requirements to run the code +can be found in the `requirements.txt` file. + +## Training + +To train your own models, run `src/train.py` and follow the instructions therein. + +--- +Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License. + diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..cffe68f --- /dev/null +++ b/requirements.txt @@ -0,0 +1,12 @@ +numpy==1.18.1 +pandas==0.25.3 +pytorch==1.4.0 +tqdm==4.42.1 +matplotlib==3.1.2 +scikit-learn==0.22.1 +arviz==0.6.1 +scipy==1.4.1 +numba==0.47.0 +seaborn==0.10.0 +pystan==2.19.1.1 +termcolor==1.1.0