군대에게는 여러 Risk(위협)이 존재합니다. 스파이, 해커, 테러리스트 등의 외부적인 위협도 존재하지만, 시스템이 잘 구축된 현재의 군대의 실질적인 위협은 군사 기밀 유출, 허위 기사, 악성 게시글 등의 내부적인 위협들입니다. 그럼 군대는 이런 내부 위협을 어떻게 식별하고 관리할까요?
현재 군대는 유출된 기밀글 및 허위기사등의 악성글을 추려내기 위해 24시간동안 무한정 검색 및 캡처하고 각종신문에서 기사를 일일히 오려냅니다. 모은 자료는 사람이 읽어보면서 문제가 될 글을 식별하고, 보고서로 정리해서 대응팀한테 넘기는 등 번거로운 작업들을 반복하고 있습니다. 그러다보니 놓치는 일이 발생하거나, 대응이 늦어지는 일이 발생할 수 있습니다.
그래서 생각했습니다. 군사기밀 및 허위기사등의 악성글을 자동으로 식별하고 관리 할 수 있는 All-in-One 플랫폼을 만들어보자. RISKOUT이 탄생하게 된 이유입니다.
There are numerous threats to military. There are external threats such as spies, hackers, terrorists, but the actual threats of current well-established military are internal threats such as leaked secrets, fake news, and malicious posts. So how does military identify and manage these?
Currently, military searches and captures leaked documents and fake news 24/7 and manually cuts news from newspapers. The collected data is then read and organized by soldiers into reports, finally handing them over to the response team. Due to the long and complex process, human errors or delayed responses may occur.
So I thought. Let's create an all-in-one platform that can automatically identify and manage malicious risks such as leaked secrets and fake news. That's when RISKOUT was born.
3가지 핵심기능은 다음과 같습니다.
💀 위협 대시보드(Risk Dashboard)
: 여론의 감정 상태, 언론 보도 현황등을 시각화해주는 대시보드입니다.😤 위협 탐지(Risk Detection)
: 군사 기밀 유출, 허위 기사 등의 악성글을 자동으로 탐지분석해주는 위협 탐지페이지 입니다.📰 보고서 생성(Report Generator)
: 클릭 몇번만으로 커스텀 가능한 위협 보고서를 자동으로 생성해줍니다.
오늘의 키워드에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
각종 기사글, 게시판 등의 커뮤니티 사이트들을 기반으로 언급 비중이 놓은 단어들을 시각화한 워드 클라우드입니다.
감정 통계에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
각종 SNS 및 커뮤니티 사이트들을 기반으로 여론의 감정 상태를 분석하여 positive, neutral, negative로 나누어 표현한 차트들입니다.
오늘의 트렌드에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
그날 가장 많이 언급된 기사들을 선정하여 FactCheck를 통해 진실 추정, 중립 추정, 허위 추정으로 판별 및 분류하여 보여줍니다.
나라별 이벤트에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
국제 기사들을 분석해 국가별 이벤트 트래픽을 보여주는 지도입니다.
기사 변화량에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
최근 기사량들을 대조하여 기사량의 변화를 시각화한 차트입니다.
탐지 현황에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
기밀 유출 및 허위기사등의 악성글들을 인공지능을 통해 자동으로 분석하여 탐지합니다. 이후 빠르게 대응할수 있도록 요약된 내용 및 글의 출처 등을 제공합니다.
개체 인식 필터에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
개체명 인식(Named Entity Recognition) 기술로 사람, 조직, 시간 등의 유형들을 추출, 보다 세부적인 분석을 할 수 있게 도와주는 검색 필터로 제공합니다.
보고서 생성에 대한 세부적인 내용은 여기에서 확인하실 수 있습니다.
사용자가 확인한 위협들을 클릭 몇번만으로 자동으로 정돈 및 요약하여 보고서의 형태로 생성해줍니다. 생성된 보고서는 PDF로 출력가능합니다.
로그인 하신 후:
축하해요! RISKOUT의 유저가 되셨습니다.
이제 사용하실 수 있습니다! 🎉
- 📺 Full 영상: https://www.youtube.com/watch?v=Lwg-OQIIvGA
Chrome | Internet Explorer | Edge | Safari | Firefox |
---|---|---|---|---|
Yes | 11+ | Yes | Yes | Yes |
Pytorch | React | Django | 🍃 Mongo DB | 🐳 Docker | |
---|---|---|---|---|---|
1.9.0+ | 17.0.2+ | 3.0.7+ | 4.4+ | 20.10.x+ | 5.0.1+ |
- Colab으로 AI 모델 학습:
KoBERT
— 감성분석, 가짜뉴스판별, 보고서요약에 사용.DistilKoBERT
— Named Entity Recognition(개체명인식)에 사용.
- 사용한 데이터셋:
Naver-nsmc
— 감성분석모델에 사용한 데이터셋.Dacon 문서요약
— 한국어 문서 추출요약에 사용한 데이터셋.SNU Factcheck
— 가짜뉴스 판별에 사용한 데이터셋.Naver NLP Challenge 2018
— Named Entity Recognition(개체명인식)에 사용한 데이터셋.
- Pytorch 라이브러리를 통한 딥러닝 빌드:
Transformers
— NLP모델의 아키텍처 제공.FastAPI
— AI 기능 API 구현.
- DRF를 통한 백엔드 구축:
Mongo DB
— 데이터베이스 구축.
- Beautiful Soup 이용하여 크롤링:
Crawler
— 각종 오픈게시판, SNS, 뉴스사이트에서 언어데이터를 추출하는데에 사용.
- React를 이용한 프론트엔드 구축:
MUI
— MUI(Material UI) 컴포넌트 라이브러리 활용.React router
— 컴포넌트 네비게이션에 사용.
- Recoil을 통한 리액트 상태 관리:
Atom
— 컴포넌트 상태 단위 분리기능 사용.Selector
— Atom에 의존하는 동적인 데이터 생성 기능 사용.
먼저, node.js, yarn, docker, 그리고 docker-compose를 다운로드하세요. node.js는 버전 14.x
이상이어야 합니다.
프로젝트를 Clone 합니다.
git clone https://github.com/osamhack2021/ai_web_RISKOUT_BTS
Secret 파일들을 작성합니다.
Secret 파일 작성에 관해서는 여기서 확인하세요.
프로젝트를 빌드 및 실행합니다.
./run.sh
http://localhost:8002로 접속합니다.
이제 사용하실 수 있습니다! 🎉
Profile | Name | Role | Github | |
---|---|---|---|---|
이민석 (팀장) |
Product Manager AI Developer |
|||
조정환 | AI Developer | |||
서명근 | Frontend Engineer | |||
김태원 | Backend Engineer | |||
이원빈 | Frontend Engineer | |||
박용준 | Backend Engineer | |||
서종찬 | Frontend Engineer |
프로젝트 RISKOUT은 GPL 3.0 License를 따르고 있습니다.