반응형

2021/01 61

[Tensorflow2.x] Tensorflow의 이해

텐서플로우가 어떻게 작동하는지, 어떤 구조를 가지고 있는지 그 Flow에 대해서 알아보도록 하자. 독학은 참 어렵지만 새로운것은 항상 재밌다. 1). 플로우(Flow) : Data Flow Graph Computation 텐서플로우는 병렬처리가 필수인데, 대용량데이터의 연산때문이다. 연산구조이다. 노드를 연결하는 엣지가 데이터를 / 노드는 데이터를 통해 수행하는 연산 역할을 하는 그래프 구조를 의미한다. ** 여기서 노드와 엣지란? 엣지(Edge)는 텐서를 의미하며 엣지의 방향은 텐서의 흐름을 의미하고 노드(Node)는 곱하고, 나누는 등 텐서를 처리하는 연산을 말합니다. 2). 그래프 구조(Graph structure)와 Data Flow 구조 Data Flow를 이해하려면 그래프구조를 알아야한다. 그..

[Tensorflow2.x] Tensorflow란 무엇인가 + 자료형

1). 텐서플로우(TensorFlow)는 텐서(Tensor)와 "흐르다"의 영어표현인 플로우(Flow)를 합친뜻 결국 "텐서라는것이 흐른다" 라는 모습을 브랜딩화 했다고 한다. 2). 텐서(Tensor란)? 공식사이트 정의 : 텐서(tensor)는 벡터와 행렬을 일반화한 것이고 고차원으로 확장 가능. 내부적으로 텐서플로는 기본적으로 제공되는 자료형을 사용해 n-차원 배열로 나타낸다. 간단하게 생각하면 텐서는 텐서플로우가 연산하기 위해 사용하는 자료형, 데이터의 형태이다. 머신러닝에서는 데이터를 N차원의 배열로 구성하는데, 예를 들어 RDB로 비교를 해본다면 각 컬럼의 갯수가 N개이면, 해당 데이터로 1차원 ~ N차원상의 배열까지 만들 수있다. 3). 텐서의 구성요소 텐서 플로우의 자료형인 텐서는 랭크, ..

[Tensorflow2.x] Anaconda Tensorflow(2.3.0) 설치 (Pyhton 3.7)

가상환경 조회 : conda info --env 가상환경 실행 : conda activate (가상환경명) 현재 : Python 3.8.6 설치되어있슴 OS : Window anaconda 설치 후 pip 업그레이드 - pip install --upgrade pip - 오류 Could not install packages due to an EnvironmentError: [WinError 5] 액세스가 거부되었습니다 - 해결방안 관리자 권한이 필요하여 생긴 오류 -> 관리자권한으로 anaconda prompt 실행 가상환경 생성 conda create -n tensorflow(가상환경명임) pip python=3.8(Python 버전임) -> y/n 물음에 y 가상환경 이동 => conda activat..

[Knowledge] Tomcat 배포시 스케쥴러 중복 실행 해결방안

상황 본인은 local - eclipse 환경에서는 데몬을 띄웠을때 문제없이 하나만 실행됬었는데 본 프로젝트를 war로 배포했을때 데몬이 중복되어 2개가 실행되었다. Tomcat이 webapps에서 한번 실행시키고, test프로젝트 war를 unpackaging 할때 한번더 실행한다고한다. 그렇다고 프로젝트가 이중으로 뜨는것은 아니다! 두번 띄워지지만 둘중 하나는 죽게 되지만 스케쥴러는 죽지않는다고 한다..! 조금더 자세히 조사해봐야겠다. 해결 Tomcat에 conf폴더에 보면 server.xml 파일이 있다. server.xml 파일을 열어보면 Host 쪽에 docBase, appBase가 있는것을 볼수 있다. 대략 이런식.. appBase : 여러 webapp들이 들어가는 부모 디렉토리 docBase..

[Node.js] Node.js란? -1

1). Node.js 정의 위키백과 => 더보기 Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다. 2). Nodejs를 어디에쓸까? 간단한 로직. 대용량(동시에 여러 request를 처리) 빠른 응답시간 요구 빠른 개발 요구 비동기방식에 어울리는 서비스(네트워크 스트리밍 서비스, 채팅 서비스 등) 쓰레드 기반 동기방식(Blocking I..

[Javascript] Prototype 이란? 개념 - 수정필요

1). prototype.메소드 __proto__ : 자신을 만들어낸 객체의 원형과 연결된 속성. constructor : 생성자로써, 자신을 만들어낸 객체와 연결된 속성. prototype : 자신을 원형으로 만들어진 새로운 객체들과 연결된 속성. bab의 Prototype은 bab의 생성 당시 정보를 가진 새로운 객체를 복제하여 만들어진다. prototype 프로퍼티와 연결된 Prototype Object 는 bab 함수를 통해 생성되는 객체들의 원형이 되는 것이다. bab.hello는 bab의 원형에 접근하지 않았기 때문에 bab의 hello는 변경되지않은 상태의 원형으로 b1= new bab()에서 복사를 하게 된다. 그래서 => b1.hello(); 는 hello가 나오게 되지만 bab.hell..

[Knowledge] Thread와 Process 차이점

1. 프로세스 : 프로세스는 CPU로부터 시스템 자원을 각각 할당받아 독립적으로 실행중인 프로그램 CPU로부터 각각 독립된 Code, Data, Stack, Heap 영역을 할당받는다. 각각의 프로세스는 독립적인 메모리 영역을 가지고 있기 때문에 다른 프로세스의 자원에 접근하기 위해서는 IPC (Inter Process Communication)를 사용해야 한다. (메일슬롯, 파이프, 파일, 소켓 등을 이용하여 통신) 2. 쓰레드 : 쓰레드는 프로세스 내부의 작업 단위 프로세스 내부에 있는 일부 자원을 스레드끼리는 공유 한다. 대표적인 힙 영역을 서로 공유하면서 사용함으로써 sibling 스레드가 변경한 자원을 특정 통신없이 바로 확인할 수 있다. 그러나 스택 영역은 서로 공유하지 않는다. 스택 영역을 ..

[Python] Class란? 개념잡기

자 저번에 알아본 Class와 method에 이어 공부할 시간이다. 이번엔 __init__() 이라는 특이한 아이를 먼저 확인 해볼 건데, 이 아이는 Class의 생성자라고 생각하면 될것 같다 인스턴스 생성 시 바로 포함되어야 할 데이터는 생성자(init)로 정의해서 사용하며, 클래스명.메소드로 사용시 메모리에 필요한 데이터를 적재(instance생성 -> 적재) 후 해당 인스턴스를 self에 대입하여 호출하는 방식으로 사용 할 수 있다. Company.inform()으로 실행했을경우 오류가 나는 이유 def inform(self) 메소드는 self(instance)를 가지고있어야 한다. 하지만 클래스명.메소드명으로 실행할 경우 인스턴스는 어디에도 적재되어있지 않다. 여기서 com1을 넣어주면 오류가 없..

[Python] Self 및 Class개념 잡기

1. Self 개념 일반적으로 메소드의 첫 번째 인자는 항상 self가 들어온다고 본다. self는 클래스로 생성된 인스턴스를 의미한다. 클래스 인스턴스가 생성되면 해당 인스턴스는 특정 메모리 주소에 저장이 되는데, 메모리 주소에 접근하는것을 self가 도와준다고 보면 된다. >>> class Bab : ... def func1(): ... print("밥알1") ... def func2(self): ... print("밥알2") ... >>> b = Bab() >>> b.func1() ==> 결과 : Traceback (most recent call last): File "", line 1, in TypeError: func1() takes 0 positional arguments but 1 was g..

[Java] 초보 가이드 -4

기본타입 이어서~!01/28 데이터 참조!!! Wrapper Class => char -> Character로 변경된다. Boxing => char('2') -> Character[] 17). 기본타입의 형변환 형태의 형변환 / 크기의 형변환 Promotion, Casting (type) : 캐스팅 연산자 Promotion : 1byte -> 4byte : 작은 타입에서 큰타입으로 변경 ex). byte b =10; int c =b; // 그냥 사용 Casting : 4byte -> 1byte : 큰타입에서 작은타입으로 변경 ex). int c =100; byte e = (byte)c; //형변환 필요 ex). TypeProcess Class 참조 값을 리터럴 입력하느냐 아니면 변수에 담겨있는 값을 입력..

반응형