Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- network configuration
- 자바편
- 티스토리 쿠키 삭제
- 데비안
- 처음 만나는 AI 수학 with Python
- 친절한SQL튜닝
- 선형대수
- 리눅스
- 서버설정
- 코드로배우는스프링웹프로젝트
- 코드로배우는스프링부트웹프로젝트
- 구멍가게코딩단
- 알파회계
- 네트워크 설정
- 처음 만나는 AI수학 with Python
- 이터레이터
- iterator
- GIT
- d
- 목록처리
- resttemplate
- 페이징
- 스프링부트핵심가이드
- 자료구조와함께배우는알고리즘입문
- /etc/network/interfaces
- 스프링 시큐리티
- baeldung
- Kernighan의 C언어 프로그래밍
- 자료구조와 함께 배우는 알고리즘 입문
- ㅒ
Archives
- Today
- Total
bright jazz music
선형대수 : 4. 텐서(Tensor) 본문
텐서(Tensor)
- 텐서는 스칼라를 여러 개의 차원으로 나월한 것이다.
- 텐서는 스칼라, 벡터, 행렬을 포함한다.
- 스칼라, 벡터, 행렬은 서로 다른 차원의 텐서이다.
각 요소에 붙은 첨자 수를 그 텐서의 차원수라고 말한다.
- 스칼라에는 첨자가 붙지 않는다. 따라서 스칼라는 0차원 텐서이다.
- 벡터에는 첨자가 1개 붙는다. 따라서 벡터는 1차원 텐서이다.
- 행렬은 첨자가 2개 붙는다. 따라서 행렬은 2차원 텐서이다.
3차원 텐서, 4차원 텐서 순으로 고차원으로 나아간다.
파이썬에서의 텐서 구현
import numpy as np
a = np.array([[[0, 1, 2, 3],
[2, 3, 4, 5],
[4, 5, 6, 7]],
[[1, 2, 3, 4],
[3, 4, 5, 6],
[5, 6, 7, 8]]]) #2x3x4인 3차원 텐서 (중복 리스트 사용).
#3x4행렬이 2개 쌓여 있다.
print(a)
# [[[0 1 2 3]
# [2 3 4 5]
# [4 5 6 7]]
#
# [[1 2 3 4]
# [3 4 5 6]
# [5 6 7 8]]]
실습
Numpy를 사용하여 스칼라, 벡터, 행렬, 텐서를 구현할 것.
import numpy as np
#스칼라
a = 1.5
print('a=', a)
print()
#벡터
b = np.array([1, 2, 3, 4, 5])
print('b=', b)
print()
#행렬
c = np.array([[1, 2, 3],
[4, 5, 6]])
print('c=',c)
print()
#3차원 텐서
d = np.array([[[0, 1, 2, 3],
[2, 3, 4, 5],
[4, 5, 6, 7]],
[[1, 2, 3, 4],
[3, 4, 5, 6],
[5, 6, 7, 8]]]) #2x3x4인 3차원 텐서 (중복 리스트 사용)
print('d =', d)
# a= 1.5
# b= [1 2 3 4 5]
# c= [[1 2 3]
# [4 5 6]]
# d = [[[0 1 2 3]
# [2 3 4 5]
# [4 5 6 7]]
#
# [[1 2 3 4]
# [3 4 5 6]
# [5 6 7 8]]]
'Math > 선형대수' 카테고리의 다른 글
선형대수 : 6. 놈 (노름, norm) (0) | 2022.07.24 |
---|---|
선형대수 : 5. 내적(스칼라 곱,dot product, scarla product) (0) | 2022.07.23 |
선형대수 : 3. 행렬 (0) | 2022.07.22 |
선형대수 : 2. 스칼라와 벡터 (0) | 2022.07.20 |
선형대수 : 1. 선형대수의 개념 (0) | 2022.07.20 |
Comments