Training update: 110/67,618 rows (0.16%) | +50 new @ 2025-10-20 05:30:24
Browse files- README.md +50 -34
- checkpoint-21/config.json +24 -0
- checkpoint-21/model.safetensors +3 -0
- checkpoint-21/optimizer.pt +3 -0
- checkpoint-21/rng_state.pth +3 -0
- checkpoint-21/scheduler.pt +3 -0
- checkpoint-21/special_tokens_map.json +37 -0
- checkpoint-21/tokenizer_config.json +58 -0
- checkpoint-21/trainer_state.json +33 -0
- checkpoint-21/training_args.bin +3 -0
- checkpoint-21/vocab.txt +0 -0
- model.safetensors +1 -1
- training_args.bin +1 -1
- training_metadata.json +6 -5
README.md
CHANGED
|
@@ -1,54 +1,70 @@
|
|
| 1 |
---
|
| 2 |
-
|
| 3 |
-
|
| 4 |
-
|
| 5 |
tags:
|
| 6 |
-
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
results: []
|
| 10 |
---
|
| 11 |
|
| 12 |
-
<!-- This model card has been generated automatically according to the information the Trainer had access to. You
|
| 13 |
-
should probably proofread and complete it, then remove this comment. -->
|
| 14 |
-
|
| 15 |
# bert-micro-cybersecurity
|
| 16 |
|
| 17 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 18 |
|
| 19 |
-
|
|
|
|
|
|
|
| 20 |
|
| 21 |
-
|
| 22 |
|
| 23 |
-
|
|
|
|
| 24 |
|
| 25 |
-
|
|
|
|
|
|
|
|
|
|
| 26 |
|
| 27 |
-
|
|
|
|
|
|
|
|
|
|
| 28 |
|
| 29 |
-
|
| 30 |
|
| 31 |
-
|
| 32 |
|
| 33 |
-
|
|
|
|
| 34 |
|
| 35 |
-
|
| 36 |
-
- learning_rate: 5e-05
|
| 37 |
-
- train_batch_size: 8
|
| 38 |
-
- eval_batch_size: 8
|
| 39 |
-
- seed: 42
|
| 40 |
-
- optimizer: Use OptimizerNames.ADAMW_TORCH_FUSED with betas=(0.9,0.999) and epsilon=1e-08 and optimizer_args=No additional optimizer arguments
|
| 41 |
-
- lr_scheduler_type: linear
|
| 42 |
-
- lr_scheduler_warmup_ratio: 0.06
|
| 43 |
-
- num_epochs: 3
|
| 44 |
|
| 45 |
-
|
|
|
|
| 46 |
|
|
|
|
|
|
|
| 47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 48 |
|
| 49 |
-
|
| 50 |
|
| 51 |
-
-
|
| 52 |
-
-
|
| 53 |
-
-
|
| 54 |
-
-
|
|
|
|
|
|
| 1 |
---
|
| 2 |
+
language:
|
| 3 |
+
- en
|
| 4 |
+
- id
|
| 5 |
tags:
|
| 6 |
+
- text-classification
|
| 7 |
+
- cybersecurity
|
| 8 |
+
base_model: boltuix/bert-micro
|
|
|
|
| 9 |
---
|
| 10 |
|
|
|
|
|
|
|
|
|
|
| 11 |
# bert-micro-cybersecurity
|
| 12 |
|
| 13 |
+
## 1. Model Details
|
| 14 |
+
|
| 15 |
+
**Model description**
|
| 16 |
+
"bert-micro-cybersecurity" is a compact transformer model derived from `boltuix/bert-micro`, adapted for cybersecurity text classification tasks (e.g., threat detection, incident reports, malicious vs benign content).
|
| 17 |
+
|
| 18 |
+
- Model type: fine-tuned lightweight BERT variant
|
| 19 |
+
- Languages: English & Indonesia
|
| 20 |
+
- Finetuned from: `boltuix/bert-micro`
|
| 21 |
+
- Status: **Early version** — trained on **0.16%** of planned data).
|
| 22 |
|
| 23 |
+
**Model sources**
|
| 24 |
+
- Base model: [boltuix/bert-micro](https://huggingface.co/boltuix/bert-micro)
|
| 25 |
+
- Data: Cybersecurity Data
|
| 26 |
|
| 27 |
+
## 2. Uses
|
| 28 |
|
| 29 |
+
### Direct use
|
| 30 |
+
You can use this model to classify cybersecurity-related text — for example, whether a given message, report or log entry indicates malicious intent, abnormal behaviour, or threat presence.
|
| 31 |
|
| 32 |
+
### Downstream use
|
| 33 |
+
- Embedding extraction for clustering or anomaly detection in security logs.
|
| 34 |
+
- As part of a pipeline for phishing detection, malicious email filtering, incident triage.
|
| 35 |
+
- As a feature extractor feeding a downstream system (e.g., alert-generation, SOC dashboard).
|
| 36 |
|
| 37 |
+
### Out-of-scope use
|
| 38 |
+
- Not meant for high-stakes automated blocking decisions without human review.
|
| 39 |
+
- Not optimized for languages other than English and Indonesian.
|
| 40 |
+
- Not tested for non-cybersecurity domains or out-of-distribution data.
|
| 41 |
|
| 42 |
+
## 3. Bias, Risks, and Limitations
|
| 43 |
|
| 44 |
+
Because the model is based on a small subset (0.16%) of planned data, performance is preliminary and may degrade on unseen or specialized domains (industrial control, IoT logs, foreign language).
|
| 45 |
|
| 46 |
+
- Inherits any biases present in the base model (`boltuix/bert-micro`) and in the fine-tuning data — e.g., over-representation of certain threat types, vendor or tooling-specific vocabulary.
|
| 47 |
+
- Should not be used as sole authority for incident decisions; only as an aid to human analysts.
|
| 48 |
|
| 49 |
+
## 4. How to Get Started with the Model
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 50 |
|
| 51 |
+
```python
|
| 52 |
+
from transformers import AutoTokenizer, AutoModelForSequenceClassification
|
| 53 |
|
| 54 |
+
tokenizer = AutoTokenizer.from_pretrained("codechrl/bert-micro-cybersecurity")
|
| 55 |
+
model = AutoModelForSequenceClassification.from_pretrained("codechrl/bert-micro-cybersecurity")
|
| 56 |
|
| 57 |
+
inputs = tokenizer("The server logged an unusual outbound connection to 123.123.123.123",
|
| 58 |
+
return_tensors="pt", truncation=True, padding=True)
|
| 59 |
+
outputs = model(**inputs)
|
| 60 |
+
logits = outputs.logits
|
| 61 |
+
predicted_class = logits.argmax(dim=-1).item()
|
| 62 |
+
```
|
| 63 |
|
| 64 |
+
## 5. Training Details
|
| 65 |
|
| 66 |
+
- **Trained records**: 110 / 67,618 (0.16%)
|
| 67 |
+
- **Learning rate**: 5e-05
|
| 68 |
+
- **Epochs**: 3
|
| 69 |
+
- **Batch size**: 8
|
| 70 |
+
- **Max sequence length**: 512
|
checkpoint-21/config.json
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"architectures": [
|
| 3 |
+
"BertForMaskedLM"
|
| 4 |
+
],
|
| 5 |
+
"attention_probs_dropout_prob": 0.1,
|
| 6 |
+
"classifier_dropout": null,
|
| 7 |
+
"dtype": "float32",
|
| 8 |
+
"hidden_act": "gelu",
|
| 9 |
+
"hidden_dropout_prob": 0.1,
|
| 10 |
+
"hidden_size": 128,
|
| 11 |
+
"initializer_range": 0.02,
|
| 12 |
+
"intermediate_size": 512,
|
| 13 |
+
"layer_norm_eps": 1e-12,
|
| 14 |
+
"max_position_embeddings": 512,
|
| 15 |
+
"model_type": "bert",
|
| 16 |
+
"num_attention_heads": 2,
|
| 17 |
+
"num_hidden_layers": 2,
|
| 18 |
+
"pad_token_id": 0,
|
| 19 |
+
"position_embedding_type": "absolute",
|
| 20 |
+
"transformers_version": "4.57.0",
|
| 21 |
+
"type_vocab_size": 2,
|
| 22 |
+
"use_cache": true,
|
| 23 |
+
"vocab_size": 30522
|
| 24 |
+
}
|
checkpoint-21/model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:fccffc8436212a980c3a25ef5c4583dfed723e4f0c1c8857ea354d783347165c
|
| 3 |
+
size 17671560
|
checkpoint-21/optimizer.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:8e0a700261a075b2798ae3c3216f142d1949a2c849645138e8de3eb2613a50d6
|
| 3 |
+
size 35368075
|
checkpoint-21/rng_state.pth
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e61e0305d9611ca4c75692d1a176f35005d0ec603a42601986f9763caf8eb903
|
| 3 |
+
size 14455
|
checkpoint-21/scheduler.pt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:2f374c8187c2d2db1143eb348871ee957c3603763a041fd251d09062f56d5688
|
| 3 |
+
size 1465
|
checkpoint-21/special_tokens_map.json
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"cls_token": {
|
| 3 |
+
"content": "[CLS]",
|
| 4 |
+
"lstrip": false,
|
| 5 |
+
"normalized": false,
|
| 6 |
+
"rstrip": false,
|
| 7 |
+
"single_word": false
|
| 8 |
+
},
|
| 9 |
+
"mask_token": {
|
| 10 |
+
"content": "[MASK]",
|
| 11 |
+
"lstrip": false,
|
| 12 |
+
"normalized": false,
|
| 13 |
+
"rstrip": false,
|
| 14 |
+
"single_word": false
|
| 15 |
+
},
|
| 16 |
+
"pad_token": {
|
| 17 |
+
"content": "[PAD]",
|
| 18 |
+
"lstrip": false,
|
| 19 |
+
"normalized": false,
|
| 20 |
+
"rstrip": false,
|
| 21 |
+
"single_word": false
|
| 22 |
+
},
|
| 23 |
+
"sep_token": {
|
| 24 |
+
"content": "[SEP]",
|
| 25 |
+
"lstrip": false,
|
| 26 |
+
"normalized": false,
|
| 27 |
+
"rstrip": false,
|
| 28 |
+
"single_word": false
|
| 29 |
+
},
|
| 30 |
+
"unk_token": {
|
| 31 |
+
"content": "[UNK]",
|
| 32 |
+
"lstrip": false,
|
| 33 |
+
"normalized": false,
|
| 34 |
+
"rstrip": false,
|
| 35 |
+
"single_word": false
|
| 36 |
+
}
|
| 37 |
+
}
|
checkpoint-21/tokenizer_config.json
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"added_tokens_decoder": {
|
| 3 |
+
"0": {
|
| 4 |
+
"content": "[PAD]",
|
| 5 |
+
"lstrip": false,
|
| 6 |
+
"normalized": false,
|
| 7 |
+
"rstrip": false,
|
| 8 |
+
"single_word": false,
|
| 9 |
+
"special": true
|
| 10 |
+
},
|
| 11 |
+
"100": {
|
| 12 |
+
"content": "[UNK]",
|
| 13 |
+
"lstrip": false,
|
| 14 |
+
"normalized": false,
|
| 15 |
+
"rstrip": false,
|
| 16 |
+
"single_word": false,
|
| 17 |
+
"special": true
|
| 18 |
+
},
|
| 19 |
+
"101": {
|
| 20 |
+
"content": "[CLS]",
|
| 21 |
+
"lstrip": false,
|
| 22 |
+
"normalized": false,
|
| 23 |
+
"rstrip": false,
|
| 24 |
+
"single_word": false,
|
| 25 |
+
"special": true
|
| 26 |
+
},
|
| 27 |
+
"102": {
|
| 28 |
+
"content": "[SEP]",
|
| 29 |
+
"lstrip": false,
|
| 30 |
+
"normalized": false,
|
| 31 |
+
"rstrip": false,
|
| 32 |
+
"single_word": false,
|
| 33 |
+
"special": true
|
| 34 |
+
},
|
| 35 |
+
"103": {
|
| 36 |
+
"content": "[MASK]",
|
| 37 |
+
"lstrip": false,
|
| 38 |
+
"normalized": false,
|
| 39 |
+
"rstrip": false,
|
| 40 |
+
"single_word": false,
|
| 41 |
+
"special": true
|
| 42 |
+
}
|
| 43 |
+
},
|
| 44 |
+
"clean_up_tokenization_spaces": true,
|
| 45 |
+
"cls_token": "[CLS]",
|
| 46 |
+
"do_basic_tokenize": true,
|
| 47 |
+
"do_lower_case": true,
|
| 48 |
+
"extra_special_tokens": {},
|
| 49 |
+
"mask_token": "[MASK]",
|
| 50 |
+
"model_max_length": 1000000000000000019884624838656,
|
| 51 |
+
"never_split": null,
|
| 52 |
+
"pad_token": "[PAD]",
|
| 53 |
+
"sep_token": "[SEP]",
|
| 54 |
+
"strip_accents": null,
|
| 55 |
+
"tokenize_chinese_chars": true,
|
| 56 |
+
"tokenizer_class": "BertTokenizer",
|
| 57 |
+
"unk_token": "[UNK]"
|
| 58 |
+
}
|
checkpoint-21/trainer_state.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"best_global_step": null,
|
| 3 |
+
"best_metric": null,
|
| 4 |
+
"best_model_checkpoint": null,
|
| 5 |
+
"epoch": 3.0,
|
| 6 |
+
"eval_steps": 500,
|
| 7 |
+
"global_step": 21,
|
| 8 |
+
"is_hyper_param_search": false,
|
| 9 |
+
"is_local_process_zero": true,
|
| 10 |
+
"is_world_process_zero": true,
|
| 11 |
+
"log_history": [],
|
| 12 |
+
"logging_steps": 100,
|
| 13 |
+
"max_steps": 21,
|
| 14 |
+
"num_input_tokens_seen": 0,
|
| 15 |
+
"num_train_epochs": 3,
|
| 16 |
+
"save_steps": 500,
|
| 17 |
+
"stateful_callbacks": {
|
| 18 |
+
"TrainerControl": {
|
| 19 |
+
"args": {
|
| 20 |
+
"should_epoch_stop": false,
|
| 21 |
+
"should_evaluate": false,
|
| 22 |
+
"should_log": false,
|
| 23 |
+
"should_save": true,
|
| 24 |
+
"should_training_stop": true
|
| 25 |
+
},
|
| 26 |
+
"attributes": {}
|
| 27 |
+
}
|
| 28 |
+
},
|
| 29 |
+
"total_flos": 204636672000.0,
|
| 30 |
+
"train_batch_size": 8,
|
| 31 |
+
"trial_name": null,
|
| 32 |
+
"trial_params": null
|
| 33 |
+
}
|
checkpoint-21/training_args.bin
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:dc19d58cd6f4e9fa4667b169e0aa27f6ade93802615c12a15ae7cfdf97b1d049
|
| 3 |
+
size 5841
|
checkpoint-21/vocab.txt
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
model.safetensors
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 17671560
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:fccffc8436212a980c3a25ef5c4583dfed723e4f0c1c8857ea354d783347165c
|
| 3 |
size 17671560
|
training_args.bin
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 5841
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:dc19d58cd6f4e9fa4667b169e0aa27f6ade93802615c12a15ae7cfdf97b1d049
|
| 3 |
size 5841
|
training_metadata.json
CHANGED
|
@@ -1,10 +1,11 @@
|
|
| 1 |
{
|
| 2 |
-
"trained_at":
|
| 3 |
-
"trained_at_readable": "2025-10-20 05:
|
| 4 |
-
"
|
| 5 |
-
"
|
|
|
|
| 6 |
"total_db_rows": 67618,
|
| 7 |
-
"percentage": 0.
|
| 8 |
"final_loss": 0,
|
| 9 |
"epochs": 3,
|
| 10 |
"learning_rate": 5e-05
|
|
|
|
| 1 |
{
|
| 2 |
+
"trained_at": 1760938224.2996256,
|
| 3 |
+
"trained_at_readable": "2025-10-20 05:30:24",
|
| 4 |
+
"samples_this_session": 50,
|
| 5 |
+
"new_rows_this_session": 50,
|
| 6 |
+
"trained_rows_total": 110,
|
| 7 |
"total_db_rows": 67618,
|
| 8 |
+
"percentage": 0.1626785767103434,
|
| 9 |
"final_loss": 0,
|
| 10 |
"epochs": 3,
|
| 11 |
"learning_rate": 5e-05
|