|
--- |
|
title: Sentiment Analysis on Encrypted Data with FHE |
|
emoji: 🥷💬 |
|
colorFrom: yellow |
|
colorTo: yellow |
|
sdk: gradio |
|
sdk_version: 3.2 |
|
app_file: app.py |
|
pinned: true |
|
tags: |
|
- FHE |
|
- PPML |
|
- privacy |
|
- privacy preserving machine learning |
|
- homomorphic encryption |
|
- security |
|
python_version: 3.9 |
|
duplicated_from: zama-fhe/encrypted_sentiment_analysis |
|
--- |
|
|
|
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference |
|
|
|
# Sentiment Analysis With FHE |
|
|
|
## Running the application on your machine |
|
|
|
In this directory, ie `sentiment-analysis-with-transformer`, you can do the following steps. |
|
|
|
### Do once |
|
|
|
- First, create a virtual env and activate it: |
|
|
|
```bash |
|
python3.9 -m venv .venv |
|
source .venv/bin/activate |
|
``` |
|
|
|
- Then, install required packages: |
|
|
|
```bash |
|
pip3 install -U pip wheel setuptools --ignore-installed |
|
pip3 install -r requirements.txt --ignore-installed |
|
``` |
|
|
|
- If not on Linux, or if you want to compile the FHE algorithms by yourself: |
|
|
|
```bash |
|
python3 compile.py |
|
``` |
|
|
|
Check it finish well (with a "Done!"). |
|
|
|
### Do each time you relaunch the application |
|
|
|
- Then, in a terminal Tab 1: |
|
|
|
```bash |
|
source .venv/bin/activate |
|
uvicorn server:app |
|
``` |
|
|
|
Tab 1 will be for the Server side. |
|
|
|
- And, in another terminal Tab 2: |
|
|
|
```bash |
|
source .venv/bin/activate |
|
python3 app.py |
|
``` |
|
|
|
Tab 2 will be for the Client side. |
|
|
|
## Interacting with the application |
|
|
|
Open the given URL link (search for a line like `Running on local URL: http://127.0.0.1:8888/` in your Terminal 2). |
|
|
|
## Training a new model |
|
|
|
The notebook SentimentClassification.ipynb provides a way to train a new model. |
|
|
|
Before running the notebook, you need to download the data. |
|
|
|
```bash |
|
bash download_data.sh |
|
``` |
|
|