본문 바로가기

AI143

Statistics : 3-2 : 평균값, 중앙값, 최빈값 평균값 정의 ∑(데이터) / (데이터의 총 갯수)로 나누기해서 얻은 값이다. ∑ (계급값 * 상대도수) 배경 도수분포표나 히스토그램은 몇 가지 단점들을 가지고 있다. 만든 사람의 생각이 들어가니, 실제로 표를 보고 이해하지 못하는 경우가 생긴다. -> 히스토그램에서 하나의 계급값들은 각각의 수치들이 차이가 얼마나 나는지에 대한 부분을 알지 못한다. 따라서 데이터로부터 추출한 성질을 통해서 결론도출이 힘들 수 있다. 상당히 많은 공간을 차지한다. -> 논문에서는 집약적으로 다뤄야하기 때문에, 잘 써야함. 이 단점들을 극복하기위해 축약 방법 중 통계량이 나왔다. 통계량은 데이터의 특징을 하나의 숫자로 표현한 것이다. 구체적으로는, 평균값, 분산, 표준편차 등등이다. 도수분포표에서의 평균값의 역할 평균값 = .. 2019. 12. 21.
Statistics : 3-5 : 통계학, 도수분포표 Statistics (통계학) 우리가 살아가는 사회에서의 data들은 항상 "불확실성" 을 가지고 있다. 따라서 우리는 data의 불확싱성의 구조를 찾아내기 위해 이 통계학을 사용한다. 데이터는 항상 "제각각인 구조"를 가지고 있기 때문에, 우리는 이들의 분포와 특징을 알아내기 위해 평균값, 분산, 표준편차를 사용한다. 통계학은 기술통계와 추정 통계로 나뉜다. 기술통계 정의 관측을 통해 얻은 데이터에서 그 데이터의 특징을 뽑아내기 위한 기술 ex) histogram, 도수분포표 추정통계 정의 "전체를 파악할 수 없을 정도의 큰 대상, 아직 일어나지 않은 미래에 일어난 일" 을 파악하는 것이다. 즉 "" 부분으로 전체를 파악하는 일"" 이다. 주로 우리가 머신러닝, 딥러닝으로 예측하는 부분을 추정통계라 한.. 2019. 12. 21.
Deep_Learning : CNN (Convolutional Neural Network) CNN (Convolutional Neural Network), 합성곱 신경망 네트워크 정의 : CNN은 합성공을 이용한 신경망 네트워크를 말한다. 기존의 FNN (Fully-Connected Neural Network)에서는 데이터를 모든 신경망에 연결을 하다보니, 신경망의 수가 기하급수적으로 늘게 되었고, 우리는 조금 더 합리적이고 빠른, CNN을 찾게 되었다. CNN에서 layer는 입력데이터로부터 특징을 추출하는 역할을 수행한다. 이는 특징을 추출하는 Filter와 필터의 값을 비선형 값으로 바꾸어주느 활성화 함수 (Activation Function)로 이루어져 있다. Filter (특징을 추출하는 역할) filter는 오른쪽 같은 곡선의 그림을 행렬로 표현한 것이다. 내가 이런 곡선을 그림에서.. 2019. 12. 2.
자연어 처리 : Reference 정리 강승식 교수님의 NLP 자료집 http://cafe.daum.net/nlpk/7dLs/16 형태소 분석기 KLT2000-TEST.dll -- 2019년 배포판 http://nlp.kookmin.ac.kr/에서 다운받아 사용하던 형태소 분석기가 사용기간 만료로 인하여 사용할 수 없으면 여기에 올린 DLL로 교체하여 정상적으로 사용이 가능합니다. KLT2000-TEST.dll 이 DLL은 2020년 12월 31일까지 사용이 가능합니다. DLL 포함하여 실행파일 등 포함된 2017~2018년도 사용 cafe.daum.net 자연어 기초 정리 http://hero4earth.com/blog/learning/2018/01/17/NLP_Basics_01/ 사회 혁신을 위한 데이터 중심의 서비스 기획자 더 나은 세상.. 2019. 11. 4.
DeepLearning : basic_model Deep Learning 이란? DeepLearning에서 얘기하는 neuron, 뉴런이라고 불리는 unit이 단순하게 동작이 된다. 근데 어떻게 컴퓨터가 생각을 할 수 있을까? 신호 input이 있고 ( x ), 그 input에 weight 가 해당되는 시냅스가 신호를 받는다. 그리고 cell body에서 연산이 일어나고 통과되면서 bias가 더해진다. activation function에서 output이 나오게 된다. 이러한 과정들이 simple 단계에서는 신경망 구조가 simple하지만, Deep learning 구조에서는 신경망구조가 deep 해지면서 여러 복잡한 연산들이 추가가 된다. Deep Learning 구조 신경망 구조 : 단층 퍼셉트론 (Single Layer Perceptron) 단층.. 2019. 10. 28.
ML07-4-MNIST-data (실제 data 분석) import tensorflow as tf import matplotlib.pyplot as plt import random tf.set_random_seed(777) # for reproducibility # input_data를 좀 더 편하게 input하게 함 from tensorflow.examples.tutorials.mnist import input_data # Check out https://www.tensorflow.org/get_started/mnist/beginners for # more information about the mnist dataset # one_hot을 설정하면 데이터를 읽어올 때 one_hot으로 읽어온다!!! mnist = input_data.read_data_set.. 2019. 10. 24.
ML07-4-MNIST-data MNIST Dataset MNIST Dataset은 실제로 손글씨를 data화 시킨 것으로 우리가 흔히 training set으로 사용한다. 아래 그림을 보면 784개의 픽셀 data로 이루어져있다. 이 dataset을 training 한 후, 우리가 예측하고자 하는 숫자를 넣으면 된다. 1. input_data.py TensorFlow 샘플에 포함된 예제인데, mnist 데이터셋이 없을 경우 인터넷으로부터 다운로드한다. 추가로 DataSet 클래스 등의 정의가 이 안에 들어 있다. mnist 데이터셋을 다루는 코드의 꼭대기에는 대부분 input_data.py를 import하는 코드가 들어 있다. 2. mnist 로딩 from tensorflow.examples.tutorials.mnist import .. 2019. 10. 24.
ML06-2-logistic-regression : multiple-classification(softmax-classifier) 이번 게시물은 logistic_regression에서도 여러 value로 분류하는 Multiple Classification 이다. import tensorflow as tf import numpy as np tf.set_random_seed(777) # for reproducibility # Predicting animal type based on various features xy = np.loadtxt('./data-04-zoo.csv', delimiter=',', dtype=np.float32) x_data = xy[:, 0:-1] y_data = xy[:, [-1]] print(x_data.shape, y_data.shape) print(x_data) ''' (101, 16) (101, 1) '.. 2019. 10. 23.
ML05-1-logistic_regression : Binary Classification 이번 게시물은 logistic_regression에서도 Binary Classification 이다. 먼저 logitistic regression에 대해서 살펴보자 logistic regression은 선들로 인해 구역을 구분지어놔서, 실제 데이터가 어디에 속하는지 classification을 쓸 수 있다. 예제로 binary classification을 이용하여 (0, 1)을 이용하여 학습, 악성종양인지 양성종양인지 진단가능하다. 우리가 실제 데이터를 다루다보면, 실수를 논하기 때문에 값들이 커지게 된다. 그래서 sigmoid, (1/ (1+e^x)) 함수를 쓰니 0~1로 수렴하면서 데이터들간의 간격이 줄었고, hypothesis를 0-1로 맞추기위해 sigmoid를 쓴다. import tensorfl.. 2019. 10. 23.
ML04-1-linear-regression(Tensorflow basic) import tensorflow as tf x1_data = [73., 93., 89., 96., 73.] x2_data = [80., 88., 91., 98., 66.] x3_data = [75., 93., 90., 100., 70.] y_data = [152., 185., 180., 196., 142.] linear-regression 한 예제 코드이다. 이번 예제코드는 실제로 임의로 x1,x2,x3,y data를 부여하고 이들의 상관관계를 알아보려한다. # placeholder 지정 x1 = tf.compat.v1.placeholder(tf.float32) x2 = tf.compat.v1.placeholder(tf.float32) x3 = tf.compat.v1.placeholder(tf.float.. 2019. 10. 23.
Tensorflow : background Tensorflow는 현재 머신러닝&딥러닝에 최적화되어 있으며, C++, Python에서 연동되는 라이브러리이다. Tensorflow에 Tensor는 선형대수학과 물리학에서, 텐서는 선형 관계를 나타내는 미분기하학의 대상이다. 기본적인 예는 스칼라곱과 선형 변환이 있으며 스칼라와 벡터 또한 해당한다. 텐서는 기저를 선택하여 다차원 배열로 나타낼 수 있으며, 기저를 바꾸는 변환 법칙이 존재한다. Tensorflow에서는 1차원 배열을 vector라고 표현하며, 2차원 배열을 array, 3차원 배열을 tensor라고 표현한다. 따라서 우리는 Tensorflow로 많은 것을 구현할 수 있다. 실생활에서 많이 등장하는 선형회귀, 비선형회귀와 물체인식, 강화학습 등등 우리가 살고 있는 3차원 공간을, tenso.. 2019. 10. 23.