일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 생활코딩
- aws
- 논문리뷰
- attention
- MySQL
- 수동설치
- 가비아
- CBOW
- jupyter
- 머신러닝
- 한빛미디어
- AndroidStudio를활용한안드로이드프로그래밍
- 예제중심HTML&자바스크립트&CSS
- image
- 밑바닥부터시작하는딥러닝2
- 셀레니움
- Apache
- 컴파일설치
- 딥러닝
- word2vec
- 크롤링
- 밑바닥부터시작하는딥러닝
- 소스설치
- 비지도학습
- deeplearning
- Selenium
- 한빛아카데미
- Lamp
- 프로그램새내기를위한자바언어프로그래밍
- Crawling
- Today
- Total
안녕, 세상!
1. Python 심화( Numpy, Matplotlib) 본문
넘파이와 matplotlib 등 의 유용한 라이브러리를 사용하기 위해서 아나콘다 배포판을 설치한 후 윈도우 검색기에 anaconda prmopt로 코딩을 하면 됩니다.
아나콘다 배포판 설치는 python 설치부분에 설명되어 있습니다.
앞으로 사용할 python은 버젼 3 을 사용할 것이기 때문에 아나콘다 배포판도 버젼 3을 다운받아서 사용해야 합니다.
1.넘파이
(1) 불러오기
배열이나 행렬 계산과 관련된 편리한 메서드들이 넘파이의 배열 클래스인 numpy.array에 있습니다.
넘파이는 외부 라이브러리라서 넘파이를 import 함수로 불러야 합니다.
np.array()
넘파이 배열을 만들 때는 np.array() 메서드를 사용합니다.
파이썬의 리스트를 인수로 받아 넘파이 라이브러리가 제공하는 특수한 형태의 배열 numpy.ndarray 을 반환합니다.
(2) 산술연산
넘파이 배열로 산술연산이 가능합니다.
산술연산 할 두 배열은 원소 수가 같아야 합니다.
하지만 원소별 계산 뿐만 아니라 넘파이 배열과 수치 하나(스칼라값)의 조합으로 된 산술연산도 수행할 수 있습니다.
이 기능을 브로드캐스트 라고 합니다.
일반배열같은 경우 배열 끼리 덧셈을 하면 원소끼리 연산이 되지 않고 원소들을 추가로 붙입니다.
(3) N차원 배열
넘파이는 리스트와 같이 다차원 배열을 작성할 수 있습니다.
shape 함수 - 행렬의 형상을 보여줍니다.
형식 : 변수.shape
1차원 배열인 경우에 shape 함수는 배열의 원소의 수만 보여주고
2차원 이상의 배열인 경우에는 (행,열) 형태로 숫자를 출력합니다.
(4) 원소 접근
넘파이 배열의 원소의 위치에 접근해서 해당 원소를 출력할 수 있습니다.
(5) 기타
flatten() 함수 - 해당 변수의 배열을 1차원 배열로 변환합니다 (평탄화 시킴)
형식 : 변수.flatten()
a[np.array([0,1,2])] # a의 넘파이 배열 중 인덱스가 0,1,2인 원소를 얻기
matmul() 함수 - 행렬의 곱을 실행시키는 함수입니다.
np.dot()함수도 행렬곱과 같은 결과를 반환하지만 np.dot()은 백터의 내적의 기능입니다.
내적을 사용하게 된다면 시그마를 for문 대신 사용할 수 있습니다.
그리고 이 방법이 계산 처리가 빠릅니다.
예를 들어 1부터 1000까지의 합을 for문이 아닌 내적으로 표현하면 다음과 같습니다.
2.matplotlib
그래프를 그리기위한 라이브러리입니다.
matplotlib을 그래프로 시각화 하는데 위의 anaconda prompt로는 시각화가 되지 않기 때문에 anaconda를 설치할 때
같이 설치가 되는 Jupyter Notebook을 사용 할 것입니다.
(1) Jupyter Notebook 사용법
1. 윈도우 검색창에 'jupyter' 검색 후 클릭합니다.
2. 콘솔 창에서 나오는 주소를 브라우져 창 주소에 복붙을 합니다.
3. Jupyter 페이지에서 file 카테고리에서 new부분을 python3 으로 바꿉니다.
4. 그 다음에 나오는 창에서 코드를 입력해서 코딩을 하면 됩니다.
(2) pyplot의 기능
우선 sin함수를 그리는 코드를 봅니다.
matplotlib 도 numpy와 마찬가지로 외부의 라이브러리 이므로 import 함수로 불러옵니다.
arange() 함수(Numpy) - 설정 범위의 설정 간격 만큼의 숫자를 원소로 Numpy 배열을 만듬
형식: 변수.arange(시작숫자, 끝숫자, 숫자범위의 간격)
plt.plot() 함수 - 그래프를 구축함
plt.show() 함수 - 그래프를 화면에 출력
label - 뜻 그대로 꼬리표로, 해당 그래프의 이름을 설정함
color - 해당 그래프의 색깔을 설정함
Char | Color |
'w' | White |
'k' | Black |
'b' | Blue |
'r' | Red |
'g' | Green |
'c' | Cyan |
'y' | Yellow |
'm' | Magenta |
linestyle - 그래프의 선 종류를 설정함
plt.xlabel(), plt.ylabel() - x축과 y축의 이름을 설정함
plt.title() - 그래프의 이름을 설정함
plt.legend() - 그래프를 여러개 그릴 때 그래프에 label을 설정하고 그래프 특정위치에 그래프의 label을 표현해줌
loc으로 위치 표현
string | code | string | code |
'upper right' | 1 | 'center right' | 7 |
'upper left' | 2 | 'lower center' | 8 |
'lower left' | 3 | 'upper center' | 9 |
'lower right' | 4 | 'center' | 10 |
'right' | 5 | 'best' | 0 |
'center left' | 6 |
plt.subplot() - 여러개의 그래프표를 그릴 때 사용함
형식: plt.subplot(세로의 그래프 갯수, 가로의 그래프 갯수, 그래프 위치)
그래프의 위치는 아래표가 화면이라고 할 때 해당 위치의 숫자를 표현한 것이다.
1 | 2 |
3 | 4 |
5 | 6 |
이미지 표현하기
matplotlib.image
위와 같이 사진을 가져올려면 해당 경로에 이미지 파일을 저장해 놓아야 합니다.
imread() - 해당경로의 사진을 가져옴
plt.imshow() - 이미지를 구축함
'It공부 > Deep learning' 카테고리의 다른 글
5. 오차역전파법 (0) | 2020.06.19 |
---|---|
4. 신경망 학습 (0) | 2020.06.17 |
3-(1) 손글씨 숫자 인식 분석 (1) | 2020.06.16 |
3. 신경망 (0) | 2020.06.16 |
2. 퍼셉트론 (0) | 2020.06.15 |