머신러닝

본문 바로가기
사이트 내 전체검색


머신러닝
머신러닝

4. scipy 라이브러리 사용하기

페이지 정보

작성자 관리자 댓글 0건 조회 1,383회 작성일 20-02-20 21:30

본문

4. scipy 라이브러리 사용하기

# numpy에서 특수행렬을 만드는 함수
# eye(N, M=, k=, dtype=)함수는 항등행렬을 생성하는 함수
# 여기서 N은 행의 수, M은 열의 수, k는 대각의 위치


실습1.


import numpy as np


b1 = np.ones(10)
print(b1)
print("---------------------")

b2 = np.zeros((5,5))
print(b2)
print("---------------------")

b11 = np.ones((5,5))
print(b11)
print("---------------------")

c1 = np.eye(2, dtype=int)
print(c1)
print("---------------------")

c2 = np.eye(4, M=5, k=1, dtype=int)
print(c2)
print("---------------------")
c3 = np.eye(4, M=5, k=-1, dtype= int)
print(c3)
print("---------------------")

# diag()함수는 정방행렬에서 대각 요소만 추출하여 벡터를 만든다

# diag(v, k=)

x = np.arange(9).reshape(3,3)
print(x)
print("---------------------")

x1 = np.diag(x)
print(x1)
print("---------------------")

x2 = np.diag(x, k=1)
print(x2)
print("---------------------")

x3 = np.diag(x, k=-1)
print(x3)
print("---------------------")

# diag()함수는 반대로 벡터요소를 대각요소로 하는 정방행렬을 만들기도 한다.
x4 = np.diag(np.diag(x))

print(x4) 


결과.





1.PNG




# scipy에서 scikit-learn 알고리즘을 구현 할 때
# 많이 사용하는 모듈은 scipy.sparse모듈이다.
# 이때 희소 행렬기능은 주요 기능 중의 하나이다.
# 희소 행렬(sparse matrix) : 0을 많이 포함한 2차원 배열
 


실습2.


# -*- coding: utf-8 -*-

import numpy as np
from scipy import sparse

b1 = np.eye(4, dtype=int)

print("Numpy 배열: \n{}".format(b1))
print("---------------------")

#sparse.csr_matrix()메소드 : 0이 아닌 원소만 저장

sparse_matrix = sparse.csr_matrix(b1)
print("Scipy의 CSR 행렬: \n{}".format(sparse_matrix))
 




2.PNG


실습3.


# -*- coding: utf-8 -*-

import numpy as np
from scipy import sparse

b3 = np.arange(16).reshape(4,4)
print(b3)
print("---------------------")

x = np.diag(b3)
print(x)
print("---------------------")

y = np.diag(np.diag(b3))
print("----------\n{}".format(y))
print("---------------------")

sparse_matrix = sparse.csr_matrix(y)
print("SciPy의 CSR행렬: \n{}".format(sparse_matrix))
 



3.PNG



실습4.


# -*- coding: utf-8 -*-

import numpy as np
from scipy import sparse

#희소행렬을 직접 만들 때 사용하는 포맷
# COO 포맷 (Coordinate 포맷)
data = np.ones(4)
print(data)
print("---------------------")

row_indices = np.arange(4)
col_indices = np.arange(4)

eye_coo = sparse.coo_matrix((data,(row_indices, col_indices)))
print("COO 표현 : \n{}".format(eye_coo))


결과.



4.PNG

댓글목록

등록된 댓글이 없습니다.


개인정보취급방침 서비스이용약관 모바일 버전으로 보기 상단으로

TEL. 063-469-4551 FAX. 063-469-4560 전북 군산시 대학로 558
군산대학교 컴퓨터정보공학과

Copyright © www.leelab.co.kr. All rights reserved.