no image
Window Function 예제
예제 leet code # 626 leet code # 1204 Leet Code #626. Exchange Seats [ 문제상황 ] id - 학생이름이 나열되어 있는 테이블에서 - (1,2) / (3,4) / ... 이웃된 학생끼리 id를 swap - 만약 학생 수가 홀수 명이라서 한 명이 남으면 그 학생은 id 유지 [ 해결방법 ] Sol 1 : CASE WHEN 으로 케이스 분류 접근법 : 1. id가 짝수면 (2로 나눈 나머지가 0) 기존 id에서 1을 빼고, 2. id가 홀수면 (2로 나눈 나머지가 1) 기존 id에서 1을 더함. 3. 그런데 전체 학생 수가 홀수일 때 마지막 홀수 번호 학생은 1을 더해주면 안되니까 subquery 이용해서 case 나눠주기. id = (SELECT COUNT..
2023.11.16
no image
차원 축소
1. 차원이 크면 생기는 문제점 차원이 커질수록 (1) 데이터 포인트들 간 거리가 크게 증가 (2) 데이터가 희소화됨 (sparse) 데이터 포인트들 간 거리에 기반한 머신러닝 알고리즘이 무력화됨 + 그리고 피처가 많을 경우 개별 피처간에 상관관계가 높아 선형 회귀 같은 모델에서는 다중 공선성 모델로 예측 성능이 저하될 가능성이 높음 2. 차원을 축소하면 장점 - 학습 데이터 크기를 줄여서 training 시간을 절약 - 불필요한 피처들을 줄여서 모델 성능 향상에 기여할 수 있음 (항상 향상되는건 아님) - 다차원의 데이터를 3차원 이하의 차원 축소를 하면 시각적으로 쉽게 데이터 패턴을 인지할 수 있음 3. 차원 축소의 목표 원본 데이터의 정보를 최대한 유지하면서 차원을 축소하기 4. 차원 축소 (1) ..
2023.10.29
SUB QUERY 예제
프로그래머스 LV 3. 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기 프로그래머스 LV 4 그룹별 조건에 맞는 식당 목록 출력하기 프로그래머스 LV 3. 즐겨찾기가 가장 많은 식당 정보 출력하기 모든 값이 NULL인 새로운 열 만들기 : SELECT NULL AS "열 이름"
2023.10.23
no image
Weight Initialization
We have seen how to construct a Neural Network architecture, and how to preprocess the data. Before we can begin to train the network we have to initialize its parameters. data가 well-normalized 되었다는 가정하에 학습되는 (최종) weight 또한 0을 중심으로 절반은 양수값, 절반은 음수값으로 정해질 것이라고 예측할 수 있을텐데, 그렇다면 다 동일하게 그냥 w=0으로 초기화하면 안되는가?의 질문이다. 모든 w가 동일하다면 ouput = wx로 모든 뉴런이 동일한 parameter update 과정을 겪게 될 것이고 이러면 뉴런을 여러 개 쌓아준 의미가 ..
2023.10.22
no image
Data Preprocessing & Augmentation
[ Zero-Centering & Normalization ] * why zero-centering? - recall how gradient was oriented inefficiently when all the inputs were positive either negative - classification becomes less sensitive to small changes in weights * zero-centering : substract the data by global mean * normalizing : divide the data by standard deviation [ PCA & Whitening ] * PCA : data becomes zero-centered AND axis-ali..
2023.10.22
no image
Activation Functions
# activation function의 역할 : 비선형성 구현 linear한 hidden layer 백만개 쌓아봤자 linear 백만개 합성하면 그대로 linear이기에... activation funciton을 이용하여 non-linearity가 가능하게, 모델이 더 복잡하게 만들어질 수 있도록 해준다. 활성화 함수의 종류로 여러 가지 (sigmoid / tanh / ReLU)등이 있는데 이들 중 어떤 function을 neural network model로 이용할지 결정해야 한다. Sigmoid Function σ(x) = 1/(1+exp(-x)) 위 그림에서 보이는것처럼 σ(x) 의 output은 (0,1)의 범위내로 출력된다. 초기 간단한 Neural Network 구현에서는 σ(x)의 outp..
2023.10.21
no image
SQL : timestamp 다루기
https://mode.com/blog/date-trunc-sql-timestamp-function-count-on/ date_trunc는 postgresql에 해당, my sql에서 가장 비슷한거는 extract임 DATE_TRUNC: SQL Timestamp Function Explained | Mode Learn how to use Date_Trunc in SQL to round a timestamp to the interval you need. Aggregate time-based data with this helpful function. Examples included. mode.com https://walkingfox.tistory.com/175 [MySQL] date_trunc 함수를 구현하..
2023.10.17
no image
Convolutional Neural Networks
Fully - Connected Layer - 모든 input 값과 output 값이 1:1로 연결됨 - Fully-Connected layer models relationships from every input value to every output value - 따라서, it is assumed that any output value can be affected by any input value 지금까지 배운 MLP(다층신경망)가, 가중치 W를 input X에 행렬곱 해주고 이를 활성화함수에 통과시키는 fully connected 구조였다. Convolution 연산 - fully connected 구조와 다르게 kernel을 input vector에서 움직이면서 linear model이 적용되는 연..
2023.10.14
no image
Nerual Networks and Backpropagation
1. Issues with Linear Classifiers 2. Features 3. Image Features domain knowledge를 이용해서 feature를 뽑아내고 ML Training을 할 수 있다면 그게 best 무조건 딥러닝 적용한다고 다 좋은게 아님 그래서 우리는 어떻게 저 이미지 원본 (original input X)로부터 label y (output)까지 한 번에 연결할 수 있을까? 그리고 학습을 바탕으로 파라미터를 업데이트해서 더 이미지를 잘 분류할 수 있는 classifier를 만들 수 있을까? ==> Neural Network의 도입 4. Neural Network 신경망의 가장 간단한 구조인 퍼셉트론에서 시작해서 XOR문제를 해결하기 위해 여러 개의 층을 연결함 MLP로..
2023.10.13