Guia rápido para Numpy Random Zipf

Neste artigo, exploraremos o que é a distribuição Zipf, como usar a função Numpy Random Zipf , examinar as distribuições de dados e os benefícios de usá-la em seus projetos.



Entendendo a Distribuição Zipf

A distribuição Zipf recebeu o nome do linguista americano George Kingsley Zipf, que descobriu a distribuição em seus estudos de frequências de palavras em idiomas.

É uma distribuição de lei de potência, o que significa que tem uma cauda pesada e algumas palavras ou itens que ocorrem com frequência e muitos outros que ocorrem raramente.

Isso geralmente é chamado de regra 80/20 ou princípio de Pareto , em que 20% dos itens representam 80% da ocorrência total.

A distribuição Zipf é definida da seguinte forma:

p(k) = C * (1/k^alpha)

onde k é a classificação da palavra, C é uma constante de normalização e alpha é o parâmetro da distribuição.


Função Zipf aleatória Numpy

No Numpy Random Zipf, as distribuições Zipf são utilizadas para gerar dados com base na lei de Zipf.

O enésimo termo mais frequente em um conjunto de dados é 1/n vezes o termo mais frequente. Veja nosso exemplo. Em inglês, a terceira palavra mais popular aparece quase 1/3 da frequência da mais popular.

Existem dois parâmetros nele:

Parâmetros Visão geral
a parâmetro de probabilidade.
tamanho Fornece a forma da matriz.

Pegue uma amostra de distribuição zipf com parâmetro de probabilidade quatro e dimensões quatro por cinco como segue:

Example: 

1
2
3
4
5
6
from numpy import random
mrx = random.zipf(a=4, size=(4, 5))
print(mrx)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Para a distribuição zipf, calcule o tamanho da amostra do parâmetro de distribuição 2.5 da seguinte forma:

Example: 

1
2
3
4
5
6
from numpy import random
mrx = random.zipf(a=2.5, size=(3, 5))
print(mrx)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Visualização da distribuição Zipf
Para obter um gráfico mais preciso, experimente 2.000 valores e exiba apenas aqueles com valores superiores a 20.

Example: 

1
2
3
4
5
6
7
8
9
from numpy import random
import matplotlib.pyplot as pt
import seaborn as sbn
mrx = random.zipf(a=2, size=2000)
sbn.distplot(mrx[mrx<20], kde=False)
pt.show()
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Mostrar apenas valores superiores a 5 em um gráfico que mostra 500 valores.

Example: 

1
2
3
4
5
6
7
8
9
from numpy import random
import matplotlib.pyplot as pt
import seaborn as sbn
mrx = random.zipf(a=2, size=500)
sbn.distplot(mrx[mrx<5], kde=True)
pt.show()
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Benefícios

A utilização da função Numpy Random Zipf pode oferecer inúmeras vantagens, como:

  • A distribuição Zipf é frequentemente usada para modelar fenômenos do mundo real, como frequências de palavras em idiomas, popularidade de sites e distribuição de renda. Ao usar a função Numpy Random Zipf, você pode gerar dados que se assemelham a esses fenômenos do mundo real.
  • A distribuição Zipf pode ser usada para testar hipóteses estatísticas , como se um conjunto de dados segue uma distribuição de lei de potência. Ao gerar dados com a função Numpy Random Zipf, você pode testar essas hipóteses e obter informações sobre os padrões subjacentes de seus dados.
  • A função Numpy Random Zipf pode ser usada para gerar conjuntos de dados de treinamento e teste para algoritmos de aprendizado de máquina. Isso pode ser particularmente útil ao trabalhar com dados de texto ou conjuntos de dados que contêm um grande número de eventos raros.
  • Ao visualizar os dados gerados pela função Numpy Random Zipf, você pode obter informações sobre a distribuição e as características dos dados. Isso pode ajudá-lo a identificar padrões e valores discrepantes e tomar decisões mais informadas sobre como visualizar e analisar os dados.
Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone