Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

During training: warnings for ATE Classification Report #394

Open
KadriMufti opened this issue Mar 29, 2024 · 2 comments
Open

During training: warnings for ATE Classification Report #394

KadriMufti opened this issue Mar 29, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@KadriMufti
Copy link

KadriMufti commented Mar 29, 2024

Version

Version: 2.4.1.post1
Summary: This tool provides the state-of-the-art models for aspect term extraction (ATE), aspect polarity classification (APC), and text classification (TC).
Home-page: https://github.com/yangheng95/PyABSA
Author: Yang, Heng
Author-email: [email protected]
License: MIT
Location: /usr/local/lib/python3.8/dist-packages
Requires: metric-visualizer, boostaug, networkx, seqeval, torch, sentencepiece, protobuf, update-checker, pytorch-warmup, transformers, tqdm, findfile, pandas, typing-extensions, gitpython, termcolor, spacy, autocuda
Required-by: boostaug
Name: torch
Version: 2.2.1+cu121
Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration
Home-page: https://pytorch.org/
Author: PyTorch Team
Author-email: [email protected]
License: BSD-3
Location: /usr/local/lib/python3.8/dist-packages
Requires: networkx, sympy, nvidia-cuda-nvrtc-cu12, triton, nvidia-cusolver-cu12, nvidia-cudnn-cu12, nvidia-cufft-cu12, typing-extensions, fsspec, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, nvidia-nccl-cu12, nvidia-nvtx-cu12, jinja2, nvidia-curand-cu12, filelock, nvidia-cuda-runtime-cu12, nvidia-cusparse-cu12
Required-by: trl, torchvision, torchaudio, timm, pytorch-warmup, pyabsa, peft, OpenNMT-py, flash-attn, deepspeed, accelerate
Name: transformers
Version: 4.40.0.dev0
Summary: State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow
Home-page: https://github.com/huggingface/transformers
Author: The Hugging Face team (past and future) with the help of all our contributors (https://github.com/huggingface/transformers/graphs/contributors)
Author-email: [email protected]
License: Apache 2.0 License
Location: /usr/local/lib/python3.8/dist-packages
Requires: regex, requests, packaging, pyyaml, filelock, tokenizers, numpy, safetensors, tqdm, huggingface-hub
Required-by: trl, pyabsa, peft

Describe the bug
During training I get warnings regarding metrics as seen below (I pasted them in bold font). Why are "Recall and F-score are ill-defined"?

  warnings.warn('{} seems not to be NE tag.'.format(chunk))
/usr/local/lib/python3.8/dist-packages/seqeval/metrics/sequence_labeling.py:171: UserWarning: [CLS] seems not to be NE tag.
  warnings.warn('{} seems not to be NE tag.'.format(chunk))
/usr/local/lib/python3.8/dist-packages/seqeval/metrics/v1.py:57: UndefinedMetricWarning: Recall and F-score are ill-defined and being set to 0.0 in labels with no true samples. Use `zero_division` parameter to control this behavior.
  _warn_prf(average, modifier, msg_start, len(result))**
[2024-03-29 12:45:21] (2.4.1.post1) 
---------------------------- ATE Classification Report ----------------------------


[2024-03-29 12:45:21] (2.4.1.post1)
               precision    recall  f1-score   support

         ASP     0.0558    0.5437    0.1013      9428
        CLS]     0.0000    0.0000    0.0000         0
        SEP]     1.0000    0.9997    0.9999      3667

   micro avg     0.0895    0.6714    0.1579     13095
   macro avg     0.3519    0.5145    0.3670     13095
weighted avg     0.3202    0.6714    0.3529     13095

[2024-03-29 12:45:21] (2.4.1.post1) 
---------------------------- ATE Classification Report ----------------------------

Code To Reproduce

config.model = ATEPC.ATEPCModelList.FAST_LCF_ATEPC
config.evaluate_begin = 0
config.max_seq_len = 512
config.num_epoch = 50
config.batch_size = 16
config.patience = 10
config.log_step = -1
config.seed = [1]
config.show_metric = True
config.gradient_accumulation_steps = 4
config.verbose = False  # If verbose == True, PyABSA will output the model strcture and several processed data examples

config.pretrained_bert = "MoritzLaurer/mDeBERTa-v3-base-xnli-multilingual-nli-2mil7" 
config.notice = (
    f"This is a finetuned aspect term extraction model, based on {config.pretrained_bert}, using combined Arabic and English data from various sources."  # for memos usage
)

model = config.pretrained_bert.split('/')[-1]
base_path =  f'/app/aspect/code4_pyabsa/NEW_ATEPC_MULTILINGUAL_CHECKPOINT_{model}_3/'
# checkpoint = base_path + get_latest_checkpoint(base_path)
trainer = ATEPC.ATEPCTrainer(
    config=config,
    dataset=my_dataset,
    auto_device=DeviceTypeOption.AUTO, 
    checkpoint_save_mode=2,
    load_aug=False, 
    path_to_save=base_path
)

Expected behavior

I expect the training should continue without problems because I checked my training and test data and there are no errors or mistakes in the formatting.

Screenshots

image

@KadriMufti KadriMufti added the bug Something isn't working label Mar 29, 2024
@KadriMufti KadriMufti changed the title During training: TypeError: 'NoneType' object is not iterable During training: warnings for ATE Classification Report Mar 29, 2024
@yangheng95
Copy link
Owner

Can paste some of the data instances in your dataset and @me then? It seems to be a data annotation problem.

@KadriMufti
Copy link
Author

@yangheng95


حينما O -100
إنتهيت O -100
من O -100
قراءة O -100
الكتاب O -100
وبعد O -100
أن O -100
ضحكت O -100
هممم O -100
تمددت O -100
وانا O -100
أراقب O -100
السقف O -100
في O -100
منزل O -100
جدتي O -100
الجميل O -100
فكرت O -100
كيف O -100
اننا O -100
نخشى O -100
أصلاً O -100
بأن O -100
نعترف O -100
بأننا O -100
تركنا O -100
على O -100
قارعة O -100
الحياة O -100
وحيدات O -100
هممممم O -100
لكن O -100
ماذا O -100
لو O -100
وجدنا O -100
من O -100
يشاركنا O -100
نفس O -100
الأحساس O -100
لا O -100
أحد O -100
يعلن O -100
عن O -100
نفسه O -100
الكل O -100
يخفي O -100
خلف O -100
قناعة O -100
جرحاً O -100
ما O -100
خيبةً O -100
ما O -100
, O -100
طعنةً O -100
ما O -100
,ينتظر O -100
أن O -100
يطمئن O -100
إليك O -100
ليرفع O -100
قناعه O -100
ويعترف O -100
: O -100
ما O -100
أستطعت O -100
أن O -100
أنسى O -100
كتبته O -100
أحلام O -100
بطريقة O -100
العارفة O -100
للشيء O -100
المجربة O -100
للألم O -100
فإستطاعت O -100
أن O -100
توصل O -100
إلينا O -100
الفكرة O -100
حينما O -100
صممت O -100
الميثاق O -100
الذي O -100
قادني O -100
فضولي O -100
لأقرأه O -100
وجدت O -100
أن O -100
أحلام O -100
أخذت O -100
الأمر O -100
على O -100
محمل O -100
الجد O -100
: O -100
أن O -100
أحبّ O -100
كما O -100
لم O -100
تحبّ O -100
امرأة. O -100
و O -100
أن O -100
أكون O -100
جاهزة O -100
للنسيان. O -100
كما O -100
ينسى O -100
الرجال B-ASP neutral
. O -100
من O -100
كتالوج O -100
النسيان O -100
: O -100

قدر O -100
الحب O -100
الخيبة B-ASP negative
لأنه O -100
يولد O -100
بأحلام O -100
شاهقة O -100
أكبر O -100
من O -100
أصحابها O -100
. O -100
أن O -100
الإنسان O -100
العربي O -100
قدري O -100
بطبعه O -100
يترك O -100
للحياة O -100
مهمة O -100
تدبّر O -100
أمره O -100
, O -100
وفي O -100
الحياة O -100
كما O -100
في O -100
الحب O -100
لا O -100
يرى O -100
أبعد O -100
من O -100
يومه O -100
. O -100

قدر O -100
الحب B-ASP negative
الخيبة O -100
لأنه O -100
يولد O -100
بأحلام O -100
شاهقة O -100
أكبر O -100
من O -100
أصحابها O -100
. O -100
أن O -100
الإنسان O -100
العربي O -100
قدري O -100
بطبعه O -100
يترك O -100
للحياة O -100
مهمة O -100
تدبّر O -100
أمره O -100
, O -100
وفي O -100
الحياة O -100
كما O -100
في O -100
الحب O -100
لا O -100
يرى O -100
أبعد O -100
من O -100
يومه O -100
. O -100

قدر O -100
الحب O -100
الخيبة O -100
لأنه O -100
يولد O -100
بأحلام B-ASP negative
شاهقة O -100
أكبر O -100
من O -100
أصحابها O -100
. O -100
أن O -100
الإنسان O -100
العربي O -100
قدري O -100
بطبعه O -100
يترك O -100
للحياة O -100
مهمة O -100
تدبّر O -100
أمره O -100
, O -100
وفي O -100
الحياة O -100
كما O -100
في O -100
الحب O -100
لا O -100
يرى O -100
أبعد O -100
من O -100
يومه O -100
. O -100

قدر O -100
الحب O -100
الخيبة O -100
لأنه O -100
يولد O -100
بأحلام O -100
شاهقة O -100
أكبر O -100
من O -100
أصحابها O -100
. O -100
أن O -100
الإنسان O -100
العربي B-ASP neutral
قدري O -100
بطبعه O -100
يترك O -100
للحياة O -100
مهمة O -100
تدبّر O -100
أمره O -100
, O -100
وفي O -100
الحياة O -100
كما O -100
في O -100
الحب O -100
لا O -100
يرى O -100
أبعد O -100
من O -100
يومه O -100
. O -100

القصيدة O -100
مشكلتها B-ASP negative
في O -100
التناول O -100
مشكلتها O -100
في O -100
البداية O -100
والنهاية O -100
مضامينها O -100
وشكلها O -100
وعديد O -100
من O -100
المسائل O -100

القصيدة O -100
مشكلتها O -100
في O -100
التناول O -100
مشكلتها O -100
في O -100
البداية O -100
والنهاية O -100
مضامينها O -100
وشكلها O -100
وعديد O -100
من O -100
المسائل B-ASP negative

أعترض O -100
على O -100
رأيه O -100
في O -100
تقسيم O -100
رد O -100
فعل O -100
الناس O -100
على O -100
دعوته O -100
( O -100
جماعة B-ASP negative
الاخوان I-ASP negative
) O -100
,, O -100
من O -100
معاداة O -100
من O -100
يعارض O -100
دعوته O -100
و O -100
عدم O -100
إيذاء O -100
من O -100
يكون O -100
محايد O -100
فلا O -100
يعارض O -100
ولا O -100
يتبع O -100
, O -100
و O -100
محبة O -100
من O -100
يؤيد O -100
الدعوة O -100
فهو O -100
في O -100
ذلك O -100
جعلها O -100
و O -100
كأنها O -100
دين O -100
من O -100
عند O -100
الله O -100
. O -100

أعترض O -100
على O -100
رأيه O -100
في O -100
تقسيم O -100
رد O -100
فعل O -100
الناس O -100
على O -100
دعوته O -100
( O -100
جماعة O -100
الاخوان O -100
) O -100
,, O -100
من O -100
معاداة O -100
من O -100
يعارض O -100
دعوته O -100
و O -100
عدم O -100
إيذاء O -100
من O -100
يكون O -100
محايد O -100
فلا O -100
يعارض O -100
ولا O -100
يتبع O -100
, O -100
و O -100
محبة O -100
من O -100
يؤيد O -100
الدعوة B-ASP negative
فهو O -100
في O -100
ذلك O -100
جعلها O -100
و O -100
كأنها O -100
دين O -100
من O -100
عند O -100
الله O -100
. O -100

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants