전체 글 194

Deep Learning이란? (인공 신경망)

Housing Price Prediction에서 보면, linear Regression의 형태로 이루어지는 걸 볼 수 있습니다. Deep Learning의 관점에서 보면, 하나의 Neuron을 여러 개로 연결하는 형태로 이루어져 있는 걸 볼 수 있습니다. 이 경우에는, 하나의 Neuron(신경)만 사용하면 될 거 같네요. 하나의 뉴런에는 인풋과 아웃풋이 있고, 그 인풋과 아웃풋을 연결하는 함수를 Activation function (활성화 함수) 라고 합니다. Activation function에는 여러가지가 있지만, 가장 많이 사용하는 것은 RELU(Rectified Linear Unit)입니다. Relu, Sigmoid, Step function등 여러가지가 있고, 나중에 정리를 하도록 하겠습니다. ..

Machine Learning 2021.10.02

Regularization과 Normalization

Machine Learning에서 Regularization과 normalization이라는 개념이 있는데, 둘다 정규화라고도 해석이 가능합니다. 네이버에 검색해보니, Regularization - 조직화, 규칙화 Normalization - 표준화, 정상화 라고 나오는군요. 하지만 많은 사람들이 Regularization과 normalization을 둘 다 정규화라고 사용하는 듯 합니다. Machine Learning에서 이 둘은 뜻이 완전히 다른데요, Normalization은 사실 Machine Learning뿐만 아니라 다른 개념에서도 사용되는 개념이기도 합니다. 수학에서도 사용하고, Database에서의 Normalization의 경우에는 테이블간의 서로 겹치는 정보를 배제한다는 의미로 사용하기..

Machine Learning 2021.09.03

Redux가 필요한 이유

참고 자료 : https://blog.logrocket.com/why-use-redux-reasons-with-clear-examples-d21bffd5835/ - Redux란 무엇일까요? state management tool 입니다. - Redux가 필요한 이유 Redux가 없다면, 모든 state들이 서로 통신하기 위해서는 공통의 부모까지 연결해서 다시 property로 내리는 상황이 반복되어야 할 겁니다. 다음 코드를 보면서 무슨 말인지 알아볼까요? class App extends React.Component { constructor(props) { super(props); // First the Parent creates a state for what will be passed this.stat..

Web Programming 2021.08.20

Nvidia Tx2에다가 yolov5 실행하기

yolov5는 PC(특히 Ubuntu)에서 굉장히 inference하기 쉬운 형태 입니다. GPU쓰는 방법만 알아낸다면, 말 그대로 github repository를 clone하고 실행하면 됩니다. 하지만 Tx2에서는 되지 않았습니다. 처음에는 Numpy 에러가 생기고, Illegal instruction (core dumped) 처음에는 numpy 타입이 1.19.5여서 1.19.4로 downgrade도 해보고, 그 와중에 pip install을 하는 와중에 compile하는 시간도 많이 걸리고, compile 하고 시스템 파일들이 저장공간에 많이 쌓여서 저장공간 부족도 생겼었습니다. 엄청난 삽질 끝에, Tx2 CPU의 ARRCH CPU type 때문에 torch와 torchvision을 다시 comp..

opencv waitkey 설명

참고 url: https://stackoverflow.com/questions/51143458/difference-in-output-with-waitkey0-and-waitkey1/51143586#:~:text=waitKey(0)%20will%20pause%20your,from%20your%20webcam%20using%20cap. https://m.blog.naver.com/PostView.nhn?isHttpsRedirect=true&blogId=chandong83&logNo=221613235354 opencv를 이용해서 script를 짜던 중, waitKey(1)를 넣었을때는 작동하던 코드가 이걸 빼니깐 작동하지 않는 걸 발견하였습니다. 궁금해서 찾아보니, waitKey(0)은 새로운 input이 들..

opencv 를 이용해서 rtsp 동영상 받기(ft. multithreading)

opencv를 이용해서 rtsp를 이용해서 영상을 받고, 그 영상을 display하는 코드 입니다. import os os.environ["OPENCV_FFMPEG_CAPTURE_OPTIONS"] = "rtsp_transport;udp" import numpy as np import cv2 as cv cap = cv.VideoCapture('rtsp://192.168.0.2:8554/') while cap.isOpened(): ret, frame = cap.read() # if frame is read correctly ret is True if not ret: print("Can't receive frame (stream end?). Exiting ...") break cv.imshow('frame',..

mAP란 무엇일까요? (ft. IOU)

yolov5 github : https://github.com/ultralytics/yolov5 참고 url : https://jonathan-hui.medium.com/map-mean-average-precision-for-object-detection-45c121a31173 yolov5 github를 살펴보면, mAP라는 개념이 나옵니다. mAP는 mean Average Precision의 약자이며, Precision은 positive 들에서 true positive rate을 말합니다. 즉, object detection의 경우에는, detection되는 bounding box를 말한다고 보면 됩니다. 그럼 average precision이란 어떤 걸 의미할까요? 이를 위해서는 IOU(Interse..

Precision과 Recall, 그리고 f1 score

참고 : https://jinmc.github.io/ds_blog/posts/ml_andrew_ng/wk6/ 오늘은 Precision과 Recall, mAP에 대해서 정리해보도록 하겠습니다. 예를 들어서, 100명의 사람과 10명의 암환자가 있다고 생각해 봅시다. 암환자 입장에서는, 무조건 암이 있다면 암이 있다고 진단을 받는게 좋을 것입니다. 10명의 암환자 중에서, 몇 명의 암환자가 진단을 받느냐가 중요하겠죠? 이걸 Recall rate이라고 합니다. 하지만 Recall rate만 중요시한다면, 100명의 사람을 모두 암에 걸렸다고 할 수 있겠죠? 하지만 그렇게 한다면, 제대로 된 진단이라고 할 수 없겠죠? 진단 결과를 너무 남발한다면, 사람들에게 정신적인 충격을 줄 뿐만 아니라, 검사 자체의 신뢰도..

Machine Learning 2021.06.03

Bias(편향)과 Variance(분산)

stanford university의 machine learning lesson 6 (Advices for machine learning application 관련 내용 정리): https://jinmc.github.io/ds_blog/posts/ml_andrew_ng/wk6/ 이 이론은 Machine learning에 있어서 가장 기본적인 내용 중에 하나 입니다. 가장 중요한 내용 중 하나이지만, 많이 봐도 헷갈리는 부분 중 하나입니다. 아마도 용어가 생소한 것도 그 이유 중 하나가 되지 않을까 싶습니다. 가장 쉬운 예부터 살펴보죠! 우리가 아는 가장 쉬운 예는 linear regression일 겁니다. 하지만 linear regression은 경향성을 보여줄 순 있어도, 선형으로 나누어지지 않는 변수..

Machine Learning 2021.05.24