Commit
•
1a35659
1
Parent(s):
461f097
Update README.md
Browse filesFixed appearance of benchmark metrics. Fixed training description.
README.md
CHANGED
@@ -34,9 +34,10 @@ tags:
|
|
34 |
|
35 |
This is a Keras 3.x model trained specifically to detect malicious SQLs. It is able to detect various SQL injection vectors such as Error-based, Union-based, Blind, Boolean-based
|
36 |
,Time-based, Out-of-band, Stacked queries. This was trained on ~167K SQLs containing an almost even distribution of malicious and benign SQLs. Its training involved preprocessing specifically for
|
37 |
-
SQL with special masking tokens. 28 additional numeric features were also generated and top 10 among them were selected for training using Recursive Feature Elimination. The training consisted of a warm-up period with a smaller, sinusoidally decaying learning rate
|
38 |
-
followed by a higher learning rate with cosine decay. A special callback was used to monitor for and protect against gradient
|
39 |
-
|
|
|
40 |
For faster model loading and inference, [mixed precision](https://www.tensorflow.org/guide/mixed_precision) has been used.
|
41 |
|
42 |
The best checkpoint has been saved and made available for use.
|
@@ -57,12 +58,12 @@ available [here](dataset/benchmark.csv). The data was curated from the following
|
|
57 |
|
58 |
#### Benchmark Results
|
59 |
|
60 |
-
Total SQLs
|
61 |
-
Total Negatives
|
62 |
-
Total Positives
|
63 |
-
Total hits
|
64 |
-
False Negatives
|
65 |
-
False Positives
|
66 |
|
67 |
#### Training Data
|
68 |
|
|
|
34 |
|
35 |
This is a Keras 3.x model trained specifically to detect malicious SQLs. It is able to detect various SQL injection vectors such as Error-based, Union-based, Blind, Boolean-based
|
36 |
,Time-based, Out-of-band, Stacked queries. This was trained on ~167K SQLs containing an almost even distribution of malicious and benign SQLs. Its training involved preprocessing specifically for
|
37 |
+
SQL with special masking tokens. 28 additional numeric features were also generated and the top 10 among them were selected for training using Recursive Feature Elimination. The training consisted of a warm-up period with a smaller, sinusoidally decaying learning rate
|
38 |
+
followed by a higher learning rate with cosine decay. A special callback was used to monitor for and protect against gradient explosions and
|
39 |
+
automatically adjust the learning rate and model weights based on the scale of the explosion.
|
40 |
+
Weight and kernel constraints are applied to help prevent overfitting and achieve better generalization.
|
41 |
For faster model loading and inference, [mixed precision](https://www.tensorflow.org/guide/mixed_precision) has been used.
|
42 |
|
43 |
The best checkpoint has been saved and made available for use.
|
|
|
58 |
|
59 |
#### Benchmark Results
|
60 |
|
61 |
+
**Total SQLs:** 30919
|
62 |
+
**Total Negatives:** 11382
|
63 |
+
**Total Positives:** 19537
|
64 |
+
**Total hits:** 30844/30919 with accuracy of **99.76%**.
|
65 |
+
**False Negatives:** 69 - **0.61%**
|
66 |
+
**False Positives:** 6 - **0.03%**
|
67 |
|
68 |
#### Training Data
|
69 |
|