학습 환경은 tensorflow verison 1.15이다. tensorflow version 1과 2는 상당히 차이가 있는 것 같지만 요즘에도 주로 사용되는 version 1을 먼저 학습하기로 하였다. 우선은 텐서플로우를 사용하기 위해서는 tensorflow 모듈을 import 해야 한다. import tensorflow as tf 이때, 이후에 다른 버전을 이용해야 할 일이 생길 수도 있고 다른 모듈과 함께 사용하다가 버전 충돌이 발생할 수도 있다는 점을 고려하여 별도의 가상 환경을 구축하여 진행하기를 권장한다. 가상 환경을 생성하고 관리하는 방법은 이전 포스트에 기술해 두었다. 2020/07/13 - [개발 일지/ML] - Pycharm을 이용한 Anaconda 가상 환경(env) 설정 Pychar..
학습에 사용된 운영체제는 Windows이다. Anaconda를 이용하면 필요에 따라 간편하게 여러 가상 환경을 생성/제거하고 사용할 수 있다. CMD를 이용한 가상 환경 관리 명령어는 다음과 같다. ' 가상환경 생성/삭제 및 관리 conda list 현재 가상 환경에 설치된 라이브러리 목록을 출력 conda env list 존재하는 가상 환경 목록을 출력 conda create -n {envname} python=version envname이라는 이름의 가상 환경을 생성 * -n 은 --name의 축약된 표현임 (conda) activate {envname} 해당 가상 환경을 활성화(사용) * Windows command line에서는 conda를 생략 conda deactivate 사용중인 가상 환..
▶ 왜 계층화를 이용하는가? * 복잡한 시스템을 다루기 위함. * 명시적 구조는 복잡한 시스템 조각 간 식별과 관계 정의를 도움 * 모듈화는 시스템의 유지보수를 쉽게 함 ▶ ISO/OSI reference model * network edge간 통신을 위해 ISO 회사가 만든 OSI 7계층 * 계층을 거치며 데이터는 Encapsulation(캡슐화)되고, Decapsulation(캡슐화의 역과정)된다. * Encapsulation은 헤더를 붙이는 과정, Decapsulation은 헤더를 해석하는(제거하는) 과정이다. * 각 계층마다 데이터는 우측의 명칭대로 불린다. * 애플리케이션 계층 : 네트워크 애플리케이션의 이용을 돕는다. FTP, SMTP, HTTP 등이 있다. source data → mes..
▶ 손실(loss)과 딜레이(delay)는 어떻게 발생하는가? * 라우터 버퍼에서의 패킷 지연 * transmission delay, queueing delay, 버퍼 부족으로 인한 packets dropped loss ▶ 네 가지의 패킷 지연(packet delay) * (노드)처리 지연((nodal) processing delay) : 패킷을 어떤 output link로 보낼지 결정하는 시간 * 큐잉 지연(queueing delay) : transmission을 기다리는 시간. 라우터의 혼잡도에 의존 * 전송 지연(transmission delay) : 패킷을 전송하는 데에 걸리는 시간. L/R * 전파 지연(propagation delay) : physical link의 시작점에서 도착 지점..
▶ 네트워크 코어(Network core) * 네트워크 코어(network core): 상호 연결된 라우터들의 망 * 패킷 교환(packet-switching): Packet의 input과 알맞은 output을 연결 ▶ 패킷 교환(packet-switching) * 패킷 교환은 저장 후 전달(store-and-forward) 방식으로 이루어진다. * 패킷 교환은 store-and-forward(전체 패킷을 받아야만 출력 링크로 패킷 전송 가능) 방식으로 이루어짐 * 따라서 N개의 라우터가 있고, L bits가 담긴 패킷을 R의 속도로 전송하고자 한다면 transmission delay는(N+1)(L/R)이 된다. * 큐잉 지연(queueing delay): 패킷이 도착했을 때 해당 링크가 다른 패..
▶ 네트워크 엣지(Network edge) * 네트워크의 요소를 분해하면 (network) edge, access network, (network) core가 있다. * 네트워크 엣지(network edge): 말단 시스템. Client(PC, 노트북...)와 Server가 있다. * 접속망(access network): end-system들을 다른 end-system까지 연결하기 위한 경로의 첫 번째 라우터에 연결하는 네트워크. wired/wireless 커뮤니케이션 링크로 나뉜다. Access된 네트워크의 종류에 따라 Residential, institutional, mobile 등으로 나뉜다. * 네트워크 코어(network core): 라우터들의 연결망. 인터넷(네트워크들의 네트워크) ▶ ..