AI/Deep Learning

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

Jeong Jeon
반응형

1). 텐서플로우(TensorFlow)는 텐서(Tensor)와 "흐르다"의 영어표현인 플로우(Flow)를 합친뜻

결국 "텐서라는것이 흐른다" 라는 모습을 브랜딩화 했다고 한다.

 

2). 텐서(Tensor란)?

 

  • 공식사이트 정의 :
    • 텐서(tensor)는 벡터와 행렬을 일반화한 것이고 고차원으로 확장 가능. 내부적으로 텐서플로는 기본적으로 제공되는 자료형을 사용해 n-차원 배열로 나타낸다.

간단하게 생각하면 텐서는 텐서플로우가 연산하기 위해 사용하는 자료형, 데이터의 형태이다.

머신러닝에서는 데이터를 N차원의 배열로 구성하는데,

예를 들어 RDB로 비교를 해본다면 각 컬럼의 갯수가 N개이면, 해당 데이터로 1차원 ~ N차원상의 배열까지 만들 수있다.

 

3). 텐서의 구성요소

텐서 플로우의 자료형인 텐서는 랭크, 형태, 타입 3가지 구성요소가 있다.

yamerong.tistiory 님 블로그 첨부

3-1) 랭크 (Rank)

  • 텐서를 설명할때 N-차원으로 설명하였는데, 이 차원이라는것이 랭크라고 생각하면된다.
  • 1차원 = 1Rank / 3차원 = 3Rank

@데이터를 통해 확인해보자

 

7 = > 0-rank Tensor = 스칼라

[1,2,3] => 1-rank Tensor = 1차원 백터

[[1,2,3],[4,5,6]] => 2-rank Tensor = 2차원 백터인 행렬

[[[1,2,3]],[[3,4,5]]] = > 3-rank Tensor = 3차원 백터

....

 

3-2) 형태(Shape)

  • 각 랭크(차원)에 있는 원소개수 == 몇개의 데이터로 이루어져있는지

@데이터를 통해 확인해보자

 

7 # 0-Rank Tensor & shape : []

[1 ,2, 3] # 1-Rank Tensor a& shape : shape [3]

[[1, 2, 3], [4, 5, 6]] # 2-Rank Tensor & shape : shape [2, 3]

[[[1, 2, 3]], [[7, 8, 9]]] # 3-Rank Tensor & shape : shape [2, 1, 3]

 

3-3) 타입(Type)

  • 텐서의 원소가 갖는 값의 타입(형태)

반응형