인프런 커뮤니티 질문&답변

신세빈님의 프로필 이미지
신세빈

작성한 질문수

딥러닝 CNN 완벽 가이드 - Fundamental 편

np.random.seed = 2021, %matplotlib inline

작성

·

286

0

1)

 

안녕하세요 강사님.

np.random.seed = 2021과 관련해서 궁금한 점이 있어 질문 드립니다.

np.random.seed의 type이 int형임을 파악했는데요.

np.random.seed라는 변수는 어디서 사용이 되는 건가요?

random seed로 사용하기 위해 선언해 놓으신 것 같은데 어떤 함수의 인자로도 사용되는 모습이 보이지 않아서 어디에 쓰이는지 잘 모르겠습니다.

 

2)

%matplotlib inline의 역할을 알아보기 위해 인터넷에 검색을 해보았는데요.

notebook을 실행한 브라우저에서 바로 그림을 볼 수 있게 해주는 것임을 알게 되었습니다.

그래서 %matplotlib inline 이 없으면 현재 브라우저 상에 그림이 나타나지 않을 것을 기대하고 %matplotlib inline을 지워봤는데 똑같이 저 그림이 출력됩니다.

제가 어디서 잘못 이해하고 있는 걸까요?

항상 좋은 강의 감사합니다.

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까, 

1. np.random.seed = 2021 과 같이 random 값의 seed를 일정한 값으로 설정하면 np.random과 관련한 함수를 호출할 때마다 동일한 random 값을 반환합니다. 

가령 np.random에 있는 rand()함수를 np.random.rand(6)와 같이 호출할 경우 np.random.seed=2021과 같이 seed값이 설정되어 있으면 호출을 할 때마다 동일한 random 값이 반환 됩니다. 

이렇게 np.random.seed 값을 설정하는 이유는 수행시마다 동일한 결과를 가져오기 위함입니다. 실습 코드에 np.random과 관련한 함수가 있을 때 실습코드 수행시 마다 동일한 결과를 가져오기 위해서 설정했습니다. 

2. jupyter notebook 이 초기에 나왔을 때는 %matplotlib inline을 설정해 주지 않으면 jupyter notebook이 브라우저 상에서 Visualization을 수행 할 때 해당 cell에 matplotlib을 바로 적용하지 않았습니다.

이게 불편해서 이후에 %matplotlib inline을 기본 설정하는 방식으로 바뀌었습니다. kaggle 커널도 마찬가지로 %matplotlib inline이 기본으로 이미 설정되어 있어서 %matplotlib inline을 명시적으로 적지 않아도 됩니다. 

강의를 잘 듣고 계시다니, 저도 기분이 좋습니다. 감사합니다. 

 

신세빈님의 프로필 이미지
신세빈

작성한 질문수

질문하기