Últimos Posts

sábado, 21 de março de 2015

Vídeo-aulas - Análise de Algoritmos

Olá pessoal, venho compartilhar com vocês uma playlist de vídeos gratuitos do Youtube que contempla o assunto de Análise de Algoritmos que é bastante comum em cursos de graduação e pós-graduação em Ciência da Computação.

As aulas estão em português e bem didáticas, vale a pena conferir.



quinta-feira, 19 de março de 2015

Programação em C - Matrizes esparsas

Olá pessoal, nesse post iremos falar sobre matrizes esparsas. Uma matriz esparsa é aquela em que nem todos os elementos estão realmente presentes ou são necessários.

Imagine uma matriz muito grande onde a grande maioria dos elementos são repetidos (exemplo: a grande maioria dos elementos é 0 no caso de uma matriz de inteiros). Entenda como elemento repetido como sendo a mesma informação.

Por questão de simplicidade, vamos assumir que o elemento repetido seja um 0. Então pense numa matriz onde a grande maioria dos elementos é igual a 0. Veja a imagem:



segunda-feira, 9 de março de 2015

[Python] - Determinar frequência de itens (objeto Counter)

Olá pessoal, nesse post iremos determinar a frequência de palavras de uma lista utilizando objeto Counter.

Objetos Counter são muito úteis para contabilizar dados. Veja como é simples a sua utilização:



[Python] - Dando nome a uma fatia (slice)

Olá pessoal, nesse post iremos aprender a dar nomes às fatias (slices).

As vezes o código pode ficar muito confuso quando você utiliza várias fatias, por isso é sempre bom uma referência para saber o que cada fatia (slice) significa, melhora a legibilidade do código.

O código abaixo é bem simples, veja como nomear fatias:



[Python] - Dicionários - operações de conjuntos

Olá pessoal, vocês sabiam que podemos executar operações de conjuntos em dicionários? O método keys() suporta essas operações.

O código desse post só funciona em Python 3.x. Iremos executar as operações de intersecção, diferença e união. Veja o código:



[Python] - Dicionário em ordem

Olá pessoal, nesse post iremos ver uma forma de manter a ordem de inserção dos itens em um dicionário utilizando a OrderedDict.

A OrderedDict mantém internamente uma lista duplamente ligada que ordena as chaves de acordo com a ordem de inserção. 

Lembrando que a OrderedDict possui um tamanho superior ao dobro de um dicionário normal. O código abaixo funciona tanto no Python 2.x quanto 3.x:



Maratona de Programação - Problema URI 1775

Olá pessoal, nesse post irei falar sobre um problema bem interessante que encontra-se disponível no URI Online Judge para quem quiser resolver.

Antes de visualizar as dicas, tente resolvê-lo:



sábado, 7 de março de 2015

Redes neurais - Funções de ativação

Olá pessoal, nesse post irei falar um pouquinho sobre as funções de ativação.

Lembrando que o objetivo da função de ativação é limitar a saída do neurônio dentro de um intervalo de valores razoáveis a serem assumidos pela sua própria imagem funcional.

Temos dois tipos de funções de ativação: parcialmente diferenciáveis e totalmente diferenciáveis.



Introdução a Redes Neurais - Conceitos iniciais

Olá pessoal, esse post é para quem está começando a estudar Redes Neurais, vamos falar dos conceitos iniciais, algo bem básico para começarmos a entender. Esse post faz parte de uma série de posts que colocaremos sobre Redes Neurais.

Nós havíamos colocado um post partindo logo para implementação utilizando a PyBrain (biblioteca de machine learning em Python), mas preferimos recuar um pouco para explicar melhor os conceitos antes de ver código de fato.



segunda-feira, 2 de março de 2015

[Python] - Redes Neurais com PyBrain

Olá pessoal, nesse post iremos conhecer um pouco mais sobre Redes Neurais Artificiais (RNA) utilizando a PyBrain que é uma biblioteca em Python que implementa redes neurais.

Antes de utilizarmos a PyBrain, é muito importante que você tenha pelo menos uma noção de que se trata redes neurais artificiais.

Gostamos muito da prática, mas a teoria irá lhe ajudar bastante a compreender o que iremos fazer no código. Portanto, antes de visualizar os códigos, assista a esses três vídeos sobre redes neurais: