kg-cybersec
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.2%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: garima0106
- Language: Jupyter Notebook
- Default Branch: main
- Size: 6.97 MB
Statistics
- Stars: 1
- Watchers: 2
- Forks: 2
- Open Issues: 1
- Releases: 0
Metadata Files
README.md
KG-Cybersec
In this project, we developed an ontology framework and knowledge graphs for teaching cybersecurity courses. The data is available as unstructured text in lab manuals and course material. There is no standrad datasets available for cybersecurity.
NER
We used NER to extract the raw entities as subjects and objects in a sentence and relations as the root of the sentence. We store these as triples and generated prelim knowledge graphs from the extracted information.
Ontology Development
We then used domain knowledge to design an ontology framework for cybersecurity education and refined the extracted entities and relations. The key entity catgories and their types were identified. The key relations were also identified and an attribute called, 'action' was added to relations. We then developed the knowledge graph from final triples.
Entity Matcher
The custom entity matcher program can be used to run on other documents and identify the entities given in its KB file, kbcyber.yaml. The lexical analyser lexcyber.yaml helped in entity linking and scope resolution. The module Entity Matchher contains the code in pythonscrript EntitymatchercyberSec.py and the entity KB data is available in yaml files
ChatBot
We built an intent classification chatbot using SVM based on key entities identified. The Module ChatBot contains the model, json file for responses and API implementation.
Owner
- Name: Garima
- Login: garima0106
- Kind: user
- Location: Arizona
- Company: Arizona State University
- Repositories: 1
- Profile: https://github.com/garima0106
Citation (citation.cff)
@misc{KG-cybersecurity-education2022,
author = {Garima Agrawal},
title = {{KG for Cybersecurity Education}},
url = {https://github.com/garima0106/KG-Cybersec.git},
publisher = {GitHub},
year = {2022}
}
GitHub Events
Total
- Watch event: 1
Last Year
- Watch event: 1
Dependencies
- Jinja2 *
- MarkupSafe ==2.0.1
- Pillow *
- PyYAML ==5.4.1
- anyio ==3.3.4
- asgiref ==3.4.1
- certifi ==2021.10.8
- charset-normalizer ==2.0.7
- click ==8.0.3
- cycler ==0.10.0
- dnspython ==2.1.0
- email-validator ==1.1.3
- fastapi *
- h11 ==0.12.0
- httptools ==0.2.0
- idna ==3.3
- itsdangerous ==2.0.1
- joblib ==1.2.0
- kiwisolver ==1.3.2
- matplotlib ==3.4.3
- nltk *
- numpy *
- orjson ==3.6.4
- pandas ==1.3.4
- pydantic ==1.8.2
- pyparsing ==3.0.3
- python-dateutil ==2.8.2
- python-dotenv ==0.19.1
- python-multipart ==0.0.5
- pytz ==2021.3
- regex ==2021.10.23
- requests ==2.26.0
- scikit-learn ==1.0.1
- scipy *
- seaborn ==0.11.2
- six ==1.16.0
- sklearn ==0.0
- sniffio ==1.2.0
- starlette *
- threadpoolctl ==3.0.0
- tqdm ==4.62.3
- typing-extensions ==3.10.0.2
- ujson *
- urllib3 *
- uvicorn ==0.15.0
- uvloop ==0.16.0
- watchgod ==0.7
- websockets ==10.0