# Part 0: 시작하며 - 핵심 용어집 - **객체 지향 프로그래밍 (Object-Oriented Programming, OOP)** - **정의**: 현실 세계의 사물이나 개념을 '객체(Object)'로 보고, 객체들의 상호작용으로 프로그램의 로직을 구성하는 프로그래밍 패러다임. 데이터(속성)와 기능(메서드)을 하나의 객체로 묶고, 캡슐화, 상속, 다형성 등의 특징을 통해 코드의 재사용성과 유지보수성을 높입니다. - **관련 파트**: [Part 0: 시작하며](../part_0_introduction.md), [Part 4: 파이썬 객체 지향 프로그래밍](../part_4_object_oriented_programming.md) - **머신러닝 (Machine Learning)** - **정의**: 명시적인 프로그램 없이 컴퓨터가 데이터로부터 학습하여 스스로 패턴을 찾고 예측이나 결정을 내릴 수 있도록 하는 인공지능의 한 분야입니다. 지도 학습, 비지도 학습, 강화 학습 등 다양한 학습 방법론을 포함합니다. - **관련 파트**: [Part 0: 시작하며](../part_0_introduction.md), [Part 6: 머신러닝 완전 정복](../part_6_machine_learning.md) - **FastAPI** - **정의**: Python 3.7+를 기반으로 API를 구축하기 위한 현대적이고 빠른(고성능) 웹 프레임워크. 표준 파이썬 타입 힌트를 사용하여 개발자의 실수를 줄이고, 데이터 유효성 검사, 자동 API 문서 생성 등 강력한 기능을 제공합니다. - **비유**: '최신식 주방 시스템'. 주문(요청) 처리 속도가 매우 빠르고, 모든 레시피(코드)가 표준화되어 있으며, 손님이 직접 보고 주문할 수 있는 스마트 메뉴판(Swagger UI)이 자동으로 만들어집니다. - **관련 파트**: [Part 8: FastAPI를 이용한 모델 서빙](../part_8_model_serving_with_fastapi.md) - **도커 (Docker)** - **정의**: 애플리케이션과 그 실행에 필요한 모든 것(라이브러리, 시스템 도구, 코드, 런타임 등)을 '컨테이너'라는 격리된 공간에 패키징하여, 어떤 환경에서든 동일하게 실행될 수 있도록 하는 플랫폼. "제 컴퓨터에서는 되는데요?" 문제를 해결하는 핵심 기술입니다. **도커 이미지(Image)는 애플리케이션 실행에 필요한 모든 것을 담은 설계도이며, 이 이미지를 실행한 인스턴스가 컨테이너(Container)입니다. 하나의 이미지를 사용해 여러 컨테이너를 생성할 수 있습니다.** - **비유**: '어디서든 똑같은 맛을 내는 밀키트'. 애플리케이션의 모든 재료와 레시피를 밀키트(**이미지**)로 만들어, 어떤 주방(서버)에서 조리하든 항상 동일한 결과물(**컨테이너**)을 보장합니다. - **관련 파트**: [Part 1: AI 개발 환경 완벽 구축 가이드](../part_1_ai_development_environment.md), [Part 9: 프로덕션 레벨 API와 Docker](../part_9_production_ready_api.md) - **캡스톤 프로젝트 (Capstone Project)** - **정의**: 교육 과정에서 배운 모든 이론, 기술, 경험을 총동원하여 실제적인 문제 해결 능력을 보여주는 최종 프로젝트. 기획부터 개발, 배포, 발표까지 전 과정을 직접 수행하며 실무 역량을 종합적으로 증명하는 기회입니다. - **관련 파트**: [Part 0: 시작하며](../part_0_introduction.md), [Part 11: 캡스톤 프로젝트 가이드](../part_11_capstone_project_guide.md) - **파이썬 (Python)** - **정의**: 간결하고 읽기 쉬운 문법을 가진 고급 프로그래밍 언어. 방대한 라이브러리 생태계 덕분에 웹 개발, 데이터 분석, 인공지능, 자동화 등 다양한 분야에서 널리 사용됩니다. - **관련 파트**: [Part 2: 파이썬 핵심 문법](../part_2_python_core_syntax.md) - **NumPy (넘파이)** - **정의**: Numerical Python의 약자로, 파이썬에서 고성능 과학 계산과 수치 연산을 위한 핵심 라이브러리. `ndarray`라는 효율적인 다차원 배열 객체를 제공하여, 벡터 및 행렬 연산을 매우 빠르게 처리할 수 있습니다. Pandas, Scikit-learn, PyTorch 등 대부분의 AI 라이브러리의 기반이 되는 기술입니다. - **비유**: '계란판'. 모든 데이터를 동일한 타입의 숫자(계란)으로 취급하여, '모든 계란에 도장 찍기'와 같은 동일한 연산을 매우 빠른 속도로 처리할 수 있습니다. - **관련 파트**: [Part 5: AI 핵심 라이브러리](../part_5_ai_core_libraries.md) - **Pandas (판다스)** - **정의**: 파이썬에서 구조화된 데이터를 쉽고 직관적으로 다룰 수 있도록 설계된 핵심 데이터 분석 라이브러리. `DataFrame`과 `Series`라는 강력한 데이터 구조를 제공하여, 데이터 정제, 변환, 분석, 시각화 등 데이터 처리의 전 과정을 효율적으로 수행할 수 있게 돕습니다. - **비유**: '데이터용 엑셀'. 행과 열로 이루어진 데이터를 정렬, 필터링, 그룹화하는 등 복잡한 데이터 조작을 몇 줄의 코드로 수행할 수 있습니다. - **관련 파트**: [Part 5: AI 핵심 라이브러리](../part_5_ai_core_libraries.md) - **Scikit-learn (사이킷런)** - **정의**: 파이썬을 대표하는 머신러닝 라이브러리. 분류, 회귀, 군집화, 차원 축소 등 다양한 머신러닝 알고리즘과 데이터 전처리, 모델 평가 등을 위한 도구를 제공하여 누구나 쉽게 머신러닝 모델을 개발할 수 있도록 돕습니다. - **관련 파트**: [Part 6: 머신러닝 완전 정복](../part_6_machine_learning.md) - **딥러닝 (Deep Learning)** - **정의**: 여러 계층의 인공 신경망(Artificial Neural Network)을 사용하여 복잡한 데이터에서 고수준의 특징을 자동으로 학습하는 머신러닝의 한 분야. 이미지 인식, 자연어 처리, 음성 인식 등 다양한 분야에서 혁신적인 성과를 보여주고 있습니다. - **관련 파트**: [Part 7: 딥러닝 첫걸음](../part_7_deep_learning.md) - **API (Application Programming Interface)** - **정의**: 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스. 쉽게 말해, 서로 다른 프로그램이나 서비스가 약속된 규칙에 따라 정보를 주고받을 수 있도록 하는 '소통 창구'입니다. - **비유**: '레스토랑의 메뉴판과 주문 시스템'. 손님(클라이언트)은 주방(서버) 내부를 몰라도, 정해진 메뉴판(API 명세)을 보고 주문(요청)하면 원하는 음식(결과)을 받을 수 있습니다. - **관련 파트**: [Part 8: FastAPI를 이용한 모델 서빙](../part_8_model_serving_with_fastapi.md) - **AI 에이전트 (AI Agent)** - **정의**: 단순히 주어진 질문에 한 번 답하고 끝나는 것이 아니라, 목표를 달성하기 위해 스스로 계획을 세우고, 도구를 사용하며, 스스로 피드백하고 수정하는 과정을 반복하는 지능형 시스템. - **관련 파트**: [Part 10: 전문가로 가는 길](../part_10_expert_path.md) - **에이전틱 워크플로우 (Agentic Workflow)** - **정의**: AI 에이전트가 목표를 달성하기 위해 사용하는 자율적인 작업 흐름. 계획 수립, 도구 사용, 실행, 결과 분석, 계획 수정 등의 단계를 반복하며 복잡한 문제를 해결합니다. - **관련 파트**: [Part 10: 전문가로 가는 길](../part_10_expert_path.md) - **Google Colab (구글 코랩)** - **정의**: 구글에서 제공하는 클라우드 기반의 무료 Jupyter 노트북 환경. 별도의 개발 환경 설정 없이 웹 브라우저만으로 파이썬 코드를 작성하고 실행할 수 있으며, 특히 무료로 GPU 가속을 사용할 수 있어 머신러닝 및 딥러닝 모델 학습에 매우 유용합니다. - **관련 파트**: [Part 1: AI 개발 환경 완벽 구축 가이드](../part_1_ai_development_environment.md)