전체 글
Exploration 2. Iris의 세 가지 품종 분류해볼 수 있겠어요? 1. Iris의 세 가지 품종, 분류해 볼까요? 붓꽃 분류 문제 2. 데이터 다루기 0. Iris plants 데이터 셋 확인 목표 → 꽃잎, 꽃받침의 길이와 폭 정보를 입력했을 때 붓꽃의 품종을 출력 1. 데이터 준비 from sklearn.datasets import load_iris iris = load_iris() print(dir(iris)) # dir()는 객체가 어떤 변수와 메서드를 가지고 있는지 나열함 # >>> ['DESCR', 'data', 'data_module', 'feature_names', 'filename', 'frame', 'target', 'target_names'] iris.key() # iris에..
3-0. Intro 우리는 앞 장에서 아무리 복잡한 처리도 다층 퍼셉트론을 활용한다면 구현할 수 있다고 배웠다. 하지만 우리는 그 동안 퍼셉트론을 구현할 때 가중치, 편향 값을 임의로 우리가 정해주었다. 이번장에서 배울 신경망은 적절한 가중치, 편향을 알아서 정해준다. 이러한 자동으로 학습하는 능력을 가진 신경망의 성질은 앞으로 매우 중요하다. 그러니 후딱 시작하자!! 3-1. 퍼셉트론에서 신경망 먼저 신경망이 어떻게 생겼는지 살펴 보자. 신경망은 입력층, 은닉층, 출력층으로 구성되며 은닉층은 입력층, 출력층과 달리 사람에게 보이지 않는 층을 말한다. 단순히 그림만 봤을 때는 기존 퍼셉트론과 다를 것이 없어보인다. 퍼셉트론 네트워크에서 편향 표현 기존 퍼셉트론 그림에서는 편향을 표현하지 않았지만 위의 그..
2-1. 퍼셉트론이란? 💡 퍼셉트론이란? 다수의 신호를 입력으로 받아 하나의 신호를 출력하는 인공 뉴런 그림의 원은 뉴런 혹은 노드라고 불른다. x1,x2는 입력값, w1,w2는 가중치를 나타낸다. 💡 여기서 가중치란? 각 신호가 결과에 주는 영향력을 조절하는 역할을 하며 전류에서 말하는 저항과 비슷한 역할을 한다. 위에 퍼셉트론 이미지를 수식화 하면 아래와 같다. 수식을 보면 각각의 입력값 (x1, x2)는 가중치 (w1, w2)를 곱해 최종적으로 y에 전달된다. 이후 y에서는 전달받은 값들을 더하고 그 값이 임계값 보다 작으면 0을 출력하고 크면 1을 출력하게 된다. 💡 여기서 임계값이란? 뉴런들로 부터 전달받은 신호의 총합을 비교할 때 쓰는 값 2-2. 단순한 논리 회로 AND, NAND, OR게이..
저번 학기 방학 때 친구들과 딥러닝 스터디를 하면서 읽었던 책인데 그때 어렵다고 느껴 대충봤던거 같아 다시 천천히 보면서 블로그에 정리해 보려고 한다. 사실 지금 chapter 5까지 읽은 상태지만 정리를 해야지해야지 하다가 이제 정리를 시작한다... ^^ 나는 파이썬에 대한 지식이 어느정도 있기 때문에 chapter 1. 헬로파이썬은 생략하고 chapter 2. 퍼셉트론 부터 시작할 계획이다. 이해한 내용을 위주로 정리를 하고 마크다운형식으로 poting을 할 계획이다. (계획이 변경 될 수 도 있음) (첫 포스팅부터 계획변경 ㅋㅋ:D) 그럼 시작!!!! 출처: 사이토 고키, 『밑바닥부터 시작하는 딥러닝』, 한빛미디어(2017)
1. 파이썬으로 그래프를 그린다는 건? python 시각화 도구 Matplotlib Seaborn Pandas 2. 간단한 그래프 그리기 matplotlib을 이용한 간단한 막대 그래프 import matplotlib.pyplot as plt %matplotlib inline # 매직메소드 # 그래프 데이터 subject = ['English', 'Math', 'Korean', 'Science', 'Computer'] points = [40, 90, 50, 60, 100] # 축 그리기 fig = plt.figure() # 도화지 ax1 = fig.add_subplot(1,1,1) # 그래프 그리기 ax1.bar(subject, points) # 라벨, 타이틀 달기 plt.xlabel('Subject')..
Exploration 1. 인공지능과 가위바위보 하기 1-1 . 인공지능과 가위바위보 하기 사전 순서 💡 데이터 준비 → 딥러닝 네트워크 설계 → 학습 → 테스트(평가) 1-2. 데이터를 준비하자! mnist data import tensorflow as tf from tensorflow import keras import numpy as np import matplotlib.pyplot as plt import os print(tf.__version__) # Tensorflow의 버전을 출력 mnist = keras.datasets.mnist # MNIST 데이터를 로드. 다운로드하지 않았다면 다운로드까지 자동으로 진행됩니다. (x_train, y_train), (x_test, y_test) = mni..
Fundamental 10 다양한 데이터 전처리 기법 10-1. 들어가며 데이터 전처리 💡 데이터 분석의 8할은 데이터 전처리이다. 데이터 준비 import pandas as pd import numpy as np import matplotlib.pyplot as plt import os csv_file_path = os.getenv('HOME')+'/aiffel/data_preprocess/data/trade.csv' trade = pd.read_csv(csv_file_path) trade.head() 10-2. 결측치(Missing Data) 결측치를 처리하는 방법 결측치가 있는 데이터를 제거 결측치를 어떤 값으로 대체 결측치 처리 전 결측치 확인 print('컬럼별 결측치 개수') len(trade..
Fundamental 9 Data 어떻게 표현하면 좋을까? 배열(array)과 표(table) 1. 배열은 가까이에~ 기본 통계 데이터를 계산해 볼까? 평균 계산하기 ✅ 평균이란? → 숫자들의 합을 총 숫자의 개수로 나눈 값 total = 0 count = 0 numbers = input("Enter a number : ( to quit)") while numbers != "": try: x = float(numbers) count += 1 total = total + x except ValueError: print('NOT a number! Ignored..') numbers = input("Enter a number : ( to quit)") avg = total / count print("\n av..
Fundamental 8 파이썬 잘하는 척 해보자 1. 파이썬 어디까지 써 봤니?! 프로그래밍 언어의 중요성은 크게 퍼포먼스와 생산성으로 나뉜다. 퍼포먼스 → 코드를 실행시켰을시 얼마나 빨리 수행되는가 생산성 → 얼마나 코드를 간단히 짤수 있는가 파이선 장점 높은 생산성 → 이미 구현되어 있는 많은 패키지들을 활용하여 높은 생산성을 낼수 있음 코드의 간결함 빠른 개발 속도 2. 파이썬을 더 잘 사용해 보자! 2.1 For문 잘 써보기 enumerate 사용 my_list = ['a','b','c','d'] for i, value in enumerate(my_list): print("순번 : ", i, " , 값 : ", value) # 리스트의 값 뿐만 아니라 i라는 순서도 함께 알 수 있다. list ..



