라벨이 #Machine Learning인 게시물 표시

[Machine Learning] YOLO란?(미완성)

[Machine Learning] YOLO란? YOLO(you only look once) YOLO가 등장할 당시에 Object Detection은 주로 Faster R-CNN계열이 좋은 성능을 내고 있었다 YOLO는 굉장히 빠른 속도를 보여줬으며, 성능도 Faster R-cnn에 비해 크게 떨어지지 않았다

[Machine Learning] 로지스틱 회귀분석

이미지
[Machine Learning] 로지스틱 회귀분석 선형회귀 를 알아봤으니 로지스틱 회귀를 알아보자 로지스틱 함수는 분야에 따라 시그모이드 (Sigmoid) 함수라고 불리기도 함 로지스틱 회귀 선형 회귀 분석과는 다르게 결과가 범주형일 때 사용함 범주형 : 학년, 혈액형, 성별, 내일 비가 올지 안 올지 등 x의 값이 증가하던 감소하던 무관하게 f(x)는 0과 1사이의 값을 갖는 값이 됨 확률로서 사용할 수 있게 됨(확률밀도함수요건을 충족) https://www.youtube.com/watch?v=kHLqMsN7yao 이 동영상을 보면 더 이해가 잘 됨 출처 https://medium.com/qandastudy/mathpresso-%EB%A8%B8%EC%8B%A0-%EB%9F%AC%EB%8B%9D-%EC%8A%A4%ED%84%B0%EB%94%94-4-%ED%9A%8C%EA%B7%80-%EB%B6%84%EC%84%9D-regression-2-4f938f1f1c2d

[Machine Learning] 맥스 풀링(Max pooling)이란?

이미지
[Machine Learning] 맥스 풀링(Max pooling)이란? 중간중간에 있는 pool이 무엇일까? Pooling layer는 쉽게 sampling이라고 보면 됨 하나의 레이어 층을 뽑아내서 resize를 시키는 것 Max pooling을 실행하면, 가장 큰 값을 뽑아냄 Max pooling말고 mean pooling등 다양한 방법이 있음 필터사이즈와 스트라이드크기에 따라 풀링되는것이 매번 다를 수 있음 왜 풀링을 할까? Overfitting을 방지하기 위해서 출처  https://www.youtube.com/watch?v=2-75C-yZaoA&feature=youtu.be

[Machine Learning] CNN이란?

이미지
[Machine Learning] CNN이란? Deep Learning과 Machine Learning의 차이점 을 공부하다가 CNN이 궁금해짐 초창기에 CNN을 개발한 분들이 고양이가 보는것마다 자극 받는 뇌의 위치가 다른것을 보고 아이디를 얻어 CNN을 만듬 즉,  image전체를 보는 것이 아니라 부분을 보는 것이 핵심 아이디어 이 '부분'에 해당하는 것을 filter라고 함 자동차의 한 부분 한 부분을 특정 크기로 잘라서 이미지를 넘기게 됨 Convolution은 한번만 하는게 아니라 여러분 할 수도 있음 중간에 RELU 및 POOLING 을 넣음(POOL을 몇번 넣는건 자유) 마지막으로 fully connection neural network를 구성할수 있음 레이블링을 하는 클래스를 붙일수있음 (위의 예에서는 자동차일 가능성을 가장 높게 봄) 32x32x3이미지의 필터의 사이즈를 5x5로 지정함(5로 임의로 지정한것, 바꿀수 있음) 3은 RGB라서(뒤에 나오는 부분[(ex)6,10]들은 RGB랑은 관련이 없음) 만약 흑백사진이라면 3이아니고 1임 여기서 말하는 3,1과 같은것을 채널(Channel)이라 함 CNN에서 필터와 채널은 같은 뜻 필터(빨간색 네모)를 통해서 x(임의로 정한거)를 받아서 하나의 값으로 나타냄 x가 5개 있다고 가정하면, x1, x2, x3, x4, x5값에 대한 w1, w2, w3, w4, w5를 각각 정하고 b도 정하면 y(하나의 결과값)이 나옴 즉, W(weight)가 굉장히 중요 혹은, RELU를 사용해도 됨 이해를 조금 돕기 위해 이미지 사이와 필터 사이즈를 줄여봄 7x7 이미지에서 3x3필터를 적용하면 5x5=25개의 결과가 나옴(필터 1일때) 7x7 이미지에서 3x3필터를 적용하면 3x3=9개의 결과가 나옴(필터 2일때) stride : 한번에 몇칸씩 움직이는지 위와...

[Machine Learning] 머신러닝과 딥러닝 구분하기

이미지
[Machine Learning] 머신러닝과 딥러닝 구분하기 머신러닝(기계학습) 딥러닝(심층학습) 트레이닝 데이터양 적음 많음 직접 분류 O X 분류 할 수 있는 양 많음 적음 트레이닝 시간 비교적 적게 걸림 비교적 오래 걸림 시스템 성능 비교적 낮은 성능 비교적 높은 성능 머신러닝 주어진 소재를 우선 인간이 먽 ㅓ처리 이미지의 경우 사람이 트레이닝 데이터를 알맞게 분류하는 등 컴퓨터가 인식할 수 있도록 애햐 함 그 다음 컴퓨터카 데이터에 포함된 특징을 분석하고 축적하는 과정을 거침 마지막으로 커퓨터가 축적된 데이터를 바탕으로 이미지의 특징을 종합해 답을 이끌어냄 자신의 연구를 포함시킬 여지가 남아 있음 딥러닝 머신러닝에서 인간이 하던 작업이 생략됨  바탕이 되는 데이터를 그대로 주고, 딥러닝 알고리즘이 회선 신경망(CNN)을 이용해 스스로 분석한 후 답을 내는 방식 CNN : 이미지를 이해하고 이로부터 높은  수준의 추상화된 정보를 추출하거나, 새로운 질감을 가진 그림을 그리는 등 다양한 영상처리, 컴퓨터 비전 분야에서 많이 연구되고 있는 인공신경망의 한 종류 딥러닝은 넓은 의미에서 머신러닝 개념에 포함 됨 이용자의 많은 지식과 노력 없이도 높은 정밀도를 얻을 수 있음 머신러닝과 딥러닝 어떤것을 선택해야 할까 좋은 하드웨어와 많은 데이터가 있으면 DEEP LEARNING 선택, 아니면 머시러닝 선택 출처 http://jayzzz.tistory.com/57 http://www.zdnet.co.kr/view/?no=20170807140504

[Machine Learning]Tensorflow란?

이미지
[Machine Learning]Tensorflow란? 인공지능은 Python(파이썬)에 특화되어 있다. 즉 파이썬은 딥러닝을 다루기에 좋은 언어 파이썬은 시행착오, 데이터 분석등과 같은것에 특화되어 있음 그렇다고 다른 언어(ex 자바)와 같은거로 못 만든다는거는 아니다 텐서(Tensor) Tensor = Multidimensional Arrays = Data 딥러닝에서 텐서는 곧 다차원 배열로 나타내는 데이터 ex) RGB이미지는 삼차원 배열로 나타나는 텐서 플로(Flow) 플로는 곧 데이터의 흐름을 의미 tensorflow에서 계산은 데이터 플로우 그래프(Dataflow graph)로 행해짐 그래프의  각각 간선은 시스템을 따라 흘러가는 데이터(Tenosr)를 의미 그래프는 각각 노드는 수식을 의미  그래프를 따라 데이터가 노드를 흘러가면서 계산을 수행 Tensorflow(텐서플로우) 딥러닝 오픈소스 패키지 실제 파이썬 개발자들도 텐서플로우를 이해하기 상당히 힘듬 텐서플로우는 파이썬에서 돌아가는 것이 아니라 파이썬으로 텐서플로우를 구동함 파이썬은 자바보다도 느린 언어라서 파이썬의 함수를 이용해서 머신러닝, 딥러닝같은 엄청난 자원을 쓰는 알고리즘을 돌리는 것은 바보같은 짓 일부 데이터 분석 프로그램을 작성할 때에도 자바로 구동할 때 느려서 C, C++로 동일한 부분을 짜서, 서비스로 구현하는 경우도 종종 있는데 파이썬으로 딥러닝을 구동하는것 자체가 바보같은 짓 Tensorflow는 껍데기가 파이썬이고, 자체적인 프로그램(아마도 C/C++로 만들어졌을거같음)을 파이썬이 호출하는 방식 Tensorflow와 경쟁상대인 다른 프레임워크들 PyTorch(파이토치) CNTK 아파치 MXnet 출처 :  http://inpages.tistory.com/57 출처 :  http://needjarvis.tistory.com...

[Machine Learning] linear regression(선형 회귀)

이미지
[Machine Learning] linear regression(선형 회귀) linear : 선형(직선) regression : 회귀 지도학습 중 예측 문제에 사용하는 알고리즘 예측 문제 : 기존 데이터를 기반으로 생성된 모델(여기서는 회귀모델)을 이용하여 새로운 데이터가 들어왔을 때 어떤 '값'이 될지 예측하는 문제 선형 회귀분석은 기본적으로 설명변수와 반응변수가 연속형 변수일 때 사용 가능 연속형 변수의 예 : 키, 몸무게, 온도, 나이 등 범주형 변수의 예 : 학년, 혈액형, 성별 등 만약 설명변수가 범주형 변수인 경우 이를 더미 변수(Dummy Variable)로 변환하여 회귀분석을 적용해야 함 더미 변수 : 범주형 변수를 연속형 변수로 변환한 것, 즉 연속형 변수스럽게 만든것 선형 회귀분석 주어진 데이터를 대표하는 하나의 직선을 찾는 것 y=ax+b인 회귀식에서 x가 1개인 것을 보면 알 수 있듯이 단순 선형 회귀분석에선 input이 되는 설명변수는 1개 회귀선을 찾는 기준중 대표적인 최소제곱법 선형 회귀분석은 최소제곱법(최소자승법)을 기준으로 회귀선을 찾음 최소제곱법을 설명하기 위해서는 잔차라는 개념을 알아야 함 잔차 : 관측값의 y와 예측값의 y간의 차이 최소제곱법은 잔차의 제곱의 합이 최소가 되도록 하는 직선을 회귀선으로 한다는 것 회귀식을 바꿔가면서 잔차의 제곱의 합이 최소가 되게 하는 직선을 찾는 것이 선형 회귀분석이고 그 직선을 회귀선이라고 부르고 그 선의 함수를 회귀식이라고 부름 선형 회귀분석을 한다는 것은? 분석가가 데이터, x변수, y변수를 지정하고 통계 툴이 최소제곱버을 이용해 회귀식 y=ax+b에서 a와 b를 구하는 과정 회귀식에서 a를 회귀계수, b를 y절편이라고 부름 다중 선형 회귀분석 단순 선형 회귀분석이 설명변수 x가 1개, 반응변수 y가 1개인 선형 회귀분석이라면 다중 선형 회귀분석은 설명변수...