📒 Developing Repository

📊 Data Analysis

[Data Analysis] 데이터 수집 (Crawling, Scrapping)

데이터 수집크롤링 (Crawling)크롤링(crawling)은 자동화된 스크립트를 사용하여 웹 페이지를 탐색하고 데이터를 수집하는 방법입니다.이는 웹 사이트 전체 또는 다수의 페이지를 탐색하면서 데이터를 추출하는 과정으로, 검색 엔진의 크롤러와 유사합니다.자동화된 스크립트: 크롤러는 특정 규칙에 따라 웹 페이지를 방문하고, 해당 페이지의 콘텐츠를 수집하는 자동화된 스크립트입니다.전체 사이트 또는 다수의 페이지 탐색: 크롤링은 일반적으로 전체 웹 사이트를 탐색하거나, 다수의 페이지를 순차적으로 방문하여 데이터를 수집합니다.검색 엔진의 크롤러와 유사: 검색 엔진 크롤러는 웹 페이지를 인덱싱하여 검색 결과를 제공하는데, 이와 유사한 방식으로 데이터를 수집합니다. 스크래핑 (Scrapping)스크래핑(scrap..

📊 Data Analysis

[Data Analysis] 데이터의 활용 및 구현

데이터의 형태데이터는 무엇일까요? 데이터는 의사결정 및 분석을 위한 원자재 입니다.또한 정보의 단위로, 다양한 형태로 존재할 수 있습니다.원시 데이터(raw data)는 직접 수집된 정보로, 아직 가공되지 않은 상태입니다.데이터는 의사결정 및 분석을 위한 원자재로, 이를 통해 통찰력(insight)을 얻고, 다양한 문제를 해결할 수 있습니다. 데이터의 중요성데이터는 현대 사회에서 필수적인 자원으로 자리잡고 있습니다.의사결정 도구 - 데이터 중심 사고과거에는 경험과 직관에 의존한 의사결정이 주를 이뤘다면, 오늘날에는 데이터 중심 사고(data-driven thinking)가 중요합니다.데이터 중심 사고는 의사결정 과정에서 객관적이고 과학적인 접근을 가능하게 합니다. 빅데이터 시대빅데이터는 막대한 양의 데이..

⚙️ Computer Architecture

[Computer_Architecture] Instruction Set

Instruction Set특정 CPU가 구현하는 명령어 집합은 ISA(Instruction Set Architecture)라고 합니다.그리고 하드웨어와 소프트웨어 사이의 인터페이스를 정의합니다.ISA는 다음을 포함합니다:명령어 형식 (Instruction formats)데이터 형식 (Data types)레지스터 집합 (Register set)메모리 주소 지정 방식 (Memory addressing modes)입출력 방식 (Input/Output mechanisms)기계의 언어 (Language of the Machine)컴퓨터마다 다른 명령어 세트가 있습니다하지만 여러 가지 측면에서 공통점이 있습니다초기 컴퓨터에는 매우 간단한 명령어 세트가 있었습니다단순화된 구현명령어는 CPU가 실행하는 기본 연산자입..

👀 Computer Vision

[CV] OpenCV DNN 패키지 & SSD 기반 Object Detection 수행

Tensorflow에서 Pretrained 된 모델 파일을 OpenCV에서 로드하여 이미지와 영상에 대한 Object Detection을 수행해 보겠습니다.입력 이미지로 사용될 이미지 보기import cv2import matplotlib.pyplot as plt%matplotlib inlineimg = cv2.imread('../../data/image/beatles01.jpg')img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)print('image shape:', img.shape)plt.figure(figsize=(12, 12))plt.imshow(img_rgb)image shape: (633, 806, 3)Inference 모델 생성Tensorflow에서 Pretr..

🗺️ Design Pattern

[Design Pattern] Template Method Pattern - 템플릿 메소드 패턴

Templete Method Pattern템플릿 메소드 패턴(Template Method Pattern)은 상위 클래스에서 기본적인 알고리즘의 구조를 정의하고, 하위 클래스에서 알고리즘의 특정 단계를 구현하는 디자인 패턴입니다.이 패턴을 통해 알고리즘의 구조는 변경하지 않고, 알고리즘의 특정 단계를 재정의할 수 있습니다. 템플릿이란, 사전적 의미로는 형판이라고 합니다.문자, 도형으로 구멍이 뚫려 있는 얇은 플라스틱 판을 생각해볼 수 있습니다.실제로 어떤 도형이 그려질지는 필기구에 의해 결정됩니다.펜으로 그리면 펜으로 그린 도형이 되고, 연필로 그리면 연필로 그린 도형이 됩니다. Template Method 패턴은 템플릿 기능을 가진 패턴입니다.상위 클래스 쪽에 템플릿 메서드가 정의되어 있고, 그 메서드 ..

🗺️ Design Pattern

[Design Pattern] State Pattern - 상태 패턴

State Pattern상태 패턴(State Pattern)은 객체가 내부 상태에 따라 행동을 다르게 할 수 있게 해주는 디자인 패턴입니다.객체는 상태를 변경함으로써 행동이 바뀝니다.상태 패턴을 사용하면 조건문을 많이 사용하는 코드를 간결하고 확장 가능하게 만들 수 있습니다.State는 상태 = 사물의 모양이나 형편을 의미합니다.또한 상태를 클래스로 표현하면 클래스를 교체해서 '상태의 변화'를 표현할 수 있습니다.Strategy Pattern과 조금 유사합니다.  우리가 만들고자 하는 Object에 상태가 있다면 사용할 수 있는 Pattern 입니다. 상태를 가지는 가장 대표적인 예가 신호등 입니다.녹색, 빨강색 중 하나의 상태만 가지는 기계이며, 계속해서 상태가 변화됩니다.State Pattern을 사..

📝 Data Mining

[Data Mining] Linear Algebra (선형대수)

Linear AlgebraLinear Algebra (선형대수학)은 벡터 공간, 행렬, 선형 변환 등의 개념을 연구하는 수학의 한 분야입니다주로 다차원 공간에서의 벡터와 행렬의 연산 및 이들 간의 관계를 다루며, 공학, 물리학, 컴퓨터 과학 등 다양한 분야에서 중요한 역할을 합니다.또한 많은 데이터 과학 개념과 기술을 뒷받침합니다.import re, math, random # regexes, math functions, random numbersimport matplotlib.pyplot as plt # pyplotfrom collections import defaultdict, Counterfrom functools import partial, reduce VectorsVectors는 어떤 finite..

👀 Computer Vision

[CV] SSD - Single Shot (Multibox) Detector

Object Detection History크게 3개의 분류로 나눠보겠습니다.1. 전통적인 탐지 방법 (Traditional Detection Methods)VJ Detector (P. Viola et al., 2001):비올라-존스 객체 탐지기라고도 불리는 이 방법은 특징 기반 얼굴 탐지를 위한 알고리즘으로 널리 알려져 있습니다.HOG Detector (N. Dalal et al., 2005):Histogram of Oriented Gradients (HOG)는 이미지의 국소적인 방향 정보를 사용하여 객체를 탐지하는 방법입니다.DPM (P. Felzenszwalb et al., 2008):Deformable Part Model (DPM)은 물체를 작은 부분들로 분할하여 각 부분의 위치와 형태를 모델링하..

📝 Data Mining

[Data Mining] Introduction to Numpy part.2

BroadcastingNumpy의 Broadcasting은 서로 다른 크기의 배열 간의 연산을 가능하게 하는 강력한 기능입니다. Broadcasting을 통해 Numpy는 더 작은 배열을 더 큰 배열과 동일한 모양으로 확장하여 요소별(element-wise) 연산을 수행할 수 있습니다. 이는 반복문을 사용하지 않고도 효율적인 벡터화 연산을 가능하게 합니다.브로드캐스트는 산술 연산 중에 numpy가 다양한 모양을 가진 배열을 어떻게 처리하는지 설명합니다.특정 제약 조건에 따라 더 작은 배열은 더 큰 배열에 걸쳐 "브로드캐스트"되어 호환 가능한 모양을 갖습니다.ExamplesA (2d array): 5 x 4B (1d array): 1Result (2d array): 5 x 4..

📝 Data Mining

[Data Mining] Introduction to Numpy part.1

Introduction to Numpy Numpy는 numberal Python의 약자로, 수치 계산을 지원하기 위한 Python 라이브러리 패키지 입니다.Numpy에서 기본적인 데이터 구조는 ndarray라는 다차원 배열 객체입니다.Numpy는 ndarray의 요소들을 효율적으로 조작할 수 있는 일련의 함수들을 제공한다는 특징이 있습니다.설명서를 보려면 아래 링크를 참고하세요. NumPy documentation — NumPy v2.0 ManualThe reference guide contains a detailed description of the functions, modules, and objects included in NumPy. The reference describes how the met..

Bigbread1129
'분류 전체보기' 카테고리의 글 목록 (11 Page)