https://github.com/wearetyomsmnv/berterpretation
Bert models interpretation and security checker
https://github.com/wearetyomsmnv/berterpretation
adversarial-attacks aisecurity bert mlsecops mlsecurity
Last synced: 6 months ago
JSON representation
Bert models interpretation and security checker
- Host: GitHub
- URL: https://github.com/wearetyomsmnv/berterpretation
- Owner: wearetyomsmnv
- License: mit
- Created: 2024-07-22T22:12:27.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-24T19:10:17.000Z (almost 2 years ago)
- Last Synced: 2024-12-29T15:14:57.866Z (over 1 year ago)
- Topics: adversarial-attacks, aisecurity, bert, mlsecops, mlsecurity
- Language: Python
- Homepage:
- Size: 40 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
berterpretation
Погрузитесь в глубины BERT с помощью мощных инструментов интерпретации.
Особенности •
Установка •
Использование •
Требования •
Структура •
Лицензия
---
## 🌟 Особенности
- 🧠 **Анализ BERT**: Загрузка и использование предобученных моделей BERT
- 💬 **Интерактивный режим**: Анализ текстовых сообщений в реальном времени
- 👁️ **Визуализация внимания**: Наглядное представление механизма внимания BERT
- 🔍 **Integrated Gradients**: Глубокий анализ важности токенов
- 🛠️ **Интеграция с LIT**: Расширенный анализ с помощью Language Interpretability Tool
- ! **Длина тензоров**: 512
## 🚀 Установка
1. **Клонирование репозитория**:
```bash
git clone https://github.com/wearetyomsmnv/berterpretation/
cd berterpretation
```
2. **Создание виртуального окружения**:
```bash
python -m venv venv
source venv/bin/activate # На Windows: venv\Scripts\activate
```
3. **Установка зависимостей**:
```bash
pip install -r requirements.txt
```
4. **Настройка меток и цветов для них**:
Каждая модель умеет классифицровать по определённым меткам, их необходимо прописать в коде перед запуском скрипта:
```python
src/scripts.py
valid_labels = ["about", "........ добавьте свои"]
```
- в этой строке укажите свои метки
Также, вы можете определить цвета для меток:
```python
src/scripts.py
color_map = {
'humor': Fore.CYAN,
'своя_метка': Fore.YELLOW,
'своя_метка': Fore.GREEN,
'своя_метка': Fore.LIGHTGREEN_EX,
'своя_метка': Fore.LIGHTBLUE_EX,
'своя_метка': Fore.LIGHTCYAN_EX,
'своя_метка': Fore.LIGHTYELLOW_EX,
'своя_метка': Fore.LIGHTMAGENTA_EX,
'своя_метка': Fore.LIGHTRED_EX,
'своя_метка': Fore.LIGHTWHITE_EX,
'своя_метка': Fore.MAGENTA,
'своя_метка': Fore.LIGHTMAGENTA_EX,
'своя_метка': Fore.RED,
'своя_метка': Fore.LIGHTRED_EX,
'своя_метка': Fore.BLUE,
'своя_метка': Fore.LIGHTBLUE_EX,
'своя_метка': Fore.CYAN,
'своя_метка': Fore.LIGHTCYAN_EX,
'своя_метка': Fore.BLUE,
'своя_метка': Fore.WHITE,
'своя_метка': Fore.RED,
'своя_метка': Fore.LIGHTRED_EX
}
```
- меняем на свои метки, тем самым окрашивая их
## 🖥️ Использование

### Интерактивный режим
```bash
python main.py --interactive --model path/to/your/model
```

### Проверки безопасности
```bash
python main.py --interactive --model path/to/your/model --check_security
```

### Режим LIT
```bash
python main.py --lit --model path/to/your/model
```
### Выбор устройства
```bash
python main.py --device [gpu,cpu]
```
## 📋 Требования
- Python 3.7+
- PyTorch
- Transformers
- Captum
- Matplotlib
- textattack
Полный список зависимостей
См. файл `requirements.txt`
## 📁 Структура проекта
```
berterpretation/
├── src/ # Скрипты
├── main.py # Основной скрипт
├── README.md # Документация
└── requirements.txt # Зависимости
```
## 📄 Лицензия
Этот проект лицензирован под [MIT License](LICENSE).
## 🤝 Вклад в проект
Мы приветствуем вклад сообщества! Если у вас есть идеи для улучшения:
1. Форкните репозиторий
2. Создайте свою ветку (`git checkout -b feature/AmazingFeature`)
3. Зафиксируйте изменения (`git commit -m 'Add some AmazingFeature'`)
4. Отправьте изменения (`git push origin feature/AmazingFeature`)
5. Откройте Pull Request
## 👨💻 Авторы
- **Артём Семенов** - [wearetyomsmnv](https://github.com/wearetyomsmnv)
---
Создано с ❤️, wearetyomsmnv.