Skip to main content

Create and quantify 'archetypes' of your constructs. A dictionary-like method run amok!

Project description

Archetypes!

This is a library developed to run what might be called a "souped-up dictionary method" for psychological text analysis. Or any kind of text analysis, really.

The core idea behind Archetypes is that you pre-define a set of prototypical sentences that reflect the construct that you are looking to measure in a body of text. Using modern contextual embeddings, then, this library will aggregate your prototypes into an archetypal representation of your construct. Then, you can quantify texts in your corpus for their semantic similarity to your construct(s) of interest.

Note: For the curious: no, this approach not inspired by anything Jungian in nature. In the past, I've said a few things about Jungian archetypes that have inspired scholars to write more than a few frustrated e-mails to me. Apologies to the Jungians.

Installation

This package is easily installable via pip via the following command:

pip install archetyper

Requirements

If you want to run the library without pip installing as shown above, you will need to first install the following packages:

  • numpy
  • tqdm
  • torch
  • sentence_transformers
  • nltk

You can try to install these all in one go by running the following command from your terminal/cmd:

pip install numpy tqdm torch sentence_transformers nltk

Examples

I have provided an example notebook in this repo that walks through the basic process of using this library, along with demonstrations of a few important "helper" functions to help you evaluate the statistical/psychometric qualities of your archetypes.

Citation

This method is originally described in this paper:

@inproceedings{varadarajan-etal-2024-archetypes,
    title = "Archetypes and Entropy: Theory-Driven Extraction of Evidence for Suicide Risk",
    author = "Varadarajan, Vasudha  and
      Lahnala, Allison  and
      Ganesan, Adithya V. and
      Dey, Gourab  and
      Mangalik, Siddharth  and
      Bucur, Ana-Maria  and
      Soni, Nikita  and
      Rao, Rajath  and
      Lanning, Kevin  and
      Vallejo, Isabella  and
      Flek, Lucie  and
      Schwartz, H. Andrew  and
      Welch, Charles  and
      Boyd, Ryan L.",
    editor = "Yates, Andrew  and
      Desmet, Bart  and
      Prud{'}hommeaux, Emily  and
      Zirikly, Ayah  and
      Bedrick, Steven  and
      MacAvaney, Sean  and
      Bar, Kfir  and
      Ireland, Molly  and
      Ophir, Yaakov",
    booktitle = "Proceedings of the 9th Workshop on Computational Linguistics and Clinical Psychology (CLPsych 2024)",
    month = mar,
    year = "2024",
    address = "St. Julians, Malta",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2024.clpsych-1.28",
    pages = "278--291",
    abstract = "Research on psychological risk factors for suicide has developed for decades. However, combining explainable theory with modern data-driven language model approaches is non-trivial. In this study, we propose and evaluate methods for identifying language patterns aligned with theories of suicide risk by combining theory-driven suicidal archetypes with language model-based and relative entropy-based approaches. Archetypes are based on prototypical statements that evince risk of suicidality while relative entropy considers the ratio of how unusual both a risk-familiar and unfamiliar model find the statements. While both approaches independently performed similarly, we find that combining the two significantly improved the performance in the shared task evaluations, yielding our combined system submission with a BERTScore Recall of 0.906. Consistent with the literature, we find that titles are highly informative as suicide risk evidence, despite the brevity. We conclude that a combination of theory- and data-driven methods are needed in the mental health space and can outperform more modern prompt-based methods.",
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

archetyper-1.1.4.tar.gz (10.3 kB view details)

Uploaded Source

Built Distribution

archetyper-1.1.4-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file archetyper-1.1.4.tar.gz.

File metadata

  • Download URL: archetyper-1.1.4.tar.gz
  • Upload date:
  • Size: 10.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for archetyper-1.1.4.tar.gz
Algorithm Hash digest
SHA256 463fbacfc855e925617e8d765d904693afaf49d87dc58dff32ffd1abeab9dcf8
MD5 9d2cd9a078191a6dca088947d92224b7
BLAKE2b-256 7d58fb109c41200d421fae0efc98bea71c399fb8aa96ff36ca39c4341407e4ca

See more details on using hashes here.

File details

Details for the file archetyper-1.1.4-py3-none-any.whl.

File metadata

  • Download URL: archetyper-1.1.4-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for archetyper-1.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 335855f6e1e99d77d7634f94814f12386ef93989cec0c2c4f4e60361872fe80b
MD5 73d5319c936a09e3be6b0fd9de501aa4
BLAKE2b-256 ec56f7bc0e97804dfc82772843bd92f317e01bc98aea881f05d833d451e6394a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page