목록Python/통계 및 데이터관련 (13)
노는게 제일 좋습니다.
배경 anaconda에서 folium 및 jupyter notebook을 사용한다. folium을, jupyter notebook에서 사용할 때, popup 텍스트가 깨지는 현상이 발생하였다. 원인 iframe으로 folium지도를 렌더링하게 되는데, UTF-8 인코딩을 못하고 있는 것이다. 미적지근한 해결 주피터 노트북 안에서 취할 수 있는 마땅한 해결방안은 없다. 지난달 까지만 하더라도 특정 .py파일에 문자셋을 지정해주는 방법이 가능하였으나 현재는 html로 folium지도를 추출해서 보는 수밖에 없다. 다음과 같은 구문으로 html로 지도를 저장할 수 있다. map.save('index.html') # map은 folium.Map변수의 이름 주피터 노트북과 같은 경로에 저장되었다. index.ht..
요약 matplotlib의 폰트캐시가 새로 설치된 폰트를 못불러오고 있는 것이다. 아래 코드로 업데이트 해주면 된다. import matplotlib matplotlib.font_manager._rebuild() 배경 쥬피터에서, pandas의 dataframe을 plot()으로 시각화 하려했으나, 다음의 두가지 warning을 표시하며 한글이 깨져나온다. 사용하려는 폰트는 나눔고딕코딩이다. findfont: Font family ['NanumGothicCoding'] not found. Falling back to DejaVu Sans. /home/wonjinyi/anaconda3/lib/python3.7/site-packages/matplotlib/backends/backend_agg.py:211: ..
https://youtu.be/KVv1nMSlPzY 위 강의를 보고 공부한 내용을 토대로 정리한 것임. 사용한 도표나 사진이 강의에 있거나, 강의에 있는 것을 따라 그린 것일 수 있음. 1. 모델을 평가하려면 어떻게 해야 하는가. 학습 데이터로 학습을 시킨 뒤에, 학습데이터로 모델을 테스트 하는 것은 의미가 없다. 그래서 원본의 데이터를 전부 다 학습시키는데 쓰지 않고, 쪼개서 모델을 평가하는데 사용한다. 우선. 위와 같이 원본 데이터가 있다고 하자. 만약 우리가 갖고있는 데이터를 전부 다 학습에 써버린다면, 모델을 평가하기가 굉장히 어려워진다. 모델을 평가할 때 우리가 좋은 모델이라고 부르려면, 문제를 냈을 때 우리가 예상한 결과를 내야 한다. 데이터라 함은 문제-답 의 세트이다. 즉, 우리가 문제를 ..
https://youtu.be/1jPjVoDV_uo sung kim 교수님의 강의를 보고 정리한 것이다. 강의내용을 보고 따라그린 그림도 있고, 가져온 그림도 있다. 1.경사하강법(Gradient Descent Algorithm)을 사용할 때, learning rate란 것을 사용했었다.tf.train.GradientDescentOptimizer() 함수에 인자로 넣어주던 바로 그것이다.학습을 잘 시키기 위해서는 이 러닝 레이트의 값을 잘 조절해야 한다. 러닝 레이트가 너무 큰 경우 정처없이 왔다 갔다 거리거나, 발산을 해서 최소점을 못찾을 수 있다. 반대로 너무 작은 경우에는.. 한참을 찔끔찔끔가다 시간이 너무 오래걸려서 최소점까지 못가고 학습을 끝낼 수도있다. 2.피쳐(feature)가 두 개 있다고..
https://blog.metaflow.fr/shapes-and-dynamic-dimensions-in-tensorflow-7b1fe79be363#.wfb3r2721 쉐이프는 정적 쉐이프, 동적 쉐이프 두 가지로 나뉜다. 정적 쉐이프는 텐서를 만들 때 우리가 제공 받는 쉐이프이다. 혹은 우리가 새로운 텐서를 정의할 때 텐서플로에 의해 추론되는 쉐이프이다. 동적 쉐이프는 텐서플로에서 그래프를 실행할 때 사용되는 실제의 쉐이프로, 원본 쉐이프를 나타낸다.동적 쉐이프는 그 자체로 텐서이기도 하다.
https://youtu.be/MFAnsx1y9ZI이 강의를 보고 공부한 후 정리한 내용임. tensorflow 7 글에서는 데이터를 두 개로 나누는 방법을 공부했다.Multinomial Logistic Regression 은.. 번역하면 뭐라하는지 모르겠지만, 여러개로 딱딱 나누는 방법이다.( 예 : 학점을 A, B, C, F로 나누기 ) 데이터의 종류가 동그라미,세모,네모 세 가지가 있다고 하자.그렇다면 세 개의 선으로 구간을 나누어줄수 있다. (동그라미인가 아닌가, 세모인가 아닌가, 네모인가 아닌가.)이 각각의 선을 구해서 같이 잘 쓰면 데이터를 세 가지로 분류할 수 있다. 아, 그 각각의 선이라 함은, 이미 알고있는 바이너리 클래시피케이션(Binary classification)이다. 그럼 이제 ..
1.Binary 이진Logistic 논리의classification 분류데이터를 받아서 0,1로 인코딩하는 방식이다. 2.Linear Regression과 같은 방식으로 hypothesis를 세울 때 발생하는 문제(1) 0보다 작거나 1보다 큰 값을 뱉어낼 수가 있다.(2) hypothesis를 얼마나 기울여야 할지 알 수 없다.즉, 기존과 같은 가설(hypothesis)을 기반으로 하되, 이를 압축해서 0과 1로 만들어줄 새로운 함수가 필요하다. 3. H(x)=Wx+b=z라 하자. 그리고 다음과 같은 어떤 함수 g(z)에 대입하면 두 번째 줄과 같은 결과가 나온다.** W의 윗첨자 T는 행렬에서의 transpose를 나타낸다. 이 함수 g(z)를 logistic function 또는 sigmoid fu..
https://www.youtube.com/watch?v=UYWJkyYln2s&feature=youtu.behttps://www.inflearn.com/course-status-2/이곳을 보고 공부하고, 이해한 내용을 바탕으로 정리한 것 multi : 여러개variable(또는 feature) : 변수(특징) --- x값을 말합니다.Linear Regression : 우리가 아는 그 리니어 리그레션 multi-variable Linear Regression : 여러 개의 입력을 받는 리그레션 1.기존에 사용하던 hypothesis(가설)은 H(x) = Wx+b와 같은 형태였다.그런데, 여기서 x1,x2와 같이 여러 개의 변수를 둘 수도 있다. 그 예는 다음과 같다.특징(feature) x가 늘어나면 그에..