Learn
-
[Anomaly Detection] SVM, SVDDLearn/머신러닝 2022. 8. 11. 17:46
# One-Class Support Vector Machine (One SVM) - 정상 / 불량 관측치를 부분짓는 서포트 벡터 머신 알고리즘을 구축하는 방법론 - 정상 데이터를 고차원 공간으로 보내서 ①불량 데이터와 구분되고 ②원점에서 멀리 떨어지게 하는게 목표 w: parameter regularization으로 특정 범위에서만 변하게 함 (민감하게 변하지 않게; Robust) ρ: 원점으로부터의 거리. 멀면 좋은데 목적식을 최소화해야 하므로 -를 붙임. ν: nu라고 읽음. SVM의 C를 (1/νn)으로 표현. ξ: hyperplane과 원점 사이에 있는 점들의 hyperplane까지의 거리. (최소화) Φ(.): mapping function (original data → feature space..
-
[Anomaly Detection] Isolation ForestLearn/머신러닝 2022. 8. 11. 13:52
# 개요 - 모델 기반 이상치 탐지 알고리즘 중 하나 - 이 모델은 분류를 한다기보단 Score가 나옴. # 기본 개념 - Decision Tree와 마찬가지로 y를 균일하게 분류하는게 목표 - 아래 그림은 t1 > t2 > t3 > t4 순으로 나눴음 > x1, x2간의 분할 순서, t를 어디로 잡을 것인지가 중요 - 모델 구실을 하려면 미래 데이터를 예측할 수 있어야 함 > 어떤 구역에 미래 데이터가 속했는지를 보고 다수(majority)를 따르면 됨 - Decision Tree로 표현하면 오른쪽과 같음 > 마지막 노드를 Terminal node라고 부르며 이게 중요 - Full-Grown Tree를 만들경우 overfitting # 분할점은 어떻게 정할까? 위 그림에서 몇 번이 가장 잘 나눈 것일까..
-
[Anomaly Detection] Local Outlier Factor (LOF)Learn/머신러닝 2022. 8. 10. 17:17
# 개요 - 한 객체 주변 데이터 밀도를 고려한 이상치 탐지 알고리즘 - 정상 객체는 주변에 데이터가 많이 존재하고, 불량 객체는 단독으로 존재한다는 가정 1. K-distance of object p - 자기 자신(p)을 제외하고 k번째로 가까운 이웃과의 거리 2. K-distance neighborhood of object p(Nk(p)) - k번째로 가까운 이웃과의 거리를 원으로 표현할 때, 원 안에 포함되는 모든 객체들의 개수 - 커트라인에 걸린 동률인 것도 다 포함된다. - 실제 계산때는 모든 점에 대해 거리를 다 구하고 sorting이 필요하다. 3. reachability Distance (Reachability distance_k(p, o)) - ①o를 기준으로 k번째 가까운 이웃과의 거리..
-
[Anomaly Detection] 개요, 확률 분포 기반Learn/머신러닝 2022. 8. 10. 13:10
# Novelty vs Anomaly vs Outlier 비슷한 듯 하지만 다르다. 그런데 우리나라에서는 다 '이상치'로 번역. Novelty - 본질은 같지만 특성이 같은 유형 ex. 일반 호랑이가 정상 데이터일 때 백호는 novelty Anomaly - 대부분의 데이터와 특성이 다른 관측치. - 약간 부정적인 느낌이 있음. ex. 일반 호랑이가 정상 데이터면 라이거는 anomaly Outlier - 대부분의 데이터와 본질적인 특성이 다른 관측치. - 아주 부정적인 느낌. 보통 데이터에서 발견되면 삭제함. ex. 일반 호랑이가 정상 데이터면 사자가 outlier # Anomaly Detection 이상치는 정상 데이터보다 소수 (심한 불균형) > Classification이 잘 되지 않는다! class..
-
[OOP/UML] Use Case DiagramLearn/OOP&UML 2022. 8. 10. 00:38
# Use Case - External Actor가 시스템을 어떻게 사용하는지 - use case는 diagram이 아닌 텍스트 - 3가지 포멧(레벨) : brief -> casual -> fully dressed - Casual: OOA단계에 해당. Main / Alternate Scenario를 구분함. - Fully dressed: OOD단계에 해당. Main / Alternate / Precondition / Extension Scenario를 구분함. - Use case가 곧 functional requirements임. # User Case Diagram - use case를 모아놓은 그림 - 일을 직접 하는 actor를 primary actor, 일을 시키는 사람을 secondary acto..
-
[OOP/UML] UMLLearn/OOP&UML 2022. 8. 9. 00:06
OMG라는 회사에서 만든 Unified Modeling Language # MOF (Meta Object Facility) - Layer M3: Meta-meta model layer (The MOF model) - Layer M2: Meta model layer (The UML meta model) - Layer M1: Model layer (The UML model) - Layer M0: Information layer (the Application) --> 보통 M1에서 모델링, M0에서 구현 # UML Diagrams 보통 2.0을 많이 씀. (Profile Diagram은 2.2에서 추가됨.) Structure / Behavior / Interaction Diagram은 실제 다이어그램이 아니라..
-
[OOP/UML] Object-Oriented DevelopmentLearn/OOP&UML 2022. 8. 8. 00:01
# Software Development 컴퓨터의 소프트웨어로 문제를 푸는 것을 뜻함. 이를 위해 프로그래밍 언어가 필요. - Procedural Programming --> SASD (C) - Object-Oriented Programming --> OOAD (C++, JAVA) # Procedural Programming Procedure: variable을 바꾸는 statement procedure를 얼마나 잘 만드는지가 핵심 algorithm: statement를 언제 어떻게 실행하는지 data structure: 데이터를 어떻게 어디에 저장할 것인지 procedure와 data의 dependency어서 자유롭게 접근하도록 하는게 SASD의 핵심 --> OOAD에서는 그렇지 않음 (Encapsul..
-
[OOP/UML] PrinciplesLearn/OOP&UML 2022. 8. 6. 23:33
# Basic Principles of Object-Oriented 1. Abstraction 2. Encapsulation 3. Inheritance 4. Polymorphism 5. Composition 1. Abstraction 하려는 일에 관련된 것만 남겨두고, 관련 없는건 지우는 것. 2. Encapsulation 내부적으로 어떻게 동작하는지 몰라도 사용할 수 있게 만드는 것. (Information hiding) ex. 자동차 내연기관이 어떻게 작동하는지 몰라도 운전 방법만 알면 가능 get/set을 통해서 데이터를 얻거나 수정 아래 예시에서 client는 interface를 통해서만 데이터에 접근 가능 operation이 어떤식으로 구현(implement)되었는지는 전혀 알 필요 없음. 3...