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.7.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

archetyper-1.1.7-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for archetyper-1.1.7.tar.gz
Algorithm Hash digest
SHA256 a7ab7d85fb0af8d83e95af7115ff292ea74ea19b1e9b561183190ff5df96f3c7
MD5 1b5477df4bbb464e642e3f52fbee2192
BLAKE2b-256 a3331ea3c9447d637b8e5970e724265bfa85cf89102456faa7f7573d0a92e066

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for archetyper-1.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 0e98ab2333cc8c8d647860c9d5bec3567642dbdeb14452d9fb98000a3619a618
MD5 9c28c537c0ec17bd301788af0fcfa01c
BLAKE2b-256 2dd444a9638130c50cd5b52f77d6b265a1c86e9e5911f8ed9a6708cc34735fc9

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