Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Authors: Julian TszKin Chan and Weifeng Zhong

Please email all comments/questions to julian.chan [AT] or weifeng.zhong [AT]

What is the Policy Change Index for Crackdown (PCI-Crackdown)?

The summer of 2019 has seen a series of protests in Hong Kong that persists to the time of writing. The movement began as an opposition to a proposed extradition bill --- which, if enacted, would allow the extradition of alleged criminals in Hong Kong to mainland China --- and it soon turned into violent confrontations between protesters and the police. As the crisis escalated, the Chinese government ratcheted up its pressure campaign on Hong Kong, spurring speculation of a Tiananmen-like, military crackdown on the semi-autonomous city.

The Policy Change Index for Crackdown (PCI-Crackdown) proposes a machine learning method to predict if and when such a crackdown will take place. The algorithm takes as input protest-related articles published in the People's Daily --- the official newspaper of the Communist Party of China --- and generates a daily prediction of how close in time the Hong Kong protests might be to another June 4 crackdown.

The PCI-Crackdown is built on an inevitable relationship between state propaganda and state suppression. That is, even though authoritarian regimes do not have free and fair elections, public opinion still matters to the government, especially regarding such contentious, destructive "policies" as military crackdowns. In the days of the 1989 Tiananmen Square protests leading up to the June 4 crackdown, China's state-run media had drastically changed their rhetoric on the protests. The rationale for the negative campaign is straightforward: Conditional on a decision to crack down, preparing the public for the action ahead of time would reduce the associated political costs. Therefore, while we may not know the conditions under which the state decides to crack down on protests, we may still be able to foresee an imminent suppression if a significant propaganda buildup is detected.

For details about the methodology and findings of this project, please see the following research paper:

  • Chan, Julian TszKin and Weifeng Zhong. 2020. "Predicting Authoritarian Crackdowns: A Machine Learning Approach" Mercatus Working Paper (latest version available here).


Results will change as the underlying models improve. A fundamental reason for adopting open source methods in this project is so that people from all backgrounds can contribute to the models that our society uses to assess and predict changes in public policy; when community-contributed improvements are incorporated, the model will produce better results.

Getting Started

The first step for everyone (users and developers) is to open a free GitHub account. And then you can specify how you want to "watch" the PCI repository by clicking on the Watch button in the upper-right corner of the repository's main page.

The second step is to get familiar with the PCI-Crackdown repository by reading the documentation.

If you want to ask a question or report a bug, create a new issue here and post your question or tell us what you think is wrong with the repository.

If you want to request an enhancement, create a new issue here and provide details on what you think should be added to the repository.

Citing the Policy Change Index for Crackdown (PCI-Crackdown)

Please cite the source of the latest Policy Change Index for Crackdown (PCI-Crackdown) by the website:

For academic work, please cite the following research paper:

  • Chan, Julian TszKin and Weifeng Zhong. 2019. "Predicting Authoritarian Crackdowns: A Machine Learning Approach" Mercatus Working Paper (latest version available here).