2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes...

47
SOCIEDADE EDUCACIONAL DE SANTA CATARINA - SOCIESC INSTITUTO SUPERIOR TUPY Juliemar Berri APLICAÇÃO DE REDES NEURAIS ARTIFICIAIS PARA AUXILIAR EM DIAGNÓSTICO DE ANÁLISE DE DEMONSTRAÇÕES FINANCEIRAS Joinville/SC 2011/2

Transcript of 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes...

Page 1: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

1

SOCIEDADE EDUCACIONAL DE SANTA CATARINA - SOCIESC

INSTITUTO SUPERIOR TUPY

Juliemar Berri

APLICAÇÃO DE REDES NEURAIS ARTIFICIAIS PARA AUXILIAR EM

DIAGNÓSTICO DE ANÁLISE DE DEMONSTRAÇÕES FINANCEIRAS

Joinville/SC

2011/2

Page 2: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

2

JULIEMAR BERRI

APLICAÇÃO DE REDES NEURAIS ARTIFICIAIS PARA AUXILIAR EM

DIAGNÓSTICO DE ANÁLISE DE DEMONSTRAÇÕES FINANCEIRAS

Trabalho de Conclusão de Curso apresentado ao Instituto Superior Tupy como requisito parcial para obtenção do grau de Bacharel em Engenharia de Computação.

Gilberto Luiz de Souza Paula, DSc.

Joinville/SC

2011/2

Page 3: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

3

JULIEMAR BERRI

APLICAÇÃO DE REDES NEURAIS ARTIFICIAIS PARA AUXILIAR EM

DIAGNÓSTICO DE ANÁLISE DE DEMONSTRAÇÕES FINANCEIRAS

Este trabalho foi julgado e aprovado em sua forma final, sendo assinado pelos professores da banca examinadora.

Joinville, ___de________________de_____

__________________________________________ Gilberto Luiz de Souza Paula, DSc

__________________________________________

Juliane Candido, MSc

Page 4: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

4

__________________________________________ Fabiano Dantas

Dedico esse trabalho primeiramente a Deus e a minha esposa Alinne pela compreensão e apoio durante o trabalho.

Page 5: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

5

AGRADECIMENTOS

Agradeço a minha mãe Lenita por todo o apoio dado durante a minha forma-

ção, aos meus colegas de classe que se tornaram verdadeiros amigos para a vida e

aos professores Gilberto e Glaci que a cada revisão e correção contribuíram para a

conclusão do trabalho.

Page 6: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

6

“Tenha vontade tenha juventude. Eu sempre desejei isso para mim. E agora que vocês se formam para começar algo novo, eu desejo isso para vocês.”

STEVE JOBS

Page 7: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

7

RESUMO

O constante avanço tecnológico percebido mais facilmente na interface dos equipamentos, além de minimizar o volume físico desses equipamentos, vem aumentando e em muito a capacidade de processamento numérico. A inteligência artificial é utilizada em muitos casos porque facilita o reconhecimento de padrões mesmo quando a entrada não está completamente bem definida, esta "plasticidade" além de melhorar os critérios de busca, ainda “caminham” para a individualidade do equipamento, ou seja, o próprio equipamento "compreenderá" o que usuário "quer". Com o objetivo de desenvolver um dispositivo de analise patrimonial fundamentado em Redes Neurais Artificiais, programa-se um software, que, embora nesse trabalho seja de caráter exploratório, permitirá o desenvolvimento de uma ferramenta informática para a poio a decisões contábeis sobre a saúde de uma empresa. Para tanto é preciso entender o que são balanços patrimoniais, as redes neurais artificiais e linguagem de programação. A opção de um algoritmo de Hopfield para esse tipo de análise se deve em um primeiro momento porque se demonstrou eficiente na identificação dos padrões de balanço contábeis oferecidos, e devido ao fato de oferecer mínimos espúrios ao invés de probabilidades de resposta, que são uma vantagem significativa a redes do tipo Backpropagation ou outra qualquer, porque não induzem o usuário, assim, se não for “parecido” com nenhum aprendizado “pre-fere-se” não dizer nada. Os padrões de entrada e saída, mesmo sendo fictícios, ser-vem para demonstrar o funcionamento do software aplicado, afinal por mais que se estude o uso de Inteligência Artificial é mais interessante quando fundamentado na experiência do profissional. Portanto utilizou-se a rede de Hopfield, com programa-ção Java como um sistema especialista fundamentado em redes neurais artificiais para analise de demonstrações financeiras de uma empresa fictícia. Palavras-chave: Rede Neural Artificial, Inteligência Artificial, Balanço patrimonial,

Hopfield.

Page 8: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

8

ABSTRACT

The constant technological advancement most noticeable at the interface of the equipment, while minimizing the physical volume of equipment, and much has been increasing the capacity of numerical processing. Artificial intelligence is used in many cases because it facilitates the recognition of patterns even when the input is not completely defined, this "plasticity" in addition to improving the search criteria, still "go" to the individuality of the equipment, in the other words, the equipment "understand" what user "wants." In order to develop a device to analyze equity based on Artificial Neural Networks, Programs, and software, that although this work is exploratory, allow the development of a data proccess tool to support decisions on the financial health of a the company. For this you need to understand what are balance sheets, the artificial neural networks and programming language. The option of a Hopfield algorithm for this type of analysis is due at first because it has been shown effective in identifying patterns of balance sheet provided, and because of present minimum rather than spurious response probabilities, which are a significant advantage to the type Backpropagation networks or any other, because they induce the user, so if it is not "like" with no learning "preferred" say nothing. The patterns of entry and exit, even if fictional, serve to demonstrate the operation of application software, after all no matter what you use study of Artificial Intelligence is more interesting when based on professional experience. Therefore was used the Hopfield network, programming with Java as an expert system based on artificial neural networks for analyzing financial statements of a fictitious company. Keywords: Artificial Neural Networks, Artificial Intelligence, Balance Sheet, Hopfield.

Page 9: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

9

LISTA DE ILUSTRAÇÕES

Figura 1 - Conceito dos sistemas de Inteligência Artificial ........................................ 22

Figura 2 – Soluções oferecidas pelo sistema especialista ........................................ 23

Figura 3 – Neurônio biológico.................................................................................... 25

Figura 4 – Neurônio de McCulloch e Pitts com limiar explícito .................................. 26

Figura 5 - Neurônio de McCulloch e Pitts com limiar implícito................................... 27

Figura 6 - Rede neural Percepton multicamada ........................................................ 31

Figura 7 - Rede Hopfield formada de N=4 neurônios ................................................ 35

Figura 8 – Framework Neuroph ................................................................................. 38

Figura 9 – Site Heaton Research .............................................................................. 39

Figura 10 - Cadastro de ativos .................................................................................. 42

Figura 11 - Cadastro de Balanços ............................................................................. 43

Figura 12 - Cadastro de valores de treinamento ....................................................... 43

Figura 13 – Resultado de análise .............................................................................. 44

Page 10: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

10

LISTA DE TABELAS

Tabela 1 – Balanços fictícios ..................................................................................... 40

Tabela 2 – Valores com Alterações básicas.............................................................. 41

Tabela 3 – Dados Desconhecidos ............................................................................. 41

Page 11: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

11

SUMÁRIO

1 INTRODUÇÃO .................................................................................................. 13

2 CONCEITO DE CONTABILIDADE .................................................................. 16

2.1 ANÁLISE DE DEMONSTRAÇÕES FINANCEIRAS .......................................... 16

2.1.1 Balanço Patrimonial ................................................................................... 17

2.1.1.1 Ativo .............................................................................................................. 18

2.1.1.2 Passivo ......................................................................................................... 18

2.2 CONTABILIDADE E TECNOLOGIA DA INFORMAÇÃO .................................. 19

3 INTELIGÊNCIA ARTIFICIAL ............................................................................ 21

3.1 SISTEMAS ESPECIALISTAS ........................................................................... 22

3.2 REDE NEURAL ARTIFICIAL ............................................................................ 24

3.2.1 Neurônio biológico ..................................................................................... 24

3.2.2 Neurônio Artificial ....................................................................................... 25

3.2.3 Aprendizado ................................................................................................ 27

3.2.3.1 Aprendizado supervisionado ........................................................................ 27

3.2.3.2 Aprendizado não supervisionado ................................................................. 28

3.2.4 Adaline ......................................................................................................... 28

3.2.4.1 Algoritmo de aprendizado ............................................................................. 29

3.2.5 Perceptron ................................................................................................... 29

3.2.5.1 Algoritmo de aprendizado ............................................................................. 30

3.2.6 Redes Neurais Multi Camadas .................................................................. 30

3.2.6.1 Treinamento em redes MLP ......................................................................... 32

3.2.7 Rede Hopifield............................................................................................. 34

4 PROJETO ......................................................................................................... 37

4.1 LINGUAGEM DE PROGRAMAÇÃO ................................................................. 37

4.2 BIBLIOTECAS DE RNA PARA JAVA ............................................................... 37

4.2.1 Neuroph ....................................................................................................... 37

4.2.2 Encog ........................................................................................................... 38

Page 12: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

12

4.3 APLICATIVO PARA ANÁLISE DE BALANÇO .................................................. 39

4.3.1 Apresentação do aplicativo ....................................................................... 42

5 CONCLUSÃO ................................................................................................... 45

REFERÊNCIAS ......................................................................................................... 46

Page 13: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

13

1 INTRODUÇÃO

Nas últimas três décadas, a evolução e popularização de Redes Neurais

Artificiais foram possíveis graças ao advento de recursos computacionais cada vez

mais potentes com menores custos. Uma Rede Neural Artificial pode ser definida

em neurônio, arquitetura e aprendizagem (FERNANDES 2005).

Entendendo o neurônio como uma unidade de processamento com n entra-

das e que resulta em um sinal de saída ou uma função de transferência. A principal

vantagem de sistemas neurais biológicos em relação a sistemas computacionais

está no fato de que mesmo com “falhas” nos receptores de entrada do sistema bioló-

gico (visão, tato) ele reconhece o cenário no qual está inserido. A exemplo, um rato

não precisa estar na frente de um gato, sentir seu cheiro, e as vibrações do ambi-

ente para fugir, isso é que garante a sua sobrevivência. Modelos computacionais

estruturados estão condenados à extinção em sistemas abertos, porque estes siste-

mas possuem diversas variáveis e sua intensidade também não é exata. Assim

modelos de inteligência artificial buscam a similaridade da convergência a padrões

de respostas dados cenários de entradas. Por isso um sistema fundamentado em

inteligência artificial necessita de uma “fase de treinamento” onde é constituída a

relação entre a entrada e resposta esperada. Entretanto uma Rede Neural Artificial

possui n neurônios e pode ser dividida em três camadas: camada de entrada, onde

os padrões são apresentados; camadas Intermediárias ou Escondidas, onde é reali-

zado o processamento e as conexões e camada de Saída, onde é apresentado o

resultado.

No mundo moderno, as organizações estão cientes das necessidades de

inserção tecnológica e estão cada vez mais flexíveis no que tange ao uso das

informações. Dentre as diversas facilidades da tecnologia e seus sistemas no ambi-

ente empresarial, se pode destacar em âmbito contábil, o aumento da produtividade,

melhoria e garantia da qualidade dos serviços, eficácia e mais facilidade para os

profissionais da área, uma vez que os sistemas baseados em Inteligência Artificial

são capazes de gerar inúmeras suposições e previsões.

Além dos diversos benefícios à empresa, sistemas de informação também

facilitam o acesso às informações nas organizações. É possível destacar com base

neste trabalho acadêmico de conclusão de curso que os Sistemas de Informação

vêm aplicando técnicas inteligentes em sua essência. Onde a área financeira tam-

Page 14: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

14

bém se beneficia. Por exemplo, a aplicação de um Sistema Especialista na área

contábil é capaz de ajudar profissionais a tomarem decisão de forma mais ágil, rá-

pida e segura, de acordo com a identificação e característica dos dados inseridos

nele. Com base em tal relevância, poderá uma Rede Neural Artificial auxiliar o

profissional na tomada de decisões contábeis?

A habilidade do ser humano em aprender sempre foi alvo de indagações e

pesquisas, o nome desta capacidade é protopeiria (ARARIBÓIA). Redes Neurais

Artificiais também possuem a capacidade de aprender com exemplos e fazer

interpolações e extrapolações do que aprenderam. Para que uma Rede Neural Artifi-

cial possa aprender uma determinada função são necessários conjuntos de

procedimentos bem definidos conhecidos como algoritmos de aprendizagem

(BRAGA, 2000). Existem diversos métodos para o treinamento, mas que podem ser

agrupados em dois paradigmas: Aprendizado supervisionado e Aprendizado não

supervisionado.

É altamente importante uma boa definição do processo de aprendizado das

Redes Neurais Artificiais. Atualmente existem inúmeras pesquisas voltadas ao pro-

cesso de aprendizado biológico comparado ao artificial. O aprendizado supervisio-

nado tem seu erro minimizado (AZEVEDO, 2000), pois o processo de aprendizado

da rede consiste em apresentar uma entrada e com base no erro de saída é calcu-

lado o ajuste necessário nos pesos sinápticos da rede. Porém existem alguns

parâmetros que devem ser considerados: o tempo requerido por iteração, número de

iterações por padrão de entrada para o erro alcançar um valor mínimo durante a

sessão de treinamento, se a Rede Neural Artificial atingiu um mínimo Local ou

Global, e caso Local se a rede pode escapar dele.

No aprendizado não supervisionado, não existe uma saída desejada, durante

todo o processo de treinamento a Rede Neural Artificial é excitada com padrões de

entrada bem distintos e vai organizando Arbitrariamente os padrões em diversas

categorias. Geralmente este tipo de aprendizado é utilizado em sistemas

classificadores (AZEVEDO, 2000). Desta forma se faz necessário o estudo dos

diferentes algoritmos de Redes Neurais Artificiais, buscando uma convergência

generalizada para auxiliar o profissional de contabilidade em tomadas de decisões

nas demonstrações contábeis.

O objetivo deste trabalho é desenvolver um software aplicativo que utilize

redes neurais para análise de balanços patrimoniais. Para atingir o objetivo foram

Page 15: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

15

formulados os seguintes objetivos específicos: estudar balanço patrimonial, Estudar

Redes Neurais Artificiais, escolher uma Rede Neural Artificial específica para

desenvolver o aplicativo, definir uma linguagem de programação e desenvolver o

aplicativo.

A metodologia aplicada consiste inicialmente em uma pesquisa de caráter

exploratório sobre a utilização de Redes Neurais Artificiais na análise de balanços

patrimoniais. Quanto à abordagem, é de uma pesquisa qualitativa. A estratégia utili-

zada de uma pesquisa bibliográfica em livros, artigos científicos e websites. E um

aplicativo utilizando uma Rede Neural Artificial Hopfield especializado em analisar e

identificar padrões em balanços patrimoniais.

Este trabalho estrutura-se em cinco capítulos. Neste capítulo, apresenta-se

uma visão geral do trabalho, informações relacionadas ao tema, o objetivo geral, os

objetivos específicos e metodologia utilizada.

O segundo capítulo apresenta os conceitos de contabilidade, balanço patrimo-

nial, passivo, ativo e a importância da tecnologia da informação na contabilidade.

O terceiro capítulo explora-se a inteligência artificial através de seu histórico e

desafios a serem superados pelo desenvolvedor, é apresentada a importância dos

sistemas especialistas, uma breve visão histórica sobre Rede Neural Artificial,

detalhamento do neurônio biológico e neurônio artificial e as redes neurais artificiais,

Adaline, Perceptron, Redes Neurais Multicamadas e Rede Hopfield. Até este ponto

do trabalho está realizada a fundamentação teórica.

No quarto capítulo é detalhado o processo de desenvolvimento do software

aplicativo, escolha da linguagem de programação a ser utilizada, escolha de projetos

que facilitam a utilização de Rede Neural Artificial, requisitos para o desenvolvimento

do software, demonstração através de tabelas dos resultados obtidos pela aplicação

e apresentação do aplicativo em funcionamento.

Já no quinto capítulo é realizada a conclusão através de uma análise crítica so-

bre os desafios e resultados encontrados na execução do trabalho, e sugestões para

estudos futuros.

Page 16: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

16

2 CONCEITO DE CONTABILIDADE

De acordo com Marques (2004, p. 17), “o conceito de contabilidade científico,

é a ciência que estuda e controla o patrimônio das entidades”. Mas também se pode

conceituar contabilidade como ciência que registra os fatos e gera informações do

patrimônio da empresa, sendo este patrimônio o conjunto de riquezas de proprie-

dade física ou jurídica.

Pode ser considerada uma combinação de fatores técnicos que também des-

creve alguns acontecimentos encontrados no patrimônio das empresas, através de

coleta, armazenamento e processamento das informações. Traz como um dos

principais objetivos o estudo dos resultados ou números das empresas, registrando-

os através de demonstrações contábeis todos os acontecimentos financeiros

apresentados. Através destas demonstrações contábeis as empresas conseguem

medir sua saúde financeira, como afirma a lei 6.404/76, que apresenta estas

demonstrações como conteúdo que expõe qualitativamente e quantitativamente os

elementos do patrimônio. Estas demonstrações descritas na lei são conhecidas em

meio contábil, como por exemplo, o Balanço Patrimonial, Demonstração do Resul-

tado do Exercício, Demonstração Fluxo de Caixa, entre outros.

Desta forma afirma Padoveze (2010, p.3) que, “se pode definir contabilidade

como o sistema de informação que controla o patrimônio de uma entidade.” Po-

dendo ser considerada como entidade, o conjunto patrimonial pertencente a uma

pessoa ou empresa.

2.1 ANÁLISE DE DEMONSTRAÇÕES FINANCEIRAS

A análise de demonstrações financeiras é uma importante ferramenta de uso

nas empresas pela área contábil, sendo capaz de demonstrar os resultados e criar

novas simulações financeiras. De acordo com o Código Comercial, em lei 6.404/76

as empresas cuja razão social denominadas em Sociedade Anônima (S.A) ou

também Sociedade por Ações precisam divulgar seu Balanço Patrimonial em mídia,

ressalvo de algumas exceções.

De acordo com Sá (SÁ, 1999), ao analisar as demonstrações contábeis de

uma empresa, é comum o acompanhamento da evolução dos resultados ao longo

Page 17: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

17

de vários exercícios consecutivos anuais para avaliar se as empresas estão melho-

rando ou piorando sua situação financeira e patrimonial.

Desta forma, é necessário que se expresse com clareza seu balanço patrimo-

nial, com demonstração dos lucros ou prejuízos acumulados, demonstração do

resultado do exercício do ano e demonstração das origens e aplicações de recursos.

Com a publicação exigida por lei as análises de balanços se tornaram ainda mais

claras e fidedignas.

Considerando as demonstrações contábeis nas empresas, o balanço patrimo-

nial é considerado uma das principais e mais confiáveis declarações financeiras de

uma empresa. É a demonstração que apresenta todos os bens, direitos e obrigações

da empresa. Referenciando a necessidade de existência do Balanço Patrimonial

segundo Pimentel,

O balanço de uma empresa é uma “foto” da empresa, demonstrando suas posições patrimonial e financeira num mesmo dado momento. O balanço pode relatar a situação da companhia a cada ano fiscal ou trimestre. O ba-lanço é precisamente útil para fornecer informações contábeis que ajudam a compreender o que ocorreu com a empresa em um determinado período. (PIMENTEL,2007,p.59)

2.1.1 Balanço Patrimonial

Ao se traduzir o sentido de balanço patrimonial é possível se destinar à aná-

lise qualitativa e quantitativa de uma empresa, em determinada data, situação

patrimonial e financeira. O conteúdo traduzido de um balanço patrimonial é apresen-

tado por Ativo e Passivo. Onde objetivamente o Ativo é a soma de bens e direitos e

o Passivo a soma de obrigações e patrimônio líquido.

Na definição de patrimônio, entende-se como o conjunto de bens, direitos e

obrigações da empresa. Onde em definição de Ativo, está bens, ou coisa palpável e

tangível, define-se também os direitos como: valores de natureza da empresa, de

retorno para a empresa e Bens Intangíveis como por exemplo sua marca.

Em definição do Passivo, ao citar o termo obrigações, compreende-se como

sendo algo avaliado em dinheiro que não é da empresa, mas está em responsabili-

dade e posse da mesma. E por fim, patrimônio líquido é interpretado como sendo

soma do ativo subtraído das obrigações da empresa, é o valor de retorno da em-

presa aos sócios e acionistas.

Page 18: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

18

De acordo com Padoneze e Benedicto (PADONEZE; BENEDICTO,2004) se

considera realizado um Ativo quando os valores são recebidos ou transformados em

dinheiro. E um passivo é quando a despesa é paga ou a obrigação que representa é

liquidada.

2.1.1.1 Ativo

Caracterizando as contas principais do Ativo, conforme definido anterior-

mente, se pode citar como bens da empresa, seu caixa e conta bancária, assim

como estoques que são dinheiro investido e também terrenos, carros, móveis e

utensílios. De acordo com Iudícibus (2006, p.138), “ativos representam benefícios

futuros esperados, direitos que foram adquiridos pela entidade como resultado de

alguma transação corrente ou passada”.

Da mesma forma representando os direitos da empresa ou benefícios futuros,

como títulos a receber, impostos a recuperar e também adiantamentos financeiros

realizados. Ainda na subdivisão do Ativo são dispostas a divisão em, Ativo

Circulante e Ativo não Circulante, conforme Lei 11638/2007. Comenta Iudícibus

(2006, p. 153), “o ativo e sua conceituação configuram-se, talvez, como o capítulo

mais importante da teoria contábil, ao lado do capítulo de receitas, despesas, perdas

e ganhos de uma empresa”.

2.1.1.2 Passivo

Ao passivo são destinadas em demonstrativo financeiro as contas no grupo

de obrigações em duplicatas a pagar, impostos a recolher, salários a pagar,

empréstimos bancários entre outras obrigações deste gênero. Uma característica

essencial para caracterizar o Passivo é que a empresa tem uma obrigação no mo-

mento da avaliação. Uma obrigação é o dever ou a responsabilidade de agir ou cum-

prir de uma certa forma. (IUDÍCIBUS, MARION, 2006).

E também complementando o passivo as contas do patrimônio líquido podem

ser exemplificadas no capital social da empresa, investimentos, reservas financeiras

e lucros acumulados. Assim como o Ativo, o Passivo é disposto em mais divisões

como Passivo circulante e Passivo não Circulante. Sendo sempre de importância se

fazer uma distinção entre obrigações presentes e comprometimentos futuros, ambos

Page 19: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

19

aparecendo como saldo credor para as empresas. Ainda afirma Iudícibus (2006,

p.157) “O passivo, ou uma exigibilidade é um serviço avaliável em dinheiro, que um

proprietário é obrigado a prestar por uma norma legal ou equitativa para uma

segunda pessoa ou conjunto de pessoas”.

2.2 CONTABILIDADE E TECNOLOGIA DA INFORMAÇÃO

De acordo com o dicionário Aurélio (2009, p.1925) a definição de tecnologia é

simplesmente, “o conjunto de conhecimentos ou princípios científicos, que se apli-

cam a um determinado ramo de atividade, capaz de realizar integração de informa-

ções”. É também perceptível notar que a tecnologia está mais próxima de todos

nesta última década, de forma com que todos que queiram tenham acesso à

informação, a novos conhecimentos e a facilidades que a mesma emprega. De

acordo com Padoveze (2009, p.27) “a informação é o dado que é processado e

armazenado de forma compreensível para seu receptor e que apresenta valor real

para suas decisões correntes ou prospectivas”.

Também nas empresas a mesma tecnologia vem ao encontro com o negócio

e necessidades do dia a dia, facilitando para as empresas a entrada e geração de

informações mais concretas e fidedignas. Assim como em vários segmentos, tam-

bém na contabilidade este acesso às informações facilita na tomada de decisões.

Para que o efeito da tecnologia seja uma parceria de sucesso nas empresas, os

usuários precisam estar cientes das inovações tecnológicas, incorporando-as não

apenas de forma superficial, mas também nos procedimentos contábeis básicos,

situações que exijam uma analise contábil mais apurada e complexa.

A nova forma de se fazer negócio através do apoio da tecnologia está

proporcionando para as empresas uma conquista no ambiente contábil com solu-

ções praticas e inteligentes, que ajudam a melhorar o padrão de qualidade de servi-

ços. A tecnologia, em termos de desenvolvimento, tem despontado, trazendo gran-

des avanços para a sociedade em geral. A mais de três décadas a contabilidade

percebe mudanças significativas devidas transformações sociais e tecnológicas que

contribuíram para aumentar a produtividade e facilitar o acesso às informações.

Conforme afirma Padoveze (2009, p.29) “a tecnologia da informação é todo o con-

junto tecnológico à disposição das empresas para efetivar seu subsistema de

informação e suas operações”.

Page 20: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

20

Afirma Padoveze (2009) que a ciência contábil pode se traduzir naturalmente

dentro de um sistema de informação, visto que em caráter de exatidão a contabili-

dade pode ser comparada a mesma arquitetura de um sistema informacional. Hoje

em dia com facilidade à tecnologia e a mesma em favor da Ciência Contábil

proporcionou uma exatidão nas entradas e processamento dos números onde os

erros tornam-se mínimos. O incentivo dos executivos no desenvolvimento de maior

qualidade da informação tem levado os especialistas a aperfeiçoarem continua-

mente nos processos de inovações para a área contábil.

Page 21: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

21

3 INTELIGÊNCIA ARTIFICIAL

Inteligência Artificial pode-se traduzir como uma simulação da inteligência hu-

mana na realização de atividades elaboradas por pessoas, que podem ser substituí-

dos pelo uso de recursos da ciência da computação e também seus respectivos

algoritmos inteligentes. Através desta inteligência é possível se resolver problemas

quando se faltam informações, determinar o que é importante, reagir a situações

inesperadas como também prever resultados.

Segundo Rosini e Palmisano (2003 apud RICH, 1988, p.30) “A Inteligência

Artificial é o estudo de como fazer os computadores realizarem tarefas em que, no

momento as pessoas são melhores”. No entanto, a Inteligência Artificial é uma no-

ção que dispõe de múltiplas interpretações, não raro conflitantes ou circulares. A

área de pesquisa que dá origem a Inteligência Artificial na tecnologia é a Ciência da

Computação e a Engenharia da Computação, ambas com o foco em buscar méto-

dos computacionais que possam simular a capacidade racional de resolver proble-

mas, pensar de forma inteligente.

Nestes últimos anos a Inteligência Artificial tem ultrapassado os tradicionais

programas de conversão e tem envolvido áreas como visão computacional, análise e

síntese da voz, lógica difusa, redes neurais artificiais e muitas outras. Nos subcam-

pos que existem na Inteligência se encontra o estudo de modelos redes neurais

(conexões). Então uma rede neural pode ser vista como um modelo matemático

simplificado do funcionamento do cérebro humano. Estes recebem e enviam estímu-

los elétricos entre si, formando uma rede altamente interconectada.

Com o desenvolvimento dos estudos e base teórica da Inteligência Aritificial,

quando há necessidade de se escrever ou desenvolver uma solução inteligente utili-

zando a mesma, é comum que se usam teorias já existentes ao invés de se criar

novas teorias para estes fins. Um sistema desenvolvido com inteligência artificial não

somente é capaz de armazenar e manipular dados e informações como também

representar e manipular o conhecimento. Ou seja, é capaz de deduzir e apresentar

novos resultados em um ambiente o qual é sujeito. Um dos resultados mais úteis

que surgiram das pesquisas em IA, é que fatos e regras, conhecimento declarativo,

podem ser representados separadamente dos algoritmos de decisão - conhecimento

procedimental.

Desta forma, as questões principais a serem contornadas pelo desenvolvedor

Page 22: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

22

de um sistema de Inteligência Artificial, segundo figura 1 são:

Figura 1 - Conceito dos sistemas de Inteligência Artificial

Sendo assim, conclui-se que o campo ou espaço de um sistema de Inteligên-

cia Artificial tem por objetivo, o contínuo aumento de inteligência do computador,

com base nos na inteligência natural. Para este fim, se pode definir como sendo uma

junção de técnicas suportadas por computador simulando capacidades dos seres

humanos.

3.1 SISTEMAS ESPECIALISTAS

A medida que se tem necessidade de desenvolver um sistema para processar

informação não numérica, é possível se desenvolver um sistema especialista. O

mesmo é capaz de apresentar conclusões sobre um assunto específico, desde que

seja corretamente orientado e alimentado.

Estes sistemas são aplicações da Inteligência Artificial e são comumente

utilizado nas empresas. Situa-se na área de aplicação da Ciência Cognitiva discipli-

nas como: biologia, neurologia, psicologia, matemática, para verificar como os seres

humanos aprendem, criam, e desenvolvem aplicações baseada no conhecimento

com acompanhamento de um especialista (O´BRIEN, 2004).

Concluiu-se que o sistema especialista útil para os diversos setores da em-

presa, podendo ser utilizado de acordo com a necessidade também específica, facili-

tando a tomada de decisão de maneira precisa e eficaz. Segundo Stair e Reynolds,

estão representadas como Soluções oferecidas pelo Sistema Especialista na Figura

1:

Page 23: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

23

Figura 2 – Soluções oferecidas pelo sistema especialista

Fonte: Stair; Reynolds(2002, p.351)

a) Ajuste da meta estratégica – Representam tomadas de decisão na em-

presa, constituem a estrutura de todas as outras atividades da organiza-

ção, podendo os sistemas especialistas sugerir estas metas;

b) Planejamento – A capacidade de alcançar os objetivos corporativos gerais

com planos específicos, ajudar uma organização a competir no mercado e

podem ser investigados por meio dos sistemas especialistas;

c) Projeto - Projetar serviços e produtos requer experiência e conhecimento

do comportamento do mercado. Os sistemas especialistas têm sido

desenvolvidos para auxiliar no desenvolvimento de vários produtos;

d) Tomada de decisão – Esses sistemas sugerem possibilidades diferentes

no que concerne aos problemas e abordagens lógicas do processo de to-

mada de decisão, podendo também, melhorar o processo de aprendizado

para profissionais sem muita experiência, em tomada de decisão;

e) Controle e Monitoramento de Qualidade - Os sistemas especialistas po-

dem ajudar no monitoramento de diversos sistemas e propor soluções

para problemas em outros sistemas, podendo também, ser utilizados para

monitorar a qualidade dos produtos;

Page 24: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

24

f) Diagnóstico – O monitoramento determina o estado atual do sistema e o

diagnóstico busca as causas e propõe soluções.

Portanto, são considerados sistemas especialistas, sistemas que fundamen-

tam suas decisões na experiência de um profissional, e são utilizados para solucio-

nar problemas e dúvidas em áreas específicas da empresa. Segundo Turban et al

(2004, p. 376) considera que “sistema especialista é um sistema de computador que

tenta imitar especialistas humanos aplicando metodologias de raciocínio ou conheci-

mento sobre uma área específica”.

3.2 REDE NEURAL ARTIFICIAL

Segundo Braga, Carvalho e Ludemir (2000), “as Redes Neurais Artificiais

(RNAs) são modelos matemáticos que se assemelham às estruturas neurais biológi-

cas e que tem capacidade computacional adquirida por meio de aprendizado e

generalização”. Então, a rede neural absorve dados e, a partir destes, modifica seus

parâmetros de entrada.

Uma Rede Neural Artificial treinada pode ter uma boa capacidade de

generalização independentemente de ter sido controlada durante o treinamento. Boa

parte das pesquisas atual na área, visa o desenvolvimento de modelos e técnicas de

aprendizado que tenham algum controle de generalização (BRAGA; CARVA-

LHO;LUDEMIR, 2000).

Qualquer problema de aproximação de funções contínuas pode ser resolvido

por meio de Redes Neurais Artificiais, independente do número de variáveis

envolvidas.” Conforme ainda afirmam Braga, Carvalho e Ludemir, “uma das

características mais importantes das Redes Neurais Artificiais é que as mesmas são

aproximadoras universais de funções multivariáveis contínuas.

3.2.1 Neurônio biológico

No século XIX o médico Ramon y Cajal em seus diversos estudos sobre o

sistema nervoso central descreveu anatomicamente um neurônio. Assim como qual-

quer outra célula biológica o neurônio é composto de uma membrana celular e pos-

sui papel essencial no funcionamento elétrico de células nervosas.

Page 25: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

25

O corpo dessas células nervosas é capaz de projetar extensões filamentares

que são conhecidos como dentritos e axônio, conforme ilustrado na Figura 3. Os

dentritos são filamentos que cobrem um volume maior que o próprio corpo celular

formando uma espécie de árvore. E já o axônio, também chamado de fibra nervosa

é responsável em conectar células nervosas no sistema nervoso. Sendo esta então

a composição considerada o centro de processos metabólicos.

Cada neurônio possui um axônio e este pode chegar a vários metros. Alguns

neurônios encontrados no sistema nervoso central – dos vertebrados, é composto

de uma capa de mielina, uma substância lipída proveniente de células do hipotá-

lamo. Esta mielina é capaz de envolver fibras nervosas fazendo que estas fibras

possam criar os impulsos nervosos mais rápidos, acelerando assim a transmissão

de informação pelo neurônio.

Figura 3 – Neurônio biológico

Fonte: Valença (2006, p.18)

Passou-se a entender o neurônio biológico como sendo basicamente o

dispositivo computacional elementar do sistema nervoso, que possui muitas entra-

das e uma saída (KOVACS, 2006). Principalmente por que o “Spike” que é a ativa-

ção do neurônio dada a configuração de entrada, pode ser visto como um sistema

“ligado” x “desligado” (1,0) no seu comportamento coletivo.

3.2.2 Neurônio Artificial

O neurônio artificial é uma representação matemática do neurônio biológico. A

primeira proposta para representar matematicamente um neurônio foi realizada por

McCulloch e Pitts em 1943. O modelo utiliza uma regra de propagação e uma de

ativação para representar um neurônio biológico. A emissão de sinal é fundamen-

tada na Lei do Tudo ou Nada. Conforme demonstrado por Valença (2007,p.20 ) a

Page 26: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

26

representação matemática é descrita nas próximas linhas:

Considere como sendo variáveis de entrada do

neurônio de saída i. a entrada liquida é dada pela seguinte regra de propaga-

ção.

Onde são os pesos sinápticos e é o limiar representado na Figura 4.

Figura 4 – Neurônio de McCulloch e Pitts com limiar explícito

Fonte: Valença (2006, p.20)

A função de ativação neste caso é a função degrau, isto é:

{

Nos algoritmos de aprendizagem, considerar do limiar de forma implícita é

mais adequado. A Figura 5 apresenta uma alternativa de representação do neurônio,

em que o efeito da função limiar é representado por se fazer duas modificações:

Page 27: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

27

Figura 5 - Neurônio de McCulloch e Pitts com limiar implícito

Fonte: Valença (2006, p.21)

Adicionou uma entrada de valor fixo

Adicionado novo peso sináptico (VALENÇA, 2006).

3.2.3 Aprendizado

O processo de aprendizado em Redes Neurais Artificiais é constantemente

submetido a intensas pesquisas relacionadas às redes biológicas e neurais. Exis-

tem inúmeros processos de aprendizado adequados a diferentes tipos de redes neu-

rais. Estes processos podem ser divididos em dois tipos: Associativo e não associa-

tivo.

O tipo Associativo é a forma de aprender através do relacionamento entre

pares de estímulos e está relacionado ao modelo de aprendizado para Redes Neu-

rais Artificiais supervisionadas.

Já no tipo não associativo não existem estímulos secundários. Deste modo, é

por meio da repetição de um estímulo que surge a oportunidade de aprender sobre

determinada propriedade. Este tipo é um modelo para Redes Neurais Artificiais não

supervisionadas (KOVACS, 2006).

3.2.3.1 Aprendizado supervisionado

Este é o método mais utilizado para treinamento de Redes Neurais Artificiais.

O objetivo dele é ajustar os parâmetros da rede para encontrar uma ligação entre os

Page 28: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

28

pares de entrada e saída. Um mecanismo de avaliação indica um comportamento

esperado da rede a fim de direcionar o processo de treinamento. A saída é compa-

rada com a resposta desejada e recebe informações sobre o erro da resposta cor-

rente. Para todos os padrões apresentados, são comparadas as respostas deseja-

das com as respostas calculadas, ajustando os pesos das conexões para minimizar

o erro.

A grande desvantagem do aprendizado supervisionado é que, na ausência do

avaliador, a rede não irá evoluir e aprender novas estratégias em situações não

apresentadas pelo treinamento da rede. Os algoritmos mais conhecidos para

aprendizado supervisionado são a regra Delta e o algoritmo Backpropagation.

Existem duas formas de implementação do aprendizado supervisionado: off-

line e on-line. Off-line: os dados de treinamento não mudam e, ao obter uma solução

para a rede, ela permanece fixa. Quando novos dados são adicionados ao treina-

mento, ele deve ser refeito. On-line: o conjunto de dados muda continuamente e a

rede está em contínuo processo de adaptação. (BRAGA,2008;AZEVEDO,2000)

3.2.3.2 Aprendizado não supervisionado

O modelo não supervisionado não requer um supervisor. Para estes algorit-

mos é necessária somente a apresentação dos padrões de entrada. Com estes pa-

drões a rede tenta estabelecer uma harmonia através regularidades estatísticas.

Desta forma ela estabelece representações internas para criar características e

separar por meio de classes ou grupos automaticamente.

O sistema de aprendizado não supervisionado pode adquirir uma variedade

de formas distintas, como consistir em uma camada de entrada, uma de saída,

conexões feedforward da entrada para a saída e conexões laterais entre os neurô-

nios da camada de saída.

3.2.4 Adaline

Em 1960, Bernad Widrow, professor da universidade de Stanford, apresentou

em uma conferência do Institute of Radio Eletrônics - IRE hoje conhecida como

Institute of Eletrical and Eletronic Engineers - IEEE um modelo muito simples de

rede neural, o qual ele batizou de Adaptive Linear Neuron - ADALINE. Este modelo é

Page 29: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

29

baseado em elementos de processamento que executam operações de soma e

posteriormente é executada uma comparação com um valor linear.

A grande contribuição de Widrow foi o algoritmo de treinamento chamado de

regra Delta que posteriormente deu origem ao algoritmo Back-propaga-

tion.(BRAGA,2008;AZEVEDO,2000)

ADALINE é um modelo linear de Rede Neural Artificial com aprendizado

supervisionado, cuja saída é simplesmente a combinação dos componentes do vetor

de entrada x. Seu valor de saída é limitado a +1 se o resultado do somatório de en-

trada for positivo e a -1 se o resultado do somatório de entrada for negativo. Este

comportamento bipolar tem seus pesos adaptados em função do erro de sua saída

linear ( ∑ ). Isto leva a uma função de custo minimizado por ser quadrática

nos pesos de entrada . Desta forma, se garante a minimização pelo método do

gradiente. (BRAGA,2008).

3.2.4.1 Algoritmo de aprendizado

A regra de aprendizado que Widrow propõe usar a função de entrada antes da

saída ser mapeada, este modelo é conhecido como procedimento de aprendizado

Least Means Square - LMS, ou regra Delta.

Desta forma, a função de saída pode ser:

é o peso para o neurônio , para o neurônio , São entradas para o neurônio

e é a função de entrada para o neurônio , e é um termo chamado de “bias”,

que sempre apresenta uma entrada +1 e um peso adaptativo .

ADALINE não é capaz de aprender a separar funções não linearmente separáveis.

Portanto, não será abordada a sua aplicação para auxiliar no diagnóstico clínico.

(AZEVEDO,2000).

3.2.5 Perceptron

Em 1058 Rosenblatt propôs o modelo Perceptron, que é composto por uma

estrutura de rede, cuja sua unidade básica são nodos MCP, e uma regra de aprendi-

zado. Anos depois ele demonstrou que um nodo MCP treinado com o algoritmo do

Page 30: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

30

Perceptron sempre irá convergir caso o problema a ser solucionado possa ser linear-

mente separável.

O modelo original proposto por Rosenblatt era composto por unidade de en-

trada, unidades de associação e por unidades de saída, responsável pelas respos-

tas. Apesar de este modelo possuir três níveis, ele é conhecido como Perceptron de

uma única camada. Isto porque somente os níveis de saída possuem propriedades

adaptativas (AZEVEDO,2000;BRAGA,2008).

3.2.5.1 Algoritmo de aprendizado

A regra de aprendizado de uma rede Perceptron consiste na adaptação dos

seus pesos de forma que a rede execute uma determinada tarefa de classificação.

Conforme demonstrado por (BRAGA,2008) a equação geral para a atualização dos

pesos de um nodo Perceptron simples é demonstrado na equação abaixo.

A limitação desta função está em obter apenas soluções para problemas de

separação de duas classes linearmente separáveis em um tempo finito

(BRAGA,2008) .

3.2.6 Redes Neurais Multi Camadas

Para a solução de problemas não linearmente separáveis é necessária a

utilização de uma ou mais camadas intermediárias. Um ponto de atenção para este

tipo de implementação é que, conforme a distribuição dos dados, a rede pode

convergir para um mínimo local ou levar um tempo considerável para encontrar uma

solução válida. (BRAGA,2008).

Na década de 70 houve uma redução nas pesquisas relacionadas as Redes

Neurais Artificiais por causa da falta de conhecimento de algoritmos para o

treinamento de redes com uma ou mais camadas.

Redes multilayer perceptron MLP possuem um poder computacional bem ele-

vado comparado as de apenas uma camada. Deste modo, MLPs podem tratar da-

dos que não são linearmente separáveis. A precisão e sua implementação depende

apenas do número de nodos nas camadas intermediárias. A Figura 6 representa

uma MLP:

Page 31: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

31

Figura 6 - Rede neural Percepton multicamada Fonte: Seielo

Em uma rede multicamadas, o processamento realizado por cada nodo é defi-

nido pela combinação dos processamentos realizados pelos nodos da camada ante-

rior que estão conectados a ele. Para uma rede de apenas duas camadas

intermediárias, o processamento descrito nas próximas linhas ocorre em cada uma

delas (BRAGA,2008).

Primeira camada intermediária: Nodo traça retas no espaço de padrões de

treinamento. Segunda camada intermediária: cada nodo combina as retas traçadas

pelos neurônios da camada anterior conectados a ele, formando regiões convexas,

onde o número de lados é definido pelo número de unidades a ele conectadas. Ca-

mada de saída: Cada nodo forma regiões que são combinações das regiões conve-

xas definidas pelos nodos a ele conectados da camada anterior. Desta maneira, os

nodos definem regiões com formatos abstratos.

As unidades intermediárias de uma rede do tipo MLP funcionam como

detectores de características. Com um número suficientemente elevado de unida-

des intermediárias, é possível formar representações internas para qualquer con-

junto de padrões de entrada.

O número de nodos nas camadas intermediárias na maioria das redes é defi-

nido empiricamente. Este número está diretamente relacionado com a distribuição

Page 32: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

32

dos padrões de treinamento e validação da rede. No entanto existem alguns méto-

dos propostos, sendo que, os mais utilizados são:

a) Definir o número de unidade em função do número de entradas e saídas;

b) Utilizar um número de conexões dez vezes menor que o número de exem-

plos. Este método apenas reduz a incidência de overfitting. Caso o número

de exemplos for muito maior que o número de conexões, overfitting é

improvável, mas existe o risco de ocorrer underfitting. Entendendo-se

underfitting como um “subajuste” que ocorre quando a rede não é

suficientemente treinada para se tornar capaz de produzir resultados

satisfatórios ou convergir; E overfitting é considerado um “super-ajuste” e

ocorre quando a rede é demasiadamente treinada e passa a decorar os

dados apresentados.

Para a adequação do número de nodos na camada intermediária os seguintes fatores devem ser analisados:

a) Número de exemplos de treinamento;

b) Quantidade de ruído presente nos exemplos;

c) Complexidade da função a ser aprendida;

d) Distribuição estatística dos dados de treinamento.

A quantidade de unidades de entrada e de saída varia conforme o problema,

para alguns é necessário apenas uma unidade de entrada e uma de saída, já para

outros este valor pode crescer exponencialmente com o número de entradas. A solu-

ção mais eficiente é aquela que o número de unidades cresce de forma polinomial

com o aumento no número de entradas (BRAGA, 2008).

3.2.6.1 Treinamento em redes MLP

Existem vários algoritmos para treinar redes MLP. Estes algoritmos são geral-

mente do tipo supervisionado, e podem ser classificados em dois tipos, estático e

dinâmico.

a) Estático: Não alteram a estrutura da rede, apenas variam apenas os valo-

res de seus pesos;

b) Dinâmico: Podem reduzir ou aumentar o tamanho da rede (número de

camadas, números de nodos nas camadas intermediárias e número de

conexões).

Page 33: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

33

O algoritmo mais conhecido para o treinamento deste tipo de rede é o algo-

ritmo back-propagation. A maioria dos métodos de aprendizado para Redes Neurais

Artificiais do tipo MLP utiliza variações deste algoritmo.

Este algoritmo é do tipo supervisionado, que utiliza pares de entrada e saída

desejada, para por meio de um mecanismo de correção de erros ajustar os pesos da

rede. Seu treinamento consiste em dois passos. No primeiro, é apresentado às

unidades da camada de entrada e a partir dessa camada as unidades calculam sua

resposta que é produzida na camada de saída o erro é calculado. E no segundo

passo, este erro é propagado a partir da camada de saída até a camada de entrada

e os pesos das conexões das camadas internas são modificados. Com isso, o erro

vai sendo progressivamente diminuído (FERNANDES,2005; BRAGA 2008) .

O back-propagation está fundamentada na regra delta proposta por Widrow e

Holf, conhecida também como regra delta generalizada. O objetivo deste algoritmo

é definir os erros dos nodos das camadas intermediárias. Com isso é possível ajus-

tar seus pesos através do método do gradiente. A derivação da regra delta generali-

zada é semelhante a da regra delta. Desta forma, a função para a minimização do

erro é uma função quadrática definida pela função abaixo:

∑∑

é a medida do erro total, é o número de padões, é o número de unidades

de saída, é a -ésima saída desejada e é a -ésima saída gerada pela rede.

Esta equação apresenta o erro total cometido pela rede ou a quantidade que para

todos os padrões de um dado conjunto, as saídas geradas são diferentes das saí-

das desejadas (BRAGA,2008).

A regra delta generalizada necessita que as funções de ativação dos nodos

sejam contínuas diferenciáveis. Estas funções são conhecidas como: Funções

semilineares:

A constante representa o numero de entradas do nodo e , o peso da

conexão entre a entrada e o nodo (BRAGA,2008).

Ao utilizar o algoritmo back-propagation possui uma limitação relacionada ao

tempo de treinamento, algumas vezes são necessários milhares de ciclos para se

Page 34: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

34

chegar a níveis de erros aceitáveis, principalmente se estiver sendo simulado em

computadores seriais. Pois a CPU calcula as funções para cada unidade e suas

conexões separadamente (FERNANDES, 2005).

Para reduzir o tempo de treinamento do algoritmo de retro propagação e ao

mesmo tempo garantir a estabilidade do processo D. Rumelhart descreveu o método

chamado de momento, no qual ele adiciona um termo para o ajuste de peso, que é

proporcional ao valor da mudança de peso anterior. Uma vez que o ajuste é feito, ele

é guardado e seve para modificar o ajuste dos pesos subseqüentes (AZE-

VEDO,2000). Braga afirma que Redes perceptron multicamadas são as redes mais

utilizadas, por sua facilidade de implementação e por sua simplicidade. Dentro das

aplicações que ele destaca, está a de diagnóstico médico.

3.2.7 Rede Hopifield

É uma implementação de memórias associativa por uma rede recorrente pro-

posta por Hopfield em 1982. Ele descreveu como capacidades computacionais po-

dem ser obtidas através de redes com elementos tipo neurônio (KOVÁCS, 2006).

Este tipo de rede possui apenas uma única camada de unidades de processamento.

A cada unidade é determinado um valor de atividade, ou estudo que é binário.

A cada instante a rede possui um estado. Este estado é um vetor de 1s e 0s. Cada

um dos elementos deste vetor corresponde a uma unidade individual de processa-

mento na rede.

Esta arquitetura torna a rede recursiva, isso porque as saídas de cada uni-

dade são entradas de todas as outras unidades em uma mesma camada conforme

representado pela Figura 7. Cada interconexão possui um peso associado. Este peso

é um valor escalar. denota o peso da unidade para a unidade . Em uma rede

Hopfield os pesos e são iguais, portanto, , . Quando esta igual-

dade é verdadeira significa que a rede possui capacidade de convergência e deste

modo atinge um valor estável (AZEVEDO, 2000).

Page 35: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

35

Figura 7 - Rede Hopfield formada de N=4 neurônios

Fonte: Castro (2011, p.01)

Para cada unidade de processamento a rede deve apresentar um estado ini-

cial. Um procedimento de atualização é aplicado e a cada instante uma unidade é

atualizada. O Estado de cada unidade é afetado ou não a cada procedimento. Esta

atualização continua até que todas encontrem um equilíbrio.

Em uma rede Hopfield o neurônio possui dois estados. A saída do neurônio

é caso ele não se encontre ativado e se ele estiver ativado. O neurônio

recebe uma entrada do neurônio com uma força de conexão . A regra de

ativação pode ser observada abaixo,

{

é um “threshold” que deve ser definido para o neurônio ser ativado.

Uma característica marcante em redes deste tipo é o fato de ser assíncronas.

Em cada instante apenas um neurônio muda de estado. Todo o neurônio tem a

mesma probabilidade de ser escolhido para uma possível transição de estado.

A energia em cada nó é definida por:

Page 36: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

36

A energia total é definida por:

∑∑ ∑

Apesar de ser chamada de função de energia ela não representa a energia

real de qualquer sistema físico. Ela é uma função objetiva que é minimizada pela

rede. A cada atualização de uma unidade de processamento a energia da rede dimi-

nui ou permanece a mesma (AZEVEDO, 2000).

O comportamento da rede só pode ser válido se os estados estáveis possam

ser selecionados. Para isso existem dois métodos: Diretamente por cálculo e por

treinamento da rede.

Page 37: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

37

4 PROJETO

Para cumprir com o objetivo do trabalho serão realizadas as seguintes etapas:

a) definir linguagem de programação;

b) pesquisar bibliotecas de Rede Neural Artificial disponíveis na linguagem

escolhida e definir qual será aplicada no trabalho;

c) definir Redes que serão trabalhadas;

d) desenvolver um aplicativo que utilize as redes escolhidas;

e) comparar a assertividade das redes escolhidas.

4.1 LINGUAGEM DE PROGRAMAÇÃO

Para este trabalho a linguagem de programação escolhida será Java. Java é

uma linguagem relativamente fácil, pois sua sintaxe se assemelha muito com C e

também por possuir uma comunidade muito ativa disposta a ajudar e solucionar

eventuais dúvidas.

4.2 BIBLIOTECAS DE REDES NEURAIS ARTIFICIAIS PARA JAVA

Existem uma infinidade de projetos de Redes Neurais Artificiais desenvolvidos

em Java. Estas bibliotecas visam simplificar o trabalho do desenvolvedor. Graças a

elas o programador dedica maior parte do seu tempo no problema que se deseja

solucionar com a Rede Neural Artificial, sem necessariamente precisar desenvolver

uma Rede Neural Artificial do zero. Os principais projetos construídos sobre a

plataforma Java são: Neuroph e Encog.

4.2.1 Neuroph

É um projeto de redes neurais artificiais em Java que utiliza uma arquitetura

de orientação a objetos. O que chama a atenção neste projeto é o fato dele possuir

um Framework construído sobre a IDE Netbeans. O que facilita a criação de uma

rede neural em minutos. Na Figura 8 é apresentado o Framework Neuroph.

Page 38: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

38

Figura 8 – Framework Neuroph

Fonte: Neuroph

Neuroph pode ser considerado um projeto bem completo, sua implementação

abrange as mais variadas Redes Neuras Artificiais.

a) Adaline;

b) Perceptron;

c) Perceptron multicamadas com backpropagation;

d) Hopfield;

e) Kohonen;

f) Hebbian;

g) Rede competitiva;

h) Instar;

i) Outstar;

j) Rede RBF;

k) Fuzzi.

4.2.2 Encog

É uma biblioteca avançada desenvolvida em Java com o intuito de auxiliar o

programador no desenvolvimento de aplicativos que utilizem Redes Neurais Artifici-

ais. Este projeto tem com o seu principal patrocinador o Heaton Research e sua li-

cença está sobre o regime apache 2.0. No site http://www.heatonresearch.com é

possível encontrar vários vídeos e e-Books com foco em Inteligência Artificial. Na

Figura 9 é apresentado o site Heaton Research.

Page 39: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

39

Figura 9 – Site Heaton Research Fonte: Heaton Research

Encog suporta os mais variados tipos de arquitetura para Redes Neurais Artifici-

ais. Segue a lista dos tipos suportados.

a) ADALINE;

b) Memória associativa bidirecional;

c) Máquina de Boltzmann;

d) Rede Counterpropagation;

e) Rede Elman;

f) Perceptron;

g) Hopfield;

h) Rede Jordan

i) Rede Função Radial Básica

j) RSOM

k) Kohonen

A biblioteca mais adequada pra o trabalho é a Neuroph. A escolha dela se

justifica pelo fato de possuir um framework. O que facilita na execução de testes e

criação de pequenos protótipos para um melhor entendimento do comportamento da

rede e seu grau de assertividade.

4.3 APLICATIVO PARA ANÁLISE DE BALANÇO

Para que o aplicativo cumpra com o objetivo de utilizar Redes Neurais Artifici-

ais Para análise de balanço foram levantados os seguintes requisitos:

a) possuir cadastro de Ativos;

b) possuir cadastro de Passivos;

c) possuir cadastro de grupos de balanços para treinamento;

Page 40: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

40

d) Possuir área para análise de um balanço qualquer.

A Rede Neural Artificial a ser avaliada será Hopfield, e por sua vez esta é uma

rede de memória associativa com entradas e saídas binárias (0 e 1), e neste caso

houve a necessidade de desenvolver uma função de ativação dos neurônios. Para

cada grupo de balanços é calculado a média individual de todos os seus atributos.

Após é necessário calcular a média geral de todos os grupos de balanços. Somam-

se individualmente atributos ativos e atributos passivos, depois se verifica a

porcentagem que o atributo representa em seu grupo é maior ou menor que a

porcentagem encontrada na média geral. Caso seja maior, o valor adotado para o

atributo será um, caso menor ou igual o valor adotado será zero.

O foco do trabalho é desenvolver um modelo computacional, capaz de identificar

se um balanço qualquer, se encaixa, em um grupo de balanços já conhecidos pela

Rede Neural Artificial. Com base em tal relevância a Tabela 1 representa três

balanços fictícios que foram utilizados como base de conhecimento da Rede Neural

Artificial.

Tabela 1 – Balanços fictícios para treinamento

Ativo Balanço

A Balanço

B Balanço

C

Dinheiro em caixa 10000 50000 20000

Depósitos sem juros e contas de compensação 20000 40000 0

Depósitos e investimento com juros < 1 ano 30000 30000 12000

Despesas antecipadas 40000 20000 33000

Investimentos > 1 ano 50000 10000 5000

Passivo

Depósitos à vista 70000 20000 40000

Depósito a curto prazo (< 1 ano) 50000 30000 10000 Empréstimos tomados a curto prazo (< 1

ano) 30000 40000 20000

Outros passivos a curto prazo 10000 70000 48000

Depósito a longo prazo (> 1 ano) 60000 50000 23000 Empréstimos tomados a longo prazo (> 1

ano) 40000 20000 10000

Contas de Quase-Capital 20000 10000 78000 Fonte: Própria

O primeiro passo para verificar se a Rede Neural Artificial está identificando

corretamente os balanços é utilizar os dados já cadastrados como entrada. O

Aplicativo se comportou corretamente e identificou todos os balanços

Page 41: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

41

correspondentes. Outro teste relevante é trocar alguns valores de posição e

submete-los ao aplicativo para verificar o comportamento. Na Tabela 2 estão

representados os valores com pequenas intervenções para a Rede Neural Artificial.

Tabela 2 – Valores com Alterações básicas

Ativo Balanço

A Balanço

B Balanço

C

Dinheiro em caixa 10000 40000 20000

Depósitos sem juros e contas de compensação 20000 50000 0

Depósitos e investimento com juros < 1 ano 50000 30000 33000

Despesas antecipadas 40000 20000 12000

Investimentos > 1 ano 30000 10000 5000

Passivo

Depósitos à vista 70000 20000 40000

Depósito a curto prazo (< 1 ano) 50000 30000 10000 Empréstimos tomados a curto prazo (< 1

ano) 30000 40000 48000

Outros passivos a curto prazo 10000 70000 20000

Depósito a longo prazo (> 1 ano) 60000 50000 23000 Empréstimos tomados a longo prazo (> 1

ano) 40000 10000 10000

Contas de Quase-Capital 20000 20000 78000 Fonte: Própria

Ao submeter os dados da Tabela 2 o aplicativo se comporta de forma

esperada. Então se elaborou um conjunto de dados totalmente desconhecidos pelo

aplicativo conforme Tabela 3. Nesta tabela, o Teste A apresentou o tendência ao

balanço de treinamento do tipo B, o Teste B apresentou tendência ao balanço de

treinamento do tipo A e o Teste C tendeu ao balanço de treinamento do tipo C. O

aplicativo apresentou um resultado satisfatório, mas quando executado o Teste D, o

aplicativo não Identificou o padrão que ele se assemelha. Este comportamento pode

ocorrer com por que os dados são apenas fictícios e não representam uma realidade

contábil. Neste caso se faz necessário um estudo direcionado na área contábil com

dados reais.

Tabela 3 – Dados Desconhecidos

Ativo Teste A Teste B Teste C Teste D

Dinheiro em caixa 13280 2840 8420 30400

Depósitos sem juros e contas de compensação 16600 5680 0 12980

Depósitos e investimento com juros < 1 ano 9960 14200 13893 640

Despesas antecipadas 6640 11360 5052 750

Investimentos > 1 ano 3320 8520 2105 3800

Page 42: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

42

Passivo

Depósitos à vista 6640 19880 16840 9630

Depósito a curto prazo (< 1 ano) 9960 14200 4210 12435 Empréstimos tomados a curto prazo (< 1

ano) 13280 8520 20208 14650

Outros passivos a curto prazo 23240 2840 8420 6300

Depósito a longo prazo (> 1 ano) 16600 17040 9683 9460 Empréstimos tomados a longo prazo (> 1

ano) 3320 11360 4210 2200

Contas de Quase-Capital 6640 5680 32838 1300 Fonte: Própria

4.3.1 Apresentação do aplicativo

Para que o aplicativo possa contemplar os mais variados segmentos de

empresas, existe o cadastro de Ativos e Passivos. Consiste em uma interface bem

simples onde o usuário define quais serão os ativos e os passivos correspondentes

às análises que serão realizadas. Na Figura 10 é representado este cadastro.

Figura 10 - Cadastro de ativos

Uma rede neural artificial precisa de dados para gerar o conhecimento dela.

No aplicativo existe uma área onde o operador pode cadastrar vários tipos de balan-

ços padrões que geram o conhecimento para o aplicativo. A Figura 11 representa a

interface onde são cadastrados os balanços padrões.

Page 43: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

43

Figura 11 - Cadastro de Balanços

Depois de cadastrados os balanços são necessários cadastrar os seus devi-

dos valores para o treinamento da rede neural artificial. Na Figura 12 é representada

a interface para adicionar estes valores.

Figura 12 - Cadastro de valores de treinamento

Após realizados todos os cadastros o aplicativo está pronto para realizar aná-

Page 44: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

44

lises de balanços desconhecidos. Para isto é necessário acessar a opção Análise e

informar os valores de um balanço qualquer que se deseja analisar. Ao Executar a

analise o aplicativo irá informar qual dos balanços conhecidos, este novo se

assemelha, caso ele não se assemelhar com nenhum dos já cadastrados o aplica-

tivo informará que desconhece o balanço analisado. A Figura 13 representa a inter-

face para análise de balanços.

Figura 13 – Resultado de análise

Page 45: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

45

5 CONCLUSÃO

Com o objetivo de desenvolver um software aplicativo que utilize redes neu-

rais artificiais para análise de balanços patrimoniais, como ferramenta para auxiliar o

profissional contábil a identificar padrões em balanços distintos, utilizou-se a lingua-

gem de programação Java para o desenvolvimento do aplicativo e o projeto Neuroph

como o facilitador para a utilização da Rede Neural Artificial Hopfield.

Realiza-se uma pesquisa teórica que envolve conceitos de contabilidade e

Inteligência Artificial, principalmente sobre Redes Neurais Artificiais através de suas

características e comportamentos distintos entre os diferentes modelos conhecidos.

Após esta etapa realizou-se um estudo sobre qual é a melhor Rede Neural Artificial

para utilizar no aplicativo e entre as estudadas Hopfield apontou ser a mais ade-

quada, por não ser probabilística, ou seja, se ela reconhecer um padrão irá apre-

senta-lo caso contrário o resultado é dado como desconhecido.

Com relação às dificuldades encontradas, elas ajudaram a compreender a

estrutura de decisão de uma Rede Neural Artificial e com isso notou-se que a

utilização de dados fictícios mostrou a eficiência do modelo computacional proposto

para a Rede Neural artificial, mas que se houvesse a utilização de dados reais

poderia haver uma comprovação estatística da eficiência do aplicativo.

Para que o aplicativo se adapte ao cenário para analise de balanços

patrimoniais, é necessário que exista uma área para cadastro de ativos e cadastro

de passivos. Como uma Rede Neural Artificial necessita de Dados para treinamento

também se criou a área onde são cadastrados padrões de balanços já conhecidos

pelo profissional contábil, com o objetivo de treinar a Rede Neural Artificial. Já com a

base de conhecimento devidamente cadastrada, basta o profissional entrar com da-

dos inéditos na área de execução para saber se estes dados se assemelham com

os já cadastrados ou se a rede os desconhece.

Para dar continuidade ao trabalho sugere-se, para futuras pesquisas que,

validem o aplicativo através de dados reais; busquem novos modelos

computacionais e estatísticos para a ativação dos neurônios; utilizem outras redes

neurais de memória associativa para a identificação de balanços patrimoniais.

Page 46: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

46

REFERÊNCIAS

ARARIBÓIA, G. Inteligência Artificial: um curso prático. Rio de Janeiro: Livros Técnicos e Científicos Editora Ltda, 1998. AZEVEDO, Fernando Mendes de et al. Redes Neurais: com Aplicações e Controle e em Sistemas Especialistas. Florianópolis: VisualBooks, 2000. BRAGA, Antônio, CARVALHO, André, LUDEMIR, Teresa. Redes Neurais Artificiais: Teoria e Aplicações. 1.Ed. Rio de Janeiro: LTC, 2000. BRAGA, Antônio de Pádua et al. Redes Neurais Artificiais: Teoria e Aplicação. Rio de Janeiro: Livros Técnicos e Científicos Editora S.A., 2000. CASTRO, Fernando Cesar C. de. Redes neurais artificiais. Disponível em:< http://www.ee.pucrs.br/~decastro/RNA_hp/pdf/RNA_C8.pdf>. Acesso em: 19 jun.2011. CHAGAS, Gilson. Contabilidade Geral Simplificada. Brasília, DF: Editora Senac, 2005. FERNANDES, Anita Maria da Rocha. Inteligência Artificial: noções gerais. Florianópolis: VisualBooks, 2005. GONZÁLES, Raúl Rojas. Neural Networks: A Systematic Introduction. Berlin: Springer, 1996. HEATON, Jeff. Introduction Neural Network with Java: 2.Ed. USA: Heaton Research, 2008. HEATON RESEARCH. Disponível em: < http://www.heatonresearch.com >. Acesso em 13 jun.2011. IUDÍCIBUS, Sérgio de. Teoria da Contabilidade. São Paulo: Atlas, 2006. IUDÍCIBUS, MARION, Sérgio de; José Carlos. Introdução à Contabilidade. São Paulo: Atlas, 2006. KOVÁCS, Zsolt lászló. Redes Neurais Artificiais: Fundamentos e aplicações. São Paulo: Livraria da Física, 2006. MARQUES. Wagner Luiz. Contabilidade Gerencial à Necessidade das Empresas. 2. Ed. Cia Norte, PR: 2004. NEUROPH. Disponível em: < http://neuroph.sourceforge.net >. Acesso em: 13 jun.2011. O´BRIEN. James. A. Sistemas de Informação: E as decisões gerenciais na era da internet. 2. ed. São Paulo: Saraiva, 2004.

Page 47: 2011-2 - Aplicao de Redes Neurais Artificiais Para Auxiliar Em Diagnstico de Anlise de Demonstraes Financeiras

47

OLIVEIRA, Edson. Contabilidade Informatizada: Teoria e Pratica. 2. ed. São Paulo: Atlas, 2000. PADOVEZE, Clóvis Luís. Sistemas de Informações Contábeis. São Paulo: Atlas, 2009. PADOVEZE, Clóvis Luís. Manual de Contabilidade Básica. São Paulo: Atlas, 2010. PIMENTEL, Alex. Tudo o que você precisa saber sobre economia para conquistar o sucesso financeiro. São Paulo: Digerati Books, 2007. ROSINI E PALMISANO, Alessandro Marco; Angelo. Administração de Sistemas de Informação e a Gestão do Conhecimento. São Paulo: Thonsom, 2003. SÁ, Antonio Lopes de. Dicionário de Contabilidade, 9. ed. São Paulo: Atlas, 1999. SEIELO, The Scientific Electronic Library Online. Disponível em: < http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0104-530X2008000300016>. Acesso em: 11 jun.2011. STAIR E REYNOLDS, Ralph M; George W. Princípios de sistemas de informação. 4. ed. Rio de Janeiro: LTC, 2002. TURBAN, Efraim. Tecnologia da Informação para Gestão – Transformando os negócios na economia digital. São Paulo: Artmed Editora SA 2002. TURBAN, Efraim; McLEAN, Ephraim; WETHERE, James. Tecnologia da informação para gestão: transformando os negócios na economia digital. 3. ed. São Paulo: Bookman, 2004. VALEÇA, Mêuser. Fundamentos de Redes Neurais Artificiais: Exemplos em java. Olinda, PE: Livro Rápido, 2007.