이 영역을 누르면 첫 페이지로 이동
컴01기 블로그의 첫 페이지로 이동

컴01기

페이지 맨 위로 올라가기

컴01기

힝입니다.

[혼공단 5기] 혼공머신 1주차 학습 인증

  • 2021.01.31 20:29
  • etc/혼공단

기본 미션 : 코랩 실습 화면 인증샷

완료!

선택 미션 : 2-1절 문제 풀고 인증샷

완료!

 

+ 혼자 공부하면서 정리한 내용들

matplotlib

matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, ...)

Parameters

x, y : float or array-like, shape (n,)

- x축 값, y축 값

** array-like : np.array가 배열로 interpret 할 수 있는 python object

s : float or array-like, shape(n,), optional

- 마커의 사이즈를 지정하는 매개변수

매개변수 s

c : array-like or list of colors or color, optional

- 마커의 색깔을 지정하는 매개변수

- 16진수로 표현한 RGB 값 (ex. '#0080FF')

- 색깔 코드 (ex. 'r', 'g', 'b', 'c', 'm', 'y', 'k', 'w')

- 지정하지 않으면 10개의 default 색깔을 사용해 그래프를 그린다.

- default : cycler('color',

['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])

 

marker : default : 'o' (원)

- 마커 스타일을 지정하는 매개변수

- 'v', '^', '*', '1', '2', '3', 'p', 'P', 'h', 'H', '+', 'x' 등

- 다양한 마커 :  matplotlib.org/api/markers_api.html#module-matplotlib.markers

 

참고 : matplotlib.org/api/_as_gen/matplotlib.pyplot.scatter.html?highlight=scatter#matplotlib.pyplot.scatter

 

matplotlib.pyplot.scatter — Matplotlib 3.3.3 documentation

Parameters: x, yfloat or array-like, shape (n, )The data positions. sfloat or array-like, shape (n, ), optionalThe marker size in points**2. Default is rcParams['lines.markersize'] ** 2. carray-like or list of colors or color, optionalThe marker colors. Po

matplotlib.org

 

scikit-learn

predict data analysis 를 위한 간단하고 효율적인 tools

NumPy, SciPy, matplolib 기반

 

class sklearn.neighbors.KNeighborsClassifier(n_neighbors=5, p=2, ...)

k개의 가장 가까운 이웃들의 투표에 따라 결정하는 분류모델을 만드는 클래스

 

Parameters

n_neighbors : int, default = 5

- kneighbors 쿼리에 기본적으로 사용할, 이웃들의 숫자

 

p : int, default = 2

- Power parameter for Minkowski metric

** 민코프스키 공간 : 수학자 민코프스키가 도입한 개념. 3차원 공간와 1차원의 시간을 기하학적으로 밀접하게 통합해서, 인류가 시공간에 대한 더 깊은 이해를 하도록 이끌었음. 시공간을 수학적으로 4차원으로 모델링 한 것임. 유클리드 4차원 공간도 민코프스키 공간과 마찬가지로 4차원이지만, 거리를 정의하는 방법은 서로 다름.

- 거리를 재는 방법을 지정하는 매개변수

- p = 1 이면, 맨해튼 거리(bit.ly/man_distance) 사용

- p = 2 이면, 유클리디안 거리(bit.ly/euc_distance) 사용

 

Methods

fit(X, y)

- 훈련 데이터셋을 이용하여, K-최근접 이웃 분류 모델을 훈련 시키는 메서드

X : {array-like, sparse matrix} of shape (n_samples, n_features)

or (n_samples, n_samples) if metric='precomputed'

** sparse matrix : 행렬의 값이 대부분 0인 경우

- Training data (훈련에 사용할 특성 데이터)

y : {array-like, sparse-matrix} of shape (n_samples,)

or (n_samples, n_outputs)

- Target values (훈련에 사용할 정답 데이터)

 

kneighbors(X=None, n_neighbors=None, return_distance=True)

- X가 주어졌을 때, 그 지점의 K개의 이웃들을 찾아주는 메서드

- 이웃 지점들에 대한 distance와 index 를 리턴한다.

 

Parameters

X : array-like, shape (n_queries, n_features),

or (n_queries, n_indexed) if metirc == 'precomputed', default = None

- The query point or points.

- 만약 주어지지 않았다면, 각각의 indexed point 의 이웃들이 리턴된다.

- 이 경우, query point 는 그 자신의 이웃으로 considered 되지 않는다.

 

n_neighbors : int, default = None

- 각 sample 에 required 되는 이웃들의 숫자

- default는 constructor에게 passed되는 값이다.

 

return_distance : bool, default = True

- distances 들을 리턴 할지 말지 결정하는 인자

- x : array-like, shape(n_queries, n_features)

 

Returns

neigh_dist : ndarray of shape (n_queries, n_neighbors)

points 까지의 length 를 represent 하는 array

return_distance = True 인 경우에만 리턴된다.

neigh_ind : ndarray of shape (n_queries, n_neighbors)

population matrix 에서 가장 가까운 points 들의 indices

 

predict(X)

- provided data 에 대한 클래스 라벨들을 예측하는 메서드

- 특성 데이터 하나(X)만 매개변수로 받는다

Parameters

X : array-like of shape (n_queries, n_features), or (n_queries, n_indexed) if metric == 'precomputed')

- Test samples

- 이게 proviede data 인 거임!

Returns

y : ndarray of shape (n_queries,) or (n_queries, n_outputs)

- 각 data sample 에 대한 class labels.

 

score(X, y, sample_weight = None)

주어진 test data 와 labels 에 대한 mean accuracy 를 리턴하는 메서드

다중 레이블 분류에서 이것은 각 레이블 세트를 올바르게 예측해야 하므로, 엄격한 메트릭(harsh metric)인 부분 집합 정확도(subset accuracy)이다.

** metric(척도) : 학습을 통해 목표를 얼마나 잘 달성했는지를 나타내는 값.

Parameters

X : array-like of shape (n_samples, n_features)

- Test smaples

y : array-like of shape (n_samples,) or (n_samples, n_outputs)

- True labels for x

sample_weight : array-like of shape (n_sampels,), default = None

- Sample weights

Returns

score : float

- Mean accuracy of self.predict(X) wrt.y.

 

scikit-learn.org/stable/modules/generated/sklearn.neighbors.KNeighborsClassifier.html?highlight=kneighborsclassifier#sklearn.neighbors.KNeighborsClassifier

 

sklearn.neighbors.KNeighborsClassifier — scikit-learn 0.24.1 documentation

 

scikit-learn.org

 

 

class sklearn.model_selection.train_test_split(*arrays, test_size=None, train_size=None, random_state=None, shuffle=True, stratify=None, ...)

배열 또는 행렬을 랜덤하게 섞어서, train set과 test set으로 쪼개는 함수

 

Parameters

*arrays : sequence of indexables with dame length/shape[0]

- Allowed inputs : lists, numpy arrays, scipy-sparse matrices or pandas dataframes

 

test_size : float or int, default = None

- float 이면, 0.0 ~ 1.0 사이의 값이어야한다. test split의 비율임

- int 이면, test samples의 절대적인 숫자를 나타낸다.

- None 이면, test_size는 train size의 complement 로 결정된다.

- train_size 도 None이면, 그냥 test_size : train_size 는 0.25 : 0.75 이다.

 

train_size : float or int, default = None

- test_size 설명이랑 동일~

 

random_state : int, RndomState instance or None, default = None

- 데이터를 split 하기 전에, shuffle 하는 걸 컨트롤 하는 값.

- seed랑 동일하다고 생각하면 될 듯 하다.

 

shuffle : bool, default = True

- split 하기 전에, shuffle 할거냐 말거냐를 정해주는 값

- shuffle = False 이면, stratify = None 이어야한다.

 

stratify : array-like, default = None

- None 이 아니면, data는 stratified fashion (계층화된 방식)으로 split 되고, 인자로 주어진 걸 class labels로 사용된다.

- 이 매개변수에 클래스 레이블이 담긴 배열 (일반적으로 타깃 데이터)를 전달하면, 클래스 비율에 맞게 train set 와 test set를 split 해준다.

 

scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html

 

sklearn.model_selection.train_test_split — scikit-learn 0.24.1 documentation

 

scikit-learn.org

NumPy

numpy.random.seed(self, seed=None)

- 넘파이에서 난수를 생성하기 위한 정수 초깃값을 지정한다.

- 초깃값이 같으면 동일한 난수를 뽑을 수 있다.

- 따라서, 랜덤 함수의 결과를 동일하게 재현하고 싶을 때 사용한다.

 

numpy.arange([start, ]stop, [step, ]dtype=None, *, like=None)

- 지정된 간격 내에서, 일정한 간격으로 값을 반환한다.

- start 이상, stop 미만, step 간격으로 이루어진 값들을 배열로 만들어서 반환한다.

start : integer or real, optional

- interval 의 시작

- interval 은 이 값을 포함한다.

- default : 0

stop : integer or real

- interval 의 끝

- interval 은 이 값을 포함하지 않는다.

step : integer or real, optional

- 값들 사이의 간격

- default : 1

- step 이 지정되려면, start 또한 무조건 주어져야한다.

 

numpy.random.shuffle(x)

- 주어진 배열을 랜덤하게 섞어서 수정한다.

- 다차원 배열일 경우, 첫 번째 축에 대해서만 섞는다.

- 섞게 되면 서브-배열들의 순서는 바뀌지만, 그들의 내용의 동일하다.

 

 

NumPy Documentation — NumPy v1.21.dev0 Manual

 

numpy.org

 

 

 

1장 코랩 실습 링크

 

Google Colaboratory

 

colab.research.google.com

 

2장-1 코랩 실습 링크

 

Google Colaboratory

 

colab.research.google.com

 

2장-2 코랩 실습 링크

 

Google Colaboratory

 

colab.research.google.com

 

+ 이 책을 이용하여 "혼공머신 기반 학습"을 했습니다.

www.aladin.co.kr/shop/wproduct.aspx?ISBN=K052736813&start=pnaver_02

 

혼자 공부하는 머신러닝 + 딥러닝

구글 머신러닝 전문가로 활동하고 있는 저자는 여러 차례의 입문자들과 함께한 머신러닝&딥러닝 스터디와 번역·집필 경험을 통해 무엇을 어떻게 학습해야 할지 모르는 입문자의 막연함을 이해

www.aladin.co.kr

 

저작자표시 (새창열림)

'etc > 혼공단' 카테고리의 다른 글

[혼공단 5기] 혼공머신 5주차 학습 인증  (0) 2021.02.28
[Kaggle] Sorry, we couldn't find any public results.  (0) 2021.02.23
[혼공단 5기] 혼공머신 4주차 학습 인증  (0) 2021.02.22
[혼공단 5기] 혼공머신 3주차 학습 인증  (0) 2021.02.14
[혼공단 5기] 혼공머신 2주차 학습 인증  (0) 2021.02.07

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • [Kaggle] Sorry, we couldn't find any public results.

    [Kaggle] Sorry, we couldn't find any public results.

    2021.02.23
  • [혼공단 5기] 혼공머신 4주차 학습 인증

    [혼공단 5기] 혼공머신 4주차 학습 인증

    2021.02.22
  • [혼공단 5기] 혼공머신 3주차 학습 인증

    [혼공단 5기] 혼공머신 3주차 학습 인증

    2021.02.14
  • [혼공단 5기] 혼공머신 2주차 학습 인증

    [혼공단 5기] 혼공머신 2주차 학습 인증

    2021.02.07
다른 글 더 둘러보기

정보

컴01기 블로그의 첫 페이지로 이동

컴01기

  • 컴01기의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • 분류 전체보기 (87)
    • 📰논문 리뷰 (16)
    • 🍒회고록 (4)
    • 🖤네이버 ai tech (0)
    • ✨글쓰는힝 (1)
    • 🔥취준일기 (2)
    • 🎲유니티 (2)
    • 🔨삽질 (10)
    • 📚 서적 리뷰 (4)
    • 🐹알고리즘 (4)
    • 😎정리하는 카테고리 (4)
    • 📝CS 공부 (6)
      • 운영체제 (1)
      • 네트워크 (4)
      • 리팩토링 (1)
    • etc (22)
      • 혼공단 (7)
      • Spring (7)
      • JS (1)
      • OpenCV (2)
      • Unity (5)

최근 글

인기 글

댓글

태그

  • 회고록
  • 혼공머신
  • 백준
  • 혼공학습단
  • github
  • unity
  • 혼공단
  • 혼공SQL

나의 외부 링크

  • Github
  • Youtube

정보

힝님의 컴01기

컴01기

힝님

방문자

  • 전체 방문자
  • 오늘
  • 어제

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © 힝님. Designed by Fraccino.

티스토리툴바