넘파이를 사용하면서 자주 등장하고 쓰이는 함수들에 대해 정리해보았다. numpy 변환, random, 연산 등 기본적인 것들이라 이미 알고있다면 넘어가도 좋다. ※ 자주 사용하는 numpy 함수¶ In [1]: import numpy as np numpy 배열¶ In [2]: np.array([0,1,2,3]) Out[2]: array([0, 1, 2, 3]) 기존 리스트를 numpy배열로 변환¶ In [3]: tmp = [[0,2],[2,3],[6,8]] np.asarray(tmp) Out[3]: array([[0, 2], [2, 3], [6, 8]]) In [4]: tmp = [[0,2],[2,3],[6,8]] np.array(tmp) Out[4]: array([[0, 2], [2, 3], [6, 8..
DQN으로 CartPole문제를 풀기 위한 신경망 학습 코드이다. CartPole란? 좌우로 이동할 수 있는 수레 위에 막대가 꼿꼿히 선 상태에서 게임 시작 그냥 두면 쓰러지므로 수레를 왼쪽/오른쪽으로 재빨리 움직여 균형을 잡음 목표는 막대를 쓰러트리지 않고 오래 유지하는 것 이에 대한 자세한 내용은 아래 게시물 목차 5.2 확인 08) 강화 학습과 게임 지능 - 파이썬으로 배우는 인공지능 1 강화학습의 원리와 응용 1.1 다중 손잡이 밴딧 문제 여러 손잡이 중 하나를 선택해 1달러를 넣고 당기면 동전을 먹거나 2달러를 내놓는 기계 플레이어는 1달러를 잃거나 1달러를 따게 됨 손잡이 haystar.tistory.com 🎲 Q러닝 학습에 사용되는 행동가치함수 $q$를 개선하는 공식 전체 코드 import ..
📢 아래 코드는 gym라이브러리에서 FrozenLake-v0 환경을 불러와 실행한다. 전체 코드 import gym import numpy as np env= gym.make('FrozenLake-v0',is_slippery=False) #환경 생성 Q=np.zeros([env.observation_space.n,env.action_space.n]) #Q배열 초기화 rho=0.8 #학습률 lamda=0.99 #할인율 n_episode= 2000 length_episode=100 #최적 행동 가치 함수 찾기 for i in range(n_episode): s=env.reset() for j in range(length_episode): argmaxs= np.argwhere(Q[s,:]==np.amax(Q[..
훈련집합은 꾸준히 성능이 개선되지만, 검증 집합에선 성능 개선이 없다? = 과잉 적합 발생! 이런 상황에 조기멈춤(early stopping)이라는 규제기법을 적용하면 효과적이다. 조기멈춤이란 훈련 집합에 대해 덜 수렴했더라도, 검증 집합에 대한 성능 개선이 더 없거나 퇴화한다면 학습을 마치는 전략 전체 코드 조기 멈춤을 위해 텐서플로에서 EarlyStopping 클래스를 제공함 early= EarlyStopping(monitor='val_accuracy', patience=5, restore_best_weights=True) 조기멈춤으로 LSTM 학습 중단 from tensorflow.keras.datasets import imdb from tensorflow.keras.models import Seq..
전체 코드 📢 실행하기 전 아래 코드를 실행하여 opencv라이브러리 설치하기!! pip install opencv-python 📑 물체를 분류하기 위한 클래스 부류 파일 Yolo로 물체 검출 import numpy as np import cv2 classes = [] f = open('/content/coco.names.txt','r') classes = [line.strip() for line in f.readlines()] colors = np.random.uniform(0,255, size=(len(classes),3)) img=cv2.imread('/content/dog.jpg') height, width,channels = img.shape blob=cv2.dnn.blobFromImage(im..
전체 코드 증대된 영상 확인 from tensorflow.keras.datasets import cifar10 from tensorflow.keras.preprocessing.image import ImageDataGenerator import matplotlib.pyplot as plt #CIFAR 10 부류 class_names = ['airplane','automobile','bird','cat','deer','dog','frog','horse','ship','truck'] #데이터를 신경망에 입력할 형태로 변환 (x_train, y_train),(x_test,y_test) = cifar10.load_data() x_train = x_train.astype('float32')/255.0 x_trai..