ComputerScience (329) 썸네일형 리스트형 Network Layer - 3. IP: Internet Protocol (1) 네트워크 레이어의 구성을 나타낸다. 하나씩 자세히 살펴보자. 1. IP datagram format IP header는 (option을 제외하면) 4bytes * 5 = 20bytes이다. ver : IPv4, IPv6 같은 버전 length : header + payload의 길이, 16비트단위까지 가능하지만 거의 1500Bytes를 넘지 않는다. 왜냐하면 우리가 대부분 사용하는 Ethernet의 최대 전송 유닛(MTU)이 1500Bytes이기 때문이다. 16-bit identifier, flgs, fragment offset : 이 필드들은 fragmentation/reassembly를 위해 사용된다. protocol : payload에 담겨 있는 프로토콜 종류를 나타냄. ex) TCP, UDP, I.. 패턴인식 - 8. Ensemble - Bagging 1. Ensemble - 지난 시간에 학습 데이터로부터 decision tree(분류기)를 만들고 판단의 문제를 tree searching으로 변환하는 것을 공부했다. - 여러 decision tree를 함께 사용해서 나온 결과를 결합(voting)한 것을 decision forest라고 한다. - decision tree뿐만 아니라 여러 분류기를 함께 사용해서 성능을 높일 수 있고 이 방법을 ensemble이라고 한다. - bagging, boosting은 ensemble의 방법중 하나이다. - bagging : 학습데이터가 많을 때 주로 사용된다. - boosting : 학습데이터가 적을 때 주로 사용된다. - decision tree를 예를 들면, 데이터, feature가 많을 수록 가지는 많아지기.. Computer vision - Homography 1. Alignment 응용 - alignment의 응용이다. corner, edge처럼 중요한 feature에 대해서 alignment를 수행해서 한장의 사진으로 합칠 수 있다. - 실제로 샘플 포인트들을 다 넣어서 변환 행렬식을 찾아낸다. 2. Homography - 이렇게 view point의 차이를 탐지할수도 있다. - 이런 porjective 변환은 어떻게 align할 수 있을까? - 이렇게 카메라 각도에 따라 변환행렬을 우측처럼 정의할 수 있다. - K : 3*3 카메라 내부 파라미터 - Rt : 3*4 짜리 변환 행렬 - X : (x,y,z,1) - 그럼 X를 소거하면 x' = Hx 를 구할 수 있고 이 말은 영상으로 부터 view point를 찾아내던가 view point가 바뀌었을 때, .. Computer vision - Alignment 1. Alignment 개념 - 그림의 모든 지점 P에 대해 행렬 변환 T하여 transformation을 수행할 수 있다. - alignment는 T를 구하는 과정이다. 1. Scaling 2. Rotation - 참고로 회전 변환 R에 대해서, Inverse(R) = transpose(R) 이다. 3. Translation - 이동은 2*2 행렬로 표현이 불가능하다. 동차좌표계로 확장하여 행렬곱으로 나타낸다. 4. Sheer - 기울이기, 축을 기울이는 변환이다. 5. Affine - 이 모든 선형 변환을 조합해서 만들어지는 변환을 말한다. - alignment는 저 a,b,c,d,e,f를 찾는 일이라고 했다. 이 모든 값을 알아내려면 최소 3개의 point 변환 결과를 알고 있어야 한다. - 일반적.. 소프트웨어공학 - 17. GRASP 1. GRASP - General Responsibility Assignment Software Patterns - 객체 설계에 대한 9가지 원칙을 제시한다. - 전형적인 OOAD의 순서는 "1. 요구사항 파악 -> 2. domain model 생성 -> 3. design model 생성" 이다. - grasp은 구체적으로 3단계에서 "class에 속성을 부여"하고 "서로 관계를 맺는" 작업의 가이드라인을 제공한다. - 즉 domian model을 보고 design model을 만든 원칙을 제시한다. 2. Responsibilities - class의 책임을 정의한다. knowing - 그 클래스는 어떤 정보를 알고 있어야 하는가? - 관련있는 객체는 누구인가? (다른 객체들의 정보는 어디까지 알고 있는.. Network Layer - 2. What's inside a router? (1) 1. What's inside a router? router는 Layer 3 device이다. 라우터의 내부를 살펴보자. 라우터의 내부는 두 plane으로 구분할 수 있다. control plane에서 routing을 수행한다. (컴퓨터의 processor처럼) 프로세서가 routing software를 실행해서 경로를 찾는다. 소프트웨어 차원에서 구현되기 때문에 ms단위로 상대적으로 오래걸린다. 그 아래는 data plane이 있다. 여기서 forwarding을 수행한다. switching fabric이 실제로 패킷을 한쪽에서 다른쪽으로 move하는 작업을 수행한다. 하드웨어 차원에서 구현되어 있어 nano초단위로 굉장히 빠른시간 내에 처리된다. routing processor가 찾은 경로를 기반으로 .. Network Layer - 1. overview 이제까지 살펴본 Transport layer는 process간의 logical communication을 담당하는 계층이였다. 이제부터 자세히 살펴볼 network layer는 hosts간의 logical communication을 담당하는 계층이다. network layer는 segment를 encapsulate한 datagram을 전달한다. 모든 라우터는 network layer 계층까지 존재한다. 라우터는 ip datagram의 header field만 보고 패킷을 전달한다. 네트워크 계층의 가장 중요한 두가지 역할은 forwarding과 routing이다. 1. forwarding router의 input link interface로 들어온 패킷을 올바른 output link interface로 .. TCP - 5. throughput, fairness, ECN 1. throughput tcp의 congestion control 때문에 cwnd가 시간에 따라 saw tooth 모양을 띤다. 이번에는 평균 TCP throughput을 알아보자. throughput은 window크기와 RTT를 통해 유추할 수 있다. 시간에 따라 window 크기를 나타내는 그림이다. slow start는 지수배로 아주 짧은 시간에 윈도우 크기를 늘리기 때문에 1부터 시작하는 부분은 지우고 생각한다. 평균 윈도우 크기는 3/4W이다. 그럼 매 RTT마다 3/4W 만큼 보낸다고 생각할 수 있으니 throughput은 위처럼 추정할 수 있다. 만약 10Gbps throughput을 얻고 싶다면 loss rate, L은 2*10^(-10) 정도로 매우매우매우 작아져야 한다. 하지만 los.. 이전 1 ··· 5 6 7 8 9 10 11 ··· 42 다음