Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 스위치
- vector
- 자바
- 머신러닝
- Java
- CISCO
- AI
- Python
- 인공지능
- dreamhack
- bastion host
- Repository
- 암호학
- cmd
- docker
- 라우터
- 온프레미스
- vlan
- 머신러닝 프로세스
- Firewall
- STP
- RIP
- AWS
- 크롤러
- 리버싱
- Screening Router
- abex'crackme
- 네트워크
- Reversing
- Mac
Archives
- Today
- Total
Haekt‘s log
[AI] 특징 추출을 위한 N-Gram 언어모델 본문
- trade-off 문제로 n 선택시, 5 를 넘으면 안된다.(희소문제, 모델크기 증가)
- 참고 - 점프 투 파이썬
- ngram
n-gram 은 n개의 단어로 이루어진 언어를 구분하기 위한 언어모델이다 .
언어의 갯수마다 명칭이 다르며, 각 명칭은 아래와 같다 .
- unigrams : 1개
- bigrams : 2개
- trigrams : 3개
- 4-grams : 4개
언어분리는 오직 n-1 개의 단어에만 적용된다.
만약 4-gram 을 사용하여 언어 예측을 한다고 했을 경우 4-1 인 3개의 단어만을 가지고 예측을 하게 된다.
💡 나는 행복한 하루를 보냈어. 너는 어떤 하루를 보냈니?
위 문자 다음에 올 내용을 4-gram 으로 예측한다고 했을 경우.
앞의 단어들은 무시하고, 예측할 부분 바로 이전의 3단어인 어떤 하루를 보냈니 를 사용하게 된다.
예측할 때에는 이런 식으로 예측하게 된다.
먼저 예시로
"어떤 하루를 보냈니?" 가 100 번 사용되었다 했을 때,
A : "어떤 하루를 보냈니? 행복했어" 가 60번,
B : "어떤 하루를 보냈니? 최악이었어" 가 20번 사용되었다면
A 는 60%, B 는 20% 의 확률을 가지게 된다.
따라서, 더 확률이 높은 "어떤 하루를 보냈니? 행복했어" 가 더 적합하다고 판단하게 된다.
- n-gram 활용 예시
n-gram 을 이용하여 멀웨어 탐지를 할 경우, 특정 부분의 어셈블리어를 예측하여 탐지를 할 수 있다.
n-gram 을 사용한 kaggle의 멀웨어 탐지 프로젝트에서 99.89% 정확도를 보였다고 한다.
'AI 인공지능 > 인공지능' 카테고리의 다른 글
[AI기초] 모델 학습의 종류 (0) | 2022.10.04 |
---|---|
[AI기초] 머신러닝 프로세스 (0) | 2022.10.04 |
[AI기초] DataSet이란? (0) | 2022.10.04 |
Comments