Machine Learning
-
3D Gaussian splatting - SuGaR , dockerfile 작성Machine Learning 2024. 8. 18. 20:39
깃허브 과정을 따라가면 쉽게 설치가능하다.조금 더 쉽게 하기 위해 도커파일을 작성했다. # Use the base image with PyTorch and CUDA supportFROM nvidia/cuda:11.8.0-devel-ubuntu22.04ENV DEBIAN_FRONTEND=noninteractiveSHELL ["/bin/bash", "--login", "-c"]COPY --from=continuumio/miniconda3:23.10.0-1 /opt/conda /opt/condaENV PATH=/opt/conda/bin:$PATHENV TORCH_CUDA_ARCH_LIST="3.5;5.0;6.0;6.1;7.0;7.5;8.0;8.6+PTX"# Update and install tzdata se..
-
[3dgs] open3d로 point cloud 시각화Machine Learning 2024. 7. 4. 11:34
https://www.open3d.org/docs/release/tutorial/geometry/surface_reconstruction.html Surface reconstruction - Open3D 0.18.0 documentationPrevious Octreewww.open3d.orghttps://www.open3d.org/docs/latest/tutorial/Basic/pointcloud.html#DBSCAN-clustering Point Cloud — Open3D latest (664eff5) documentationThis tutorial demonstrates basic usage of a point cloud. Paint point cloud print("Paint chair") chai..
-
Logistic regression, cross entropyMachine Learning 2023. 12. 3. 21:30
https://parallel-bromine-355.notion.site/Logistic-regression-cross-entropy-aae15ded123c47aba7e8d3a02aec304a?pvs=4 Logistic regression, cross entropy linear regression과 logistic regression의 차이 parallel-bromine-355.notion.site 노션에 정리했다.
-
Batch Normalization (배치정규화)Machine Learning 2023. 12. 3. 20:51
* BN이 효과적인 이유 공변량 시프트(covariate shift) 문제 데이터셋 X를 레이블 y에 매핑하도록 모델을 학습한 후 X의 분포가 변화한 경우를 공변량 시프트라고 한다. 공변량 시프트가 발생하면 모델을 다시 학습해야 할 수도 있다. 예를 들면, 흰색 고양이로 치워친 훈련 데이터로 학습된 고양이 분류기에 흰색이 아닌 다른 색 고양이 이미지를 분류할 때 좋은 성능이 나오지 않는 경우로, 이러한 입력데이터 분포의 변화를 공변량 시프트라고 한다. 신경망에서 발생하는 공변량 시프트 4개의 층을 가진 MLP를 예로 들면, L3의 관점에서 L1의 파라미터(w,b) 변화에 의해 L3층의 입력에 해당하는 L2층의 출력값들이 변화하고 있다. 즉, 은닉층 내부에서 공변량 시프트가 발생하는 것이다. 배치 정규화의..
-
[NumPy] type()과 dtype, np.sum()과 np.multiply()Machine Learning/numpy & pandas & maplotlib 2023. 10. 3. 17:41
* type() vs dtype type() 함수는 데이터타입을 알려주고, dtype은 ndarray의 attribute이다. * np.sum()과 np.multiply() np.multiply()는 두 개의 인자를 받아서 두 인자를 곱해준다.(np.float64, np.int 등, np.ndarray의 타입을 받을 수 있다.) 인자가 array이면 product-wise를 수행하고, return값의 type으로 np.ndarray를 반환한다. np.sum()는 np.ndarray의 타입인 하나의 배열을 받아서, 내부 합을 계산한다. axis값을 주어서 return값이 np.ndarray이면 return의 type()은 당연히, np.ndarray가 되고, axis값을 따로 주지 않으면, 전체 내부 합을..
-
[NumPy] np.pad에 대한 이해Machine Learning/numpy & pandas & maplotlib 2023. 10. 3. 01:15
* np.pad numpy에 padding을 적용하는 메서드이다. z축, y축, x축 axis에 대한 이해가 필요하다. (axis에 대한 이해) numpy.pad(array, pad_width, mode='constant', **kwargs) 1. array array는 padding을 적용할 배열 2. pad_width pad_width는 ((before_1, after_1), ... (before_N, after_N))의 형태이다. (before,after)는 해당 배열의 해당 축에 패딩을 (앞,뒤)로 덧붙이는 패딩의 갯수를 의미한다. 예를들면, pad_width가 ((0,0), (3,3), (3,3),(0,0))라고 할 때 각각, m(샘플 수)축, z축, y축, x축의 (앞, 뒤)를 의미한다. m축..
-
[DL] RegularizationMachine Learning 2023. 9. 12. 12:16
* Regularization 학습데이터에만 잘 적용되는 것이 아니라 test data에도 잘 동작되도록 만들어주기 위함(genral performance를 높여줌) 1. Early stopping validation error를 활용해서 stop training point를 찾는다. 2. Parameter norm penalty neural network가 만들어내는 함수의 공간속에서 부드러운 함수로 만들고자 한다. 부드러운 함수일수록 generalize performance가 높을 것이라는 가정아래, 파라미터의 크기가 너무 커지지 않게 하는 것. 3. Data augmentation 데이터셋을 늘리는 방법. label preserving augmentaion : label이 바뀌지 않는 한도내에서 이..
-
[DL] Gradient Descent MethodsMachine Learning 2023. 9. 12. 11:37
* stochastic gradient descent 하나의 샘플로 gradient를 계산한다. * Mini-batch gradient descent a subset of data(샘플 일부)로 gradient를 계산한다. large batch methods는 sharp minimizers로 수렴되는 경향이 있고, small-batch methods는 consistently으로 flat minimizers로 수렴된다. 일반적으로 flat minimizers가 generalize performance가 좋다. * Batch gradient descent 전체 데이터(샘플 전체)로 gradient를 계산한다. * Gradient Descent Methods 1. sotchastic gradient desce..