CS 88

[ DB ] H2 DB를 사용하는 이유

H2 데이터베이스는 간단한 프로젝트나 테스트용으로 적합한 데이터베이스이다. H2의 장점은 Embeded모드를 지원하기 때문이다. Application과 DB의 통신 Oracle , MySQL, MariaDB의 작동원리는 위 그림과 같다. Application에서 DB에 read/write 하려면, DBMS와 맞는 JDBC 라이브러리를 설치하여 TCP/IP 통신을 해야한다. 이와같이, Application과 DBMS가 독립된 프로세스로 분리되어 있으면 DBMS는 많은 기능을 제공할 수 있다. 하지만 반대급부로 설정이 어려워지고 무거워진다. 개발자는 DB를 설치 및 설정해야 하고 프로세스를 유지해야 한다. 또한 App과 DBMS는 독립된 프로세스이기에 '통신' 과정이 수반된다. 그러므로 속도도 느리다. 실운..

CS/DB 2023.04.15

MacBook에서 한영키 및 대소문자 전환 윈도우랑 맞추기

MacOs에서 가장 적응 안 되는 부분은 한/영 및 대소문자 전환이다. Capslock을 누르면 한/영 전환이 되고 길게 누르면 대소문자 전환이 된다. 이런 방식은 우리에게 익숙치 않으니, 윈도우와 동일하게 바꾸어 보자. 버전정보 : macOS Ventura 13 1. 한/영 전환 '이전 입력 소스 선택'은 '한/영 전환'을 의미한다. 한/영 전환은 Ctrl + SpaceBar 로 설정되어 있다. 이를 right command( 한/영 전환키 위치 )로 바꾸려고 한다. 하지만 눌러보면 command키로 설정이 안 됨을 확인할 수 있다. 그래서 외부프로그램 도움을 받아야 한다. Karabiner-ElementsA powerful and stable keyboard customizer ..

CS 2023.03.31

[빅데이터] 애널리스틱스 (Analytics)

애널리틱스(Analytics) 실시간으로 유입되는 데이터를 분석해서 더 나은 결정을 내리는 것 아무리 데이터가 풍부해도 명확한 분석기법이 따르지 않으면 쉽고 빠른 의사결정을 내릴 수 없음 데이터 마이닝과 애널리틱스의 차이점 데이터 마이닝 : 데이터로부터 가치를 추출하고 결과를 분석하는 기술 애널리틱스 : 에측기능, 통계분석, 확률분석 등의 데이터 기반 의사결정을 가능케 함 마케팅 애널리틱스 증거기반 마케팅 결정과 차별화된 경쟁력 확보하여 시장의 트렌드를 읽어낼 수 있다. 고객 데이터 1. 업무상 데이터 : 이메일, 생일, 주소 같은 소셜미디어 가입시 필요한 데이터 2. 신체 데이터 : 키, 몸무게 3. 보안 데이터 : 소득 수준, 휴대폰 번호, 신용카드 4. 개인 상세 데이터 : 종교, 정치색, 신조, ..

CS 2021.12.17

[인공지능] MLP ( Multilayer Perceptron )

퍼셉트론은 선형적으로 구분 가능한 경우 유용하지만 그렇지 못하면 성능을 발휘하지 못한다. 이런 한계를 극복하고자 MLP(Multilayer Perceptron)가 등장했다. MLP ( Multilayer Perceptron ) 핵심 아이디어 1) 은닉층을 둔다. 2) 시그모이드(Sigmoid) 활성함수를 도입한다. 3) 오류 역전파(Back Propagation) 알고리즘을 사용한다. 1. 다층 퍼셉트론 ( 은닉층 ) 인공지능의 목적은 '특징'을 토대로 결과를 '예측' 및 '분류'하는 것이다. 기계학습은 '특징 추출'을 인간이 담당한다. 인간의 주관이 담긴 특징을 토대로 학습이 이루어지기에 인간의 사고 범위 내에서 학습이 이루어진다. 인공신경망은 특징추출을 직접한다. 스스로 이미지나 영상의 특징을 추출하..

CS/인공지능 2021.12.16

[인공지능] 퍼셉트론(Perceptron)

Warren McCulloch와 Walter Pitts는 1943년, 인공지능을 구현하기 위해 실제 인간의 뇌신경망을 구현하려는 시도를 한다. Frank Rosenblattt는 1957년, 최초로 수학적으로 정립된 신경망 모델을 제안하는데, 그것이 퍼셉트론(Perceptron)이다. 퍼셉트론 ( Perceptron ) 인간의 뉴런은 머리 부분에서 신호를 입력받고 처리한 뒤 꼬리 부분으로 출력한다. 이를 수학적으로 풀면 아래와 같다. 다양한 입력값을 받으면 가중치(w)를 곱한 후 모두 더한다(sum). 그리고 계단함수(f)의 변수로 sum을 넣어 f(sum)을 구한다. 계단 함수는 sum이 특정값(Θ)보다 크면 1이고 작으면 -1을 출력하는 함수이다. 내용이 어려우니 예를 통해 알아보자. EX) 개와 고양..

CS/인공지능 2021.12.14

[인공지능] 기계학습 ( 클러스터링 )

군집화 ( Clustering ) 주어진 데이터의 관계나 유사도만 의존하여 자연적으로 그룹화 하는 것 초기 군집(레이블)의 개수를 정하면 자연스럽게 군집화가 이루어짐 k-means 클러스터링 n개의 관측값을 k개의 클러스터로 분할하는 알고리즘 알고리즘 1. k개의 데이터를 랜덤하게 추출하여 중심(centroid)으로 삼는다. 2. 각 데이터가 k개의 중심 중 어떤 중심과 거리가 가까운지 계산한 후 레이블을 할당한다. 3. 레이블 할당이 완료되면 레이블 별 중심점을 계산하여 추출한다. 4. 2와3을 모든 데이터의 레이블(클러스터)이 바뀌지 않을 때까지 반복한다. k를 결정하는 방법 몇 개의 군집이 적절한지 알기 위해서 '팔꿈치 방법(elbow method)'를 사용한다. k를 1부터 증가시키며 클러스터링을..

CS/인공지능 2021.12.13

[인공지능] 기계학습 ( 분류기; Classifier )

분류기(Classifier)? 학습된 함수를 이용하여 데이터를 분류하는 프로그램 Support Vector Machine (SVM) 한 쪽 레이블에 치우치지 않고 여백을 최대로 하는 결정 경계(Decision Boundary)를 찾는 이진 분류기(Binary Classfier) - 서포트 벡터(Support Vector) : 결정경계로 부터 가장 가까이에 있는 학습데이터 kNN 알고리즘(k - Nearest Neibor) 기계학습알고리즘에서 가장 간단하고 이해하기 쉬움 새로 입력된 데이터의 특정 범주 안의 레이블 데이터의 개수에 따라 레이블을 판별 ( k의 값에 따라 레이블이 달라짐 ) 데이터 취득 -> 전처리 -> 특징 추출 -> 분류 및 회귀분석 ( 기계학습 알고리즘 )

CS/인공지능 2021.12.13

[인공지능] 기계학습 ( 경사하강알고리즘 )

[인공지능] 기계학습 (선형회귀) 지도학습이란? 과거의 정보를 가지고 모델을 만들어, 현재 데이터를 기반으로 미래를 예측하는 패턴을 추출하는 학습방법이다. ( 번호판 인식, 날씨 예측, 시장 예측 ) 지도학습에서 모델은 회 lordofkangs.tistory.com 지난 포스팅에서는 선형회귀를 다루어 보았다. 선형회귀는 특징공간(입력값, x)이 하나였다. (1차원) MNIST 인식하는 딥러닝 모델의 경우 784차원의 특징공간을 갖는다. 이처럼 특징공간이 무수히 클 때 손실함수의 최소값을 구하려면 편미분을 해야한다. 경사하강알고리즘 1) 목적 머신러닝의 목적은 ‘손실’을 줄이는 것이다. 손실이란, 실제 결과값과 예측값 사이의 차이를 의미한다. 주어진 데이터를 예측모델(퍼셉트론)에 입력했을 때, 출력된 예측..

CS/인공지능 2021.12.13

[인공지능] 기계학습 (선형회귀)

지도학습이란? 과거의 정보를 가지고 모델을 만들어, 현재 데이터를 기반으로 미래를 예측하는 패턴을 추출하는 학습방법이다. ( 번호판 인식, 날씨 예측, 시장 예측 ) 지도학습에서 모델은 회귀 모델(Regression)이라 부른다. '회귀'라는 단어는 어려우니, 그냥 단순히 입력값 X와 결과값 Y의 관계를 나타내는 모델이라 이해하면 된다. x와 y 좌표가 주어질 때, 이를 토대로 f(x)를 근사하는 것이 회귀(regresstion)이다. 회귀모델은 2차원 곡선에서 직선 혹은 곡선의 형태를 갖는다. 직선은 일차함수이고 곡선은 2차 이상의 고차함수이다. 선형회귀 선형회귀는 회귀모델이 1차 함수이다. f(x) = mx + b x에 따른 f(x)를 구하려면 기울기(m)과 절편(b)를 알아야 한다. 선형회귀는 m과..

CS/인공지능 2021.12.12

[인공지능] 기계학습

기계학습의 목적 if-else문 같은 조건문으로 설계가 불가능할만큼 경우의 수가 너무 많은 문제에 사용된다. 복잡한 데이터(비정형데이터)를 기반으로 결정을 내려야 하는 분야에 사용된다. 기계학습은 함수를 학습한다. 입력(x)가 들어올 때 어떤 결과(y)가 나올지 예측하는 방법이 기계학습이다. 기계학습의 종류 1) 지도학습(Supervised Learning) : 과거를 학습하여 미래를 예측 입력-출력 데이터 예시가 미리 주어짐. 예시를 기반으로 새로운 입력에 대한 출력을 예측하는 패턴을 추출 ( 번호판 인식, 날씨 예측, 시장 예측 ) 2) 비지도학습(Unsupervised Learning) : 현재를 분류하여 미래를 예측 예시 데이터가 없는 상태에서 데이..

CS/인공지능 2021.12.12