매직코드
반응형
article thumbnail
머신러닝 다중 분류 모델 성능평가에서 f1, recall, roc_auc 사용하기
ML&DL/study 2021. 12. 20. 11:28

다중 분류 모델을 만들었는데 성능 평가를 하려고 하니 에러가 떴다. ✅ f1_score Target is multiclass but average='binary'. Please choose another average setting, one of [None, 'micro', 'macro', 'weighted'] 에러 찾아보니 f1, recall, roc_auc 같은 경우에는 이진분류이 경우에 사용할 수 있다고 한다. 다중 분류 모델에서는 average라는 파라미터값을 설정해주면 사용할 수 있다. # 에러 f1 = round(f1_score(y_test, y_pred), ndigits=3) # 수정 f1 = round(f1_score(y_test, y_pred, average='micro'), ndigit..

article thumbnail
진동센서 데이터 신호처리 및 고장 예측 (푸리에변환 FFT)
ML&DL/Project 2021. 12. 13. 14:28

목표 : 진동센서로부터 기록되는 진동데이터를 통해 정상인 상태와 비정상 상태를 예측 방법 : 진동센서 데이터를 이용해 시간 영역 특징 추출과 주파수 변환을 이용해 고장 분류 모델 생성 1. 진동 센서 데이터 확인 진동이란 힘에 의해 어느 물체가 같은 모양으로 반복하여 흔들리는 움직임이다. 본 프로젝트에서는 회전기기에서 측정되는 진동 데이터를 이용하는데, 회전기기가 진동하는 원인은 원심력이다. 원심력을 구하는 공식은 다음과 같다. 이러한 진동 센서 데이터는 1초에 4096번 측정되었다. 4096번의 측정이 진행된 데이터를 1개 세트라고 했을 때, 본 프로젝트에서는 train 데이터로 2065세트, test 데이터로 200세트를 다루었다. 2. 진동 센서 데이터를 이용한 시간 영역 특징 추출 kinetic ..

article thumbnail
[코드] keras에서 제공하는 fashion mnist 이미지 분류모델 실습.쥬피터
ML&DL/Project 2021. 12. 10. 14:53

1. 라이브러리 # 필요한 라이브러리 불러오기 import numpy as np import tensorflow as tf import matplotlib.pyplot as plt from tensorflow import keras tf.random.set_seed(777) # for reproducibility print(tf.__version__) 2. 데이터 확인 fashion = tf.keras.datasets.fashion_mnist (train_images, train_labels), (test_images, test_labels) = fashion.load_data() class_names = ['T-shirt/top', 'Trouser', 'Pullover', 'Dress', 'Coat',..

article thumbnail
내가 하려고 정리한 빅데이터 프로젝트 주제 (= 데이터분석 프로젝트 주제 = 머신러닝 프로젝트 주제)
ML&DL/Project 2021. 10. 25. 13:22

이전에 학원에서 데이터 분석을 배울 때 포스팅했던 프로젝트 주제 회의 글이 있는데 이제는 어엇한 새내기 데이터분석가로 좀 더 의미있고 해볼만한 데이터 분석 주제를 가져와봤다. 프로젝트 회의하는 과정이 보고싶다면 아래 글을 참고하면 된다. [빅데이터 프로젝트] - 빅데이터 프로젝트 1. 주제 선정 회의 빅데이터 프로젝트 1. 주제 선정 회의 팀 프로젝트의 목표 1. 배운 기술 모두 활용 2. 마감시간에 촉박하지 않게 효율적, 가성비 있게 진행 3. 컴팩트하게! 4. 포트폴리오로 썼을 때 기업에서 솔깃해 할 만한 주제 선정 기업이 알고는 있 magicode.tistory.com 데이터세트 구하기 학생때 머신러닝프로젝트를 하면서 가장 어려움을 겪는 부분은 주어지는 공공데이터가 매우 제한적이라는 점이다. 공공데..

article thumbnail
[코드] 소프트맥스 회귀 (Softmax Regression) 다중 클래스 분류 실습.쥬피터
ML&DL/Project 2021. 9. 28. 09:20

소프트맥스 우리는 무언가를 분류할 때 맞다 아니다(True/False)만 분류하는 것이 아니라 상, 중, 하로 분류하기도 하고 동물의 사진을 보고 강아지, 고양이, 토끼, 앵무새 등으로 분류하기도 한다. 그렇게 클래스가 여러개인 경우에도 0~1로 표현해주는 시그모이드 함수를 이용해 클래스를 분류하도록 하는 메소드가 소프트맥스다. 예를 들어 동물들의 사진을 두고 예측해보라고 했을 때 소프트맥스는 해당 동물이 강아지일 확률 0.7, 고양이일 확률 0.2, 토끼일 확률 0.1로 표현하여 모든 값을 더했을 때 1이 되도록 값을 출력해준다. 소프트맥스로 확률값을 구한 이후에 '원-핫인코딩'을 이용해서 제일 큰 값을 1로 나머지 값은 0으로 변환한다. 결론적으로 이 동물은 강아지라고 결정하게된다. # 필요한 라이브..

article thumbnail
[코드] 로지스틱회귀(Logistic Regression)를 TensorFlow로 구현하기 실습.쥬피터
ML&DL/Project 2021. 9. 24. 11:38

로지스틱 회귀는 이름에는 회귀라고 붙어있지만 사실상 분류할 때 사용하는 모델이다. 분류와 회귀 알고리즘에 대해 알고싶다면 이전 포스팅을 참고하면 좋다. 2021.07.30 - [머신러닝] - 파이썬 머신러닝 04-3. 분류 알고리즘 (결정트리, 앙상블 보팅, 배깅) 2021.08.03 - [머신러닝] - 파이썬 머신러닝 04-4. 분류 알고리즘 (앙상블 부스팅) 2021.08.04 - [머신러닝] - 파이썬 머신러닝 05. 회귀 # 필요한 라이브러리 가져오기 및 버전확인 import numpy as np import matplotlib.pyplot as plt %matplotlib inline import tensorflow as tf tf.random.set_seed(777) # for reproduc..

article thumbnail
[코드] 단순회귀분석(Simple Linear Regression)을 TensorFlow로 구현하기 실습.쥬피터
ML&DL/Project 2021. 9. 13. 16:29

단순회기분석을 텐서플로우로 구현해보는 코드다. 나는 쥬피터랩에서 코드를 구현했다. 나도 데이터분석을 시작한 지 얼마 되지 않기 때문에 최대한 자세히 설명하려고 한다. #필요한 라이브러리 가져오기 import tensorflow as tf import numpy as np 라이브러리는 우리라 코드를 작성할 때 필요한 함수식을 모아둔 곳이라고 생각하면 좋다. 각각의 명령어에 기능들이 포함되어있으니 자주 사용하는 numpy와 pandas에는 어떤 기능이 있는지 알아두면 좋다. import numpy as np import 라이브러리 이름 as 사용할 약자 라이브러리는 기본적으로 import를 통해 불러오고, as를 통해 약자를 정해준다. 코드에서 numpy라고 다 적어줘도 상관은 없지만 빠른 코딩을 위해 np..

article thumbnail
04. 심층 신경망 네트워크 - 앤드류응(Andrew Ng)교수님 머신러닝/딥러닝 한글자막 공부하기
ML&DL/study 2021. 9. 10. 15:57

심층 신경망은 무엇인가? 우리는 로지스틱 회귀를 매우 얕은 모델(1층 신경망)이라고 하고 은닉층이 2개 이상 있는 경우 상대적으로 깊은 신경망이 있다고 한다. 이것이 심층 신경망이다. 지난 몇년동안, 기계학습 커뮤니티의 인공지능이 얕은 모델로는 할 수 없는 학습을 심층 신경망으로 가능하게 하는 함수가 있다는 것을 발견했다. 하지만 얼마나 깊은 신경망을 사용해야 하는지 미리 정확하게 예측하기는 어렵다. 심층 신경망을 바로 사용하기 보다는 보통 로지스틱회귀를 먼저 시도하고 결과값이 별로이면 두개의 은닉층을 가진 모델을 사용한다. 개발 설정 과정에서 은닉층을 또 다른 파라미터로 생각하고 다양한 값을 시도해 검증데이터에서 평가한다. 심층 신경망 표기법 4층의 신경망을 예시로 표기법을 알아본다. L : 네트워크의..

article thumbnail
03. 얕은 신경망 네트워크 - 앤드류응(Andrew Ng)교수님 머신러닝/딥러닝 한글자막 공부하기
ML&DL/study 2021. 9. 5. 00:15

신경망 여러개의 독립변수들의 경우의 수를 모두 고려하여 최종값을 도출하는 방법이다. 간단하게 설명하자면 로지스틱 회귀를 두번 반복한것이 신경망이다. 아래는 각 값에 대한 함수식을 간단하게 표시한 것으로 특성인x, 변수인 w, b를 이용해 z를 계산하고 z를 통해 손실함수에 필요한 a값을 계산, 최종적으로는 손실함수 L을 계산한다. 신경망은 아래와같이 여러 단계에 걸쳐 나타날 수 있고, 각 단계마다 위의 식을 반복하여 z값과 a값을 구하고 마지막 단계에서 손실함수 L을 계산한다. 로지스틱회귀에서는 위 식을 한번만 계산했지만 신경망에서는 여러번 계산한다. 신경망에서 도함수를 구하려면 로지스틱회귀에서 역방향 계산을 한 것 처럼 신경망에서도 역방향 계산을 통해 도함수를 구할 수 있다. 신경망 네트워크의 구성 입..

article thumbnail
02. 경사하강법 Gradient Descent - 앤드류 응(Andrew Ng)교수님 머신러닝/딥러닝 한글자막 공부하기
ML&DL/study 2021. 8. 13. 17:41

경사하강법 앤드류응 머신러닝 한글자막 - 경사하강법 경사하강법을 통해 비용함수의 매개변수 w와 b를 훈련세트에 학습시키는 방법을 알아본다. 비용함수 J(w, b) = 손실함수들의 평균 = 손실함수들의합 / 손실함수의 갯수 손실함수 = 각 훈련샘플에 대한 참값과 예측값을 비교하는 함수 비용함수가 훈련세트를 잘 예측하는지 측정하려면 비용함수의 최솟값을 만드는 매개변수 w와 b를 찾아야 한다. 이차함수에서 최솟값을 찾는것과 같은 수학적 원리를 가진다. 따라서 비용함수는 항상 볼록한 형태의 이차함수여야 한다. 비용함수의 그래프에서 임의의 점 하나를 골라서 경사하강법을 시작한다. 시작점에서 가장 기울기가 큰 방향으로 점이 이동하면서 결국에는 기울기가 0이 되는 지점을 찾는다. 점이 이동할 때 마다 w와b의 값이 ..

반응형