>백엔드 개발 >파이썬 튜토리얼 >Numpy의 난수 생성 방법 및 응용 프로그램에 대한 심층적인 이해

Numpy의 난수 생성 방법 및 응용 프로그램에 대한 심층적인 이해

PHPz
PHPz원래의
2024-01-03 08:23:58397검색

Numpy의 난수 생성 방법 및 응용 프로그램에 대한 심층적인 이해

NumPy를 사용하여 난수 생성 방법과 응용 프로그램을 살펴보세요

소개:
난수는 시뮬레이션 실험, 데이터 생성, 기능 선택 등 컴퓨터 과학 및 통계 분야에서 폭넓게 응용됩니다. Python에서 NumPy(Numerical Python) 라이브러리는 난수 생성을 위한 다양한 기능을 제공하는 강력한 수치 컴퓨팅 라이브러리입니다. 이 기사에서는 NumPy의 난수 생성 방법을 살펴보고 구체적인 코드 예제를 제공합니다.

1. NumPy의 난수 생성 기능
NumPy는 난수를 생성하는 다양한 함수를 제공하며 그 중 일반적으로 사용되는 기능은 다음과 같습니다.

  1. np.random.rand
    Function np.random.rand(low, high, size )은 [0, 1) 범위의 난수를 생성하는 데 사용됩니다. 그 중 low, high 매개변수는 선택사항으로 난수의 범위를 지정하는 데 사용되며, size 매개변수는 선택사항으로 생성되는 난수의 개수를 지정하는 데 사용됩니다.

샘플 코드는 다음과 같습니다.

import numpy as np

Generate a 난수

random_num = np.random.rand()
print("Generate a 난수: ",random_num)

Generate range in [ 0, 10 내의 난수)

random_num_range = np.random.rand() * 10
print("[0, 10) 범위 내에서 난수 생성:", random_num_range)

3x3 난수 생성 숫자 행렬

random_matrix = np.random.rand(3, 3)
print("3x3 무작위 행렬 생성:
", random_matrix)

  1. np.random.randn
    function np.random.randn(d0, d1 , ..., dn)은 표준 정규 분포에서 난수 집합, 즉 평균이 0이고 분산이 1인 난수 집합을 생성하는 데 사용됩니다. 그 중 dn 매개변수는 생성된 난수의 차원을 지정하는 데 사용됩니다.

샘플 코드는 다음과 같습니다.

import numpy as np

표준 정규 분포를 사용하여 난수 생성

random_normal = np.random.randn()
print("표준 정규 분포를 사용하여 난수 생성 distribution:" , random_normal)

차원이 2x2인 표준 정규 분포를 사용하여 무작위 행렬을 생성합니다

random_normal_matrix = np.random.randn(2, 2)
print("다음을 사용하여 표준 정규 분포를 사용하여 무작위 행렬을 생성합니다. 2x2 차원:
", random_normal_matrix)

  1. np.random.randint
    np.random.randint(low, high, size) 함수는 지정된 범위 내에서 정수 난수를 생성하는 데 사용됩니다. 그 중 low 및 high 매개변수는 난수의 범위를 지정하는 데 사용되며, size 매개변수는 생성되는 난수의 개수를 지정하는 데 사용됩니다.

샘플 코드는 다음과 같습니다.

import numpy as np

[0, 10) 범위의 정수 난수 생성

random_int = np.random.randint(0, 10)
print("Generate an [0, 10) 범위의 정수 난수: ", random_int)

[-5, 5)

random_int_range = np.random.randint(-5, 5)
print 범위의 정수 난수 생성 (" [-5, 5) 범위의 정수 난수 생성: ", random_int_range)

[0, 10) 범위의 3x3 정수 난수 행렬 생성

random_int_matrix = np.random.randint(0, 10 , size=(3, 3))
print("[0, 10) 범위에서 3x3 정수 무작위 행렬 생성:
", random_int_matrix)

2. 난수 적용
기계 학습에서 난수는 중요합니다. 데이터 분석 및 데이터 분석의 두 가지 일반적인 응용 프로그램 시나리오가 아래에 소개됩니다.

  1. 시뮬레이션 실험
    주사위 굴리기 결과 시뮬레이션, 랜덤 볼넷 및 야구 경기 결과 시뮬레이션 등의 시뮬레이션 실험에 난수를 사용할 수 있습니다. 난수를 생성함으로써 손쉽게 다수의 실험을 수행하고 실험 결과를 분석할 수 있습니다.

샘플 코드는 다음과 같습니다.

import numpy as np

주사위 굴리기 시뮬레이션

dice_roll = np.random.randint(1, 7, size=10)
print("주사위를 굴린 결과: ", dice_roll)

  1. 데이터 생성
    특정 분포를 따르는 난수를 생성하고 테스트 데이터 세트를 구축하는 데 사용되는 등 난수를 사용하여 데이터를 생성할 수 있습니다. 일반적인 애플리케이션 시나리오에는 가우스 분포 데이터 생성, 분류 데이터 생성 및 이미지 데이터 생성이 포함됩니다.

샘플 코드는 다음과 같습니다.

import numpy as np

정규 분포를 따르는 난수 생성

gaussian_data = np.random.randn(1000)
print("정규 분포를 따르는 난수:", gaussian_data )

분류된 데이터 생성

class_labels = np.random.randint(0, 2, size=1000)
print("Classified data labels:", class_labels)

결론:
이 기사에서는 NumPy의 무작위 생성 방법을 살펴봅니다. 숫자와 그 응용. NumPy에서 제공하는 난수 생성 기능을 이용하면 다양한 종류의 난수를 쉽게 생성하여 시뮬레이션 실험, 데이터 생성 등의 시나리오에 적용할 수 있습니다. 난수는 통계 및 컴퓨터 과학에서 중요한 역할을 하므로 NumPy의 난수 생성 방법을 익히는 것은 데이터 분석 및 기계 학습에 매우 중요합니다.

참조:

  1. NumPy 공식 문서: https://numpy.org/doc/stable/reference/random/index.html

위 내용은 Numpy의 난수 생성 방법 및 응용 프로그램에 대한 심층적인 이해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.