39
Universidade do Minho Escola de Engenharia Vanessa Catarina Costa Pessoa Exploração de técnicas de Big Data para a deteção de padrões anómalos na produção

Exploração de técnicas de Big Data para a deteção de padrões … · 2017-03-10 · wafer artificial feita de chips de silício e um composto de fundição” [6]. ... dados

Embed Size (px)

Citation preview

Universidade do Minho

Escola de Engenharia

Vanessa Catarina Costa Pessoa

Exploração de técnicas de Big Data para a

deteção de padrões anómalos na produção

Universidade do Minho

Escola de Engenharia

Vanessa Catarina Costa Pessoa

Exploração de técnicas de Big Data para a deteção de

padrões anómalos na produção

Pré-dissertação

Ciclo de Estudos Integrados Conducentes ao Grau de

Mestre em Engenharia e Gestão de Sistemas de

Informação

Trabalho efetuado sob a orientação do

Professor Doutor Henrique Manuel Dinis dos Santos

e nas instalações da

NANIUM S.A.

Janeiro de 2017

Resumo

A execução deste projeto de investigação visa estudar a viabilidade de implementar uma

solução de deteção de anomalias de forma automática na linha de produção de uma fábrica que

tem como finalidade a produção de semicondutores.

Atualmente, a inspeção das wafers na linha de produção é efetuada, primeiramente, por

uma inspeção automática realizada pelas Camtek, que correspondem às máquinas que são

utilizadas para a realização da inspeção ótica de forma automática (AOI).

A Camtek realiza uma espécie de “varrimento” à wafer, tendo a capacidade de detetar

possíveis anomalias e inclusive de capturar imagens das wafers. Quando a Camtek termina o

varrimento de um lote completo, esta envia automaticamente as imagens para a secção de

classificação das anomalias, pelo que o operador terá de categorizar, para cada imagem

apresentada, se determinado ponto da imagem representa uma anomalia e, de acordo com essa

classificação, terá de aplicar os critérios de aceitação ou de rejeição correspondentes que estão

devidamente catalogados, pelo que, este projeto nasceu da necessidade de auxiliar os operadores

da linha de produção na tomada de decisões relativas à classificação de anomalias nas wafers,

nomeadamente, com a necessidade do computador poder dar sugestões referentes ao tipo de

anomalia presente na imagem e relativamente à aceitação ou rejeição dos critérios de

classificação. Deste modo, poderíamos atenuar as questões de erros e desvios padrões

relacionados, tanto com o erro humano, como com o erro proveniente das máquinas.

Espera-se que, numa primeira fase, haja uma familiarização com as nomenclaturas usadas

na organização, para que, numa segunda fase, se possa dar inicio à conceptualização da arquitetura

do projeto, e para que posteriormente se possa passar ao estudo das técnicas de processamento de

imagem existentes para sua futura implementação no projeto, usando como ferramenta base o

Hadoop. Além disso, espera-se inclusive que sejam feitos testes às diferentes técnicas a estudar

de modo a que se perceba qual a melhor alternativa a implementar, pelo que, pressupõe-se a

avaliação do grau de confiança relativamente ao algoritmo a desenvolver, uma vez que este pode

revelar pouca rentabilidade devido aos seus cuidados de manutenção e à fiabilidade dos resultados

que dele se obtêm.

Portanto, em termos de abordagem metodológica a seguir, este projeto seguirá a Design

Science Research, incidindo com maior afluência no paradigma “Design-Science”, visto este ser

o paradigma que visa estender os limites de recursos humanos e organizacionais, criando

artefactos novos e inovadores [1].

Abstract

The execution of this research project consists in study the viability of an implementation

of a solution about automatic anomaly detection in a factory’s production line that have, as a main

propose, the semiconductors industry.

Currently, the wafer inspection at the factory’s production line is made, firstly, by an

automated optical inspection (AOI), conquered by the Camtek, that are the machines responsible

to do it. Then, this machine makes a scan to the wafer, detecting possible anomalies and taking

pictures to the different parts of the wafer. When Camtek finishes the scan of a complete lot, the

pictures taken previously are sent to the section where is made the anomaly’s classification, so

that the operator has to do the categorization, for each image that is presented, if there’s some

point on the image that represents an anomaly, and, according to the classification done, the

operator has to apply the criteria for acceptation or for rejection of the wafer’s classification, that

are catalogued.

So, this project has born through the necessity of helping the operators of the factory’s

production line in decision making relative to the wafer anomaly’s classification and through the

possibility of the computer could suggest about the kind of anomaly that is present in the image

that is being showed to the operator, and about the decision of accept or reject the anomaly

accordingly the classification’s criteria. With this kind of solution, we can reduce the human and

the machine errors.

In a first phase, it’s expected to have a familiarization with all the nomenclatures that are

used in the organizational environment, then, in a second phase, it’s expected the start of the

conceptualization of the architecture of the project, so that, it can be studied the techniques of

image processing for the future implementation of the project. For that, the main tool to use is

Hadoop. Besides that, it’s expected to make tests to that techniques, so that it can be perceived

which one is the best to implement, so, it is assumed the evaluation of the confidence rating about

the algorithm to develop, because this one can show little profitability due to it’s maintenance

care and due to the reliability of the results obtained.

Therefore, in terms of methodological approach to follow, this project will follow the

Design Science Research, focusing more in the paradigm Design-Science, because this one relates

about expanding the limits of the human resources and the organization, creating new and

innovative artifacts [1].

Índice de conteúdos 1. Siglas e acrónimos ................................................................................................................. 7

2. Glossário ............................................................................................................................... 8

3. Introdução ............................................................................................................................. 9

4. Revisão de literatura ............................................................................................................ 11

4.1. Introdução ................................................................................................................... 12

4.2. Caracterização da organização proponente e das suas necessidades ........................... 12

4.3. A indústria dos semicondutores e as wafers ................................................................ 13

4.4. A Computer Vision e o processamento de imagem .................................................... 13

4.5. O que é o Big Data? .................................................................................................... 14

4.5.1. O que é o Hadoop? .............................................................................................. 14

4.5.2. De que trata o MapReduce? ................................................................................ 15

4.5.3. Big data vs Hadoop vs Map Reduce ................................................................... 15

4.6. Investigações na área de estudo em questão ............................................................... 16

4.6.1. Medicina .............................................................................................................. 16

4.6.2. Segurança dos sistemas de informação / na web ................................................. 17

4.6.3. Biometria ............................................................................................................. 19

4.6.4. Processamento de grandes quantidades de dados ................................................ 20

4.6.5. Indústria dos semicondutores .............................................................................. 22

4.6.6. Áreas a investigar ................................................................................................ 24

4.7. Conclusão .................................................................................................................... 25

5. Caracterização do estudo ..................................................................................................... 26

5.1. Conceptualização do problema a estudar .................................................................... 26

5.2. Objetivos ..................................................................................................................... 28

5.3. Abordagem metodológica ........................................................................................... 28

(1) Relevância do problema .......................................................................................... 29

(2) Rigor na pesquisa .................................................................................................... 29

(3) Conceção como um processo de busca ................................................................... 30

(4) Conceção como um artefacto .................................................................................. 30

(5) Avaliação da conceção ............................................................................................ 30

(6) Contribuições da pesquisa ....................................................................................... 31

(7) Comunicação de pesquisa ....................................................................................... 31

5.4. Plano de atividades ...................................................................................................... 32

6. Resultados obtidos e discussão ........................................................................................... 35

7. Conclusões .......................................................................................................................... 35

Referências .................................................................................................................................. 37

Índice de tabelas

Tabela 1 - Lista de siglas e acrónimos ........................................................................................... 7

Tabela 2 - Limitações e minimização de riscos na aplicação da abordagem metodológica ....... 32

Tabela 3 - Plano de atividades..................................................................................................... 32

Tabela 4 - Plano de atividades..................................................................................................... 33

Tabela 5 - Plano de atividades..................................................................................................... 34

Índice de figuras

Figura 1 - Exemplo de uma wafer ............................................................................................... 13

1. Siglas e acrónimos

A tabela abaixo enuncia, de um modo sucinto, as definições das principais siglas e

acrónimos contidos no presente documento.

Tabela 1 - Lista de siglas e acrónimos

Sigla ou

acrónimo Definição

AOI

A inspeção ótica automatizada (AOI), consiste na realização da inspeção visual

de forma automatizada aquando da fabricação de placas de circuito impresso.

Este processo dá-se através de uma câmara que, autonomamente, percorre toda a

wafer a ser testada através de um varrimento ao longo de toda a sua área, captando

imagens e procurando falhas catastróficas e defeitos de qualidade. Este trata-se

de um teste sem contacto, pelo que é muito usado em diversas indústrias,

nomeadamente na indústria dos semicondutores [2].

WLP

A Wafer-Level Packaging (WLP), é uma tecnologia-chave na indústria dos

semicondutores, principalmente quando produzidos em portadores de 300mm,

devido às vantagens de desempenho e custo que oferece para os smartphones,

tablets e outras aplicações que requerem alta funcionalidade e baixo consumo de

energia num curto espaço de alocação [3]. No fundo, a WLP corresponde ao

empacotamento de um circuito integrado enquanto ainda faz parte da wafer, em

vez desta ser particionada em circuitos individuais e só depois se proceder ao

empacotamento destes [4].

WLPFO

A Wafer-Level Fan-Out (WLPFO), é uma tecnologia que consiste num

“aprimoramento de pacotes-padrão de Wafer-Level-Packaging (WLPs),

desenvolvidos para fornecer uma solução de dispositivos semicondutores que

requerem um nível de integração mais elevado e um melhor desempenho térmico

e elétrico” [5].

eWLB

A Embedded Wafer-Level Ball Grid Array (eWLB) é uma tecnologia de

embalamento de circuitos integrados. “As suas interconexões são aplicadas numa

wafer artificial feita de chips de silício e um composto de fundição” [6].

HDFS Sistema de arquivos distribuído que armazena dados em máquinas dentro do

cluster. Corresponde ao sistema de ficheiros do Hadoop.

SVM

Os Support Vector Machines (SVM), são modelos de aprendizagem

supervisionados com algoritmos de aprendizagem associados que analisam os

dados utilizados para a classificação e análise de regressão.

k-NN

O k-nearest neighbor (k-NN), é um método não-paramétrico utilizado para a

classificação e regressão, onde um objeto é atribuído à classe mais comum entre

seus k vizinhos mais próximos.

2. Glossário

Anomalia – Particularidade ou condição do que é anómalo; aquilo que se desvia da norma.

Ball Pad – Zona de contacto da wafer.

Big Data – Termo amplamente utilizado na atualidade para nomear conjuntos de dados muito

grandes ou complexos, que as ferramentas de processamento de dados tradicionais ainda não

conseguem lidar.

Camtek – O Camtek é um fabricante de sistemas automatizados de inspeção ótica automatizada

(AOI) e produtos relacionados. As Camtek correspondem às máquinas responsáveis pelo processo

de AOI [7].

Computer Vision – Área que lida com a forma como os computadores podem ser feitos para obter

um entendimento de alto nível a partir de imagens ou vídeos digitais.

Die – Pequeno bloco de material semicondutor, no qual um dado circuito funcional é fabricado

Feature vector – Nas áreas do reconhecimento de padrões e da aprendizagem máquina (Machine

Learning), um vetor de características (Feature vector) corresponde um vetor n-dimensional de

características numéricas que representam um determinado objeto.

Hadoop – Framework open-source de software de computação distribuída apropriada para o

processamento de grandes quantidades de dados e para a utilização de clusters. O Hadoop utiliza

um modelo de programação para processamento de dados em larga escala, o MapReduce.

Machine Learning – “campo de estudo que dá aos computadores a habilidade de aprender sem

serem explicitamente programados” [8].

OpenCV – A Open Source Computer Vision, é uma biblioteca de funções de programação voltada

principalmente para a visão em computador em tempo real [9].

Semicondutor – São sólidos cristalinos que têm condutividade elétrica oposta a temperaturas do

metal, uma maior resistência elétrica do que os materiais típicos resistentes, mas muito menor do

que os isoladores [10].

Trace – Pistas desenhadas na wafer, onde é efetuada a passagem de corrente nos chips.

Wafer – É uma fatia fina de material semicondutor (silício cristalino), usado para a fabricação de

circuitos integrados.

3. Introdução

Este projeto foi proposto pela NANIUM S.A., uma organização situada em Vila do Conde,

Porto, que atua na fabricação de componentes eletrónicos, nomeadamente no setor da indústria

dos semicondutores, sendo esta especialista na tecnologia Fan-Out WLP / Ewlb.

Devido ao setor onde atua, é extremamente importante para a organização ter em conta

todos os pormenores em relação aos seus produtos, uma vez que como esta trabalha com produtos

no âmbito das nanotecnologias, o mínimo detalhe é fundamental em relação à qualidade dos

produtos que esta desenvolve. Assim, surge a necessidade de reduzir as questões relativas aos

erros das inspeções que são efetuadas, quer devido às máquinas, quer devido ao erro humano.

É através do surgimento desta necessidade que a organização propôs a realização deste projeto de

investigação, que consistirá na exploração de técnicas de Big Data para a deteção de padrões

anómalos na linha de produção da fábrica.

Após o processo de fabricação das wafers, estas passam por um processo de inspeção.

Inicialmente cada lote dá entrada numa Camtek, onde é feita a inspeção ótica automatizada (AOI),

e de onde resultam diferentes fotos das wafers, captadas aquando do varrimento efetuado pela

Camtek e dados referentes à localização de anomalias identificadas pela máquina. Posteriormente,

essas imagens são enviadas para a secção de classificação das anomalias detetadas, onde o

operador efetua uma inspeção visual às fotografias e onde avalia a existência ou não de anomalias

bem como a classificação manual das falhas identificadas. Contudo, como o processo de

classificação das anomalias é realizado manualmente pelo operador, é necessária a criação de um

mecanismo que permita facilitar a sua tomada de decisão, uma vez que o fator humano é

indiciador de erros, assim como a ação das máquinas.

Deste modo, pretende-se com a investigação no âmbito desta dissertação, que seja

desenvolvida uma solução de Big Data que tenha por base a utilização do Hadoop e que possa

auxiliar o processo de inspeção das wafers na linha de produção relativamente à classificação de

anomalias previamente detetadas nas Camtek, de modo a que a solução possa, no fundo, sugerir

ao operador da linha de produção qual(is) o(s) tipo(s) de falha(s) que se evidencia(m) na imagem

apresentada, auxiliando-o na tomada de decisão referente à classificação das anomalias que

possam existir nas wafers, pelo que o sistema fará uma primeira avaliação em termos de

classificação e o operador terá apenas de confirmar a sugestão dada e avaliar se esta está correta

ou não. Desta forma, o processo de inspeção realizado atualmente mantém as atividades

executadas, pelo que, se a implementação desta solução for viável e esta for posteriormente

implementada, o operador apenas terá algumas informações adicionais ao seu dispor, de forma a

auxiliar o seu processo de decisão relativamente à classificação das situações anómalas

ocorrentes, bem como a diminuição da percentagem de falsos positivos e negativos que

atualmente ocorrem, quer por parte de erros das Camteks, quer pelo fator de erro humano por

parte dos operadores, melhorando assim os resultados relativos aos processos associados à AOI.

Além disso, se o sistema tiver a capacidade de aprender a melhorar as suas deteções, através da

aplicação de algoritmos de Machine Learning, este poderá maximizar a precisão dos resultados

ao longo do tempo.

Todavia, para que esse mecanismo possa ser concretizado, é necessário o estudo de técnicas

de Big Data, este processo pressupõe o armazenamento e o processamento de grandes quantidades

de dados num curto espaço de tempo, uma vez que esta funcionalidade adicional a considerar não

deverá prejudicar o normal funcionamento dos processos da linha de produção. É assim que surge

a proposta realizada pela organização do uso de Hadoop para a implementação deste projeto, pelo

que, como a ferramenta a usar foi impingida pela entidade organizacional, não será necessário

realizar o estudo de plataformas semelhantes a esta para que se pudesse optar pela que melhor se

ajustasse às necessidades do projeto.

Assim, conseguiremos melhorar a qualidade do trabalho do operador e, consequentemente,

poderemos poupar tempo e dinheiro, visto que, desta forma, podemos agilizar a alocação de

recursos para outras áreas da linha de produção, além do que conseguiremos poupar o operador

em termos da capacidade de concentração e de observação que se vai desgastando ao longo do

tempo, uma vez que a classificação é efetuada através de imagens microscópicas, que enunciam

muitos detalhes, pelo que é importante que nenhum pormenor seja esquecido.

A implementação dos sistemas de informação tem como principal objetivo melhorar a

eficácia e a eficiência das organizações [1]. Sendo assim, é fundamental a utilização de um

paradigma que vá de encontro à resolução de problemas, tendo sempre em conta a busca pela

inovação, procurando definir ideias, práticas, capacidades técnicas e produtos através dos quais a

análise, a conceção, a implementação, a gestão e o uso dos sistemas de informação possam ser

concretizados de forma eficaz e eficiente [1]. Posto isto, toda a execução deste projeto enquadra-

se no âmbito dos sistemas de informação, uma vez que ao implementarmos este projeto iremos

poder melhorar a eficácia e a eficiência dos processos referentes à inspeção visual das wafers, na

medida em que poderemos minimizar o tempo que um operador demora a classificar uma

anomalia e diminuir também a probabilidade de acontecerem erros nestas classificações, uma vez

que se pretende que o sistema consiga dar uma sugestão ao operador do tipo de anomalia que foi

detetada. Contudo, para que essa solução seja implementada é necessária toda a planificação,

gestão e organização das técnicas e das ferramentas a serem utilizadas, bem como dos critérios

que terão de ser seguidos e o tipo de resultados a que queremos chegar para que se possa obter

uma conceptualização estruturada do problema a estudar.

Em termos de estudos e técnicas a utilizar neste projeto de investigação destacam-se a

pesquisa, análise dos procedimentos utilizados e crítica dos resultados obtidos enunciados em

documentos científicos que abordem temas relacionados com a presente dissertação, o estudo e

análise da bibliografia adequada ao tema, bem como o seguimento da abordagem metodológica

Design Science Research aplicada aos Sistemas de Informação.

Este documento abordará, numa primeira parte, uma revisão de literatura, onde serão

identificados os principais conceitos a estudar e de que forma é que estes podem se relacionar

entre si, bem como será realizada uma análise crítica aos trabalhos já efetuados nesta área,

procurando perceber quais as áreas de consenso e de conflito existentes nas abordagens já

efetuadas e quais os resultados que já se obtiveram. Com esta revisão de literatura, é esperada a

identificação das áreas que carecem de maior investimento neste projeto, assim como o realce

daquilo que ainda não foi resolvido de acordo com a literatura disponível. Posteriormente será

feita uma abordagem referente à caracterização do estudo, onde será detalhada a conceptualização

do problema a estudar, assim como os principais objetivos que lhe estão associados bem como a

explicação de como será aplicada a abordagem metodológica escolhida, elucidando quais os

métodos que lhe estão associados, e de que forma é que estes serão aplicados ao projeto em

questão. Na parte final deste documento será apresentado o plano de atividades e a sua respetiva

calendarização, assim como a síntese do trabalho que já foi efetuado até ao momento.

4. Revisão de literatura

Quais as áreas a investigar no âmbito da deteção de anomalias no processo de AOI?

Vanessa Pessoa,

Escola de Engenharia, Universidade do Minho, Guimarães, Portugal

[email protected]

RESUMO:

A presente revisão de literatura tem como intuito perceber quais os estudos já realizados

no âmbito do Big Data e da deteção de padrões em dados, e inclusive de perceber quais os

métodos e procedimentos que foram usados nessas investigações, assim como as abordagens

utilizadas e quais os resultados que se obtiveram para que, a partir desta revisão de literatura, se

possam identificar quais as áreas em que se deve investir mais aquando da implementação deste

projeto de investigação. Além disso, através desta revisão de literatura deverão ser realçadas as

áreas de investigação que ainda não estão resolvidas, de acordo com a literatura.

Palavras-chave: Big Data, Hadoop, AOI, Sistemas de Informação

4.1. Introdução

Atualmente, a tendência para o tamanho dos dispositivos eletrónicos é a de diminuir cada

vez mais. Assim, as empresas que lidam com a indústria dos semicondutores têm-se deparado

com alguns desafios decorrentes dessa tendência, uma vez que ao diminuírem o tamanho dos

dispositivos, os chips terão de possuir um maior numero de camadas e de, consequentemente,

passar por mais etapas de processamento. Além disso, como a área-alvo a ser inspecionada é cada

vez menor, os defeitos também serão cada vez menores, o que se traduz em dificuldades referentes

ao limite de resolução ótica [12]. Em adição, a classificação manual que é realizada, além de ser

um método bastante lento, não detém a ocorrência de falsos resultados, uma vez que estes

dependem da atenção, concentração, experiência e conhecimento do operador.

Assim, é imprescindível a tomada de atenção a todos os pormenores existentes nas imagens

resultantes do processo de AOI, pois pequenas falhas podem induzir grandes problemas futuros.

Portanto, para as empresas que lidam com unidades na casa dos nanómetros, é necessário

diminuir ao máximo, no seu processo de inspeção, quer o erro obtido pelo desempenho das

máquinas quer o erro associado aos humanos, uma vez que menos falhas pressupõe mais lucros,

daí todos os processos da linha de produção têm por base o fator da otimização, por forma a que

possamos obter os melhores resultados possíveis.

Além do mais, como será de esperar, uma empresa desta dimensão gera grandes

quantidades de dados diariamente, pelo que é necessária, a aquisição de soluções de

armazenamento e processamento dos dados existentes, aproveitando para que se possa tirar

sempre o melhor partido possível destes. Assim sendo, a solução para estes problemas passa por

criar uma forma automática de deteção, análise e classificação das anomalias existentes, de modo

a que o computador, aquando da inspeção manual à wafer, possa sugerir ao operador o tipo de

anomalia(s) presente(s), e se, de acordo com os critérios de aceitação/rejeição, esta seria aprovada

ou não.

4.2. Caracterização da organização proponente e das suas necessidades

A NANIUM S.A., uma organização situada em Vila do Conde, Porto, que atua na

fabricação de componentes eletrónicos, nomeadamente no setor da indústria dos semicondutores,

contanto com uma vasta experiência na fabricação e processamento de wafers e portadores de

300mm, constituindo-se como um líder global na tecnologia de WLFO (Waffer-Level Fan-Out)

de alto volume.

Visto que a organização opera diariamente com a fabricação de placas de circuitos e,

consequentemente, com unidades de medida bastante reduzidas (à escala do nanómetro), uma das

suas preocupações é reduzir ao máximo a existência de erros aquando da inspeção das wafers,

devido à margem de erro obtida decorrente do normal funcionamento das máquinas que fazem a

inspeção ótica automatizada (AOI), e da margem de erro existente na fase de classificação das

anomalias ocorridas, devido à presença do fator humano no processo.

4.3. A indústria dos semicondutores e as wafers

As wafers consistem numa fatia fina de material semicondutor (silício cristalino), usado

para a fabricação de circuitos integrados [13]. Estas, servem como um substrato para os

dispositivos microeletrónicos que são construídos dentro e sobre a wafer, que sofre muitos passos

de processamento aquando da sua fabricação, tais como a deposição de vários materiais e a

padronização fotolitográfica, entre outros. No final de todos os processos, as wafers dão origem

a microcircuitos individuais, que são cortados em pequenos cubos e devidamente embalados.

Como já foi referido anteriormente, devido ao surgimento de alguns aspetos críticos para a

fabricação bem-sucedida dos dispositivos, a eliminação das fontes de defeito é um dos fatores de

alta prioridade a considerar, uma vez que esta é uma área complexa, onde defeitos quase

impercetíveis podem desencadear graves problemas no futuro e, como tal, é de extrema

importância a realização de inspeções cuidadas e altamente precisas.

(Fonte: http://www.chipsetc.com/silicon-wafers.html)

Figura 1 - Exemplo de uma wafer

4.4. A Computer Vision e o processamento de imagem

De um modo geral, um sistema de visão por computador (Computer Vision), processa

imagens ou vídeo adquiridas através de uma câmara, tal como o sistema de visão humano onde o

cérebro processa imagens através dos olhos [14].

Atualmente existem muitos sistemas deste tipo, onde, por exemplo, estudos forenses e

biométricos (consistem em maneiras de reconhecer as pessoas), usam a visão por computador

para efetuar o reconhecimento automático de uma pessoa através da sua face, ou pela "textura"

da sua íris ocular. Assim, usando a visão por computador e usufruindo das técnicas de

processamento de imagem existentes, é possível avaliar imagens a partir da sua textura, das

formas evidenciadas pelos contornos presentes na imagem, do seu nível de luminosidade, entre

muitos outros fatores interessantes passíveis de análise [14].

No entanto, devido à necessidade de rapidez e eficiência que este tipo de sistemas tem de

possuir, surge a interligação entre Computer Vision, processamento de imagem e Big Data.

4.5. O que é o Big Data?

O Big Data tem-se constituído como uma das tendências tecnológicas mais importantes,

na medida em que esta tecnologia tem o potencial para mudar drasticamente o modo como as

organizações usam as informações para transformar os seus modelos de negócios. No fundo, o

Big Data é o resultado da combinação de tecnologias de gestão de dados que foram evoluindo ao

longo do tempo, e portanto, esta, permite que as organizações armazenem, analisem e manipulem

grandes quantidades de dados à velocidade certa e no momento certo para que possam obter os

insights corretos em tempo útil [15].

Não há uma definição especifica que defina este conceito [11], contudo, podemos, de uma

forma generalizada, definir Big Data como “a capacidade de gerir um enorme volume de dados

diferentes, à velocidade certa e dentro do período de tempo certo para permitir análises e reações

em tempo real” [15]. As suas principais características são: o volume (preocupando-se com a

quantidade de dados), a velocidade (a rapidez com que os dados são processados) e a variedade

(os vários tipos de dados a analisar).

Como já referido anteriormente, o Big Data tem a capacidade de mudar drasticamente o modo

como as organizações usam as informações para transformar os seus modelos de negócio, na

medida em que através da sua implementação, as organizações poderão vir a possuir novos

insights acerca dos seus negócios, como por exemplo, o modo como os serviços de uma

organização são entregues ao mercado, qual a posição da estratégia organizacional usada em

relação à estratégia das organizações concorrentes e poderão surgir ainda, estratégias novas que

facilitarão a criação de mecanismos que possam fazer aumentar os lucros da organização, entre

muitos outros [11], o que torna o Big Data ainda mais cativante é o facto de que esses insights

poderão ser entregues em tempo real, desde que as infraestruturas da organização em questão

estejam projetadas adequadamente para o efeito.

Além disso, com a chegada desta tecnologia, os cenários relativos à análise de dados

também têm sofrido alterações. Se antigamente, todas as análises eram realizadas sobre dados

estruturados, armazenados em bases de dados relacionais, atualmente, e devido à evolução desta

tecnologia, a análise de dados não estruturados também tem tomado uma posição de relevância e

de importância nas indústrias.

Contudo, as ferramentas que funcionam com os dados estruturados, não conseguem dar

uma resposta a esta evolução, pelo que tem surgido um novo conjunto de ferramentas e

tecnologias paralelas a esta evolução tais como, o Hadoop, o MapReduce, o Pig, o Hive, o Hadoop

Distributed File System e as bases de dados NoSQL, por exemplo [11].

4.5.1. O que é o Hadoop?

De um modo geral, o Hadoop é uma “framework open-source para escrever e executar

aplicações distribuídas que processam grandes quantidades de dados” [16].

As suas características principais são: a acessibilidade, a robustez, a escalabilidade e a

simplicidade. Em relação à acessibilidade, o Hadoop pode ser executado em grandes clusters de

máquinas ou em serviços na nuvem (Cloud Services). O Hadoop é robusto, visto que a sua

arquitetura prevê a existência de falhas de hardware frequentes e como tal, está preparado para

lidar com a maioria das falhas conhecidas, devido à sua capacidade de redundância, o que garante

uma boa disponibilidade do sistema aos utilizadores. Em termos de escalabilidade, o Hadoop tem

a capacidade de lidar com o aumento da quantidade dos dados, na medida em que este consegue

adicionar sempre mais nós ao cluster. Além disso, o Hadoop permite que os utilizadores consigam

escrever rapidamente código paralelo de modo eficiente e a um custo muito baixo [16].

4.5.2. De que trata o MapReduce?

Concebido pela Google, o MapReduce foi criado para executar um conjunto de funções

numa grande quantidade de dados em lote de modo eficiente. O MapReduce trata-se basicamente

de duas funções: a do Map, que faz o mapeamento dos dados, isto é, faz a distribuição das tarefas

de programação por vários nós de computação e manipula a alocação dessas tarefas de forma a

equilibrar a quantidade de dados em cada nó e faz a gestão da recuperação das falhas que possam

existir, e a do Reduce, que trata da agregação de todos os elementos que separou por categorias

anteriormente, de modo a que possa fornecer um resultado. Um dos exemplos mais simples da

implementação do MapReduce é a contagem de palavras de um texto, onde o resultado obtido é

a lista de cada palavra que apareceu no texto selecionado e o respetivo número de ocorrências

para cada palavra.

4.5.3. Big data vs Hadoop vs Map Reduce

Atualmente, a maioria das organizações tem-se deparado com grandes quantidades de

dados, que chegam das mais variadas formas. Assim sendo, como o Big Data tem o potencial de

fornecer novos insights que podem transformar completamente o modo de como os dados são

analisados, surge uma nova indústria de arquiteturas de suporte, como é o caso do MapReduce.

Este, por sua vez, utiliza o método “divide e conquista” e faz uso de muitos servidores para

conseguir dividir problemas complexos de Big Data em pequenas unidades de trabalho e

processa-as em paralelo. Contudo, apesar de primar pela rapidez, considera-se que para a maioria

das organizações, a implementação do MapReduce é algo complexo, daí a necessidade de recorrer

à utilização do Hadoop. Assim, o Hadoop, que tem a capacidade de explorar Big Data através da

implementação dos conceitos do MapReduce, gerou inclusive “um mercado robusto servido por

fornecedores comerciais de código open-source e de valor agregado”[11], pelo que é deste modo

que estes três conceitos se relacionam entre si e por estas razões, que habitualmente, quando se

aborda o tema Big Data, os conceitos de Hadoop e MapReduce surgem quase que

automaticamente.

4.6. Investigações na área de estudo em questão

4.6.1. Medicina

Existem diversos estudos no âmbito do reconhecimento de padrões e no processamento de

imagem que debruçam nas mais diversas áreas.

Na medicina, por exemplo, fazem-se estudos no âmbito da identificação de células

oncócitas em tumores, uma vez que existem padrões escondidos e detalhes minuciosos nas

imagens microscópicas dos tumores, detalhes que podem não ser evidenciados tão facilmente

através da análise manual anteriormente feita [17].

Para isso, foi realizado, num projeto de dissertação, que consistia na criação de uma ferramenta,

chamada OncoFinder, que conseguisse “abrir, processar e classificar imagens de tumores de

tiroide com a probabilidade de erro mínimo possível” [17] e assim, auxiliar a tomada de decisão

dos patologistas relativamente ao diagnóstico de análises a células de tumores na tiroide, por

forma a que se pudesse detetar células cancerígenas (oncócitos [18]) mais facilmente. Deste

modo, é possível melhorar o impacto da análise do patologista aos exames, bem como facilitar a

tomada de decisão dos médicos, uma vez que um diagnóstico mais preciso indicia uma maior

probabilidade de ser indicado o tratamento mais adequado ao paciente.

Na realização deste estudo, o foco principal esteve na análise do núcleo celular, na medida em

que uma quantidade de células anormal revela um efeito colateral, que se trata de um inchaço do

citoplasma, e como tal, resulta numa maior distância intercelular entre os núcleos das células,

algo que não se registava nas células que não eram oncócitos (células cancerígenas). O autor desta

tese revela que as suas principais dificuldades na implementação deste projeto residiam na

segmentação desses núcleos celulares, na medida em que tiveram de testar diferentes ferramentas

e técnicas, resultado posteriormente em resultados favoráveis, uma vez que essa segmentação

pode ser corrigida através das funcionalidades da ferramenta criada para auxiliar os patologistas.

Além disso, o tamanho das imagens também se revelou um entrave [17], uma vez que estas eram

grandes demais e, devido às limitações da máquina que estava a ser utilizada, dificultou o

processamento das imagens.

A implementação desta ferramenta possibilitou que os peritos a pudessem usar a fim de criar

dados relativamente aos pixéis das imagens, o que permitiu gerar conjuntos de dados legíveis por

diferentes algoritmos de Machine Learning, para que essas imagens possam ser usadas para

executar a classificação automática, ou seja, para que a ferramenta consiga detetar

automaticamente se o tumor é um oncócito ou não [17]. As conclusões tiradas desta investigação

são que, apesar do processo de segmentação dos núcleos das células não serem perfeitos, os

estudos concluíram que, usando diferentes classificadores de dados, estes mostraram que alguns

destes podem construir modelos confiáveis, com uma precisão acima dos 90%, na tarefa de

classificar os núcleos das células segmentados como núcleos de oncócitos ou núcleos de células

normais, tendo-se inclusive concluído que é possível ter uma boa previsão relativamente à

existência de casos de tumor na tiróide. No entanto, o autor revela que, apesar do processo de

segmentação dos núcleos das células ser um pouco limitado, os estudos realizados revelaram

sucesso em encontrar o tipo de características que precisam de ser detetadas e para que os

classificadores consigam construir um modelo de aprendizagem que consiga realizar a

classificação automática entre células de oncócitos e de células normais sobre os dados

segmentados [17].

Em termos de trabalho futuro, nesta dissertação são realçados alguns pontos, entre os quais, a

melhoria da ferramenta desenvolvida, de modo a que esta pudesse realizar uma segmentação de

imagens de alta qualidade, aumentando a sua confiabilidade. Para isso é necessário encontrar um

conjunto de técnicas, ferramenta/biblioteca externa mais eficaz que se adeque ao projeto em

questão. Assim, podiam diminuir a necessidade das intervenções dos peritos, tornando o trabalho

mais automatizado, dada a facilidade de manuseio da ferramenta. Outro dos fatores apontados é

a usabilidade da ferramenta, na medida em que para que esta pudesse ser melhorada neste âmbito,

teria de haver algum feedback por parte dos peritos, uma vez que a sua experiencia é importante

para selecionar dados de treino da aprendizagem dos classificadores, nos estágios iniciais do uso

da ferramenta [17], realçando a importância da pesquisa de mais atributos característicos das

imagens para adicionar aos contornos já identificados do núcleo das células, permitindo a

melhoria da precisão da classificação automática.

Além disso, o autor da dissertação enuncia que quando os resultados relativos à segmentação

forem melhorados e consequentemente houver menor intervenção dos especialistas na

ferramenta, a análise automática das imagens irá gerar uma maior quantidade de dados, pelo que

será necessária uma ligação a uma base de dados que possa armazenar com segurança os dados

que estão a ser registados em termos de pixéis para os classificadores, por exemplo, a fim de que

este consiga ser facilmente consultado para extrair conjuntos de dados tratados e equilibrados para

posterior classificação automática. É também sugerido que a ferramenta, depois de sofrer algumas

melhorias, deverá ser capaz de lidar com o processamento de imagens microscópicas de alta

qualidade, realizar a segmentação dos núcleos das células com alta precisão, gerar dados de treino,

testar novos casos de tumor através da geração de conjuntos de dados para novos testes com os

modelos treinados com os dados disponíveis, e a exibição eficiente dos resultados, mostrando

qual o tipo de tumor e facilitando o acesso às estatísticas do processo [17].

4.6.2. Segurança dos sistemas de informação / na web

Por outro lado, também na área da segurança dos sistemas de informação, existem estudos

no âmbito do reconhecimento de padrões, por exemplo, no âmbito da deteção de intrusões na

rede, na medida em que são realizadas análises automáticas ao tráfego da rede recorrendo a

técnicas de deteção de padrões nos dados e a técnicas de Machine Learning para que estes possam

ser categorizados. Para isso eles utilizam diversas técnicas de aquisição de conhecimento, para

que possam treinar os dados, fazendo com o sistema consiga “aprender” com os dados. São

testadas redes Bayesianas (estabelecendo probabilidades entre as variáveis de interesse), modelos

de Markov, redes neuronais, técnicas de lógica Fuzzy, algoritmos genéticos e técnicas de

agrupamento de dados em clusters [19].

Os desafios encontrados por estes autores residem no facto de que o desenvolvimento de

conhecimento de alta qualidade ser um processo difícil e lento, além de que os sistemas de deteção

de anomalias deverão estar preparados para o surgimento de novas, tendo, portanto, a capacidade

deste identificar novos padrões que sejam válidos.

Outro exemplo ainda nas questões da segurança dos sistemas de informação, baseia-se no âmbito

da vigilância (do tráfego) da internet para a deteção de anomalias, na medida em que esta atua na

prevenção de ataques informáticos e ajuda a encontrar suspeitos para esses acontecimentos com

base nas informações da web, que muitas vezes estão relacionadas com muitas das ameaças a

pessoas ou infraestruturas no mundo real. Neste tipo de acontecimentos, a deteção automática de

padrões é um mecanismo fulcral, uma vez que a quantidade de dados na internet aumenta

rapidamente e uma vez que o fluxo do tráfego de várias fontes é monitorizado ao mesmo tempo,

pelo que este estudo teve como principal objetivo a criação de um sistema que tivesse a capacidade

de monitorizar tendências, criar perfis baseado na análise de correlação de um número de

variáveis (análise de sentimentos, reposts, frequência com que fazem posts, entre outras) e de

reconhecer alterações anormais na atividade, comportamento ou emoção dos utilizadores, neste

caso, através de dados do Twitter [20].

Os dados na internet surgem em diversos formatos, tais como, texto, meta-dados e imagens [20].

Contudo, neste estudo, os seus autores concentraram-se em dois aspetos base: a deteção de

anomalias e análise de imagens. O primeiro aspeto visa a deteção de comportamento anormal na

internet e o segundo aspeto visa demonstrar que a combinação entre o conteúdo da imagem e o

texto que se sobrepõe resulta em conhecimento adicional.

O método usado neste estudo foi baseado no trabalho de Chandola et al. [21], pelo que os autores

deste estudo particionaram a deteção de anomalias em duas abordagens distintas. Assim sendo, a

deteção de anomalias ou concentra-se em pontos de dados únicos (dados de observações únicas,

independentemente do contexto), ou em dados contextuais (sequências, séries temporais).

Para a deteção de anomalias os autores criaram uma cadeia de processamento de dados,

começando pela obtenção destes, passando pelo seu armazenamento e enriquecimento, para que

posteriormente possa ser feita a deteção e visualização das anomalias. Mais tarde, esses dados

permitem realizar análises aos incidentes ocorridos e verificar se estes poderiam ter sido evitados,

por exemplo.

Uma das dificuldades apontadas neste estudo é a dificuldade em definir exatamente o conceito

de anomalia, uma vez que os dados que estão a ser analisados advém de eventos complexos, “com

muitos conceitos e tendências de interação” [20]. Além disso, “anomalias são raras”, algumas

tornam-se normais após algum tempo, pelo que a fronteira entre o normal e o anormal é por vezes

muito estreita, uma vez que, por vezes, a anomalia só é considerada dependendo do contexto em

que se encontra [20].

Em suma, eles caracterizam uma anomalia como uma mudança abrupta, consistindo

principalmente numa explosão de sentimento positivo. Além de que eles seguiram inclusive uma

abordagem de análise a múltiplas variáveis, criando um sistema que calcula as matrizes de

correlação para uma série de variáveis ao longo do tempo, implementando cálculos como o do

valor da média, desvios-padrões entre correlações, bem como o z-score, que é posteriormente

agregado e para um determinado intervalo de tempo é descrito por um gráfico em que os picos

que este possa possuir significam a presença de anomalias. O sistema exibe também um polígono

de recurso que conecta todas as variáveis escolhidas como pontos com um polígono interior que

representa os seus valores médios e um polígono exterior que representa os eventuais desvios de

determinadas variáveis, o que permite ajudar os analistas nas suas análises aos dados, fazendo-os

perceber qual ou quais as variáveis responsáveis por um determinado pico na curva da anomalia

[20]. Com esta investigação, podemos analisar o conteúdo de imagens novas ou reutilizadas,

extraindo, por exemplo, palavras-chave que lhe estão associadas e daí realizar a análise de

sentimento dos posts efetuados, o que vai permitir que, em caso de ocorrência de algum

comportamento anormal, o sistema possa alertar o analista numa fase inicial do “problema”.

4.6.3. Biometria

A deteção automática de padrões juntamente com o processamento de imagem também

surge no âmbito da biometria e dos sistemas de verificação de identidade dos utilizadores. No

estudo analisado, os autores abordam o problema da fusão de informações em sistemas de

verificação biométrica combinando informações ao nível de três modalidades biométricas: a face,

a impressão digital e a geometria da mão [22].

Os dados biométricos dos utilizadores são adquiridos usando um leitor biométrico, que armazena

os registos efetuados numa base de dados. Estes dados são devidamente rotulados num modelo

de acordo com a identidade do utilizador (nome, número de identificação, entre outras…).

Quando o utilizador tenta o acesso, este tem de interagir com o sensor de modo a que este possa

extrair os valores de recurso detetados e processá-los. Deste modo, os valores extraídos são

comparados com os do modelo anteriormente relatado e geram uma pontuação correspondente,

pelo que a tomada de decisão relativamente à aceitação ou rejeição do acesso do utilizador é dada

de acordo com a pontuação obtida.

Os dados obtidos de cada sensor são usados para calcular um vetor de característica (feature

vector) [22]. Um feature vector consiste num vetor n-dimensional de características numéricas

que representam algum objeto, pelo que, no caso das imagens, estes vetores representam aos seus

pixels. A pontuação obtida resulta no cálculo entre a proximidade do vetor calculado no momento

em que o suposto utilizador está em contacto com o sensor e do vetor que foi gerado aquando da

criação do modelo com a identidade do utilizador. São usadas técnicas como a regressão logística

para combinar os resultados, caso estes advenham de diferentes sensores, uma vez que estão a ser

avaliados vários indicadores biométricos ao mesmo tempo e, como tal, é feita esta combinação

de resultados para que se possa afirmar a veracidade da identidade que se está a apresentar. As

técnicas da atribuição da pontuação e da regressão logística usadas no estudo tem o intuito de

minimizar a taxa de aceitação genuína para uma dada taxa de falsa aceitação [23]. A tomada de

decisão automática é realizada graças à classificação que é feita aos vetores de características que

são analisados, que podem classificados em duas classes: aceitar ou rejeitar. Os autores do paper

escolheram classificadores como o k-nearest neighbor e as redes neuronais para realizar a

classificação das impressões digitais, ainda que várias estratégias para a combinação de múltiplos

classificadores fossem sugeridas [24] com o intuito de reduzir um determinado conjunto de

classes, pelo que as técnicas sugeridas em [24] são relevantes para problemas que abordem um

grande número de classes [22], o que não se aplicou ao estudo em questão.

A fusão de múltiplos indicadores biométricos, também denominada de fusão multibiométrica visa

melhorar a velocidade e a precisão de um sistema biométrico [25] que integra as diferentes

pontuações obtidas das diferentes fontes biométricas usadas. Em relação à combinação destas

pontuações, a literatura usada neste estudo sugere a implementação de classificadores como

árvores de decisão, SVMs (Support Vector Machine), KNN (k-nearest neighbor), métodos

Bayesianos [26], [27], [28].

Em suma, o estudo realizado indica que regra da soma revela melhores resultados que os métodos

da árvore de decisão e que o classificador linear. Além disso, uma das vantagens que se evidenciou

foi o facto de que os benefícios da fusão multibiométrica tornam-se mais evidentes com o aumento

do número de utilizadores na base de dados. Outro dos pontos referidos pelos autores foi o facto

de ser conveniente a atribuição de diferentes pesos para as diferentes modalidades individuais

para os indicadores biométricos [22].

4.6.4. Processamento de grandes quantidades de dados

Como já foi referido anteriormente, o processamento de imagem é uma das tarefas

importantes em muitas áreas de pesquisa, tais como imagens médicas, sensores remotos, análise

ao tráfego da internet, entre outras… Contudo, devido às quantidades elevadas de imagens que

são processadas atualmente e ao tamanho que estas ocupam, não é possível fazer o seu

processamento num único computador, o que transpõe a necessidade da implementação de

sistemas de computação distribuída para que se possa processar grandes quantidades de imagem,

sem que a eficiência dos sistemas esteja comprometida. Porém, a computação distribuída

constitui-se como um assunto bastante complicado, na medida em que esta exige conhecimentos

técnicos profundos e que, por vezes, não podem ser usados por pesquisas que desenvolvem

algoritmos de processamento de imagem [29]. Daqui surge a necessidade de procurar ferramentas

que possam, de certa forma, esconder os detalhes complicados da computação distribuída, para

que os programadores da solução possam concentrar-se mais nas tarefas de processamento de

imagem, uma vez que esse é o seu principal propósito.

Portanto, o artigo analisado descreve a extensão para o framework de MapReduce Image

Processing (MIPr) que “fornece a capacidade de usar o OpenCV Hadoop Cluster para o

processamento distribuído de imagem” [29]. O OpenCV é uma biblioteca open-source, usada no

âmbito da computer vision, ou seja, na automatização de tarefas que o sistema visual humano

pode realizar [30].

Neste estudo foi realizada uma abordagem que se baseou na estrutura de MIPr, que foi

previamente desenvolvida para o processamento de imagens no Hadoop, sendo que, foi feita uma

extensão à framework do MIPr, de modo a que esta pudesse incluir a representação de imagem

baseada em OpenCV no formato interno do Hadoop (HDFS – Hadoop Distributed File System),

bem como ferramentas para a leitura dessas imagens do HDFS, guardar as imagens processadas

de volta para o formato de HDFS, e inclusive as drivers para suportarem o emprego dos

MapReduce Jobs com o OpenCV. Deste modo, a extensão implementada permite desenvolver

programas em Java para processamento de imagem, usando o OpenCV [29].

Os autores concluem que para grandes aglomerados e conjuntos de dados de imagem a

escalabilidade da aplicação MIPr modificada é quase linear. No entanto, quando foi realizado o

teste num cluster de apenas um nó e para um conjunto de dados pequeno, os autores verificaram

que houve um fraco desempenho relativamente à aplicação devido à sobrecarga ocorrida no

Hadoop. Além disso, estes incluem, como tema de trabalho futuro, o uso do MIPr para o Apache

Spark [31] para que o processamento de imagem possa ser efetuado em memória, e que seja

estendida a capacidade de usar Python e C++ no desenvolvimento de programas de

processamento de imagem recorrendo ao MapReduce. Existem inclusive diversos trabalhos

efetuados no âmbito da deteção de anomalias, nomeadamente com o uso do Hadoop e da técnica

de MapReduce, por forma a detetar situações anómalas em dados provenientes de sensores. O

artigo analisado apresenta um modelo de observação da Cloud Computing para deteção de

qualquer evento anormal que possa ser uma ameaça. Para isso, os autores defendem o uso do

Hadoop e do MapReduce, visto que o Hadoop é uma framework open-source usado para

computar grandes quantidades de dados na Cloud e utiliza a técnica de Machine Learning baseada

em MapReduce para detetar anomalias ocorridas aquando da observação dos dados dos sensores,

classificando-as, o que assegura a estabilização das redes dos sensores virtuais [32].

Em termos metodológicos, os autores, à semelhança de um estudo já analisado acima, também

procuram encontrar uma correlação temporal nos dados. Outra preocupação demonstrada é acerca

da correlação espacial, que observa as leituras de nós dos sensores que estão geograficamente

perto uns dos outros, uma vez que esta, combinada com os atributos dos dados dos sensores são

úteis para limitar a fonte da anomalia [32].

Relativamente aos algoritmos de aprendizagem máquina testados, os autores usaram o Random

Forest, OneR (One Rule), que cria uma árvore de decisão de nível 1, Bagging e o J48. Além disso,

foi utilizada a implementação proposta pelo WEKA, usando apenas 75% do total dos dados para

testar e treinar os dados e deste modo, obter o modelo. Os outputs deste modelo foram divididos

em subpartes para facilitar a sua análise e avaliação [32], pelo que a primeira subparte possui

exemplos de instâncias que foram classificadas corretamente e de instâncias que não foram

classificadas corretamente, que foram divididas pelo seu valor percentual, o erro absoluto e

relativo, e pelos valores da raiz de erro absoluto médio e pela raiz de erro quadrático médio. Em

suma, os autores deste estudo prevalecem com a importância de coletar as observações dos

sensores para análise de forma contínua e devidamente integrada, de modo a que se possa

construir um modelo de previsão mais preciso e referem inclusive que melhores resultados foram

obtidos através do uso do algoritmo Random Forest, em comparação com as restantes técnicas

que foram usadas.

4.6.5. Indústria dos semicondutores

Como é possível verificar ao longo desta análise aos diversos estudos acima relatados, a

área do reconhecimento de padrões e do processamento de imagens é um setor que tem ganho

cada vez mais força nas últimas décadas. No entanto, uma indústria onde este tipo de tecnologias

é bastante suportado é a indústria dos semicondutores.

Existem sistemas disponíveis no mercado, ainda que sejam muito caros, que são responsáveis

pela localização e deteção de potenciais anomalias nas wafers.

As wafers consistem numa espécie de uma fatia [33] bastante fina de material semicondutor

(silício, por exemplo), que é usado no setor da eletrónica para a fabricação de circuitos integrados.

Esta, sofre vários processos de microfabricação, tais como a deposição de vários materiais e a

padronização fotolitográfica, por exemplo.

Porém, a determinação dessas anomalias como sendo efetivamente um defeito, a obtenção da sua

localização de forma precisa e fazer o diagnóstico da causa da ocorrência da anomalia é algo que

ainda requer a classificação manual. Deste modo, a classificação poderá estar comprometida, uma

vez que os resultados que dela se ontem dependem do tempo disponível, do conhecimento,

experiência, habilidade e fadiga do operador que executa este processo na linha de produção.

Além disso, a classificação manual é um método bastante lento e que não detém a ocorrência de

falsos resultados [34].

Assim sendo, a classificação automática de defeitos é algo que é bastante necessário neste tipo de

indústrias, quer por esta estar diretamente associada à determinação da causa da ocorrência da

anomalia, quer porque hoje em dia a tendência relativamente ao tamanho dos dispositivos é deste

ser cada vez menor. Ou seja, com o tamanho dos dispositivos a encolher, o tamanho do defeito

que pode causar a falha do chip também encolhe, daí haver uma perda de rendimento. Assim, os

autores do estudo relativamente ao estado e às tendências das indústrias defendem que as práticas

de fabricação dos produtos em sala limpa, isto é num ambiente livre de contaminação, estão a

tornar-se cada vez mais um aspeto crítico para a fabricação bem-sucedida dos dispositivos, pelo

um dos fatores de alta prioridade a considerar é a eliminação das fontes de defeito [35].

Neste termo, vários autores defendem a necessidade das inspeções às wafers serem realizadas de

forma automática e, de preferência, que a solução implementada para o efeito tenha a capacidade

de poder ser treinado ao longo do tempo pelo utilizador [36].

Em relação às limitações que têm sido encontradas neste âmbito, a literatura diz que como os

dispositivos individuais estão a tornar-se cada vez mais pequenos, os chips têm maior numero de

camadas e consequentemente passam por mais etapas de processamento. Além disso, como a

área-alvo a ser inspecionada é cada vez menor, os defeitos também serão cada vez menores, o que

traduz uma dificuldade para a deteção dos defeitos aquando do processamento das imagens nos

sistemas automáticos, devido ao limite de resolução ótica [12].

Um estudo analisado neste âmbito, consistiu na apresentação de casos de estudo de uma

nova tecnologia de inspeção de wafers baseada em holografia digital. A holografia digital grava

a amplitude e a fase da frente de onda de um determinado objeto alvo diretamente para uma única

imagem adquirida através de uma câmara CCD (charge-coupled device), que foi especialmente

desenvolvida para a obtenção de imagens no ultravioleta [37].

A deteção de defeitos nas wafers utilizando esta técnica é realizada através da comparação direta

de duas frentes de onda complexas dos campos correspondentes do campo de visão do die

adjacente sobre a wafer. Para isolar qual o campo de visão em que um defeito foi detetado, são

efetuadas duas comparações para cada campo de visão e o defeito é atribuído a esse determinado

campo somente se ele aparecer em ambas as imagens da diferença, que são as imagens que podem

ser computadas como diferenças de fase ou de amplitude, ou como uma imagem da diferença

composta [38].

Os testes realizados neste estudo compreendem a visualização das variações da superfície da

imagem através da informação da fase, a visualização e a deteção de contactos de alta proporção

sub-gravados e a visualização e deteção de defeitos derivados de uma extensão parcial

relativamente à sua altura, tendo estes testes sido efetuados, quer utilizando a ferramenta Fathom,

quer utilizando o Scanning Electron Microscope. A nLine Fathom é uma ferramenta ótica, usada

para extrair as imagens das wafers.

Em suma, os autores referem que a ferramenta nLine Fathom tem algumas capacidades adicionais

referentes à deteção de defeitos que não são fornecidas pelas tecnologias de ferramentas de

inspeção existentes. Relativamente à comparação de duas imagens de diferentes dies, os autores

chamam a atenção para ter em conta requisitos como o alinhamento dos pixéis entre ambas as

imagens (registo espacial), bem como fazer corresponder a sua intensidade total e o deslocamento

de fase (normalização) [38].

4.6.6. Áreas a investigar

Assim, de acordo com a literatura, foi considerado que, para este projeto, as áreas que se

pretendem investigar tratam-se

Tal como [17] refere no seu trabalho de investigação, o tamanho das imagens usadas no

seu projeto revelou-se um entrave, devido às dimensões destas e às limitações da máquina

utilizada, portanto, considero que esta limitação ocorrida induz ao uso de um ambiente distribuído

e fora da máquina, nomeadamente através do uso de clusters. Para tal, a ferramenta escolhida será

o Hadoop, devido às imposições feitas por parte da empresa que lançou o projeto. Além disso,

[17] descreve a importância da segmentação das imagens e a forma como este fator influencia os

resultados que obtém, pelo que a área das técnicas de segmentação de imagens também serão uma

área a investigar.

Depois, autores como [19] defendem que o processo de aquisição de conhecimento de alta

qualidade é algo demorado e complexo, pelo que os sistemas devem ter a capacidade de identificar

novos padrões que sejam válidos automaticamente e, para essa implementação sugerem o uso de

algumas técnicas de aquisição de conhecimento automático, tais como as redes neuronais,

técnicas de Data Mining (nomeadamente Clustering1), o uso de redes Bayesianas, entre outras.

Seguidamente, os autores em [20], revelam que uma das suas limitações residiam na

identificação do que era efetivamente uma anomalia, visto que, por vezes, as anomalias só seriam

considerada como tal dependendo do contexto em que se encontram. No entanto, como o projeto

a ser implementado no âmbito da presente dissertação, as análises são efetuadas sempre sob o

mesmo tipo de contexto, pelo que se deve implementar a categorização dos dados por classes.

Neste caso em concreto, cada classe corresponderá a um tipo de anomalia, de modo a que a

solução possa conseguir identificar o padrão predominante em cada classe e, deste modo, consiga

categorizar os diferentes tipos de anomalias que possam ocorrer. Este tipo de abordagem é

defendido por [22], onde foram utilizadas técnicas como k-nearest neighbor e as redes neuronais

(à semelhança de [19]) para realizar a classificação das impressões digitais, e técnicas como

árvores de decisão, SVMs (Support Vector Machine), k-NN (k-nearest neighbor) e métodos

Bayesianos, para realizar classificação referente à combinação entre as pontuações que cada

indicador biométrico obtém aquando do processo de identificação de um utilizador através de um

sensor. Além disso, neste processo é feita a comparação entre os dados do perfil do utilizador e

os dados do utilizador que está a tentar o acesso, com recurso ao uso de feature vectors, que são

importantes para detetar e extrair as características de uma imagem, por exemplo.

1 “Usado para fazer agrupamentos automáticos de dados segundo o seu grau de semelhança” [42].

Posteriormente, outras das questões que considerei como bastante importantes para ter em conta

na realização deste projeto foram a questão do problema dos limites da resolução ótica [12], na

medida em que a área-alvo a ser inspecionada tende a ser cada vez menor, o que faz com que os

defeitos tendam também a ser cada vez menores, uma vez que a tendência do tamanho dos

dispositivos é para estes serem cada vez menores. Por sua vez, a questão do alinhamento das

imagens é referida em [38], uma vez que para o projeto a realizar será, eventualmente necessário

realizar a comparação entre imagens de referência (sem defeitos), e as imagens que se pretendem

inspecionar, de modo a realizar a deteção das anomalias que possam existir.

Posteriormente, os autores em [29], enunciam, em termos de perspetivas de trabalho futuro

o uso do OpenCV Hadoop Cluster para o processamento distribuído de imagem em linguagens

como o C++ e o Python, pelo que a área de desenvolvimento referente ao processamento de

imagem usando o Python, o OpenCV e o Hadoop (juntamente com a abordagem ao MapReduce)

será uma das áreas a investigar aquando da implementação do presente projeto de investigação,

uma vez que a literatura indicia que o uso do OpenCV juntamente com o Python no âmbito do

processamento de imagem para a deteção de anomalias em wafers ainda não está resolvida.

4.7. Conclusão

Após a análise da literatura existente e dos estudos realizados no âmbito do processamento

de imagem e do reconhecimento de padrões, destacam-se a segmentação de uma área de interesse

das imagens que estão a ser processadas, bem como a procura incessante da técnica que mais se

adequa ao problema a que os investigadores procuram responder. Para isso os autores pesquisam

acerca das bibliotecas existentes de acordo com a linguagem que pretendem usar. Após este

processo, são definidas várias técnicas de processamento de imagem disponíveis na biblioteca

escolhida. Depois, são realizados testes, aplicando essas mesmas técnicas de acordo com o

contexto do projeto em estudo, de modo a que se possam estabelecer comparações entre elas e

perceber se, de algum modo, estas podem ser combinadas entre elas, de modo a garantir uma

maior precisão nos resultados.

Por isso, tendo em conta os procedimentos que foram usados nos trabalhos de investigação

anteriormente analisados, é possível constatar a importância dos sistemas distribuídos aquando

da implementação de projetos com uma grande dimensão de dados, para que a solução a criar não

tenha problemas de escalabilidade (que o sistema consiga responder conforme esperado

independentemente do número de utilizadores) e de tolerância a falhas, por exemplo. Além disso,

é denotado que cada problema a investigar carece de uma abordagem de implementação diferente,

visto que cada problema aborda questões diferentes, e como tal precisa de resultados que se

adequem às suas necessidades específicas. Outro procedimento que é sempre verificado em todas

as análises é a fase de testes, na medida em que ajuda a perceber quais as técnicas, neste caso, de

processamento de imagem que mais se adequam ao presente projeto de investigação, assim como

o cálculo de dados estatísticos como a probabilidade de deteção de anomalias, a taxa de falsos

alarmes, os valores médios de precisão obtidos, entre outros.

Assim sendo, após a realização desta revisão de literatura conclui-se que para a

implementação deste projeto de dissertação a linguagem a utilizar será o Python e a biblioteca o

OpenCV, devido à grande quantidade de documentação disponível que ambas possuem e à grande

abrangência em termos das suas funcionalidades. A sua implementação seguirá os métodos que,

de um modo geral, os autores da literatura analisada seguiram, uma vez que todos seguem

abordagens bastante parecidas e estas enquadram-se na abordagem metodológica escolhida, tendo

sempre em conta os testes que estes realizaram e os resultados que obtiveram, bem como as suas

recomendações referentes a trabalhos futuros.

5. Caracterização do estudo

Este capítulo inclui a conceptualização do problema a estudar, que consiste na justificação

da necessidade da presente investigação, com base no conhecimento já existente na literatura,

bem como na definição da questão de investigação e nas proposições que lhe são associadas.

Posteriormente são apresentados os principais objetivos do estudo, a abordagem metodológica

que será seguida e por fim, é apresentada a proposta para o plano de atividades relativamente ao

presente projeto de dissertação.

5.1. Conceptualização do problema a estudar

Vivemos na era dos dados [39], portanto existe uma enorme quantidade de dados que é

gerada diariamente em todo o mundo. Como tal, a sua gestão deverá incluir avanços tecnológicos

não só em hardware, como também em armazenamento, rede e modelos de computação (tais

como a virtualização e o Cloud Computing) [15]. Atualmente, a tecnologia caminha no sentido

da convergência e na redução de custos na sua totalidade, pelo que o Big Data tem-se afirmado

como a tendência a seguir, devido às suas três características principais [15], que são: grande

volume, alta velocidade e alta variedade dos dados.

Para as organizações, o Big Data é algo importante, na medida em que lhes permite obter,

armazenar, gerir e manipular grandes quantidades de dados de forma eficiente, no momento certo

e para obter a compreensão da ocorrência de determinadas situações [15].

Portanto, este será um dos pontos de partida para a implementação deste projeto de dissertação.

Além disso, a organização que efetuou a proposta para o projeto indicou que tinha preferência

por uma implementação baseada em Hadoop, pelo que facilmente se estabelece, de acordo com

a literatura, uma boa ligação entre o Hadoop e o Big Data, devido ao facto de um dos problemas

com o qual o Big Data se depara é a questão relativa ao facto de que, apesar da capacidade de

storage dos discos rígidos ter aumentado ao longo dos anos, a velocidade de acesso para leitura

dos dados tem-se revelado insuficiente [39], daí a necessidade de utilizar sistemas distribuídos

(organizados em clusters) que possam corrigir este tipo de problemas, ou seja, neste caso em

concreto, é justificada a utilização do Hadoop.

Outro problema que o Big Data enfrenta é relativo à combinação dos dados armazenados para

que estes possam ser analisados, logo, surge a questão de como é que se vão combinar dados que

estão dispostos em clusters diferentes? É então que surge outro ponto de partida para a

implementação deste projeto, o do uso do MapReduce, uma vez que este fornece “um modelo de

programação que abstrai o problema do disco, faz a sua leitura e grava-o, transformando-o numa

computação baseada em chaves e em valores” [39]. Mais uma vez é possível associarmos os

pontos de partida anteriores com este, na medida em que o Hadoop tem um sistema de ficheiros,

o HDFS, que oferece o armazenamento e oferece mecanismos de análise, baseando-se no

algoritmo do MapReduce.

É possível comprovar através da revisão de literatura acima escrita, o uso de sistemas

distribuídos, nomeadamente, o Hadoop no âmbito do processamento de imagem e na deteção de

padrões. Por exemplo, os autores em [29], realizam uma extensão à framework do MIPr, de modo

a que esta pudesse incluir a representação de imagem baseada na biblioteca OpenCV no formato

de ficheiros interno do Hadoop (HDFS – Hadoop Distributed File System), bem como

ferramentas para a leitura dessas imagens do HDFS , para guardar as imagens processadas de

volta para o formato do HDFS, e inclusive as drivers para suportarem o emprego dos MapReduce

Jobs com o OpenCV. E, apesar da extensão que permitia o desenvolvimento de programas ter

sido implementada em Java para processamento de imagem, usando o OpenCV, os autores

sugerem o alargamento da implementação deste trabalho de investigação em outras linguagens,

como o C++ e o Python.

Após a análise efetuada à literatura existente no âmbito do Big Data e do processamento de

imagens, conclui-se que as principais áreas a investigar nesta dissertação devem consistir no uso

de um ambiente distribuído, que neste caso será o uso do Hadoop, que terá como base a

implementação de algoritmos baseados em MapReduce, e como tal, a biblioteca escolhida para

ser usada foi o OpenCV e a linguagem foi o Python, devido à grande quantidade de documentação

que existe para ambas e devido ao facto desta ser uma área que ainda carece de exploração e de

aperfeiçoamento segundo a literatura, resultante dos desafios que surgem ao longo do tempo.

Ao ver as limitações presentes nas outras investigações e ao analisar os testes que foram

realizados e os resultados que foram obtidos, podemos ver de que forma é que podemos seguir

um caminho de investigação que prima pela inovação. Além disso, com a análise da literatura

disponível, é possível ter a noção dos resultados que já foram obtidos e de quais as técnicas,

bibliotecas, abordagens e linguagens é que foram usadas. A análise da literatura ajuda inclusive a

contextualizar o problema através de artigos mais antigos e a perceber quais as tendências para o

qual problemas semelhantes caminham.

A Questão de investigação primordial será “Quais as melhores técnicas de Big Data a

implementar para a deteção de padrões anómalos usando Hadoop?”, pelo que as

hipóteses/proposições que lhe estarão associadas consistirão no estudo dos conceitos Big Data,

Hadoop e MapReduce, a seleção da linguagem e da biblioteca a utilizar no âmbito do

processamento de imagem, bem como o estudo das técnicas de processamento de imagem que

mais se adequarão às necessidades existentes na organização que propôs o projeto incluindo

mecanismos de Machine Learning no algoritmo no âmbito da deteção e classificação das

anomalias, para que este possa desenvolver conhecimento artificial e aumentar a precisão dos

resultados que obtém, diminuindo a necessidade da intervenção de um técnico ao longo do tempo,

a aplicação dessas técnicas e mecanismos em contexto organizacional e por fim a conceção da

arquitetura anteriormente desenhada e do protótipo da solução final a implementar.

5.2. Objetivos

De um modo bastante sucinto, os principais objetivos deste projeto de dissertação baseiam-

se em:

Desenhar a arquitetura da solução a implementar;

Conhecer as nomenclaturas usadas em contexto organizacional;

Estudar técnicas de processamento de imagens e quais as bibliotecas disponíveis

para o efeito;

Criação de soluções para a deteção de padrões de informação para suporte à

tomada de decisão correspondente à classificação de situações anómalas, no âmbito do processo

de inspeção das Wafers.

5.3. Abordagem metodológica

A abordagem metodológica a seguir consiste na Design Science Research. Esta rege-se por

7 diretrizes, entre as quais: conceção como um artefacto, relevância do problema, avaliação da

conceção, contribuições de pesquisa, rigor de pesquisa, conceção como um processo de busca,

comunicação de pesquisa.

Deste modo, o projeto no âmbito desta dissertação seguirá com maior ênfase o paradigma

Science Project (que pretende criar o que é eficaz [1]), embora tenha também em consideração o

paradigma comportamental (Behavioral Paradigm), devido à natureza das próprias organizações.

Ou seja, “a investigação em Sistemas de Informação reside na interceção das pessoas, das

organizações e da tecnologia.” [40] [1], portanto, “Dada a natureza artificial das organizações e

os sistemas de informação que lhes dão suporte, o paradigma da conceção e da ciência (design-

science) pode desempenhar um papel significativo na resolução de dilemas fundamentais que têm

atormentado a investigação no âmbito dos Sistemas de Informação: o rigor, a relevância, os

limites da disciplina, o comportamento e a tecnologia” [41] [1].

Assim, na dissertação, serão apresentados e devidamente justificados todos os métodos e

técnicas empregados no âmbito da recolha e análise de dados bem como dos materiais empíricos

usados. Sendo inclusive realizada uma abordagem acerca dos cuidados éticos a considerar na

aplicação desta abordagem metodológica e a identificação dos principais riscos e limitações

inerentes à sua implementação, procurando explicar de que forma podemos minimizar esses

fatores.

Relativamente às diretrizes da abordagem metodológica:

(1) Relevância do problema

Existem diversas pesquisas já efetuadas no âmbito da deteção de padrões e do

processamento de imagem, direcionadas para diversas áreas de atuação, tal como, foi possível

verificar na Revisão de literatura elaborada no capítulo anterior. Além disso, a deteção de padrões

para deteção de situações anómalas é uma questão de bastante importância para a indústria dos

semicondutores, devido ao facto da tendência para o tamanho dos dispositivos pessoais ser para

diminuir ao longo do tempo. Essa diminuição do tamanho dos dispositivos vai fazer com que o

tamanho do defeito que pode causar a falha do chip também encolha, daí haver uma perda de

rendimento e um aumento da dificuldade da deteção das anomalias existentes. Além disso, na

literatura existente, sobressaem-se diversas preocupações, nomeadamente no âmbito da

capacidade de analisar as imagens microscópicas captadas das wafers em termos de resolução

ótica, bem como a necessidade da criação de sistemas que consigam fazer essa deteção de forma

automática, incluindo a capacidade de classificar e identificar geograficamente a anomalia e

ainda, que o sistema esteja devidamente preparado para aprender a detetar e a classificar novas

anomalias que possam surgir.

(2) Rigor na pesquisa

O Big Data não é uma tecnologia autónoma, mas sim o resultado da combinação dos

últimos 50 anos de evolução tecnológica [15]. Além disso, a abrangência de áreas que procuram

este tipo de soluções, ainda que cada uma delas esteja especialmente direcionada para o problema

em questão que pretende resolver, os seus estudos possuem a mesma base de implementação, na

medida em que os seus autores seguem os mesmos pontos de partida, cingindo-se nos conceitos

referentes ao Big Data, ao Hadoop, à deteção de padrões e à deteção de situações anómalas, ainda

que posteriormente, cada autor chegue a um resultado diferente, solucionando problemas

diferentes, pelo que esta é uma prova direta do rigor da pesquisa que está a ser efetuada e da

necessidade da implementação de um projeto desta natureza.

Além disso, as pesquisas feitas anteriormente servem como uma base para o presente

trabalho, uma vez que através da análise desses projetos de investigação, é possível perceber quais

as técnicas e métodos que foram usados, o que foi testado e quais os resultados que foram obtidos,

bem como perceber quais as perspetivas de trabalho futuro que cada autor sugere, servindo, no

fundo, de motivação para uma nova implementação, dando lugar à inovação no âmbito da área de

investigação que se está a estudar.

(3) Conceção como um processo de busca

A partir da análise das investigações já realizadas no âmbito que se pretende estudar, é

possível identificar quais as áreas que deverão ser investigadas neste novo projeto (identificadas

em 4.7), dando lugar à inovação e à aquisição de novo conhecimento, tendo em conta a observação

do uso das ferramentas por eles usadas, qual foi o impacto que as ferramentas tiveram na

implementação dos seus projetos, quais os principais problemas que eles identificaram e quais as

soluções e propostas implementadas.

Após a identificação das áreas a investigar, deverão ser elaborados os métodos de trabalho

a realizar, pelo que, na fase de implementação deverão ser sempre as técnicas de processamento

de imagem deverão ser testadas em situações o mais próximo da realidade possível, de modo a

garantir a precisão dos resultados que se obtém para cada teste. Além disso, deve ser feita uma

procura incessante pela escolha das combinações das melhores técnicas possíveis, ou seja, da

combinação que origine uma maior precisão nos resultados que se obtêm.

(4) Conceção como um artefacto

Os artefactos propostos para este projeto são: o desenvolvimento de uma aplicação

informática, usando a linguagem Python e a biblioteca OpenCV para a deteção de situações

anómalas em imagens de wafers, na medida em que a aplicação possa identificar qual o tipo de

anomalia presente em determinado local da imagem, e classificá-la, de acordo com o catálogo de

falhas já existente na organização.

(5) Avaliação da conceção

A avaliação da conceção do presente projeto será efetuada, através da medição da precisão

dos resultados que se obtém quer nos testes com dados reais, quer nos testes realizados com dados

sintéticos (inspirados em dados reais). Será inclusive tido em conta a eficiência da aplicação, na

medida em que esta conseguirá calcular o tempo de execução de cada tarefa.

Para isso, terá de ser aplicado ao algoritmo a capacidade de computar:

a precisão dos dados no total (accuracy), que é dada por:

𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦 = 𝑇𝑃+𝑇𝑁

𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁 , onde

TP – True Positive TN – True Negative FP – False Positive FN – False Negative

matrizes de confusão, que mostram o número de classificações corretas versus as

classificações previstas para cada classe, sobre um conjunto de exemplos;

Estimativas da taxa de erro, (2/3 para dados de treino e 1/3 para dados de teste)

Medidas de desempenho, tais como sensibilidade, precisão e especificidade

o Sensibilidade: percentagem de amostras positivas classificadas

corretamente sobre o total de amostras positivas

o Precisão: percentagem de amostras positivas classificadas corretamente

sobre o total de amostras classificadas como positivas

o Especificidade: percentagem de amostras negativas identificadas

corretamente sobre o total de amostras negativas

(6) Contribuições da pesquisa

Num curto prazo, as contribuições da pesquisa resultarão nos artefactos deste projeto, que

permitirão facilitar o trabalho dos operadores na linha de produção, diminuindo a probabilidade

de ocorrência de erros de classificação das wafers.

Numa perspetiva de longo prazo, a pesquisa efetuada em conjunto com a implementação

deste projeto, poderão contribuir para o desenvolvimento de mais projetos no âmbito do

reconhecimento de padrões para apoiar outras áreas de atuação, nomeadamente na área comercial

e financeira (melhorando as eventuais análises efetuadas em relação às informações dos clientes),

na área da segurança da informação (na vigilância do tráfego dos dados da rede de forma mais

complexa e mais eficiente para possível deteção de intrusões, prevendo-as), e na área de análise

dos dados (log files) vindos provenientes dos sensores.

(7) Comunicação de pesquisa

Esta pesquisa é bastante direcionada para profissionais da área dos semicondutores, devido

a termos muito técnicos usados nesta indústria e que são de difícil compreensão para as pessoas

que não têm o mínimo de familiarização com a área em questão. Além disso, em termos técnicos

de implementação do projeto também existem imensos termos bastante específicos, que

dificultam a compreensão de alguns processos, a pessoas externas à área dos Sistemas de

Informação.

A tabela seguinte mostra um quadro-resumo referente às eventuais limitações que podem

ocorrer aquando aplicação da presente abordagem metodológica, bem como um conjunto de

medidas que possam minimizar esses riscos.

Tabela 2 - Limitações e minimização de riscos na aplicação da abordagem metodológica

Eventual limitação Medidas de minimização dos riscos

Má conceção dos artefactos Realização de avaliações periódicas tendo em conta o

alinhamento entre o desenvolvimento do projeto e os

artefactos que foram criados

Desalinhamento entre a linha de

pensamento académica e a adoção

do projeto na indústria

Desenvolvimento de natureza ad-

hoc da solução

Enquadramento do desenvolvimento da solução

industrial segundo as orientações propostas pela

abordagem metodológica

Avanços rápidos na tecnologia

podem invalidar os resultados da

investigação antes da sua

implementação

Implementação da solução com foco na resolução das

necessidades da organização em questão e tendo sempre

em conta os artefactos definidos e as tendências das

tecnologias no mercado.

5.4. Plano de atividades

Para o presente projeto de dissertação, propõe-se o seguinte plano de atividades:

Tabela 3 - Plano de atividades

Tarefa Duração Resultados a obter

Desenho da solução de Big Data a

ser utilizada com a respetiva

arquitetura e blocos funcionais.

30 dias Desenho da arquitetura da solução a

ser implementada.

Aprendizagem de alguns dos

relatórios existentes e das fontes

de dados e nomenclatura das

mesmas.

30 dias Aquisição de conhecimento relativo

às nomenclaturas usadas em contexto

organizacional;

Análise aos tipos de dados que são

armazenados nas bases de dados;

Realização de consultas e questões

passíveis de serem importantes para

análise de acordo com o contexto da

organização.

Tabela 4 - Plano de atividades

Tarefa Duração Resultados a obter

Aplicação da ferramenta para

criação de um contexto similar ao

dos relatórios identificados, mas,

construídos com Hadoop.

30 dias Análise dos reports já existentes;

Recriação de exemplos dos reports já

existentes, usando por base o

manuseamento do Hadoop;

Criação de MapReduce jobs para a

extração de conhecimento em

ficheiros de texto aleatórios;

Criação de MapReduce jobs para a

extração de conhecimento em dados

de teste da organização;

Representação desses resultados sob a

forma de reports / dashboards.

Familiarização com as bibliotecas

de processamento de imagem e

com os métodos a usar.

30 dias Resultados dos testes efetuados no

âmbito de:

Deteção de emoções;

Deteção de elementos-chave de

uma imagem;

Deteção de características

humanas padrão, tais como, deteção

da face na imagem, deteção dos olhos,

tom da pele, idade e género.

Estudo e aplicação das técnicas de

processamento de imagem

estudadas anteriormente

30 dias Resultados dos testes efetuados com a

aplicação de algumas imagens das

wafers;

Retirar conclusões principais acerca

dos resultados obtidos em relação aos

testes genéricos (aplicados a imagens

aleatórias) e testes aplicados às

imagens das wafers.

Tabela 5 - Plano de atividades

Tarefa Duração Resultados a obter

Familiarização com a identificação

de falhas nas wafers

8 dias Identificação e classificação manual de

algumas imagens vindas das Camtek de

acordo com o catálogo de falhas;

Comparação dessa classificação com os

dados armazenados pelas Camtek, onde

se inclui o registo dos dados referentes

às falhas e à classificação dada pelo

operador para um determinado lote;

Identificação de padrões base em

imagens microscópicas das wafers;

Resultados da aplicação dos testes

anteriormente estudados nas imagens

microscópicas das wafers

Estudo e aplicação de técnicas de

Machine Learning adequadas ao

processo;

Criação de solução de deteção de

padrões de dados em mapas

gráficos para deteção de alterações

em colorações, densidades ou

outras características.

60 dias Pequeno protótipo que permita detetar

algumas das anomalias existentes num

set de imagens, usando mecanismos de

Machine Learning, de modo a que o

algoritmo consiga melhorar a precisão

dos resultados que vai obtendo ao longo

do tempo.

Avaliação dos resultados obtidos

com a implementação dos testes

em imagens

8 dias Avaliação do grau de confiança do

algoritmo de acordo com as técnicas

estipuladas na abordagem

metodológica.

Adição de ajustes à solução,

relativas à robustez do

classificador, bem como à precisão

dos resultados que se obtêm.

90 dias Melhorar o protótipo anteriormente

criado, aplicando técnicas de

classificação dos dados mais robustas e

que insinuem uma maior precisão dos

resultados.

Avaliação dos resultados obtidos 8 dias Avaliação do grau de confiança do

algoritmo e na fiabilidade dos

resultados obtidos

Conclusões finais do projeto 8 dias Apresentação dos resultados obtidos

6. Resultados obtidos e discussão

Com a implementação deste projeto no âmbito da dissertação de mestrado intitulada

“Exploração de técnicas de Big Data para a deteção de padrões anómalos na produção”, os

resultados obtidos que estão propostos são a implementação de uma solução baseada nas técnicas

de processamento de imagem, recorrendo à ferramenta do Hadoop e que tenha como objetivo a

deteção de situações anómalas aquando do processo de inspeção das wafers na linha de produção

da fábrica de semicondutores da organização em questão. Espera-se inclusive a apresentação de

um protótipo referente à solução que poderá vir a ser implementada na linha de produção, que

tem como principal propósito auxiliar os operadores no que toca à classificação de situações

anómalas aquando do processo de inspeção das wafers.

Além disso, outro dos resultados esperados consiste na tirada de conclusões sobre o estudo

acerca da viabilidade desta implementação, tendo em conta os seus custos de manutenção, a

precisão dos resultados que obtém ao longo do tempo, bem como a capacidade de aprendizagem

da solução para efeitos de classificação de anomalias de forma automática.

7. Conclusões

De acordo com as conclusões retiradas do desenvolvimento da revisão de literatura deste

presente relatório foi possível identificar quais as áreas que carecem de maior investimento neste

projeto de dissertação, além disso, a implementação da abordagem metodológica Design Science

Research, remeteu a conceptualização deste projeto para a criação de artefactos importantes, que

irão conduzir a sua realização. Posto isto, e de acordo com o plano de atividades acima

estabelecido, o trabalho realizado até à data da entrega do presente relatório consistiu no estudo

da abordagem metodológica a seguir ao longo da execução deste projeto, bem como dos métodos

que lhe são inerentes de acordo com o tipo de implementação que está a ser realizada, assim como

a investigação acerca dos trabalhos já realizados na área até ao momento, dos

métodos/procedimentos utilizados e quais as conclusões a que chegaram esses autores. Deste

modo, foi possível identificar as áreas a investir, devido às necessidades e desafios que a indústria

dos semicondutores enfrenta todos os dias devido à diminuição significativa do tamanho dos

dispositivos eletrónicos nos dias de hoje, o que desencadeou dificuldades no âmbito da deteção

de anomalias, entre outros problemas críticos, que são abordados no capítulo 4.

Posteriormente, foi realizada uma pesquisa acerca da literatura disponível acerca das ferramentas

a usar, bem como o uso de toda a documentação disponível referente às bibliotecas, métodos e

funções existentes.

Em relação à execução prática do projeto de dissertação, inicialmente houve um processo

de familiarização com as nomenclaturas da organização, que resultou na recriação dos reports

utilizados atualmente na organização. Além disso, nesta fase foram também realizadas pesquisas

acerca das principais funcionalidades do Hadoop e de todo o ecossistema envolto nele.

Numa fase posterior, foi iniciado o processo de estudo e análise das técnicas de

processamento de imagem existentes e quais as mais usadas, tendo sido feitos alguns testes no

âmbito do processamento de imagens. Em relação a estes testes, numa abordagem inicial, foram

realizados testes no âmbito do reconhecimento de emoções, faces, características

comportamentais padrão, extração das principais características de uma imagem e da sua cor

predominante utilizando a biblioteca do Cognitive Services da Microsoft.

Numa abordagem posterior foram realizados testes genéricos, no âmbito da deteção de círculos,

deteção de linhas, medição de objetos, equalização da coloração de imagens, extração dos valores

de HSV (Hue Value Saturation) e de RGB (Red Green Blue) de uma imagem, remoção do fundo,

stitching de imagens, deteção de um padrão numa imagem, match de características de imagens,

alinhamento de imagens, deteção de pequenos “buracos” e a criação de histogramas referentes às

cores presentes numa imagem, entre outros que considerados pertinentes.

Após todo este processo de testes em imagens genéricas, isto é, em imagens do quotidiano,

passou-se para a aplicação das diversas técnicas estudadas nas imagens das wafers captadas pelas

Camtek. De seguida, foram eleitas quais as melhores técnicas a aplicar em diferentes casos, de

onde foram escolhidos três métodos diferentes de aglomeração dessas técnicas e onde foram

comparados os resultados obtidos em diversas situações diferentes de modo a perceber se em

determinadas situações algum dos métodos seria o mais indicado para implementar.

Seguidamente, foram estudadas as maneiras de como poder criar um dataset de imagens,

assim como o estudo da deteção, extração e computação das características principais de uma

imagem; o estudo e aplicação de diferentes métodos classificadores, por forma a perceber qual o

que garante melhores resultados, e por fim, a combinação dos métodos relatados acima de modo

a estudar a possibilidade de melhorar a precisão e a obtenção dos resultados dos testes nas imagens

das wafers.

Além disso, foi realizada também a introdução ao estudo das técnicas de Machine

Learning, de forma a que seja possível arquitetar qual o melhor método de implementação a ser

usado para o caso especifico de que se trata o projeto, ou seja, para a deteção e classificação

automática do tipo de anomalias presentes nas wafers, pelo que estas técnicas serão incorporadas

na implementação do classificador.

Referências

[1] S. Y. R. Esearch, B. A. R. Hevner, S. T. March, J. Park, and S. Ram, “DESIGN

SCIENCE IN INFORMATION,” vol. 28, no. 1, pp. 75–105, 2004.

[2] Zentroid, “PCB/CAD/AOI Basics, Component and Package names,” 2013. .

[3] N. S.A., “WLP.” [Online]. Available: http://www.nanium.com/wafer-level-packaging.

[4] T. W. WLP, “Wafer-Level Optics,” Semiconductor International, 2009.

[5] SPTS, “Fan-out Wafer Level Packaging - Tech insights.” [Online]. Available:

http://www.spts.com/tech-insights/advanced-packaging/fowlp.

[6] E. Wafer, L. Ball, and G. Array, “eWLB ( FOWLP Technology ) Embedded Wafer

Level Ball Grid Array eWLB ( FOWLP Technology ).”

[7] Camtek, “Camtek’s Semiconductors solutions.” [Online]. Available:

http://www.camtek.com/solutions/semi#FE.

[8] P. Simon, Too Big to Ignore: The Business Case for Big Data. 2013.

[9] V. Pulli, Kari; Baksheev, Anatoly; Kornyakov, Kirill; Eruhimov, Realtime Computer

Vision with OpenCV. .

[10] V. K. Mehta, Principles of Electronics. S. Chand, 2008.

[11] R. D.Schneider, Hadoop for Dummies. 2012.

[12] V. Dom, B.E.; Brecher, “Recent advances in the automatic inspection of integrated

circuits for pattern defects,” in Machine Vision and Applications, 1995.

[13] P. A. Laplante, Comprehensive dictionary of electrical engineering, 2nd Ed. CRC Press,

2005.

[14] M. A. A. Nixon, Feature Extraction and Image Processing for Computer Vision, 3rd

Editio. Academic Press, 2012.

[15] D. F. H. Judith Hurwitz, Alan Nugent and and M. Kaufman, Big data for Dummies. .

[16] C. Lam, Hadoop in Action. 2011.

[17] T. M. Dias, “Identification and Quantification of Oncocytes in Microscopic Images,”

2014.

[18] Atlasgeneticsoncology.org, “Thyroid: Oncocytic tumors.” [Online]. Available:

http://atlasgeneticsoncology.org/Tumors/OncocytThyroidID5068.html.

[19] J. Dı, “Anomaly-based network intrusion detection : Techniques , systems and

challenges,” vol. 28, pp. 18–28, 2009.

[20] H. Bouma, S. Raaijmakers, A. Halma, H. Wedemeijer, P. O. Box, and J. G. T. Hague,

“Anomaly detection for internet surveillance,” vol. 8408, no. 2012.

[21] V. Chandola, A. Banerjee, and V. Kumar, “Anomaly Detection : A Survey,” vol. 41, no.

3, pp. 1–58, 2009.

[22] A. Ross and A. Jain, “Information fusion in biometrics,” vol. 24, pp. 2115–2125, 2003.

[23] A. K. Jain, S. Prabhakar, and S. Chen, “Combining multiple matchers for a high security

fingerprint verification system,” vol. 20, pp. 1371–1379, 1999.

[24] T. K. Ho, J. Hull, S. N. Srihari, and S. Member, “Decision Combination in Multiple

Classifier Systems,” vol. 16, no. I, 1994.

[25] L. Hong and A. Jain, “Integrating Faces and Fingerprints for Personal Identification,”

vol. 20, no. 12, pp. 1295–1307, 1998.

[26] S. Data and P. I. Verification, “Fusion of Face and Speech Data for Person Identity

Verification,” 1999.

[27] U. Dieckmann, P. Plankensteiner, and T. Wagner, “SESAM : A biometric person

identification system using sensor fusion,” pp. 827–833, 1997.

[28] J. Kittler, I. C. Society, M. Hatef, R. P. W. Duin, and J. Matas, “On Combining

Classifiers,” vol. 20, no. 3, pp. 226–239, 1998.

[29] T. Epanchintsev and A. Sozykin, “Processing large amounts of images on hadoop with

OpenCV,” CEUR Workshop Proc., vol. 1513, pp. 137–143, 2015.

[30] G. Bradski, “The opencv library,” Dr. Dobb’s J. Softw. Tools, 2000.

[31] M. Zaharia, M. Chowdhury, M. J. Franklin, S. Shenker, and I. Stoica, “Spark : Cluster

Computing with Working Sets.”

[32] I. I. M. Alghussein, “Anomaly Detection using Hadoop and MapReduce Technique in

Cloud with Sensor Data,” vol. 125, no. 1, pp. 22–26, 2015.

[33] P. A. Laplante, Comprehensive dictionary of electrical engineering, 2nd ed. CRC Press,

2005.

[34] E. Cliffs, S. Ikeda, and T. Kohonen, “United States Patent [ 19 ],” 2000.

[35] J. ; S. S. G. Marylyn H. Bennett ; Kenneth W. Tobin, “Automatic defect classification:

status and industry trends,” in Integrated Circuit Metrology, Inspection, and Process

Contro, 1995.

[36] J. ; S. S. G. ; T. P. K. ; S. L. C. ; F. L. Kenneth W. Tobin, “Automatic classification of

spatial signatures on semiconductor wafer maps,” in Metrology, Inspection, and Process

Control for Microlithography, 1997.

[37] R. Cid, F. Jr, and J. Michel, “As ferramentas do Astrônomo,” pp. 1–118.

[38] M. A. Schulze et al., “Semiconductor wafer defect detection using digital holography,”

2003.

[39] T. White, “Hadoop: The definitive guide,” 2010. [Online]. Available:

https://books.google.pt/books?id=Wu_xeGdU4G8C&lpg=PA98&dq=choosing variables

HADOOP&hl=pt-PT&pg=PA98#v=onepage&q=choosing variables HADOOP&f=false.

[40] C. M. Silver, M. S., Markus, M. L., and Beath, “The Information Technology

Interaction. 1995.

[41] A. Lee, “Systems Thinking, Design Science, and Paradigms: Heeding Three Lessons

from the Past to Resolve Three Dilemmas in the Present to Direct a Trajectory for Future

Research in the Information Systems Field,” in Eleventh International Conference on

Information Management, 2000.

[42] Wikipedia, “Clustering.” [Online]. Available: https://pt.wikipedia.org/wiki/Clustering.