본문 바로가기
보안/학교,기관

ai(kisia - ai 악성코드)

by 지트리아 2022. 8. 19.

인공지능 : 사람의 인식, 판단, 추론, 결론이라는 의사결정 프로세스와 학습이라는 기능을 인공적으로 실현할 수 있게 하는                    컴퓨터 시스템

데이터 과학 : 정형, 비정형 형태를 포함한 다양한 데이터로부터 지식과 인사이트를 추출하는 데 필요한 과학적 방법론,                            프로세스, 알고리즘 시스템을 동원하는 융합분야

기계학습 : 훈련 데이터를 통해 학습된 알려진 속성을 기반으로 '예측'에 초점

테이터 마이닝 : 데이터의 알려지지 않았던 속성을 '발견'하는 것에 집중

 

지도 학습 : 입력과 원하는 출력의 쌍이 모두 주어지 상태에서 학습하는 방법

비지도 학습 : 입력에 해당하는 바람직한 출력의 정보는 주어지지 않음

강화 학습 : 성공과 실패의 정보로부터 바람직한 행동 패턴을 스스로 학습하는 알고리즘

 

지도 학습 中

회귀 : 여러 개의 독립변수와 한 개의 종속변수 간의 상관관계를 모델링하는 기법

분류 : 학습 데이터를 잘 분류할 수 있는 함수를 찾는 것

 

비지도 학습 中

군집화 : 같은 군집에 속한 데이터와의 거리는 최소로 줄이고, 다른 군집에 있는 데이터와의 거리는 최대로 늘리는 것을 목                표로 군집의 소속을 바꿔가면서 최적의 구성을 찾는 것

차원축소 : 고차원의 데이터 정보의 손실을 최소화 하면서 저차원으로 변환하는 것

 

ML 기반 엔드포인트 보안

최종 사용자 디바이스(서버, 데스크톱, 모바일 기기 등)를 악성코드와 같은 내부 및 외부 위협으로부터 보호

시그니처 진단 → 휴리스틱 탐지 → 평판 분석 → ML기반 탐지

 

ML 기반 네트워크 보안

비지도 학습 : 정상 상태의 packet을 학습하여 비정상 행위를 탐지하는 방식

                      ex) 내부자 위협 탐지, 제로데이 공격 탐지

지도 학습 : 위협 패턴을 학습하여 탐지하는 방식

                   ex) 정오탐 분석, 위협 추론

 

IAM : identity and access management

SSO(kakao인증을 다른 site에서 쓸 수 있는 것)

→ 다중 인증(사용자가 적어도 두 가지 이상의 확인 요소를 제공해야하는 인증 방법)

→ 생체인증과 FIDO(단말기가 server에 통/불통만 보냄(hacker가 털면 위험하니))

→ 행동해턴기반 인증

 

Inversion Attack : 머신러닝 모델에 수많은 쿼리를 던진 후, 산출된 결과값을 분석해 모델 학습을 위해 사용된 데이터를 추                              출하는 공격

Poisoning Attack :의도적으로 악의적인 학습데이터를 주입해 머신러닝 모델을 망가뜨리는 공격

Evasion Attack : 판단 대상이 될 데이터에 최소한의 변조를 가해 머신러닝 모델을 속이는 기법

Model Extraction Attack : Inversion Attack이 공격대상 모델의 입력값과 결과값을 분석해 학습 데이터를 추출하는 공격이                                            라면, Model Extraction Attack은 머신러닝 모델을 추출하는 공격이다. 주로 유료 머신러닝 모델                                            서비스를 탈취하거나 Evasion Attack과 같은 2차 공격에 활용하기 위해 사용될 수 있음

 

 

 

AI > ML > DL

 

AI : if else, switch case가 포함

ML : 인공적인 학습 시스템을 연구하는 과학과 기술. 즉, 경험적인 데이터를 바탕으로 지식을 자동으로 습득하여 스스로              성능을 향상하는 기술

DL : 알고리즘은 문제를 쪼개지않고, End to End 형식으로 문제를 해결, 상황에 수반되는 각종 Element를 조합하여 최종           적인 결과 도출, 가중치/절편 적용, 수치 최적화(적당량의 학습 data, 너무 많아도 x)

 

데이터 전처리 : 왜곡된 분석결과를 방지하기 위해 분석에 적합하게 데이터를 가공하여 데이터의 품질을 올리는 일련의 과                           정

                         데이터 유형 변환 : 데이터 유형을 변환하거나 데이터 분석에 용이한 형태로 변환

                         데이터 여과 : 오류발견, 보정, 삭제 및 중목성 확인 등 데이터 품질 향상

                         데이터 정제 : 결측치 변환, 이상치 제거, 노이즈 데이터 교정 비정형 데이터를 수집할 때 반드시 수행

 

데이터 분석을 위한 조건 : 정형 Data, 같은 Type, 제한된 범위, (가급적) 같은 결과, 분석 가치

데이터 결측치 처리 방법 : Completes Analysis, 평균 대치법, 회귀 대치법, 단순 확률 대치법, 최근방 대치법

이상치 : 정상의 범주(데이터의 전체적 패턴)에서 벗어난 값

이상치 처리 방법 : 기초 통계량 추출, Z-Score 통한 방법, 밀도기반 클러스터링 방법, 고립 의사나무 방법

정규화 방법 : 2개 이상의 Data set을 통합할 때, Scale을 일치시키는 방법

                     Z-score 정규화, 최소-최대 정규화, 로그변환, 역수변환, 지수변환

 

Linear Regression

종속변수는 독립변수와 관계가 있음 → 산술적(!=확통)

직선만 취급

 

Logistic Regression

이것은 확통

Linear 은 이항 종속변수 설명 불가(규칙적이지 않은 것은 설명 불가)

연결함수 ( 1 /  1 + e^(-x) )

Odds Values : 발생 확률을 비교하기 위한 비율값

Logit Transformation : 특정 결과를 나타내기 위한 밑을 몇 번 곱하는지를 나타내는 함수, 크기 ↓

 

Decision Tree활용에 따라 예측 모델(비용 함수 최소 = 분기회수 최소 + 분기 범위 최대), 분류 모델(group화, entropy↑면 정보이득↑, 극단적 값을 제거(puring)하면 재학습 & 개수 ↓)로 나뉨변수(조건)과 범위(상태)에 따라 선택이 세분화되는 구조각 변수의 weight가 없음 → overweight 됨

 

Random ForestDecision Tree의 한계점을 개선한 알고리즘 → 중요성을 고려함

학습 데이터의 일부분을 학습하는 Randomized Tree + 학습 대상 변수 중, 일부분만을 선택하여 선택하는 Random Subspace가 합쳐진 개념

subdata set = random, duplicate, samesize

 

SVM

Support Vector Machine

학습 Data의 '오차'를 인정하여, '일반화 오류'를 최소화

패턴 인식, 자료 분석을 위한 지도 학습 알고리즘

분류/회귀 분석에 활용

Margin : 군집간 가장 가까운 Element간의 거리의 중간값(경계값)에서, 군집에 포함되는 Element와의 거리

Support Vector : 군집 간 경계선에서 가장 가까운 Element

Kernel : 군집 분류 방법, 학습 Data의 형태에 따라 선형 / RBF 방식으로 분류

이상행위 탐지에 사용(악성코드 탐지에 사용 x)

 

Clustering(군집)

'분석' 이전 단계로, Data 분석의 필요성을 인지하기 위한 사전 단계

군집내 유사 ↑, 군집간 유사 ↓ 가 best

분류 : 최종적으로 '예측' 목적, 독립변수와 종속변수의 관계 식별

군집 : Data 자체를 '편의'에 따른 Group화, 최종적으로 '분석 필요성(실효성)' 유무를 확인

 

Hierarchy 알고리즘

계층적 트리 모형을 이용해 개별 개체들을 순차적, 계층적으로 유사한 개체 내지 그룹과 통합하여 군집화를 수행하는 알고리즘

거리 측정 방식 : Single Linkage, Furthest-Neighbor, Average Linkage, Centroid Linkage

병합/분리된 군집은 재검토 불가, Noise Data에 대한 처리의 어려움, 계산 비용 증가

 

Divisive 알고리즘

  K-means Clustering 알고리즘

    주어진 데이터를 k개의 클러스터로 묶는 알고리즘

    각 클러스터와 거리 차이의 분산을 최소화

    초기 임의의 지점이 잘못 선택 된 경우, 의도하지 않은 군집 산출

    패턴 인식 불가(거리로만 하기 때문), 군집 크기가 다를 경우 인지 불가, 군집 밀도가 다른 경우 오군집 가능

 

  Ward Distance : 군집내 높은 유사성, 군집간 낮은 유사성을 동시 확인 가능

  ESS : 군집 중심에서 개체간의 거리 편차 제곱의 합(분산), 낮을수록 유사도가 높음

  실루엣 : 여백의 수준을 수치화 한 개념, 군집 중심점 간 거리의 합, 높을수록 군집 효율이 높음

 

CNN

Deep Learning의 한계(낮은 정확도, ML보다 낮은 경우가 있음)

이미지 분석 시, Pattern 인식을 적용하는 방식

단위 Unit을 사용, Convolution 과정과 Pool 과정을 반복

최종적으로 Filter를 학습

 

RNN

학습 data amount ↑(상대적으로)(모으기 쉽기 때문에)

'단어', '문장' 등의 '의미 분류' 목적

전체 문장에 대하여, 각 단어의 뜻/의미를 분석 후, 그 조합 결과를 산정

선행 분석 결과가 후행 분석에 적용되는 방식

 

Classfication : 하나만 불들어 오는 것

Regression : range값이 나옴

댓글