
# distilbert-depression-base

This model is a fine-tuned version of [distilbert-base-uncased](https://huggingface.co/distilbert-base-uncased) trained on CLPsych 2015 and evaluated on a scraped dataset from Twitter to detect potential users in Twitter for depression.
It achieves the following results on the evaluation set:
- Evaluation Loss: 0.64
- Accuracy: 0.65
- F1: 0.70
- Precision: 0.61
- Recall: 0.83
- AUC: 0.65


## Intended uses & limitations

Feed a corpus of tweets to the model to generate label if input is indicative of a depressed user or not. Label 1 is depressed, Label 0 is not depressed.

Limitation: All token sequences longer than 512 are automatically truncated. Also, training and test data may be contaminated with mislabeled users.

### How to use

You can use this model directly with a pipeline for sentiment analysis:

```python
>>> from transformers import DistilBertTokenizerFast, AutoTokenizer
>>> tokenizer = AutoTokenizer.from_pretrained('distilbert-base-uncased')
>>> from transformers import DistilBertForSequenceClassification
>>> model = DistilBertForSequenceClassification.from_pretrained(r"distilbert-depression-base")
>>> from transformers import pipeline
>>> classifier = pipeline("sentiment-analysis", model=model, tokenizer=tokenizer)
>>> tokenizer_kwargs = {'padding':True,'truncation':True,'max_length':512}
>>> result=classifier('pain peko',**tokenizer_kwargs) #For truncation to apply in the pipeline. 
>>> #Should note that the string passed as the input can be a corpus of tweets concatenated together into one document.

[{'label': 'LABEL_1', 'score': 0.5048992037773132}]
```

Otherwise, download the files and specify within the pipeline the path to the folder that contains the config.json, pytorch_model.bin, and training_args.bin

## Training hyperparameters

The following hyperparameters were used during training:
- learning_rate: 3.39e-05
- train_batch_size: 16
- eval_batch_size: 16
- weight_decay: 0.13
- num_epochs: 3.0

## Training results


| Epoch | Training Loss | Validation Loss | Accuracy |    F1    | Precision |  Recall  |    AUC   |
|:-----:|:-------------:|:---------------:|:--------:|:--------:|:---------:|:--------:|:--------:|
| 1.0   | 0.68          | 0.66            | 0.59     | 0.63     | 0.56      | 0.73     | 0.59     |
| 2.0   | 0.60          | 0.68            | 0.63     | 0.69     | 0.59      | 0.83     | 0.63     |
| 3.0   | 0.52          | 0.67            | 0.64     | 0.66     | 0.62      | 0.72     | 0.65     |
{"language": ["en"], "license": "mit", "tags": ["text", "Twitter"], "datasets": ["CLPsych 2015"], "metrics": ["accuracy, f1, precision, recall, AUC"], "model-index": [{"name": "distilbert-depression-base", "results": []}]}
transformers pytorch distilbert text-classification text Twitter en license:mit autotrain_compatible endpoints_compatible region:us
TAGS
#transformers #pytorch #distilbert #text-classification #text #Twitter #en #license-mit #autotrain_compatible #endpoints_compatible #region-us 

distilbert-depression-base
==========================


This model is a fine-tuned version of distilbert-base-uncased trained on CLPsych 2015 and evaluated on a scraped dataset from Twitter to detect potential users in Twitter for depression.
It achieves the following results on the evaluation set:


* Evaluation Loss: 0.64
* Accuracy: 0.65
* F1: 0.70
* Precision: 0.61
* Recall: 0.83
* AUC: 0.65


Intended uses & limitations
---------------------------


Feed a corpus of tweets to the model to generate label if input is indicative of a depressed user or not. Label 1 is depressed, Label 0 is not depressed.


Limitation: All token sequences longer than 512 are automatically truncated. Also, training and test data may be contaminated with mislabeled users.


### How to use


You can use this model directly with a pipeline for sentiment analysis:


Otherwise, download the files and specify within the pipeline the path to the folder that contains the URL, pytorch\_model.bin, and training\_args.bin


Training hyperparameters
------------------------


The following hyperparameters were used during training:


* learning\_rate: 3.39e-05
* train\_batch\_size: 16
* eval\_batch\_size: 16
* weight\_decay: 0.13
* num\_epochs: 3.0


Training results
----------------




### How to use


You can use this model directly with a pipeline for sentiment analysis:


Otherwise, download the files and specify within the pipeline the path to the folder that contains the URL, pytorch\_model.bin, and training\_args.bin


Training hyperparameters
------------------------


The following hyperparameters were used during training:


* learning\_rate: 3.39e-05
* train\_batch\_size: 16
* eval\_batch\_size: 16
* weight\_decay: 0.13
* num\_epochs: 3.0


Training results
----------------
TAGS
#transformers #pytorch #distilbert #text-classification #text #Twitter #en #license-mit #autotrain_compatible #endpoints_compatible #region-us 
 ### How to use


You can use this model directly with a pipeline for sentiment analysis:


Otherwise, download the files and specify within the pipeline the path to the folder that contains the URL, pytorch\_model.bin, and training\_args.bin


Training hyperparameters
------------------------


The following hyperparameters were used during training:


* learning\_rate: 3.39e-05
* train\_batch\_size: 16
* eval\_batch\_size: 16
* weight\_decay: 0.13
* num\_epochs: 3.0


Training results
----------------
passage: TAGS
#transformers #pytorch #distilbert #text-classification #text #Twitter #en #license-mit #autotrain_compatible #endpoints_compatible #region-us 
### How to use


You can use this model directly with a pipeline for sentiment analysis:


Otherwise, download the files and specify within the pipeline the path to the folder that contains the URL, pytorch\_model.bin, and training\_args.bin


Training hyperparameters
------------------------


The following hyperparameters were used during training:


* learning\_rate: 3.39e-05
* train\_batch\_size: 16
* eval\_batch\_size: 16
* weight\_decay: 0.13
* num\_epochs: 3.0


Training results
----------------