CS66 [MySQL 02] SQL 쿼리문 SQL Query MySQL 문법을 본격적으로 공부하기에 앞서 SQL 쿼리문의 꼭 알아야 할 점들을 몇 가지 짚고 넘어가자 1. SQL 쿼리문의 끝을 세미콜론;으로 종료해야 한다. 무조건 붙여야 하며, 이는 오라클과 MS SQL에서도 똑같다. 서버와 연결을 끊는 quit과 exit의 경우에만 제외. 2. 대소문자 구분 mysql은 일반적으로 대소문자를 구분하지 않는다. 전체 대문자 또는 전체 소문자로 하는게 읽기 쉽다. 3. SQL에서의 주석 한줄주석은 --가 기본이다. 공백이 한칸 필요하다. 또는 #를 써도 가능하다. 여러줄주석은 /* */ CS/Database 2022. 6. 15. [MySQL 01] 우분투 접속 문제 해결 접속 문제 해결 우분투에서 처음 mysql을 세팅하다 보면 생각처럼 접속이 잘 안되는 경우가 많다. 아래의 사항들을 하나씩 체크해보면 해결할 수 있다. 방화벽 문제의 경우 설치 후 접속이 되지 않는다면 방화벽 문제일 수 있다. 특히, 구글 클라우드 플랫폼(GCE: Google Compute Engine)을 사용할 경우 방화벽 룰을 설정해주어야 한다. GCE에서 VPC네트워크 들어가서 firewall 설정으로 Ingress 3306 포트를 여는 태그를 만든다. 0.0.0.0으로 설정하면 작동하지 않고, 0.0.0.0/0으로 설정해야 작동한다. VM Instance로 가서 해당 태그를 입력시킨다. mysql bind-adress 문제의 경우 접속허용 IP주소를 설정하는 작업이다. 기본 세팅이 127.0.0... CS/Database 2022. 6. 15. [백준 11729] 하노이 탑 옮기기(재귀) 문제해석 / 풀이 / 코드 하노이 탑 문제 시작 기둥, 보조 기둥, 목적 기둥 3개로 나눠 놓았을 때, 시작 기둥에 있는 n개의 원판을 목적 기둥으로 옮기는 게임이다. 조건 한번에 하나만 옮기고 큰 원판이 작은 원판 위에 있으면 안된다. 관찰 결국에는 가장 큰 n번째 원판이 목적기둥으로 이동해야 하고, 그 중간 과정에서, n-1개의 원판은 보조기둥에 위치한다. 즉 정리하면, n개의 원판을 시작->목적으로 옮기는 작업은 아래 세 과정으로 요약된다. n-1개의 원판을 시작->보조로 옮기기, 원판n을 시작->목적 옮기기, n-1개의 원판을 보조->목적으로 옮기기 수식으로 이해 f(n)을 n개의 탑을 옮기는 데 필요한 이동횟수라 하자. 위 관찰 과정에서 확인한대로 식을 정리하면, f(n) = 2*f(n-1) + 1이 된다. n-1개의 원.. CS/Algorithm 2022. 6. 15. [백준 4948] 베르트랑 공준(소수 구하기) 이해하기 / 코드 소수 구하기 소수의 정의 자연수 n에 대하여 소수는 1과 자기자신만을 약수로 갖는다. 또한 1은 소수가 아니다. 1. 기본 방법 소수는 2 이상, n-1 이하의 수로 나누어떨어지므로 2부터 n-1까지 나눠서 0이 나오면 소수로 판별할 수 있다. 예를 들면 아래와 같이 구할 수 있다. #include int main() { int n; scanf("%d", &n); // n은 소수입니까? if(n==1) { printf("소수가 아님"); return 0; } for(int i=2;i CS/Algorithm 2022. 6. 13. [백준 2447] 별찍기(재귀) 문제이해 / 풀이 / 코드 접근방법 기본적으로 입력 N 사이즈만큼 문양이 찍힌다는것을 알아야한다. 즉 N==27이면 가로27, 세로27 사이즈의 문양이 찍힌다. N회 반복의 for문을 두 번 중첩하고, 개행문자를 찍어줘야 하는것이 문제의 출발점이다. 별 찍는 함수에는 좌표와 입력값 N을 같이 넘긴다. 함수에서는 divide-and-conquer 방법을 사용하여 별을 찍을지, 말지를 결정한다. n==1일 때까지 재귀호출을 하며 %3 연산을 취했을 때 i와 j가 1이 되는 경우에만 공백을 찍고, 이 조건에 걸리지 않았을 경우인데 n==1일 경우에는 별을 찍고 끝낸다. 소스코드 #include void recur(int i, int j, int n) { if((i/n)%3==1 && (j/n)%3==1) // 이 조건에 해당하는 부분을.. CS/Algorithm 2022. 6. 13. [MySQL 00] 우분투 셋업부터 시작하기 우분투에서 MySQL 시작하기 윈도우에서 workbench나 phpmyadmin같은 GUI툴을 이용하면 직관적이고 편하게 작업할 수 있지만,, 뭔가 근본(?)을 챙기며 공부하고싶은 나는 우분투의 콘솔에서 쿼리를 직접 공부하기로 했다. 초기 셋업과정 처음 우분투를 설치한 후 update와 upgrade는 필수이고, php를 이용하려면 php-mysqli를 같이 설치해준다. sudo apt udpate sudo apt upgrade sudo apt install mysql-server sudo apt install php-mysqli 설치가 완료되면 앞으로 부팅 시 mysql이 자동으로 실행된다. 이는 $ sudo systemctl status mysql.service 명령어 입력 시 enabled가 출력되.. CS/Database 2022. 6. 7. GPU와 그래픽카드의 이해 개요 영어로 VGA, Video Graphics Array라 한다. 먼저 VGA(그래픽카드)와 GPU가 다르다는것부터 알아야한다. GPU는 그래픽카드에 들어가는 작은 반도체이고, 여기에 PCB기판과 램 등 GPU가 동작할 수 있는 부품들이 합쳐진 카드를 그래픽카드라 한다. GPU는 CPU와 다르게 코어가 굉장히 많다. CPU가 듀얼코어, 쿼드코어, 옥타코어 등으로 10개 미만의 코어를 가질 때 GPU는 수백~수천개의 코어를 가지고 연산한다. GTX 1060 3g 기준으로 코어의 수는 1152개이며, 이 코어의 수는 그래픽카드 메모리(VRAM), 업그레이드(Ti, Super)에 따라 달라질 수 있다. 코어를 스트림 프로세서라고도 한다. CPU가 적은 수의 코어로 복잡한 연산을 처리할 때, GPU는 많.. CS 2022. 1. 19. 서비스 형태(as-a-Service)에 따른 호스팅 서비스 분류 온프레미스(on-premise): 전통적인 서버실 방식클라우드 나오기 전 기업들이 데이터를 보관하는 전통적인 방식이다.직접 private 데이터센터 서버실을 둔다고 볼 수 있다.실물을 눈으로 볼 수 있으니 더 안정적이라고 여겨진다.클라우드 컴퓨팅 서비스와 같이 얘기할 때 'Private Cloud'라고도 얘기한다. 초기자금이 많이들고, 유지보수 인력이 필요해 비용이 많이 든다.구입부터 세팅까지 클라우드 대비 모든 부분을 직접 관리해야하므로 필요한 지식이 많다.인프라를 직접 관리할 전문인력이 필요하다.클라우드는 인프라에 관련된 문제해결을 그사람들이 알아서 한다. 장점: 보안적으로는 클라우드보다 안전하다고 보는 견해도 있지만, 숙련된 전문인력이 관리하는 클라우드보다 더 나을지는 미지수이다. 온전한 데이터와 .. CS 2022. 1. 18. 깃 인증오류: 토큰 생성부터 캐싱까지 - 문제 정의git을 쓰는데 password기반의 작업을 하고 있었다면, 2021년 8월 13일부터는 아래와 같은 에러를 보게 된다특히 필자는 git clone 명령에서 이런 문제가 생겼다 "remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/for more infomations." 이는 2020년 7월부터 공지된 사항으로, 토큰기반의 인증 사용으로 바꾸기 위.. CS 2022. 1. 4. 행렬에서 Rank란 무엇인가 (가우스 소거법; 사다리꼴행렬) - 포스팅 목적 행렬에서의 rank 이해 선형대수에서 rank 1 array에 대한 이해 사다기꼴행렬에 대한 이해 가우스 소거법에 대한 이해 개요: 연립방정식과 행렬 행렬을 연립방정식과 연관지어 생각하면 행렬에 실수배를 하거나 위치를 바꾸는 등의 기본행연산을 이해하기 쉽다 예시 연립방정식 x + 2y + z = 5 2x + 4y -3z = 0 x + 2y -z = 1 행렬으로 전환 \begin{pmatrix} 1 & 2 & 1 & 5 \\ 2 & 4 & -3 & 0 \\ 1 & 2 & -1 & 1 \end{pmatrix} 각 방정식에 상수배를 하든, 연립방정식의 위치를 바꾸든 상관 없다는 건 이미 알고있다 즉 행렬에도 똑같이 실수배, 행의 위치 바꾸기가 적용될 수 있다 용어정의 이때 매트릭스에서 각 행의.. CS/선형대수학 2022. 1. 4. 8. Logistic Regression - 정리 파라미터 w와 b에 대한 비용함수 Cost function \( \mathcal{J}(w,b) \) 는, $$ \mathcal{J}(w,b) = \frac{1}{m} \sum_{i=1}^{m} \mathcal{L}(a^{(i)}, y^{(i)}) $$ 전편에서 \( \frac{dL}{dw} \) 를 계산하는 법을 알았으니, 양변에 \( \frac{d}{dw} \)를 씌우면 된다 $$ \frac{d}{dw} \mathcal{J} = \frac{1}{m} \sum_{i=1}^{m} \frac{d}{dw} \mathcal{L}(a^{(i)}, y^{(i)}) $$ i=1부터 m까지 계산한다; $$ J=0; \ \ dw=0;\ \ db=0 $$ $$ z^{i} = wx^{i}+b $$ $$ a^{i} .. CS/Deep learning 2022. 1. 3. 7. backpropagation 개념 1. 로스함수를 a로 미분한 값, \(\frac{dL}{da}\) 구하기 간단한 예제로 backward propagation이 작동하는 원리에 대해서 정리해보자 주어진 이미지 데이터 x에 대해 고양이인지 아닌지 1, 0으로 판단하는 모델에 대해서 얘기해보자 즉 이 데이터는 인풋 x와 레이블 y 페어로 (x, y) 이루어져있다고 하자 예측모델의 결과값은 \( 0 \le \hat{y} \le 1\)이고, 편의상 \( \hat{y} = a \)라고 하자 먼저 두개의 파라미터 w, b를 써서 회귀모델의 방정식을 z = wx + b로 놓고 아웃풋을 확률값으로 맞추기 위해 logistic function을 적용한다 $$ \sigma (z) = \sigma (wx+b) $$ 이때 logistic function은 \.. CS/Deep learning 2021. 12. 24. 이전 1 2 3 4 5 6 다음