A library for stance detection and target extraction in text data.
Project description
Stance Target Mining
A tool for mining stance targets from a corpus of documents.
Installation
pip install stancemining
Documentation
Documentation is available at stancemining.readthedocs.io
Usage
To get stance targets and stance from a corpus of documents
import stancemining
model = stancemining.StanceMining()
document_df = model.fit_transform(docs)
target_info_df = model.get_target_info()
To get stance target, stance, and stance trends from a corpus of documents
import stancemining
model = stancemining.StanceMining()
document_df = model.fit_transform(docs)
trend_df = stancemining.get_trends_for_all_targets(document_df)
StanceMining App
This library comes with a web app to explore the results of the output.
Here is a video demo of the app: StanceMining App Demo
To deploy stancemining app
The should be either an absolute path, or a path relative to the app directory where the compose.yaml file is located.
It should contain a doc_stance directory with the output of the fit_transform method saved as .parquet.zstd files, and a target_trends directory with the outputs from the infer_stance_trends_for_all_targets or infer_stance_trends_for_target method saved as .parquet.zstd files. There can be multiple files in each directory, and the app will automatically load all of them and concatenate them.
If you need authentication for the app, you can set the environment variable STANCE_AUTH_URL_PATH to the URL of your authentication service (e.g., myauth.com/login). That path must accept a POST request with a JSON body containing username and password fields, and return a JSON response with a token field.
If you do not need authentication, you can leave the environment variable unset.
export STANCE_DATA_PATH=<your-data-path>
export STANCE_AUTH_URL_PATH=<your-auth-url/login>
docker compose -f ./app/compose.yaml up
To reproduce experimental results
Rename ./config/config_default.yaml to ./config/config.yaml and set the parameters in the file.
Run:
python ./experiments/scripts/main.py
You may need to setup a WanDB project. Run
python ./experiments/scripts/get_results.py
To have the metrics written to a latex table saved as a tex file.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file stancemining-0.2.0.tar.gz.
File metadata
- Download URL: stancemining-0.2.0.tar.gz
- Upload date:
- Size: 45.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbb543661636f1c81a626e0a2c5f35013c446e5e9ffe99b5b91f5c8f3128c4c0
|
|
| MD5 |
b4c58511d493887f0f3448e9d098c1f4
|
|
| BLAKE2b-256 |
2cadc286e52897beff33bd5fddc1558aa6bb013d457b69243317c4bc7ff9ab23
|
File details
Details for the file stancemining-0.2.0-py3-none-any.whl.
File metadata
- Download URL: stancemining-0.2.0-py3-none-any.whl
- Upload date:
- Size: 56.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62d1f52986101ee9cf6474ad566590a8b2a3d571837932abdcf43d96753b0b86
|
|
| MD5 |
285b11de1b3689ad8a5b9b704090fa53
|
|
| BLAKE2b-256 |
286f4a1a4697dc59587f5638ac0a30238a78975af4833c140ce835ad220e8880
|