fine grained sentiment app streamlit
1.0.0
此存储库包含现有交互式应用程序的 Streamlit 等效项,它解释了细粒度情感分类的结果,本中系列中对此进行了详细描述。
实现了许多分类器,并使用 LIME 解释器解释了它们的结果。分类器在斯坦福情感树库 (SST-5) 数据集上进行训练。类标签可以是[1, 2, 3, 4, 5]
中的任意一个,其中1
非常负, 5
非常正。
Streamlit 是一个轻量级、简约的框架,用于用 Python 构建仪表板。 Streamlit 的主要重点是为开发人员提供使用尽可能少的代码行快速构建 UI 设计原型的能力。部署 Web 应用程序通常需要的所有繁重工作(例如定义后端服务器及其路由、处理 HTTP 请求等)都从用户手中抽象出来。因此,无论开发人员的经验如何,快速实现 Web 应用程序都变得非常容易。
首先,设置虚拟环境并从requirements.txt
安装:
python3 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt
如需进一步开发,只需激活现有的虚拟环境即可。
source venv/bin/activate
设置并激活虚拟环境后,使用以下命令运行应用程序。
streamlit run app.py
输入一个句子,选择分类器类型,然后单击Explain results
按钮。然后我们可以观察有助于分类器预测特定类标签的特征(即单词或标记)。
前端应用程序接收文本示例并输出不同方法的 LIME 解释。该应用程序是使用 Heroku 在此位置部署的:https://sst5-explainer-streamlit.herokuapp.com/
使用您自己的文本示例(如下所示)并查看细粒度情感结果的解释!
注意:由于基于 PyTorch 的模型(Flair 和因果变换器)运行推理的成本相当昂贵(它们需要 GPU),因此未部署这些方法。但是,它们可以在应用程序的本地实例上运行。