A ENTROPIA DA BÍBLIA
Por: Walber Stark • 9/9/2019 • Trabalho acadêmico • 851 Palavras (4 Páginas) • 717 Visualizações
UNIVERSIDADE CEUMA – CAMPUS IMPERATRIZ
WALBER CARNEIRO DE OLIVEIRA
CPD: 97057
ENTROPIA DA BÍBLIA
IMPERATRIZ – MA
2019
Walber Carneiro de Oliveira
ENTROPIA DA BÍBLIA
Projeto acadêmico referente à disciplina de Informática apresentado ao curso de Engenharia Civil, da Universidade Ceuma – Campus Imperatriz como requisito para obtenção de nota do 1º bimestre.
Orientador: MSc Fausto Lucena.
IMPERATRIZ – MA
2019
SUMÁRIO
1 INTRODUÇÃO......................................................................................................................3
2 MÉTODOS.............................................................................................................................4
3 RESULTADOS.......................................................................................................................5
4 DISCUSSÃO...........................................................................................................................6
5 REFERÊNCIAS.....................................................................................................................7
1 INTRODUÇÃO.
Neste projeto será apresentado como fazer uso da entropia de informação. O objeto de experimento, será a bíblia. Será exposto o procedimento de como calcular a entropia da mesma. Demonstrando os métodos utilizados para chegar ao objetivo e funções alternativas para encontrar seus valores.
A entropia de informação é a taxa média na qual a informação é produzida por uma fonte estocástica de dados. Foi utilizado o método baseado na teoria de entropia de informação desenvolvida por Claude Shannon. Em que a medida da entropia de informação associada a cada valor de dados possível é o logaritmo negativo da função de massa de probabilidade para o valor:
[pic 1]
Será calculado a entropia de cada caractere que contêm na bíblia, com exceção dos espaços em branco. Cálculo que será possível por meio do programa Matlab, que trata-se de um software interativo de alta performance voltado par o cálculos numéricos, cujo elemento básico de informação é uma matriz que não requer redimensionamento.
2 MÉTODOS.
Inicialmente, afim de apresentar o cálculo entrópico de uma forma mais simples, a versão da bíblia utilizada foi a King James Bible - publicada em 1611 - em inglês, pelo fato de o idioma não possuir em seu alfabeto acentuação gráfica. Foi baixado a bíblia em formato de arquivo de texto com a extensão “.txt”. Depois todas as letras do arquivo foram convertidas para letras maiúsculas, com o auxílio do software Word. E novamente o mesmo foi colocado em arquivo de texto .txt, ficando nomeado de bible.txt.
Com o Matlab iniciado, para carregar a bíblia em formato .txt no programa, primeiramente foi utilizado o prompt de comando “>>edit”, que serve para abrir a janela de edição do software. Depois foi utilizada a função “biblia=textread('bible.txt','%c');”, no qual: biblia se refere ao nome da variável de saída da função; textread serve para ler arquivos no Matlab em uma matriz de células, seguido entre parênteses o nome do arquivo a ser lido e sua extensão, o comando %c é utilizado para imprimir um caractere incluindo espaços em branco.
Com o objetivo de dar início à contagem de letras da bíblia, foi utilizada a função “size(biblia,1);”, na qual: a função retorna um vetor (linha) em que o primeiro elemento é o número de linhas e o segundo o número de colunas de uma matriz.
Para encontrar a quantidade de cada letra foi utilizada a função “codeA=size(find('A'==biblia));”, onde: codeA é a variável de saída, composta pelo nome code seguido da representação da letra que será encontrada a quantidade de vezes que a mesma aparece na bíblia, no caso é representada pela própria letra A; a função find retorna um vetor contendo os índices lineares de cada elemento diferente de zero na matriz ('A'==biblia); ‘A’ representa a letra quer a função irá encontrar por meio de comparação – representada pelo == - com o arquivo da bíblia. Resultando na quantidade total de vezes que a letra A aparece na bíblia. O mesmo procedimento foi feito com todas as vinte e seis letras do alfabeto, substituindo ‘A’ pelas demais letras do alfabeto. Foi registrada a quantidade que cada uma das letras aparecem escritas no arquivo e seu somatório total.
Logo após, foi calculado qual a probabilidade de cada uma das letras de aparecerem na bíblia. Por meio da função “ProbcodeA=codeA/TotalCode”, no qual: a probabilidade de uma determinada letra é igual a quantidade de vezes que a mesma aparece na bíblia, dividindo-se pela quantidade total de letras que o arquivo contém, não incluindo espaços em branco. Foi encontrado e registrado a probabilidade de cada letra e o somatório de todas as probabilidades juntas.
Por último, foi feito o cálculo da entropia de cada letra do alfabeto. Por meio da função “EntropiaA=-ProbcodeA*log2(ProbcodeA);” onde representa a equação de entropia de informação, apresentado anteriormente (). Foi encontrado e registrado o valor da entropia de cada letra e o somatório de todos os valores de entropia juntos.[pic 2]
3 RESULTADOS.
Letra | Quantidade(un) | Probabilidade(%) | Entropia(bits) |
A | 291659 | 0,0850 | 0,3812 |
B | 52207 | 0,0152 | 0,1573 |
C | 61424 | 0,0179 | 0,1464 |
D | 160755 | 0,0468 | 0,2646 |
E | 437385 | 0,1275 | 0,1858 |
F | 83210 | 0,0242 | 0,0942 |
G | 58877 | 0,0172 | 0,2240 |
H | 292940 | 0,0854 | 0,1357 |
I | 209062 | 0,0609 | 0,3295 |
J | 13753 | 0,0040 | 0,2848 |
K | 26908 | 0,0078 | 0,0864 |
L | 140235 | 0,0409 | 0,2849 |
M | 90659 | 0,0264 | 0,1644 |
N | 236506 | 0,0243 | 0,1304 |
O | 253611 | 0,0603 | 0,2442 |
P | 46827 | 0,0368 | 0,1754 |
Q | 953 | 3,3991e-05 | 5,0459e-04 |
R | 179738 | 0,0572 | 0,2362 |
S | 214156 | 0,0446 | 0,2002 |
T | 323802 | 0,0543 | 0,2281 |
U | 91170 | 0,0020 | 0,0178 |
V | 32426 | 6,7981e-04 | 0,0072 |
W | 66586 | 0,0163 | 0,0967 |
X | 2662 | 1,2016e-09 | 3,5605e-08 |
Y | 59411 | 0,0037 | 0,0298 |
Z | 4810 | 0,0079 | 0,0553 |
Total | 3.431.732 | 1,0000 | 4,1610 |
...