akdeniz27 commited on
Commit
bc06b7e
·
1 Parent(s): 32e294e

Update for TNER Model and Aggregation simplification

Browse files
Files changed (1) hide show
  1. app.py +7 -24
app.py CHANGED
@@ -8,10 +8,9 @@ import spacy
8
 
9
  example_list = [
10
  "Mustafa Kemal Atatürk 1919 yılında Samsun'a çıktı.",
11
- """Dünya çapında 40 milyondan fazla insana bulaşan ve 1.1 milyondan fazla insanın ölümüne sebep olan corona virüsüne karşı Pfizer ile BioNTech'in geliştirdiği aşının ilk görüntüleri ortaya çıktı. Aşının fabrikadaki ilk görüntülerini değerlendiren Pfizer'ın Birleşik Krallık CEO'su, "Üretim bandında aşıyı görmek beni neşelendirdi" dedi.
12
- ABD merkezli çokuluslu ilaç şirketi Pfizer ile Türk bilim insanlarının kurduğu BioNTech’in geliştirdiği corona virüsü aşısında sona gelindi… Pfizer, paylaştığı video ile bütün dünyayı heyecanlandıran gelişmeyi duyurdu.
13
- Şirket, Belçika’daki Puurs’ta geliştirilen Covid-19 aşılarının seri üretim bandındaki üretim aşamasını uluslararası kamuoyu ile paylaştı. Almanya’nın Mainz kentinde Türk profesör Uğur Şahin ile eşi Özlem Türeci’nin kurduğu ve yönettiği biyoteknoloji şirketi BioNTech ile aşı sürecini sürdüren Pfizer’ın küçük şişelerde binlerce corona virüsü aşısı üretmeye başladığı belirtildi.
14
- Pfizer, aşının güvenli ve etkili olduğunun klinik olarak da kanıtlanması ve resmi mercilerden de onay alınması durumunda üretilen aşının dağıtılacağını duyurdu."""
15
  ]
16
 
17
  st.set_page_config(layout="wide")
@@ -30,25 +29,15 @@ model_checkpoint = st.sidebar.radio("", model_list)
30
  st.sidebar.write("For details of models: 'https://huggingface.co/akdeniz27/")
31
  st.sidebar.write("")
32
 
33
- # xlm_agg_strategy_info = "'aggregation_strategy' can be selected as 'simple' or 'none' for 'xlm-roberta' because of the RoBERTa model's tokenization approach."
34
-
35
- # st.sidebar.header("Select Aggregation Strategy Type")
36
  if model_checkpoint == "akdeniz27/xlm-roberta-base-turkish-ner":
37
  aggregation = "simple"
38
- # aggregation = st.sidebar.radio("", ('simple', 'none'))
39
- # st.sidebar.write(xlm_agg_strategy_info)
40
  elif model_checkpoint == "xlm-roberta-large-finetuned-conll03-english" or model_checkpoint == "tner/tner-xlm-roberta-base-ontonotes5":
41
  aggregation = "simple"
42
- # aggregation = st.sidebar.radio("", ('simple', 'none'))
43
- # st.sidebar.write(xlm_agg_strategy_info)
44
  st.sidebar.write("")
45
- st.sidebar.write("This English NER model is included just to show the zero-shot transfer learning capability of XLM-Roberta.")
46
  else:
47
  aggregation = "first"
48
- # aggregation = st.sidebar.radio("", ('first', 'simple', 'average', 'max', 'none'))
49
 
50
- st.sidebar.write("Please refer 'https://huggingface.co/transformers/_modules/transformers/pipelines/token_classification.html' for entity grouping with aggregation_strategy parameter.")
51
-
52
  st.subheader("Select Text Input Method")
53
  input_method = st.radio("", ('Select from Examples', 'Write or Paste New Text'))
54
  if input_method == 'Select from Examples':
@@ -88,10 +77,7 @@ if Run_Button == True:
88
  output_comb.append(entity)
89
 
90
  df = pd.DataFrame.from_dict(output_comb)
91
- if aggregation != "none":
92
- cols_to_keep = ['word','entity_group','score','start','end']
93
- else:
94
- cols_to_keep = ['word','entity','score','start','end']
95
  df_final = df[cols_to_keep]
96
 
97
  st.subheader("Recognized Entities")
@@ -104,11 +90,8 @@ if Run_Button == True:
104
  spacy_display["title"] = None
105
 
106
  for entity in output_comb:
107
- if aggregation != "none":
108
- spacy_display["ents"].append({"start": entity["start"], "end": entity["end"], "label": entity["entity_group"]})
109
- else:
110
- spacy_display["ents"].append({"start": entity["start"], "end": entity["end"], "label": entity["entity"]})
111
-
112
  tner_entity_list = ["person", "group", "facility", "organization", "geopolitical area", "location", "product", "event", "work of art", "law", "language", "date", "time", "percent", "money", "quantity", "ordinal number", "cardinal number"]
113
  spacy_entity_list = ["PERSON", "NORP", "FAC", "ORG", "GPE", "LOC", "PRODUCT", "EVENT", "WORK_OF_ART", "LAW", "LANGUAGE", "DATE", "TIME", "PERCENT", "MONEY", "QUANTITY", "ORDINAL", "CARDINAL", "MISC"]
114
 
 
8
 
9
  example_list = [
10
  "Mustafa Kemal Atatürk 1919 yılında Samsun'a çıktı.",
11
+ """Mustafa Kemal Atatürk, Türk asker, devlet adamı ve Türkiye Cumhuriyeti'nin kurucusudur.
12
+ Birinci Dünya Savaşı sırasında Osmanlı ordusunda görev yapan Atatürk, Çanakkale Cephesi'nde miralaylığa, Sina ve Filistin Cephesi'nde ise Yıldırım Orduları komutanlığına atandı. Savaşın sonunda, Osmanlı İmparatorluğu'nun yenilgisini takiben Kurtuluş Savaşı ile simgelenen Türk Ulusal Hareketi'ne öncülük ve önderlik etti.
13
+ Türk Kurtuluş Savaşı sürecinde Ankara Hükümeti'ni kurdu, Türk Orduları Başkomutanı olarak Sakarya Meydan Muharebesi'ndeki başarısından dolayı 19 Eylül 1921 tarihinde "Gazi" unvanını aldı ve mareşallik rütbesine yükseldi. Askeri ve siyasi eylemleriyle İtilaf Devletleri ve destekçilerine karşı zafer kazandı. Savaşın ardından Cumhuriyet Halk Partisi'ni Halk Fırkası adıyla kurdu ve ilk genel başkanı oldu. 29 Ekim 1923'te Cumhuriyetin İlanı akabinde Cumhurbaşkanı seçildi. 1938'deki ölümüne dek dört dönem bu görevi yürüterek Türkiye 'de en uzun süre cumhurbaşkanlığı yapmış kişi oldu."""
 
14
  ]
15
 
16
  st.set_page_config(layout="wide")
 
29
  st.sidebar.write("For details of models: 'https://huggingface.co/akdeniz27/")
30
  st.sidebar.write("")
31
 
 
 
 
32
  if model_checkpoint == "akdeniz27/xlm-roberta-base-turkish-ner":
33
  aggregation = "simple"
 
 
34
  elif model_checkpoint == "xlm-roberta-large-finetuned-conll03-english" or model_checkpoint == "tner/tner-xlm-roberta-base-ontonotes5":
35
  aggregation = "simple"
 
 
36
  st.sidebar.write("")
37
+ st.sidebar.write("This English NER model is included just to show the zero-shot transfer learning capability of XLM-Roberta pretrained language model.")
38
  else:
39
  aggregation = "first"
 
40
 
 
 
41
  st.subheader("Select Text Input Method")
42
  input_method = st.radio("", ('Select from Examples', 'Write or Paste New Text'))
43
  if input_method == 'Select from Examples':
 
77
  output_comb.append(entity)
78
 
79
  df = pd.DataFrame.from_dict(output_comb)
80
+ cols_to_keep = ['word','entity','score','start','end']
 
 
 
81
  df_final = df[cols_to_keep]
82
 
83
  st.subheader("Recognized Entities")
 
90
  spacy_display["title"] = None
91
 
92
  for entity in output_comb:
93
+ spacy_display["ents"].append({"start": entity["start"], "end": entity["end"], "label": entity["entity_group"]})
94
+
 
 
 
95
  tner_entity_list = ["person", "group", "facility", "organization", "geopolitical area", "location", "product", "event", "work of art", "law", "language", "date", "time", "percent", "money", "quantity", "ordinal number", "cardinal number"]
96
  spacy_entity_list = ["PERSON", "NORP", "FAC", "ORG", "GPE", "LOC", "PRODUCT", "EVENT", "WORK_OF_ART", "LAW", "LANGUAGE", "DATE", "TIME", "PERCENT", "MONEY", "QUANTITY", "ORDINAL", "CARDINAL", "MISC"]
97