전체 글

· 인공지능
합성곱 합성곱(convolution) 연산과 교차 상관(cross-correlation) 연산에 대해 알아야 한다. 합성곱은 두 함수에 적용하여 새로운 함수를 만드는 수학 연산자이다. 합성곱은 글보다는 그림으로 이해하는 것이 쉽다. 배열 뒤집기 두 배열 x와 w가 있다고 가정하고 두 배열 중 원소수가 적은 배열 w의 원소 준서를 뒤집어 보면 위와 같다. 뒤집은 배열은 reverse의 약자인 r을 사용하여 w^r이라고 표현한다. 첫 번째 합성곱 왼쪽 끝자리에 맞춰 놓고 원소끼리 곱한 후 더한다. 즉, 점 곱 연산을 수행한다. 두 번째 합성곱 w^r을 오른쪽으로 한 칸 이동하여 각 배열 원소끼리 곱한 후 더한다. 나머지 합성곱 같은 방식으로 오른쪽 끝에 도착할 때까지 수행한다. 이것이 합성 곱이다. 수식으로..
Model&Schema Schema는 데이터의 구조나 타입, 길이 등의 정보를 담고 있는 것이다. Model은 Schema를 감싸고 있는 것이라 생각하면 된다. models라는 폴더를 생성해 model을 관리해보자. 그 후, models폴더 안에 User.js파일을 만들어 보자. const mongoose = require('mongoose') const userSchema = mongoose.Schema({ name: { type: String, maxlength: 50 }, email:{ type: String, trim: true, unique: 1 }, password:{ type: String, minlength: 5 }, lastname:{ type: String, maxlength: 50 }..
· 인공지능
케라스 케라스는 딥러닝 패키지를 편리하게 사용하기 위해 만들어진 래퍼(wrapper) 패키지이다. 대표적인 딥러닝 패키지인 텐서플로, 씨아노 등을 사용해 신경망을 구현하려면 꽤 많은 양의 코드를 입력해야 한다. 코드를 살펴보자. #훈련할 가중치 변수 선언 w = tf.Variable(tf.zeros(shape=(1))) b = tf.Variable(tf.zeros(shape=(1))) #경사 하강법 옵티마이저 설정 optimizer = tf.optimizers.SGD(lr = 0.05) #에포크만큼 훈련 num_epochs = 10 for step in range(num_epochs): #미분 연산 과정 기록 with tf.GradientTape() as tape: z_net = w * x_train +..
· 인공지능
다중 분류 신경망 구현 MinibatchNetwork 클래스를 확장하여 다중 분류를 수행하는 MultiClassNetwork 클래스를 구현해 보자. 소프트맥스 함수 추가 다중 분류에서는 마지막 출력층에 소프트맥스 함수를 사용해야 하므로 은닉층과 출력층에 각기 다른 활성화 함수를 적용한다. 이를 위해 activation() 메서드의 이름을 sigmoid()로 바꾸고 softmax() 메서드를 추가한다. def sigmoid(self, z): a = 1 / (1 + np.exp(-z)) #시그모이드 계산 return a def softmax(self, z): #소프트맥스 함수 exp_z = np.exp(z) return exp_z / np.sum(exp_z, axis=1).reshape(-1,1) 소프트맥스..
· 인공지능
다중 분류 다중 분류 신경망을 만들기 위해서는 소프트맥스(softmax) 함수와 크로스 엔트로피(cross-entropy) 손실 함수라는 새로운 개념을 알아야 한다. 이진 분류와 다중 분류는 크게 다르지 않다. 출력층의 개수만 다르고 나머지는 동일하다. 이진 분류는 양성 클래스에 대한 확률 하나만 출력하고 다중 분류는 각 클래스에 대한 확률 값을 출력한다. 예를 들어 첫 번째 클래스에 대한 확률값이 y1, 두 번째 클래스에 대한 확률값은 y2, 세 번째 클래스에 대한 확률값은 y3로 출력된다. 다중 분류 긴경망은 출력층에 분류할 클래스 개수만큼 뉴런을 배치해야 한다. 다중 분류의 문제점과 소프트맥스 함수 숫자는 확률을 얘기한다. 0.9는 90%이다. 왼쪽과 오른쪽의 신경망 모두 자동차를 타깃 클래스로 예..
MongoDB 연결하기 https://www.mongodb.com/cloud/atlas/lp/try2?utm_source=google&utm_campaign=gs_apac_south_korea_search_brand_atlas_desktop&utm_term=mongodb&utm_medium=cpc_paid_search&utm_ad=e&utm_ad_campaign_id=1718986522&gclid=CjwKCAiA8ov_BRAoEiwAOZogwRJOWJo-GuKttO0DxA5P0m9m3E-wXqcPuVXeRGbLlk41JZeTp1llRBoCoIEQAvD_BwE MongoDB Atlas: Cloud Document Database Cloud-hosted MongoDB service on AWS, Azure,..
Node.js란? node.js는 쉽게 말해 JavaScript를 서버단에서 사용할 수 있는 언어라고 생각하면 된다. 즉, 서버를 구축하는데 사용되는 언어이다. express.js node.js가 자동차의 엔진이면 express.js는 엔진을 가지고 자동차를 만드는 것이다. node를 이용하여 서버를 구축할 때 사용되는 것이다. 환경설정 node.js 설치를 해야 한다. https://nodejs.org/ko/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 여기서 설치를 하면 된다. 설치가 완료되면 cmd나 git-bash를 켜서 확인을 한다. node -v라는 명령어로 확인할 수 있다...
hvv_an
이미난