🤖AI (32) 썸네일형 리스트형 Regression task의 Loss: L1, L2, Huber, Log Cosh Loss 각 Loss의 장단점 및 특징1. MSE Loss (L2 Loss)$$L2\ Loss = \frac{1}{N} \sum_{i=1}^{N} (y_i - \hat{y}_i)^2$$- 장점: Convergence(수렴)가 더 빠르다.- b/c 실제값과 치아기 크면 해당 Loss 값은 더욱 크다. (MSE은 Quadratic 하므로)- 단점: Anomaly (Outlier)에 대해서 더 민감하다. 2. MAE Loss (L1 Loss)$$L1\ Loss = \frac{1}{N} \sum_{i=1}^{N} |y_i - \hat{y}_i|$$- 장점: MSE와 비교했을 때 Anomaly에 대해서 비교적 robust하다.- 단점: 0에서 미분가능하지 않다. MSE보다 초반 학습이 느릴 수 있다. 3. Huber Lo.. 머신러닝 엔지니어란? (vs. 데이터 사이언티스트) MLE(ML Engineer) ml 모델을 제품에 맞게 개발 - 적용 - 모니터링을 다 하는 사람 모델 개발을 위해 python을 활용 mlops를 위해 kubeflow 활용 제품에 직접 붙이고 수정하기 위해 java, scala, kotlin도 다룸 요즘은 ml engineer라는 직함이 mlops의 절반 정도를 포함해가는 거 같다. Machine Learning Operations (MLOps): Overview, Definition, and Architecture논문에 나오는 직업군별 역할을 보면 ML Engineer == MLOps Engineer로 정의하고 모든 domain을 다루는 직업으로 정의한다. DS(Data Scientist) 문제 정의 및 해결을 위한 이니셔티브를 갖고 있음. 지속적으.. 머신러닝 엔지니어 커리어 엔지니어링이란? 과학기술로 사람들의 문제를 해결하고 가치를 만들어 내는 일 - 가치: 돈, 고객 만족, 사회적 가치 소 잡는 칼로 닭 잡는 경우 머신러닝이라는 기술은 소 잡는 칼이다. 작은 문제를 푸는데 머신러닝을 사용하면 안된다. 머신러닝 문제를 풀 때 문제의 가치를 판단해라. 문제가 머신러닝(비싼 칼)로 풀었을 때 이를 상회하는 가치를 만들어내는 확신이 있어야 의미 있는 프로젝트가 된다. 가치 있는 일(=돈 되는 일)에 기술을 사용해야 한다. 커리어를 위한 회사 선택 기준 1. 회사의 핵심 역량이 머신러닝인가? = 회사가 머신러닝으로 돈을 벌고 있나? 2. 핵심 모델을 지속적으로 개선할 데이터가 있나? 3. 회사는 머신러닝 엔지니어링의 가치를 인식하고 있는가? 기술이 서비스에 적용되지 않는다면 가치 .. (04강) Semantic Segmentation 네이버 부스트캠프 AI Tech 2기 Level2 Ustage 6주차1강과 3강의 Image classification은 사진이 주어졌을 때 사진 전체를 카테고리로 분류한다. 반면 Semantic Segmentation은 사진이 주어졌을 때 사진 내 각 픽셀을 카테고리로 분류하는 task이다. 즉, 하나의 사진이 아닌, 사진에 있는 모든 물체들을 분류한다는 것이다. 본 강의에서는 먼저 최초의 end-to-end segmentation 모델 FCN을 시작으로 Hypercolumn 모델을 배운다. 다음으로 segmentation의 breakthrough라고 볼 수 있는 UNet 모델에 대해 공부하고 Pytorch 코드 실습을 한다. 끝으로 최근까지 좋은 성능을 보이고 있는 DeepLab v3에 대해 배운다... Quickdraw dataset Quickdraw dataset은 다양한 물체에 대한 간단한 sketch로 구성된 데이터셋이다. 데이터셋 홈페이지에서 예시 이미지들을 확인할 수 있다. [머신러닝] SVM (Support Vector Machine) SVM이란 주어진 데이터가 어느 카테고리에 속할지 판단하는 이진 선형 분류 모델이다. Margin이란 선과 가장 가까운 양 옆 데이터와의 거리이다. 선과 가장 가까운 포인트를 서포트 벡터(Support Vector)라고 한다. 즉, Margin은 구분하는 선과 서포트 벡터와의 거리를 의미한다. 또한 이렇게 두 데이터를 구분하는 선을 Decision Boundary라고 한다. 각 서포트 벡터와의 Margin을 최대화하는 방향으로 Decision Boundary를 잡아야 한다. 양 옆 서포트 벡터와의 Margin을 최대화하면 robustness도 최대화가 된다. robust하다는 것은 아웃라이어(outlier)의 영향을 받지 않는다는 뜻이다. kernel 저차원 공간(low dimensional space).. [머신러닝] KNN (K-Nearest Neighbor) KNN KNN은 지도 학습 알고리즘 중 하나이다. 어떤 데이터가 주어지면 그 주변(이웃)의 데이터를 살펴본 뒤 더 많은 데이터가 포함되어 있는 범주로 분류한다. K의 default값은 5이다. 가장 가까운 주변 5개 데이터를 기반으로 분류한다는 것이다. 일반적으로 K는 홀수를 사용한다. 짝수일 경우 동점이 되어 하나의 결과를 도출할 수 없기 때문이다. Lazy Model KNN의 특징은 훈련이 따로 필요 없다는 것이다. 다른 모델들은 clf.fit(x_train, y_train)의 코드를 통해 훈련시킨다. 즉 훈련데이터를 기반으로 모델을 만들고 테스트 데이터로 테스트를 하는 방식이다. 하지만 KNN은 훈련이 따로 필요 없다. 그냥 훈련 데이터를 저장하는게 훈련의 전부이다. real-time 예측이 이루어.. [딥러닝] RNN 이미지 인식에 CNN이 있다면, 자연어 인식에는 순환 신경망이라고 하는 RNN이 있다.RNN은 상태가 고정된 데이터를 처리하는 다른 신경망과는 달리 자연어 처리나 음성 인식처럼 순서가 있는 데이터를 처리하는 데 강점을 가진 신경망이다.앞이나 뒤의 정보에 따라 전체의 의미가 달라지거나, 앞의 정보로 다음에 나올 정보를 추측하려는 경우에 RNN을 사용하면 성능 좋은 프로그램을 만들 수 있다. 앞 단계에서 학습한 결과를 다음 단계의 학습에 이용한다. 이런 구조로 인해 학습 데이터를 단계별로 구분하여 입력한다. 1. 시퀀스 데이터소리, 문자열, 주가 등의 데이터를 시퀀스(Sequence) 데이터로 분류한다.시계열(time-series) 데이터는 시간 순서에 따라 나열된 데이터로 시퀀스 데이터에 속한다.시퀀스 .. 이전 1 2 3 4 다음