일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 차원축소
- 자바
- 데이터 마이닝
- 넘파이 기초
- 디자인 패턴
- java
- cpp class
- 파이썬
- 머신러닝
- 합성곱 신경망
- OOP
- 기계학습
- Machine Learning
- 클러스터링
- 넘파이 배열
- numpy 기초
- c++
- 코드트리
- ack
- NumPy
- Design Pattern
- 코딩테스트
- 네트워크 기초
- lambda
- 코테
- 코딩테스트실력진단
- 넘파이
- cpp
- python
- 데이터 분석
- Today
- Total
목록전체 글 (69)
준비하는 대학생
데코레이터 패턴(Decorator Pattern)은 객체지향 프로그래밍에서 객체의 기능을 동적으로 추가하거나 변경할 수 있는 디자인 패턴입니다. 데코레이터 패턴은 런타임 시에 객체에 새로운 기능을 추가하거나 기존 기능을 변경하는 데 사용되며, 코드의 수정 없이도 객체의 행위를 변경할 수 있습니다. 1. 데코레이터 패턴의 구조 데코레이터 패턴은 다음과 같은 구성 요소로 이루어져 있습니다: Component: 인터페이스 또는 추상 클래스로, 모든 객체가 구현해야 하는 공통의 기능을 정의합니다. ConcreteComponent: Component를 구현하는 실제 객체로, 기본 기능을 제공합니다. Decorator: Component를 구현하는 추상 클래스로, ConcreteComponent에 추가 기능을 제공..
클로저는 Python에서 고차원 함수와 함께 사용되는 강력한 기능입니다. 이 포스트에서는 클로저의 개념을 이해하고, 실제 예제를 통해 클로저를 어떻게 활용할 수 있는지 알아보겠습니다. 1. 클로저의 작동 원리 이해하기 클로저는 중첩 함수에서 내부 함수가 외부 함수의 변수를 참조하는 구조입니다. 클로저의 핵심은 내부 함수가 외부 함수의 변수를 기억한다는 점입니다. 이러한 기억은 Python의 변수 스코프 및 생명 주기 관리와 관련이 있습니다. 1.1. 변수 스코프 및 생명 주기 Python에서 변수는 해당 변수가 정의된 함수의 지역 스코프(Local Scope)에서만 유효합니다. 일반적으로 함수가 종료되면 해당 스코프에 정의된 모든 변수는 메모리에서 제거됩니다. 그러나 클로저를 사용하면 내부 함수가 외부 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bblGeU/btr8uQWzZU4/IPxU2vouOyVDub5kKgkQeK/img.png)
KNN(K-Nearest Neighbors) 이란? KNN 알고리즘은 이름에서도 알 수 있듯이 가장 가까운 이웃을 찾아 분류하는 방법입니다. KNN은 새로운 데이터 포인트를 가장 가까운 'K개'의 이웃에 따라 분류하는데, 이웃의 범주 중 가장 많은 수를 가진 범주로 새로운 데이터 포인트를 분류합니다. KNN 알고리즘의 주요 단계는 다음과 같습니다. K값 설정 데이터 포인트 간 거리 측정 새로운 데이터 포인트와 가장 가까운 K개의 이웃 찾기 다수결로 새로운 데이터 포인트의 클래스 결정 Python을 사용한 KNN 분류 먼저 필요한 라이브러리를 설치하고 가져옵니다. !pip install numpy pandas matplotlib scikit-learn import numpy as np import pand..
파이썬에서 "enumerate" 함수는 매우 유용한 내장 함수 중 하나입니다. 이 함수는 반복 가능한 객체를 인자로 받아서 해당 객체의 요소들을 순회하면서, 각 요소의 인덱스와 값을 순서쌍으로 반환합니다. 이러한 기능을 통해 코드 작성의 편의성과 가독성을 높일 수 있습니다. 사용법 "enumerate" 함수는 다음과 같은 문법으로 사용됩니다. enumerate(iterable, start=0) iterable: 반복 가능한(iterable) 객체, 예를 들면 리스트(list), 튜플(tuple), 문자열(str), 딕셔너리(dictionary) 등이 있습니다. start: 인덱스의 시작값을 설정합니다. 기본값은 0입니다. 예제 이제 "enumerate" 함수를 사용한 예제를 살펴보겠습니다. 다음과 같은 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dJuAOr/btr6JnJxYdx/EVaLkwgkL5uPcndTCBik0k/img.png)
Observer Pattern 개요 Observer Pattern은 객체 간에 일대다 관계를 정의하는 디자인 패턴 중 하나입니다. 이 패턴은 객체들 사이에 느슨한 결합을 제공하며, 객체의 상태 변화에 대한 다른 객체들의 자동 업데이트를 가능하게 합니다. Observer Pattern은 Subject(주체)와 Observer(관찰자)로 구성됩니다. Subject 객체는 상태를 가지며, 상태가 변경되었을 때 Observer들에게 알림을 보냅니다. Observer 객체는 Subject 객체의 상태를 관찰하며, 상태가 변경될 때마다 업데이트를 받습니다. Observer 패턴은 다음과 같은 구성 요소로 이루어져 있습니다. Subject: Observer 객체들을 관리하는 객체로, Observer를 추가, 제거, ..
미디어파이프(MediaPipe)는 구글이 개발한 오픈 소스 프레임워크로, 머신러닝 및 영상 처리 기술을 실시간으로 사용할 수 있도록 돕습니다. 이 글에서는 미디어파이프의 주요 기능과 이를 활용한 영상 처리 애플리케이션을 소개합니다. 미디어파이프란? 미디어파이프는 다양한 플랫폼에서 사용할 수 있는 프레임워크로, 컴퓨터 비전, 머신러닝, 그래픽, 데이터 처리 등의 기능을 제공합니다. 간편한 API를 통해 빠르게 프로토타입을 개발하고, 고성능 애플리케이션을 구축할 수 있습니다. 주요 기능: 실시간 영상 처리 머신러닝 모델 통합 다양한 플랫폼 지원(Android, iOS, Web, Desktop) 미디어파이프를 활용한 영상 처리 애플리케이션 1. 포즈 추정(Pose Estimation) 미디어파이프의 'Pose..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/r0Rns/btr6x9wMM98/Fvmxz6wNHDQ2fKUzCk7oXk/tfile.png)
PCA(주성분 분석) 개요 PCA는 다변량 데이터의 차원을 축소하면서 정보 손실을 최소화하는 방법으로, 데이터의 분산을 최대한 보존하는 새로운 축(주성분)을 찾아 원래 데이터를 이 주성분에 투영함으로써 차원을 축소합니다. 이를 통해 데이터의 중요한 정보를 유지하면서 차원을 줄이고, 시각화 및 기계 학습 알고리즘의 성능을 향상할 수 있습니다. PCA의 과정은 다음과 같습니다. 데이터 전처리: 데이터를 표준화(평균 0, 표준편차 1)하거나 정규화(최소값 0, 최댓값 1)하여 스케일을 조정합니다. 공분산 행렬 계산: 데이터의 공분산 행렬을 계산합니다. 공분산 행렬은 변수 간의 선형 관계를 나타내며, 이를 통해 데이터의 분포와 구조를 파악할 수 있습니다. 고윳값 및 고유벡터 계산: 공분산 행렬의 고윳값과 고유벡..
Strategy pattern 이란? Strategy pattern은 객체지향 디자인 패턴 중 하나로, 동일한 문제를 해결하는 여러 알고리즘 중에서 필요에 따라 적합한 알고리즘을 선택하여 사용할 수 있도록 하는 패턴입니다. 이 패턴을 사용하면 알고리즘과 클라이언트 코드가 독립적으로 변화할 수 있으며, 새로운 알고리즘을 추가하거나 기존 알고리즘을 변경하더라도 클라이언트 코드를 수정하지 않아도 되는 장점이 있습니다. Strategy pattern 구현 방법 Strategy pattern을 구현하는 방법은 다음과 같습니다. 알고리즘을 캡슐화한 인터페이스를 정의합니다. 각각의 알고리즘을 구현하는 클래스를 작성합니다. 클라이언트 코드에서 필요에 따라 적절한 알고리즘을 선택하여 사용합니다. 자바 예시 코드 예를 들..