본문 바로가기

Python61

(1)벡터 벡터? 벡터란 어떤 유한한 차원의 공간에 존재하는 점들입니다. 키, 몸무게, 나이에 대한 데이터가 주어졌다면 이 데이터를 3차원 데이터로 표현 가능합니다. 벡터를 가장 간단하게 표현하는 방법은 숫자로 구성된 list로 표현하는 것입니다. 예를 들어, 3차원 벡터는 세 개의 숫자로 구성된 list로 표현할 수 있습니다. height_weight_age = [70, # 인치 170, # 파운드 40 ] # 나이 list로 벡터를 표현하는 방법의 문제점은 list를 통해 벡터 연산을 할 수 없다는 점입니다. 두 개의 벡터를 더하는 함수를 만들어 보겠습니다. def vector_add(v, w): """각 성분끼리 더한다""" return [v_i + w_i for v_i, w_i in zip(v,w)] 뺄셈도.. 2019. 8. 26.
(2) 차원 축소 데이터의 '실제(유용한)' 차원은 주어진 데이터의 차원과 다를 수 있습니다. 그리고 차원의 저주에 걸릴 수도 있죠 https://en.wikipedia.org/wiki/Curse_of_dimensionality Curse of dimensionality - Wikipedia From Wikipedia, the free encyclopedia Jump to navigation Jump to search The curse of dimensionality refers to various phenomena that arise when analyzing and organizing data in high-dimensional spaces (often with hundreds or thousands of dimens.. 2019. 8. 26.
(1) 척도 조절 대다수의 데이터 과학 기법은 데이터의 척도(scale)에 민감하게 반응합니다. 데이터 과학자 수백 명의 키와 몸무게가 주어졌고, 이를 통해 체형을 군집화해야 한다고 가정해봅시다. 직관적으로, 서로 가까운 데이터는 같은 군집에 포함되어야 하고 그러기 위해서는 데이터 간의 거리를 정의할 필요가 있습니다. 사람 키(인치) 키(cm) 몸무게(파운드) A 63 160 150 B 67 170.2 160 C 70 177.8 171 유클리드 거리 함수를 사용하여 비슷한 체형을 구해보면 1. 키(인치)를 사용하면, B와 가장 비슷한 체형을 갖고 있는 사람은 A입니다. a_to_b = distance(63, 150, 67, 160) # 10.77 a_to_c = distance(63, 150, 70, 171) # 22.1.. 2019. 8. 22.
(2)정규분포의 누적분포함수를 python으로 구현해보자 def normal_cdf(x, mu=0,sigma=1): return (1 + math.erf((x - mu) / math.sqrt(2) / sigma)) / 2 정규분포의 누적분포함수는 오차함수를 사용하여 구현합니다. (erf: error function) 오차함수의 설명은 아래를 참고하세요(나중에 설명드리겠습니다) https://ko.wikipedia.org/wiki/%EC%98%A4%EC%B0%A8_%ED%95%A8%EC%88%98 오차 함수 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. ko.wikipedia.org 이 글의 출처는 data science from scratch o'reilly입니다. 너무나 좋은 책이니 꼭 한 번 사서 공부해보셨으면 좋겠습니다. 2019. 8. 22.