• Nenhum resultado encontrado

O processo computacional de aprendizado de m´aquina busca inferir automaticamente e, portanto, generalizar, um modelo de aprendizado com base em um conjunto de dados finito e amostral. Os modelos de aprendizado utilizam-se de fun¸c˜oes estat´ısticas para descrever as dependˆencias entre os dados e a correla¸c˜ao entre as entradas e sa´ıdas. De forma simples, este processo permite ao computador aprender, sem ser explicitamente programado, e otimizar sua an´alise e desempenho com base nos resultados de cada itera¸c˜ao do modelo de aprendizado (de Souza Gomes,2019).

Conforme citado por (Canepa,2016), baseado na metodologia utilizada para o treina- mento e tendo em vista os dados fornecidos, os tipos de aprendizado podem ser divididos em:

• Aprendizado Supervisionado: consiste em operar com uma expectativa conhecida, na qual os conjuntos de dados de entrada neste contexto s˜ao chamados de conjuntos dos rotulados, objetivando conseguir encontrar instˆancias semelhantesGollapudi(2016). O objetivo ´e aprender a rela¸c˜ao instˆancia/r´otulo e com base nos conhecimentos adquiridos atrav´es do treinamento, ser capaz de realizar previs˜oes de comportamento ou tomadas de decis˜ao.

• Aprendizado Semi-Supervisionado: assim como na supervisionada, h´a um conjunto de dados rotulados. A diferen¸ca ´e que, al´em dos dados rotulados, temos dados n˜a orotulados tamb´em. O sistema deve analisar esses conjuntos e fazer o melhor poss´ıvel com o de dados n˜ao rotulados. Este tipo de abordagem ´e utilizado quando o conjunto de treinamento cont´em registros insuficientes para obter um resultado com boa precis˜ao Lima e Pinto(2016).

• Aprendizado N˜ao-supervisionado: ´e utilizado quando n˜ao se tem um alvo espec´ıfico, isto ´e, n˜ao h´a um r´otulo inerente `as caracter´ısticas dadas no exemplo Gollapudi

(2016). O objetivo ´e agrupar os exemplos atrav´es da semelhan¸ca entre os atributos. Este tipo de abordagem geralmente ´e utilizada em problemas onde a aprendizagem ´

e baseada na equivalˆencia entre as instˆancias, isto ´e, h´a uma busca pelo padr˜ao de caracter´ısticas intr´ınsecas aos exemplos dados (Alves,2018).

• Aprendizagem por Refor¸co: Na aprendizagem por refor¸co, trabalha-se com a ideia de condicionamento (saber se uma a¸c˜ao ´e correta ou n˜ao) a partir de recompensas ou puni¸c˜oes. Esses condicionamentos s˜ao modelados a partir da an´alise do problema, onde ao t´ermino de uma a¸c˜ao e a partir dos resultados desta, o m´odulo inteligente da

O clustering ´e uma tarefa de aprendizado n˜ao supervisionada que visa particionar um conjunto de objetos de dados n˜ao rotulados em grupos ou clusters homogˆeneos. A parti¸c˜ao ´e executada de maneira que objetos no mesmo grupo sejam mais semelhantes entre si do que objetos em conjuntos diferentes (Montero et al., 2014). Uma quest˜ao bastante importante durante a an´alise de cluster ´e estabelecer o que queremos dizer com objetos de dados “semelhantes”, isto ´e, determinar uma medida de similaridade/dissimilaridade adequada entre dois objetos. Visando destacar ao m´aximo em que os dois grupos diferem mais.

´

E uma t´ecnica em que dados semelhantes s˜ao colocados em grupos relacionados ou homogˆeneos sem o conhecimento avan¸cado das defini¸c˜oes dos grupos (Aghabozorgi et al.,

2015). Existem alguns algoritmos que realizam o processo. Para ajuda da escolha, um dos principais crit´erios a serem avaliados foi que n˜ao fosse necess´ario a identifica¸c˜ao da quantidade de clusters existentes nos objetos a serem estudados.

Com todos os crit´erios avaliados, o melhor que se enquadrou `as necessidades deste tra- balho foi o Pvclust, que ´e um pacote R[i]para avaliar a incerteza na an´alise hier´arquica de agrupamentos. A escolha se deu basicamente pelo fato de n˜ao ser necess´aria a identifica¸c˜ao da quantidade de clusters existentes. Com isso, muitos dos classificadores conhecidos, como o K-means, foram descartados por este fato.

Para cada cluster no cluster hier´arquico, as quantidades chamadas de p-values s˜ao calculadas por meio de reamostragem de autoescala de v´arias escalas. O p-value de um cluster ´e um valor entre 0 e 1, que indica o qu˜ao forte o cluster ´e suportado pelos dados. O pvclust fornece dois tipos de p-values: valor de AU (Approximately Unbiased) traduzindo para o portuguˆes Aproximadamente Imparcial e valor de BP (Bootstrap Probability) tra- duzindo para o portuguˆes Probabilidade de Inicializa¸c˜ao. O p-value de AU, que ´e calculado por reamostragem de inicializa¸c˜ao m´ultipla em v´arias escalas, ´e uma melhor aproxima¸c˜ao ao p-value imparcial do que o valor de BP calculado por reamostragem de inicializa¸c˜ao normal. O pvclust executa a an´alise hier´arquica de cluster por meio da fun¸c˜ao hclust e calcula automaticamente os p-values para todos os clusters contidos no cluster de dados originais (Suzuki e Shimodaira,2006).

A fun¸c˜ao Hclust executa uma an´alise hier´arquica de cluster usando um conjunto de diferen¸cas para os n objetos que est˜ao sendo armazenados em cluster. Inicialmente, cada objeto ´e atribu´ıdo ao seu pr´oprio cluster e, em seguida, o algoritmo prossegue iterativa- mente, em cada est´agio unindo os dois clusters mais semelhantes, continuando at´e que exista apenas um ´unico cluster. Em cada est´agio, as distˆancias entre os clusters s˜ao recal- culadas pela f´ormula de atualiza¸c˜ao de dissimilaridade de Lance-Williams, de acordo com o m´etodo de agrupamento espec´ıfico que est´a sendo usado que foi o Ward.D2 (R-Manual,

2019b). O m´etodo de Distˆancia escolhido foi o bin´ario, onde os vetores s˜ao considerados como bits bin´arios, portanto, elementos diferentes de zero est˜ao “ativados” e zero s˜ao “de- sativados”. A distˆancia ´e a propor¸c˜ao de bits em que apenas um est´a entre aqueles em que pelo menos um est´a (R-Manual,2019a).

[i]Pacote pvclust para ambiente R:

Cap´ıtulo 3

Desenvolvimento

“Everything should be made as simple as possible, but not simpler.”

Albert Einstein

Este Cap´ıtulo est´a organizado da seguinte forma: Na Se¸c˜ao 3.1 est´a uma breve in- trodu¸c˜ao de como ser´a feito o projeto, descrevendo a metodologia que ser´a utilizada. Em seguida, na Se¸c˜ao 3.2 est´a mostrando como foi feta todo o processo de explora¸c˜ao dos dados obtidos, logo em seguida na Se¸c˜ao 3.3 est˜ao alguns dos experimentos que foram realizados durante a fase de testes para a verifica¸c˜ao a veracidade dos clusters elaborados.

3.1

Procedimentos Metodol´ogicos

O desenvolvimento deste trabalho se d´a, inicialmente, nas quest˜oes relacionadas `a se- guran¸ca dos dispositivos m´oveis, mais especificamente dispositivos com SO Android. Uma das principais funcionalidades ser´a a an´alise de Android Package (APK), onde ser´a poss´ıvel verificar se determinada aplica¸c˜ao cont´em inten¸c˜oes de disseminar ou alterar informa¸c˜oes pessoais ou n˜ao. Com isso, poder´a ser realizado o agrupamento em fam´ılias, de acordo com o que a aplica¸c˜ao desejar fazer.

A implementa¸c˜ao, se dar´a inicialmente, usado t´ecnicas de an´alise est´atica, onde os PHA foram analisados atrav´es do seu c´odigo fonte, buscando Intents, Content Provider, ou algo que tenha car´ater maligno, que fa¸ca com que a aplica¸c˜ao falhe em um dos trˆes principais atributos das seguran¸ca da informa¸c˜ao.

Os PHA foram analisados de forma est´atica e classificados de acordo com quais in- forma¸c˜oes desejam utilizar sem o consentimento do usu´ario. Foram comparados com a lista mostrada na Se¸c˜ao 2.1.3, levando em considera¸c˜ao que a verifica¸c˜ao dos aplicativos avisa o usu´ario se ele detectar a tentativa de instala¸c˜ao de qualquer aplicativo que se en- quadre em uma ou mais dessas categorias em seus dispositivos (Google,2017). Quando ´e detectado que um PHA cont´em recursos de v´arias categorias, ele ´e classificado com base nas caracter´ısticas mais prejudiciais.

A categoriza¸c˜ao de caracter´ısticas mais prejudiciais ´e levada em considera¸c˜ao o que a aplica¸c˜ao visa alcan¸car. Como por exemplo, um aplicativo que obt´em dados e pede pagamento para liberar tais dados como o Ransomeware ´e mais grave que uma aplica¸c˜ao que tem acesso `a fotos e SMS como um spyware. Tendo como base que o que agrava varia de acordo com o que se o PHA obteve. Com isso, foi feita uma compara¸c˜ao entre o que o

22 Cap´ıtulo 3. Desenvolvimento

PHA utiliza e sua classifica¸c˜ao de acordo com o Android, buscando encontrar semelhan¸cas, afim de descobrir quais as caracter´ısticas mais utilizadas por cada tipo de PHA

Documentos relacionados