본문 바로가기
728x90
반응형
SMALL

전체 글1632

11. 워드투벡터 (Word2Vec) 워드투벡터 (Word2Vec) 원-핫 벡터는 단어 벡터 간 유의미한 유사도를 계산할 수 없다는 단점이 있다. 그래서 단어 벡터 간 유의미한 유사도를 반영할 수 있도록 단어의 의미를 수치화 할 수 있는 방법이 필요하다. 이를 위해서 사용되는 대표적인 방법이 워드투벡터 (Word2Vec)이다. 희소 표현 (Sparse Representation) 원-핫 인코딩을 통해서 얻은 원-핫 벡터는 표현하고자 하는 단어의 인덱스의 값만 1이고, 나머지 인덱스에는 전부 0으로 표현되는 벡터 표현 방법이다. 이와 같이 벡터 또는 행렬의 값이 대부분이 0으로 표현되는 방법을 희소 표현 (sparse representation)이라고 한다. 하지만 이러한 표현 방법은 각 단어 벡터간 유의미한 유사성을 표현할 수 없다는 단점이.. 2021. 12. 22.
텐서플로우 (TensorFlow) 텐서플로우 (TensorFlow) TensorFlow에서 텐서 (Tensor)는 DL에서 데이터를 표현하는 방식이라고 할 수 있다. Tensor는 행렬로 표현할 수 있는 2차원 형태의 배열 (list)을 높은 차원으로 확장한 다차원 list이다. 예를 들어, 회색조 (grayscale) 이미지는 하나의 채널 (channel)에 2차원 행렬 (list)로 나타낼 수 있다. RGB 이미지는 3개의 채널마다 2차원 행렬로 표현하는데, 이를 3차원의 값을 가지는 list인 Tensor로 표현할 수 있다. TenorFlow에서 계산은 데이터 흐름 그래프(dataflow graph)로 이루어 진다. Tensor 형태의 데이터들이 DL 모델을 구성하는 연산들의 그래프를 따라 흐르면서 연산이 일어난다. 따라서, DL에.. 2021. 12. 22.
[Deep Learning] Train / Validation / Test set Train / Validation / Test set ML 모델링을 하고자 할 때 데이터 set을 나누어 사용한다. 일반적으로 train : validation : test = 60 : 20 : 20 의 비율을 사용한다. 훈련 데이터 (train set) train set은 모델을 학습하는데 사용된다. train set으로 모델을 만든 뒤 동일한 데이터로 성능을 평가해보기도 하지만, 이는 cheating이 되기 때문에 유효한 평가는 아니다. train set은 test set이 아닌 나머지 데이터 set을 의미하기도 하며, train set 내에서 또 다시 쪼갠 validation set이 아닌 나머지 데이터 set을 의미하기도 한다. 따라서 test set과 구분하기 위해 사용되는지, validatio.. 2021. 12. 22.
[Deep Learning] 경사 하강법 (Gradient Descent) / 배치 사이즈 (Batch Size) / 에포크 (Epoch) 경사 하강법 (Gradient Descent) 반복 (iterative, 곡선의 최소값) 최상의 결과를 찾기 위해 기계 학습에 사용되는 최적화 알고리즘이다. 알고리즘은 iterative이므로 최적의 결과를 얻으려면 여러 번 결과를 얻어야 한다. gradient descent의 반복적인 quality은 과소 적합 (under-fitted) 그래프가 그래프를 데이터에 최적으로 맞추는 데 도움이 된다. gradient descent에는 학습률 (learning rate)이라는 매개변수 (parameter)가 있다. 왼쪽 그림에서 처음에는 단계가 더 크다는 것은 learning rate이 더 높다는 것을 의미하고, 포인트가 내려갈수록 단계의 크기가 짧을수록 learning rate은 더 작아진다. 또한, 비용 .. 2021. 12. 22.
[Keras] model / weight 저장 및 불러오기 model / weight 저장 및 불러오기 keras에서 model과 weight를 저장 및 불러오는 방법을 살펴보자. ◦ model 저장 및 불러오기 (json / yaml) ◦ weights 저장 및 불러오기 (h5df) ◦ 둘 다 저장 및 불러오기 (h5) 각각의 방법들은 독립적이다. model 저장 및 불러오기 # json으로 model 저장 # layer layer = keras.layers.Dense(3, activation="relu") layer_config = layer.get_config() new_layer = keras.layers.Dense.from_config(layer_config) # Sequential model model = keras.Sequential([keras.I.. 2021. 12. 21.
데이터 사이언스 (Data Science) 데이터 사이언스 (Data Science) data science는 통계, 과학적 방법, AI 및 데이터 분석을 포함한 여러 분야를 결합하여 데이터에서 가치를 추출한다. data science를 실천하는 사람들을 data scientist라고 하며, 그들은 다양한 기술을 결합해 웹, 스마트폰, 고객, 센서 및 기타 소스에서 수집된 데이터를 분석하고 실행 가능한 통찰력 (insight)을 도출한다. data science에는 고급 데이터 분석을 수행하기 위한 데이터 정리, 집계 및 조작을 포함하여 분석을 위한 데이터 준비가 포함된다. 그런 다음 분석 애플리케이션과 data scientist가 결과를 검토하여 패턴을 발견하면 정보에 입각한 insight를 얻을 수 있다. Data Science, AI 및 M.. 2021. 12. 21.
[Computer Vision] 이미지 다루기 이미지 읽기 cv2.imread (fileName, flag) 함수를 이용하여 이미지 파일을 읽는다. 이미지 파일의 경로는 절대 / 상대 경로가 설정할 수 있다. import cv2 img = cv2.imread('xx.jpg', cv2.IMREAD_COLOR) # read xx.jpg ◦ parameters: fileName (str) – 이미지 파일의 경로, flag (int) – 이미지 파일을 읽을 때의 option ◦ returns: image 객체 행렬 ◦ return type : numpy.ndarray ◦ cv2.IMREAD_COLOR : 이미지 파일을 color로 읽음. 투명한 부분은 무시되며, default 값 ◦ cv2.IMREAD_GRAYSCALE : 이미지를 grayscale로 읽음.. 2021. 12. 21.
웹 프로그래밍의 이해 (2) URL URL은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 즉, 컴퓨터 네트워크와 검색 메커니즘에서의 위치를 지정하는, 웹 리소스에 대한 참조이다. 쉽게 말해서, 웹 페이지를 찾기위한 주소를 말한다. 프로토콜: http 호스트명: www.google.com 포트 번호: 80 경로: /search 쿼리 문자열: q=hello+world 프래그먼트: _top 전체 URL: http://www.google.com:80/search?q=hello+world#_top 프로토콜 : URL에 사용되는 프로토콜을 나타낸다. HTTP 또는 HTTPS일 수 있다. 호스트명 : 웹 서버의 호스트명으로 도메인 이름 또는 IP 주소로 표현할 수 있다. 포트 번호 : 웹 서버 내의 서비스 포트 번호이다. 생략.. 2021. 12. 21.
웹 프로그래밍의 이해 (1) 웹 클라이언트 웹 서버에서 정보를 요청하고 수신하는 소프트웨어 프로그램을 말한다. 웹 브라우저를 사용한 요청 리눅스 curl 명령을 사용하여 요청 리눅스 telnet을 사용하여 요청 직접 만든 클라이언트로 요청 HTTP 메시지 # 요청 메시지 GET /music/jackson HTTP/1.1 Host www.example.com:8080 # 응답 메시지 HTTP/1.1 200 OK Content-Type: text/html; charset=utf-8 Content-Length: 100 Hello, World! HTTP 프로토콜 클라이언트 (요청 메시지 보내기) 서버 (응답 메시지 받기) 메서드 : GET, POST, PUT, DELETE 중 하나 리소스 URI 헤더 : 요청에 대한 추가 정보 본문 : 요.. 2021. 12. 21.
[Keras] 손실 함수 (Loss Function) 손실 함수 (Loss Function) 손실 함수(목적 함수 또는 최적화 점수 함수)는 하나의 model을 compile하기 위해 필요한 두 개의 매개 변수 중 하나이다. 또한, loss function은 single data set을 다룬다. model.compile(loss='mean_squared_error', optimizer='sgd') from keras import losses model.compile(loss=losses.mean_squared_error, optimizer='sgd') 기존의 손실 함수를 이름으로 전달하거나 TensorFlow / Theano의 심볼릭 함수(symbolic function)를 매개 변수로 전달할 수 있다. symbolic function는 다음의 두 인자를.. 2021. 12. 20.
728x90
반응형
LIST