Dagobert42's picture
introducing new top classifier
6015c85
raw
history blame contribute delete
No virus
1.81 kB
import streamlit as st
from streamlit import session_state
from random import choice
from annotated_text import annotated_text
from resources import *
from helpers import *
if "counter" not in session_state:
session_state.counter = 0
if "augment" not in session_state:
session_state.augment = False
base_model = "xlnet-base-cased"
sentences = load_sentences()
baseline_classifier = load_model(f"Dagobert42/{base_model}-biored-finetuned")
augmented_classifier = load_model(f"Dagobert42/{base_model}-biored-augmented-super")
st.title("Semantic Frame Augmentation")
st.subheader("Analysing challenging domains with only a handful of examples")
st.write(f"""This space uses models based on [XLNet](https://huggingface.co/xlnet-base-cased) to identify medical entities in a text.
The following is a random sentence from [bigbio/biored](https://huggingface.co/datasets/bigbio/biored).
It was tagged by a model which was trained on just 200 examples from the original dataset.
It is very possible that there are some mistakes.
""")
txt = sentences[session_state.counter]
st.write("Example with data augmentation:" if session_state.augment else "Example without data augmentation:")
tokens = augmented_classifier(txt) if session_state.augment else baseline_classifier(txt)
annotated_text(annotate_sentence(txt, tokens))
st.write(annotate_sentence(txt, tokens))
st.write("Now try the augmented model. Hopefully it's a bit better :)")
def refresh_model():
session_state.augment = not session_state.augment
st.toggle("augmentations on" if session_state.augment else "augmentations off", session_state.augment, on_change=refresh_model)
st.write("Or load another sentence")
def refresh_example():
session_state.counter += 1
st.button( ":twisted_rightwards_arrows:", on_click=refresh_example)