분류 전체보기117 [파이썬] in의 시간복잡도와 set의 자료구조에 대한 궁금증 딥러닝 기초 예제 연습을 위해 출처가 다른 같은 종류의 train 데이터셋과 validation 데이터셋을 준비했습니다. train에는 있는데 validation에는 없는 디렉토리를 확인하여 모두 제거하는 과정에서 파이썬 기초 문법인 for와 in에 대해 궁금증이 생겼습니다. (+ 작은 궁금증에서 파생된 두번째 궁금증도 있습니다.) 📌 궁금증 for와 if ... in ... 의 시간복잡도 차이 기본적으로 하나의 for는 O(N)의 시간 복잡도를 갖는다는 사실을 알고 있습니다. 그렇다면 if - in의 시간 복잡도는 어떻게 될까 궁금했습니다. 🎲 해결중... 파이썬 공식 문서(https://wiki.python.org/moin/TimeComplexity)에 의하면 s가 list인 경우의 in 연산자는 O.. 파이썬/심화 2024. 1. 12. [파이썬] [SSL: CERTIFICATE_VERIFY_FAILED] 해결방법 맥북Air M1를 사용하여 코랩에서 딥러닝 학습을 돌려보던 중 GPU 사용량이 초과되어 당분간 코랩 GPU를 사용할 수 없게 되었습니다. 코랩을 사용하지 못하는 동안 임시로 주피터 노트북으로 맥북 GPU를 사용하기로 했습니다. 하지만 주피터 노트북의 파이썬 가상환경에서 코드를 돌리던 중 문제가 발생하였습니다. 💥 문제상황 딥러닝 전이학습을 공부하기 위해 torchvision.models의 efficientnet_b4를 사용하던 중 pth파일을 웹에서 다운로드 받아오는 함수를 실행하는 과정에서 SSL에러가 발생. 에러코드 URLError: SSL 에러가 발생하는 이유는 '클라이언트의 브라우저가 SSL 인증서를 확인하지 못하거나 신뢰할 수 있다고 확인할 수 없기 때문' 이라고 합니다. macOS에서 해당 문.. 파이썬/심화 2024. 1. 11. [딥러닝] CNN(Convolutional Neural Networks) - 합성곱 인공 신경망 인공 신경망(Neural Networks)은 생물학적 뉴런을 기반으로 한 수학적 모델입니다. 인공 신경망으로는 다층 퍼셉트론 (Multilayer Perceptron, MLP) 합성곱 신경망 (Convolutional Neural Network, CNN) 순환 신경망 (Recurrent Neural Network, RNN) ... 등이 있습니다. 이번 포스팅에선 합성곱 인공 신경망인 CNN에 대해 알아보도록 하겠습니다! 1. CNN(Convolutional Neural Networks) CNN 합성곱 인경 신경망으로 Neural Networks에 Convolutional Layer를 더한 형태입니다. 주로 이미지를 분류하는 데 사용됩니다. 위 그림은 전형적인 CNN의 단계를 나타내는 그림입니다. CNN .. AI/딥러닝 2024. 1. 10. [딥러닝] 퍼셉트론(Perceptron) 인간의 뇌는 수십억 개의 뉴런을 가지고 있습니다. 뉴런이란 화학적, 전기적 신호를 처리하고 전달하는 연결된 뇌신경 세포입니다. 인공 신경망(Artificial Neural Network)은 생물학적 뉴런을 기반으로 한 수학적 모델입니다. 이번 포스팅에선 초기 인공 신경망인 퍼셉트론(Perceptron)에 대해 이야기해보겠습니다. 1. 퍼셉트론(Perceptron) 초기 인공 신경망인 퍼셉트론(Perceptron)은 다수의 입력으로부터 하나의 결과를 내보내는 알고리즘입니다. 초기 기계 학습 알고리즘 중 하나로 이진 분류 문제를 해결하기 위해 설계되었습니다. 논리 회귀 분류를 통해 단층 퍼셉트론과 다층 퍼셉트론에 대해 알아보도록 하겠습니다. 2. 논리 회귀(단층 퍼셉트론)로 AND문제 풀기 2-1. AND .. AI/딥러닝 2024. 1. 10. [딥러닝] 비선형 활성화 함수(Activation Functions) 비선형 활성화 함수(Activation Functions) 인공 신경망의 능력을 높이기 위해 은닉층을 계속해서 추가해야 합니다. 만약 선형 함수만으로 은닉층을 구성한다면 결국은 하나의 선형 함수로 표현되어집니다. 이는 은닉층이 하나인 것과 다름이 없습니다. 이를 해결하기 위해 비선형 활성화 함수를 사용합니다. 1. 시그모이드(Sigmoid) 로지스틱 회귀 모델에서 분류를 위해 사용되는 함수입니다. 시각화를 통해 함수의 특징을 알아봅시다. def sigmoid(x): return 1 / (1 + np.exp(-x)) x = np.arange(-5.0, 5.0, 0.1) y = sigmoid(x) plt.plot(x, y) plt.plot([0, 0], [1.0, 0.0], ':') plt.title('Si.. AI/딥러닝 2024. 1. 9. [PyTorch] 파이토치(PyTorch)로 논리 회귀 모델 만들기 2024.01.06 - [AI/딥러닝] - [딥러닝] 파이토치(Pytorch) [딥러닝] 파이토치(Pytorch) 1. 파이토치란? Tensorflow와 함께 머신러닝, 딥러닝에서 가장 널리 사용되는 프레임워크입니다. 초기에는 Torch라는 이름으로 Lua언어 기반으로 만들어졌으나, 파이썬 기반으로 변경한 것이 Pytorch입 caramelbottle.tistory.com 이번 포스팅은 파이토치(PyTorch)를 사용하여 논리 회귀 모델을 만들기 입니다. 논리 회귀 모델은 로지스틱 회귀(Logistic Regression) 모델과 같습니다. 이름은 회귀이지만 분류에 사용되는 모델입니다. 선형 회귀 공식으로부터 나왔기 때문에 논리 회귀라는 이름이 붙여졌다고 합니다. 로지스틱 회귀와 시그모이드(Sigmoid.. AI/PyTorch 2024. 1. 9. [PyTorch-예제] 기온에 따른 지면 온도 예측 - 선형 회귀 2024.01.08 - [AI/딥러닝] - [딥러닝] 파이토치(PyTorch)로 선형 회귀 모델 만들기 [딥러닝] 파이토치(PyTorch)로 선형 회귀 모델 만들기 2024.01.06 - [AI/딥러닝] - [딥러닝] 파이토치(Pytorch) [딥러닝] 파이토치(Pytorch) 1. 파이토치란? Tensorflow와 함께 머신러닝, 딥러닝에서 가장 널리 사용되는 프레임워크입니다. 초기에는 Torch라는 이름으 caramelbottle.tistory.com 이전 글에서 파이토치로 직접 만든 선형 회귀 모델을 학습하고 예측하는 것까지 해보았습니다. 직접 만든 데이터만으로 성능을 판단하기엔 부족하기 때문에 실제 데이터와 가까운 데이터셋을 통해 학습, 예측, 성능평가를 해보도록 하겠습니다. 1. temp.csv.. AI/PyTorch 2024. 1. 8. [PyTorch] 파이토치(PyTorch)로 선형 회귀 모델 만들기 2024.01.06 - [AI/딥러닝] - [딥러닝] 파이토치(Pytorch) [딥러닝] 파이토치(Pytorch) 1. 파이토치란? Tensorflow와 함께 머신러닝, 딥러닝에서 가장 널리 사용되는 프레임워크입니다. 초기에는 Torch라는 이름으로 Lua언어 기반으로 만들어졌으나, 파이썬 기반으로 변경한 것이 Pytorch입 caramelbottle.tistory.com 파이토치(PyTorch)의 기본 사용법을 배웠으니 이제 적용해봅시다. 적용 예제로 간단한 선형 회귀 모델을 만들어 보도록 하겠습니다. 1. 단항 선형 회귀 단항 선형 회귀란 한 개의 입력에 한 개의 출력이 나오는 구조입니다. $$y = ax + b$$ 기울기가 a이고 y절편이 b인 일차함수 형태랑 같습니다. 1-1. 라이브러리 필요한 .. AI/PyTorch 2024. 1. 8. [PyTorch] 파이토치(Pytorch) 1. 파이토치란? Tensorflow와 함께 머신러닝, 딥러닝에서 가장 널리 사용되는 프레임워크입니다. 초기에는 Torch라는 이름으로 Lua언어 기반으로 만들어졌으나, 파이썬 기반으로 변경한 것이 Pytorch입니다. 뉴욕대학교와 페이스북(메타)이 공동으로 개발하였고, 현재 가장 대중적인 머신러닝, 딥러닝 프레임워크 라고 하네요. 파이토치의 공식 홈페이지에서 관련된 다양한 정보를 얻으실 수 있습니다. https://pytorch.org/ PyTorch pytorch.org 2. 파이토치(Pytorch) 파이토치를 사용하기 위해서는 설치를 해야합니다. !pip3 install torch torchvision 코랩에는 기본적으로 설치가 되어있기 때문에 저와 같이 코랩을 사용하신다면 따로 설치하지 않으셔도 .. AI/PyTorch 2024. 1. 6. [머신러닝] 랜덤 포레스트(Random Forest) 랜덤 포레스트(Random Forest) 머신러닝에서 많이 사용되는 앙상블 기법중 하나이며, 결정 트리를 기반으로 함 학습을 통해 구성해 놓은 결정 트리로부터 분류 결과를 취합해서 결론을 얻는 방식 보통 오버피팅이 일어나는 의사결정트리를 사용함. 성능은 꽤 우수한 편이나 너무 많은 트리를 사용하면 오버피팅하는 경향이 있음 배깅(Bagging) 학습 기법을 사용함 RandomForestClassifier: 분류 RandomForestRegressor: 회귀 from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier() AI/머신러닝 2023. 12. 30. [머신러닝 - 예제] Hotel 데이터셋 - 랜덤 포레스트 1. Hotel 데이터셋 주제: 이 손님은 예약을 취소할까? 이번 데이터셋의 출처는 kaggle이다. 1-1. 데이터 분석 import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt hotel_df = pd.read_csv('/content/drive/MyDrive/KDT/머신러닝과 딥러닝/data/hotel.csv') # 요약 정보 hotel_df.info() output>> RangeIndex: 119390 entries, 0 to 119389 Data columns (total 32 columns): # Column Non-Null Count Dtype --- ------.. AI/머신러닝 - 예제 2023. 12. 29. [머신러닝] 스케일링(Scaling), 정규화(Normalization), 표준화(Standardization) 정규화(Normalization)와 표준화(Standardization)는 머신러닝에서 데이터 전처리 과정에 사용되는 기법이다. 데이터의 스케일을 조정하여 모델의 학습이나 예측에 미치는 영향을 최소화하고, 모델의 성능을 향상시키는 데 도움을 준다. 정규화(Normalization)와 표준화(Standardization)과정에서 데이터 스케일을 조정하는 것을 스케일링(Scaling)이라고 부른다 스케일링(Scaling) 데이터를 특정한 스케일로 통일하는 것 다차원의 값들을 비교 분석하기 쉽게 만들어주며, 자료의 오버플로우나 언더플로우를 방지하여 최적화 과정에서의 안정성 및 수렴 속도를 향항 데이터를 모델링하기 전에 거치는 것이 좋음(int, float) 스케일링의 종류 StandardScaler: 평균과 .. AI/머신러닝 2023. 12. 28. 이전 1 2 3 4 5 ··· 10 다음