공부하기/Ai 23

2-2-B 책소개(Hands-On Machine Learning with Scikit-Learn and TensorFlow)

"Hands-On Machine Learning with Scikit-Learn and TensorFlow"는 Aurélien Géron이 저술한 기계 학습 및 딥러닝 관련 실용적인 책입니다. 이 책은 특히 Scikit-Learn과 TensorFlow 라이브러리를 사용하여 실제 문제를 해결하는 방법에 중점을 둡니다. 주요 특징 및 내용: 1. **기본적인 기계 학습 개념**: 데이터 전처리, 모델 평가, 교차 검증과 같은 기본적인 개념에 대한 깊은 이해를 제공합니다. 2. **Scikit-Learn 사용법**: Scikit-Learn 라이브러리를 활용하여 다양한 기계 학습 알고리즘(선형 회귀, 결정 트리, 랜덤 포레스트 등)을 적용하는 방법에 대한 설명. 3. **딥러닝 및 TensorFlow**: Te..

공부하기/Ai 2023.08.11

2-2-A 책소개(Python Machine Learning)

"Python Machine Learning"은 Sebastian Raschka가 저술한 기계 학습과 딥러닝에 관한 주요 주제를 다루는 책입니다. 이 책은 파이썬을 활용한 기계 학습의 실제 구현 및 응용에 중점을 둡니다. 또한, 이 책은 초보자부터 중급 수준의 독자들에게 추천되며, 많은 예제와 실습을 통해 학습을 돕습니다. 주요 특징 및 내용: 1. **파이썬 및 필요 라이브러리 소개**: SciPy, NumPy, pandas, matplotlib, scikit-learn 등의 라이브러리를 통한 기본 설정 및 사용법 소개. 2. **데이터 전처리**: 특징 추출, 데이터 정규화, 데이터 변환 등의 기법에 대한 설명. 3. **기계 학습 알고리즘**: 지도 학습과 비지도 학습, 회귀, 분류, 클러스터링 등..

공부하기/Ai 2023.08.11

2-1-D 기계학습 알고리즘(클러스터링)

클러스터링은 데이터 포인트들을 유사한 특성을 갖는 그룹 또는 클러스터로 분할하는 비지도 학습 알고리즘입니다. 클러스터링의 주요 목표는 동일한 클러스터 내의 데이터 포인트들은 서로 유사하게, 다른 클러스터의 데이터 포인트들과는 구별되게 그룹화하는 것입니다. ### 주요 클러스터링 알고리즘: 1. **K-평균(K-means) 클러스터링**: - 임의로 선택한 'k' 개의 중심점을 기반으로 데이터 포인트들을 그룹화합니다. - 각 데이터 포인트를 가장 가까운 중심점에 할당하고, 각 클러스터의 중심을 재계산합니다. - 이 과정을 중심점이 변하지 않거나 미리 정한 반복 횟수에 도달할 때까지 반복합니다. 2. **계층적 클러스터링**: - 모든 데이터 포인트를 독립적인 클러스터로 시작하여 유사한 클러스터끼리 병합하거..

공부하기/Ai 2023.08.11

2-1-C 기계학습 알고리즘(SVM)

서포트 벡터 머신(Support Vector Machine, SVM)은 분류와 회귀 문제에 사용되는 지도 학습 알고리즘 중 하나입니다. SVM은 주로 분류 문제에서 뛰어난 성능을 발휘하는 데 널리 사용됩니다. ### 1. 기본 아이디어: SVM의 핵심 아이디어는 데이터 포인트들을 분류하는 최적의 **결정 경계** 또는 **초평면(hyperplane)**을 찾는 것입니다. 이 초평면은 두 클래스 간의 마진을 최대화하는 방향으로 선택됩니다. ### 2. 마진: 마진은 결정 경계와 이 경계에 가장 가까운 데이터 포인트(서포트 벡터) 사이의 거리로 정의됩니다. SVM은 이 마진을 최대화하는 결정 경계를 찾으려고 합니다. ### 3. 서포트 벡터: 결정 경계를 정의하는 데 중요한 역할을 하는 훈련 데이터 포인트들..

공부하기/Ai 2023.08.11

2-1-B 기계학습 알고리즘(의사결정 나무)

의사결정 나무(Decision Tree)는 기계 학습에서 분류 및 회귀 문제를 해결하는 데 사용되는 지도 학습 알고리즘 중 하나입니다. 의사결정 나무의 핵심 아이디어는 주어진 데이터를 가장 잘 분류하는 질문의 나열로 데이터를 나누는 것입니다. ### 1. 기본 구조: - **노드(Node)**: - **루트 노드(Root Node)**: 트리의 시작점. - **내부 노드(Internal Node)**: 특성에 따라 데이터를 분할하는 노드. - **리프 노드(Leaf Node)**: 결정된 클래스 레이블 또는 회귀 결과값을 갖는 노드. - **분기(Branch)**: 각 질문에 따른 분할. ### 2. 작동 원리: 1. 데이터의 특성 및 분할 기준을 기반으로 가장 정보가 풍부한 특성으로 데이터를 나눕니다...

공부하기/Ai 2023.08.11

2-1-A 기계학습 알고리즘(선형 회귀)

선형 회귀(Linear Regression)는 기계 학습과 통계에서 사용되는 가장 기본적인 예측 모델 중 하나입니다. 주어진 입력 변수(독립 변수)와 출력 변수(종속 변수) 간의 관계를 선형적으로 모델링하려는 방법입니다. ### 1. 기본 개념: - 선형 회귀는 데이터 포인트들 사이의 선형 관계를 나타내는 직선을 찾는 것을 목표로 합니다. - 가장 일반적인 선형 회귀 모델은 **단순 선형 회귀**입니다. 이는 하나의 독립 변수와 하나의 종속 변수를 가지며, 관계는 아래의 방정식으로 표현됩니다: y = β0 + β1x + ϵ • y : 종속 변수 (예측하고자 하는 변수) • x : 독립 변수 (입력 변수) • β0 : y절편 (모델의 절편) • β1 : 기울기 (독립 변수의 계수) • ϵ : 오차 항 ##..

공부하기/Ai 2023.08.11

2-1 기초 알고리즘 및 기술이해

기초 알고리즘 및 기술 이해는 컴퓨터 과학 및 프로그래밍의 핵심 요소입니다. 이를 이해하면 효율적인 코드를 작성하고 복잡한 문제를 해결하는 데 필요한 기초를 다질 수 있습니다. 다음은 중요한 기초 알고리즘 및 기술에 대한 간략한 개요입니다: 1. **자료 구조**: - **배열**: 동일한 데이터 유형의 요소들이 메모리에 연속적으로 저장된 구조입니다. - **연결 리스트**: 각 노드가 데이터와 다음 노드를 가리키는 포인터로 구성된 선형 구조입니다. - **스택과 큐**: 데이터의 추가 및 제거 순서에 따라 데이터를 저장하는 구조입니다. 스택은 LIFO(Last In First Out), 큐는 FIFO(First In First Out) 방식을 따릅니다. - **트리와 그래프**: 계층적 및 연결 구조를..

공부하기/Ai 2023.08.11

1-5 기본지식습득 - Jupyter Notebook

Jupyter Notebook은 인터랙티브한 컴퓨팅 환경에서 코드, 텍스트, 수식, 시각화 등을 결합하여 작성하고 공유할 수 있는 웹 기반의 오픈 소스 응용 프로그램입니다. "Jupyter"는 Julia, Python, R의 조합에서 유래된 이름이며, 이 세 가지 프로그래밍 언어에서 초기 지원을 받았지만, 현재는 다양한 프로그래밍 언어를 지원하고 있습니다. 딥러닝과 관련하여 Jupyter Notebook의 주요 특징 및 장점은 다음과 같습니다: 1. **인터랙티브한 실행**: Jupyter Notebook을 사용하면 코드 셀을 개별적으로 실행하고 결과를 바로 확인할 수 있습니다. 이런 방식은 데이터 분석, 모델링, 실험 등의 반복적인 작업에 매우 유용합니다. 2. **문서화**: 코드와 함께 설명, 이미..

공부하기/Ai 2023.08.11

1-4 기본지식습득 - 통합성

파이썬이 딥러닝에서 널리 사용되는 주요 이유 중 하나는 그 통합성(integration)에 있습니다. 파이썬은 다양한 분야와 작업에 걸쳐 다른 도구와의 통합이 용이한 특징을 가지고 있습니다. 아래는 파이썬의 통합성과 관련하여 딥러닝 분야에서 파이썬이 제공하는 주요 장점들입니다: 1. **다양한 라이브러리와 프레임워크**: 파이썬은 TensorFlow, PyTorch, Keras 등과 같은 유명한 딥러닝 라이브러리 및 프레임워크와 함께 빠르고 효율적으로 작동합니다. 이들은 서로 다른 라이브러리나 도구와의 호환성을 중요시하며, 파이썬 생태계와 잘 통합됩니다. 2. **데이터 처리 및 분석 도구**: 파이썬은 Pandas, Numpy, Scipy와 같은 라이브러리를 통해 강력한 데이터 처리와 분석 기능을 제공..

공부하기/Ai 2023.08.11

1-3 기본지식습득 - 지원 및 커뮤니티

파이썬은 오랜 기간 동안 꾸준히 성장해온 프로그래밍 언어로, 그 성장의 큰 원동력 중 하나는 바로 활발한 커뮤니티 지원입니다. 파이썬 커뮤니티는 전 세계의 개발자, 연구자, 사용자들로 구성되어 있으며, 다양한 혜택과 지원을 제공합니다. 이 커뮤니티 지원에 대해 자세히 살펴보겠습니다. 1. **오픈 소스 프로젝트**: - 파이썬은 수많은 오픈 소스 라이브러리와 프레임워크를 보유하고 있습니다. 이러한 프로젝트들은 커뮤니티 멤버들에 의해 만들어지고, 유지 보수되며, 발전시켜지고 있습니다. 2. **문서화 및 튜토리얼**: - 파이썬 관련 문서는 매우 방대하며, 커뮤니티의 기여로 인해 계속 업데이트 및 개선되고 있습니다. 공식 문서 뿐만 아니라, 튜토리얼, 블로그 포스트, 온라인 강의 등 다양한 자료가 제공되고..

공부하기/Ai 2023.08.11