콘텐츠로 이동

02 nieun

newaxis(np.newaxis)

  • 뜻: NumPy 배열에 길이 1인 축을 추가해 shape를 바꾸는 표기입니다. 값 자체를 바꾸지 않고, 이 값을 행처럼 볼지 열처럼 볼지, 배치 축을 하나 더 둘지 같은 계산 관점을 모양 차원에서 조정하는 도구라고 볼 수 있습니다. 즉 데이터 내용은 그대로 두고, 계산이 읽는 배열의 구조만 다시 보이게 만드는 표기입니다.
  • 왜 중요한가: 같은 값 묶음도 (3,), (3, 1), (1, 3)처럼 다르게 읽히면 브로드캐스팅 방식이 달라지므로, 계산 방향을 의도적으로 정렬하는 핵심 도구가 되기 때문입니다. 이 개념이 있어야 배열 계산 오류가 값 문제인지, shape 해석 문제인지 더 빠르게 구분할 수 있습니다. 예를 들어 하나의 특징 벡터를 여러 샘플에 더할지, 한 샘플 안의 여러 특징을 세로줄처럼 볼지를 shape 수준에서 명시적으로 바꿀 수 있습니다.
  • 함께 볼 개념: 브로드캐스팅(broadcasting), shape, shared view(원본 공유)
  • 중심 Section: P2-11.4
  • 등장 Section: P2-12.1

넘파이(NumPy)

  • 뜻: Python에서 숫자 배열과 벡터·행렬 계산을 다루는 대표적인 오픈소스 라이브러리입니다. Python 기본 리스트보다 같은 형태의 수치 데이터를 한꺼번에 계산하기 좋은 배열 중심 도구라고 생각하면 됩니다. 단순 보관용 자료구조를 넘어, shape와 축(axis)을 가진 계산 대상이라는 감각을 처음 붙잡게 해 주는 핵심 도구이기도 합니다.
  • 왜 중요한가: AI 실습의 많은 입력과 중간 계산이 결국 숫자 배열 형태로 표현되므로, 계산 가능한 모양을 읽는 가장 기본 도구가 되기 때문입니다. 이 개념이 있어야 이후 Pandas, 신경망 텐서, 시각화 입력도 결국 배열 계산 위에서 움직인다는 점이 자연스럽게 이어집니다. 즉 NumPy를 이해하면 숫자 하나씩 처리하는 코드에서 배열 전체를 한 번에 다루는 코드로 넘어가는 감각이 잡힙니다. 결국 넘파이는 Python을 일반 프로그래밍 언어에서 수치 계산 언어로 확장해 주는 핵심 기반층입니다.
  • 함께 볼 개념: 배열(array), ndarray, shape
  • 중심 Section: P2-11.1
  • 등장 Section: P2-11.2, P2-11.3, P2-11.4, P2-15.1

노드(node)

  • 뜻: 그래프 안에서 하나의 대상, 지점, 항목을 나타내는 단위입니다. 사람, 문서, 웹페이지, 도시, 상품처럼 관계의 출발점이나 도착점이 되는 개별 대상을 그래프에서는 노드로 둡니다. 즉 노드는 연결 자체가 아니라, 그 연결이 붙는 개별 객체나 위치를 가리키는 기본 단위입니다.
  • 왜 중요한가: 관계 데이터를 읽을 때 무엇이 연결의 주체인지 먼저 분명히 해야 엣지와 가중치를 올바르게 해석할 수 있기 때문입니다. 이 개념이 있어야 무엇이 연결되어 있는가어떻게 연결되어 있는가를 분리해 읽을 수 있습니다. 예를 들어 추천 그래프에서는 사용자와 상품이 각각 노드가 되고, 계산 그래프에서는 연산 결과 하나하나가 노드가 되어 값과 gradient 흐름을 읽게 됩니다. 결국 노드를 이해해야 그래프를 단순 선 그림이 아니라, 무엇을 개별 단위로 삼았는가가 먼저 정해진 표현 구조로 보게 됩니다.
  • 함께 볼 개념: 그래프(graph), 엣지(edge), 가중치(weight)
  • 중심 Section: P2-9.3
  • 등장 Section: P2-9.4, P4-14.1

노트북(notebook)

  • 뜻: 코드, 설명, 출력 결과를 한 문서 안에서 함께 다루는 계산 문서 형식입니다. 문서처럼 읽히지만, 실제로는 셀 단위 실행 상태를 가진 상호작용형 실행 환경이기도 합니다. 즉 문서를 읽는 경험프로그램을 실행하는 경험이 한 파일 안에 겹쳐 있는 형태라고 볼 수 있습니다.
  • 왜 중요한가: 실험과 설명을 같은 맥락에서 기록할 수 있어 학습과 검증에는 편리하지만, 실행 순서와 상태 관리 문제도 함께 생기기 때문입니다. 그래서 노트북은 보기 좋은 문서이면서 동시에 숨은 실행 상태를 가진 프로그램이라는 점을 함께 이해해야 합니다. 이 개념이 있어야 출력이 남아 있다고 해서 현재 코드와 실제 상태가 항상 일치하는 것은 아니라는 점을 읽게 되고, 재현 가능한 기록을 만들려면 셀 순서와 실행 과정을 함께 점검해야 한다는 감각도 붙잡게 됩니다. 결국 노트북은 설명과 실험을 붙이기 쉬운 대신, 상태가 섞이기 쉬운 형식이라는 양면을 같이 봐야 합니다.
  • 함께 볼 개념: 코드 셀(code cell), 마크다운 셀(markdown cell), 재실행 가능한 기록(reproducible record)
  • 중심 Section: P2-10.1
  • 등장 Section: P2-10.2, P2-10.3