본문 바로가기

목록

(199)
파이썬) [numpy] array와 asarray 차이 array와 asarray 차이점 array와 asarray는 구조적으로 동일하다. 하지만 array의 경우 copy = True가 기본 값이지만, asarray의 경우 copy = False가 기본 값이다. 따라서 array를 다른 변수에 할당하고 원본을 변경할 경우 array의 copy본은 변경되지 않지만 asarray의 copy본은 변경된다. array와 asarray 차이점을 보여주는 예제 import numpy as np a = np.ones([4, 3]) a_array = np.array(a) a_asarray = np.asarray(a) a[1] = 0 print('a_array') print(a_array) print() print('a_asarray') print(a_asarray) a_..
파이썬) 문자열 형식화(string formatting) 파이썬의 문자열 형식화 파이썬에서는 복잡한 문자열 출력을 위한 문자열 형식화를 지원한다. 여기에는 % 기호를 사용한 방식과 format 메서드를 사용한 방식, 그리고 f 문자열을 사용하는 방식이 있다. % 기호를 사용한 문자열 형식화 기본적으로 문자열 뒤에 % 기호를 붙이고 그 뒤에 다른 값을 붙이면 뒤에 붙은 값이 문자열 안으로 들어간다. "문자열" % 값 문자열 형식 코드 형식 코드 설명 %d 정수(Integer) %f 부동 소수(Float) %c 문자(Character) %s 문자열(String) %o 8진수 %x 16진수 %% 문자 % % 기호를 이용한 문자열 형식화 사용 예 1. 숫자를 대입하는 방법 >>> "거스름돈은 %d원 입니다." %4000 '거스름돈은 4000원 입니다.' 2. 변수로 ..
OpenCV) 카메라로부터 비디오 읽어서 저장하기(코드 분석) import cv2 cap = cv2.VideoCapture(0) fourcc = cv2.VideoWriter_fourcc(*'DIVX') out = cv2.VideoWriter('prj_test.avi', fourcc, 30.0, (640, 480)) while(cap.isOpened()): ret, frame = cap.read() if(ret) : cv2.imshow('video', frame) out.write(frame) if cv2.waitKey(1) == ord('q'): break else: print('error') break cap.release() out.release() cv2.destroyAllWindows() 1. VideoCapture OpenCV에서 동영상 입력 부분을 관리하..
batch_size와 epochs 1. batch_size(배치 사이즈) 연산 한 번에 들어가는 데이터의 크기를 말한다. 배치 사이즈가 너무 큰 경우에는 한 번에 처리해야 할 데이터의 양이 많아지므로 학습 속도가 느려지고 메모리 부족 문제가 발생할 수 있다. 반대로 너무 작은 경우에는 적은 데이터를 대상으로 가중치를 업데이트하고, 이 업데이트가 자주 발생하므로 훈련이 불안정해진다. 2. epochs(에포크) 하나의 데이터셋을 몇 번 반복 학습할지 정하는 파라미터이다. 에포크가 너무 크면 학습 셋에 대해 성능은 올라가지만 관측되지 못한 테스트셋에 대한 성능이 떨어지는 overfitting(오버피팅)이 발생한다. [케라스] 딥러닝 모델 학습-batch size와 epoch – SevillaBK's Blog [케라스] 딥러닝 모델 학습-bat..
파이썬) [model] compile 함수 컴파일이란 모델을 학습시키기 위한 학습과정을 설정하는 단계로 compile 함수를 사용하여 설정할 수 있다. compile 함수는 학습 방식에 대한 환경 설정을 필요로 하는데 아래의 세 개의 인자를 입력으로 받는다. 아래는 compile 함수를 사용한 예시 코드이다. # 모델 구축하기 model.compile(optimizer='rmsprop', loss='categorical_crossentropy', # 최적화 함수 지정 metrics=['accuracy']) 1. optimizer(정규화하기) 훈련 과정을 설정하는 것으로 최적화 알고리즘의 설정을 의미한다. optimizer에는 adam, sgd, rmsprop, adagrad 등이 있으며 코드에서 사용된 rmsprop는 일반적으로 순환 신경망(Re..
CNN(합성곱 신경망) 개념 및 사용법 1. CNN (Convolutional Neural Networks) 개념 CNN은 딥러닝에서 주로 이미지나 영상 데이터를 처리할 때 쓰이며 이름에서 알 수 있다시피 Convolution이라는 전처리 작업이 들어가는 Neural Network 모델을 말한다. CNN의 탄생 배경을 살펴보면 DNN(Deep Neural Network)이 있다. 이 DNN은 기본적으로 1차원 형태의 데이터를 사용하는데 여기서 이미지 데이터를 한 줄의 데이터로 만드는 과정에서 이미지의 공간적/지역적 정보(spatial/topological information)가 손실이 되는 문제가 발생하고 이로 인해 결과적으로 학습시간과 능률의 효율성이 저하된다. 이러한 문제를 해결하여 나온 모델이 CNN이라고 할 수 있다. CNN은 이미지..
파이썬) glob함수 사용하기 glob 함수란? glob는 파일들의 리스트를 뽑을 때 사용하는데, 인자로 받은 패턴과 이름이 일치하는 모든 파일과 디렉터리의 리스트를 반환한다. 적용 예시 1. 현재 디렉터리에서 특정 파일(.txt)을 가져오고 싶을 경우 from glob import glob list = glob('*.txt') print(list) # 실행결과 >>> ['test1.txt', 'test2.txt'] 2. 현재 경로가 아니라 다른 경로(C:\image)에서 특정 파일(.png)을 가져오고 싶을 경우 from glob import glob list = glob('C:\\image\\*.png') print(list) # 실행결과 >>> ['C:\\image\\img1.png', 'C:\\image\\img2.png'] ..
파이썬) 0으로 이루어진 리스트 만들기 0이 5개로 이루어진 리스트를 만드는 방법 list = [0 for i in range(5)] [0, 0, 0, 0, 0] 문제1) 아래의 실행 결과가 나오는 코드를 작성하라. [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] list = [1 for i in range(10)] 문제2) 아래의 실행 결과가 나오는 코드를 작성하라. [[0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0]] list = [[0 for i in range(5)] for j in range(3)]