]
3º edição
Sumário Experiencias pessoais ....................................................................................................................................................... 3 Minha experiência como mentor do BlueHack ........................................................................................................ 3 Governança de TI .............................................................................................................................................................. 8 Governança da internet .............................................................................................................................................. 8 Inteligência Artificial ....................................................................................................................................................... 10 Treinando Modelos com Watson Knowledge Studio - Parte 1 ............................................................................. 10 Agenda ............................................................................................................................................................................ 19 Agenda ........................................................................................................................................................................ 19
Experiencias pessoais
Minha experiência como mentor do BlueHack Fernando Veiga CEO Zero Treze Innovation Space & Senior Community Manager in Things Hacker Team
Ahhh Bluehack, o que como descrever esse evento. Vamos lá. Pra quem não conhece, o bluehack era para ser o hackathon criado pela IBM (Marcia Golfieri & Fernando Rych) com intuito de apresentar as mais novas ferramentas da empresa como Watson e Bluemix, mais só era mesmo, por que ele superou isso a muito tempo, logo na sua primeira edição, modéstia parte foi a minha primeira experiência com hackathons também, e que experiência, 700 pessoas, mais de 70 projetos sendo desenhados, o que era aquilo. Tudo era muito novo, ninguém mesmo sabia direito o que estava fazendo ali ou fora os IBMistas, pouco se sábia sobre as ferramentas que a galera estava utilizando, mas e daí. O que estava valendo era a diversão. Tanto que em um determinado momento da noite, chegam pessoas muito amadas, vestidos
de Darth Vader, Chewbacca e princesa Leia liberando Red Bull e pizza pra todo mundo. Ai a feste se multiplicou, a galera se animou e começaram a “Codar” feito loucos. Ao final 66 dos 70 projetos estavam prontos para apresentação, juízes foram chamados e aí mais uma surpresa, uma das juízas tinha 8 anos, a pequena Manuzinha. Muitos questionaram, uma criança para julgar projetos de adulto? Isso até ela pegar a primeira equipe no pulo com uma essa pergunta:
Como vocês pretendem ganhar dinheiro com seu produto?
A pergunta foi fulminante, a equipe tentou desenvolver uma resposta, o tempo acabou e o silêncio reinou. Ela sabia para que estava ali. 3
Experiências pessoais
Nesse evento tive o prazer de mentorar uma equipe que tinha um sonho maravilhoso que era criar uma corujinha que contasse uma história para crianças nos hospitais, seu nome era Poran, ela iria reconhecer a face da criança na qual ela estivesse contando a história e se em algum momento o semblante da criança entristecesse a linda corujinha iria parar a história e começar uma interação, até que a criança voltasse a se alegrar. A equipe passou por vários problemas desde a integração entre os membros até a parte de programação, como falei, poucos eram os que conheciam as ferramentas, mas não deixaram se entristecer e com muita luta terminaram o projeto, apresentaram e quando tivemos o anuncio dos campeões adivinhem; lá estava ela, a linda Poranzinha no topo do pódium, foi
uma alegria para seus criadores e para mim também, eu havia ajudado os campeões do primeiro Bluehack São Paulo. Voltei para extasiado pela simples experiência de ensinar e aprender com as feras. Algum tempo se passou e uma amiga, lançou em seu facebook que estava precisando de ajuda com algumas coisinhas, estava eu no meio do The Developers Conference, mesmo assim pensei, porque não, vamos ajudar, ela era nada mais, nada menos que minha amiga Marcia Golfieri e Fernando Rych que estava em solo americano correndo atrás de novos desafios. Chegando na IBM foi me passado uma simples missão, Auxiliar na reprodução dos vídeos da final do Bluehack USA feito em todas as bases da IBM Norte América, além de conhecer pessoas
Experiências pessoais
Chegando no evento fomos muito bem recebidos e mais uma vez lá fui eu com a missão de ajudar, primeiro uma equipe com problemas na api do Spotfy,
novas e notar o quanto meu inglês era ruim a experiência foi indescritível. Pouco tempo depois, vejo no facebook mais uma chamada, iria ter mais um Bluehack, dessa vez na IBM Hortolândia, seria um grande desafio, a final, não tenho carro, minha moto estava com problemas no documento, mas isso não me impediria, lancei no facebook se alguém de São Paulo iria para Hortolândia no dia marcado do evento, e não é que encontrei, alguém que hoje é meu grande amigo, Marco Riveiros, marcamos de nos encontrar em São Bernardo, chamei mais dois amigos que queriam ir, Diego Telles e Jonatas (Bob) e na data marcada fomos. Entre as zueiras e o aprendizado que tivemos naquele caminho fizemos um check-in na IBM Errada, só para brincar com o pessoal do Bluehack e conhecemos uma nova forma de negócios com o Marco, o cara é fenomenal.
segundo uma galera criando um game de cartas web que utilizaria os reconhecimentos do IBM Watson para desafiar outras pessoas e melhorar ela própria em alguns aspectos como, liderança, empreendedorismo e outras coisinhas mais, ganhei um grande tempo ajudando eles, lá também encontrei minha amiga Eduarda Gama que estava em dois desafios diferentes e iria fazer o pitch em um deles, ela estava nervosa com isso, porém dei a ela o único e melhor conselho que me deram há muito tempo atrás para uma apresentação. “Toque o Foda-se” sim, esse é meu conselho para as pessoas que vão fazer alguma
5
Experiências pessoais
apresentação e estão nervosas, pense que se você perder, no outro dia, sua rotina voltará ao normal, nada de ruim irá te acontecer então, por que se preocupar tanto, apenas “Toque o Fodase”, suba lá e dê o seu melhor. E não é que deu certo, ela subiu no palco, fez uma apresentação excelente, digna de uma doutora no assunto e levou o prêmio daquele desafio, em seguida seu amigo também subiu e apresentou a ideia do jogo de cartas e mais uma vez aquela equipe, a equipe que fiquei tão próximo, levou o ponto mais alto do pódium, mérito totalmente deles, eu só dei aquele empurrãozinho. Fora isso reencontrei vários amigos, como Thiago Lima do embarcados que se uniu com o Marco e a Márcia Para me ajudar a melhorar de emprego. hahaha foi demais e deu certo, mas isso é para uma outra história, voltamos para casa aquele dia com sentimento de missão cumprida e gostinho de quero mais. E mais recente, em São Paulo tivemos a segunda edição do BluehackSP, nesse foi muito legal, fui desafiado a criar um novo protótipo que integrasse serviços de IoT (Internet of Things ) do IBMCloud com materiais recicláveis e assim criar um robô de fácil elaboração, com ajuda de amigos, Criamos em uma noite o #TJPet, um robô feito de Garrafas Pet com uma raspberry em seu interior que lhe permite se conectar com a nuvem e
faze-lo receber comando de voz,
reconhecer imagem, falar e muito mais, mas não pense que nesse evento eu estava competindo não hehe fui para mentorar, como todos os outros, o TJPet foi só uma das coisas que desenvolvemos lá, a mentoria foi pesada, conheci projetos como do meu amigo Jean Paul que tinha o sonho de criar um jogo de terror que utilizasse a inteligência do IBMWatson para
vasculhar as redes sociais das pessoas e colocar como oponente aquilo que ela tem mais medo, num jogo frenético de perseguição ao estilo Resident Evil 3
Experiências pessoais
Nemesis, porém, com o intuito de mostrar para as pessoas seus pontos fortes e fracos e como utiliza-los para superar desafios. E que por sinal ficou em segundo lugar nesse evento. Tive a oportunidade também de levar minha família para dentro da IBM, ver meu filho correndo por aqueles corredores, foi algo muito gostoso de se ver, mostrar que esse é um mundo que está muitoperto de nós, basta esticar as mãos e toca-lo Em suma o Bluehack tem uma essência diferente de outros hackathons que
conhecemos hoje, todo aquele espírito de competição dá espaço a pessoas que querem um mesmo objetivo, que é ajudar ao próximo com seu conhecimento, não existe brigas ou desavenças entres os competidores, eles se ajudam em um grande espirito de cocriar algo para um bem maior, não é à toa que o Bluehack seja o maior Hackathon da américa latina e logo logo se tornará o maior do mundo, O que o torna tão grande é que seu objetivo se mostra infinitamente maior que sua premiação, Meus parabéns Fernando Rych e Marcia Golfieri pelo evento incrível, e sempre que precisar, estamos aí.
Links: Matéria no Linkedin: https://www.linkedin.com/pulse/minha-experi%C3%AAncia-dementor-bluehack-fernando-veiga/
7
Governança de TI
Governança da internet Kimmy Wu Ambassador na Digital Grassroots
A internet, sem duvidas, e uma grande essência da atualidade. Com ela podemos diminuir e aumentar distâncias por meio de chats, podemos analisar processos, empresas e comportamentos com a inteligência artificial, servindo como ferramenta de fala, educação, descontração, e outros diversos fins. Pensando em encontrar um bom caminho para o futuro surge a governança da internet. Entretanto a questão que permuta na governança da internet é: "quem decide o futuro dela?". Primeiramente é importante definir o que é a governança da internet. Segundo the world summit on the information society (WSIS) e definido como “o desenvolvimento e aplicação feitas pelo governo, setor privado, e sociedade civil, em seus respectivos papéis, em compartilhamento de princípios, normas, regras, produções de decisões e programas que moldam a evolução e uso da internet". O modo como a internet é definida e defendida, assim como na política, é
dificilmente, senão impossível, de ser imparcial. O formato de debate, que o Itamaraty também defende, em questão da internet, é o sistema multilateral, multi-stakeholder, com os principais setores relevantes (governo, setor privado, sociedade civil, comunidades técnica, acadêmica e organismos internacionais). De modo que empresas de telecomunicações não defendam apenas como um meio de vender mais produto ou cabear mais áreas, governos não utilizem como um "marketing” para campanhas ou como filtro de informações, entre outros interesses de cada setor. Na forma de um fórum aberto, o IGF (Internet Governance Forum), convocado pela Nações unidas, tem como a principal função de ser um espaço aberto para discussões a respeito de elementos chaves da internet. Durante o seu último evento que ocorreu e Genebra no Palácio das Nações, o fórum teve como tema principal “Shape your digital future”
Governança de TI
(molde o seu futuro digital), sendo debatido questões de Inteligência artificial, IOT, Criptomoedas, Blockchain, desigualdade de gênero, conectividade, redes, e muito mais assuntos. Durante o evento são debatidos os assuntos para identificar qual o melhor modo de tratar e ou solucionar para algum problema presente ou futuro. Diferentes países muitas vezes se encontram em uma mesma situação. A
grande vantagem, e principal proveito, que pude presenciar durante o evento foi a pluralidade de conhecimento e culturas. É importante destacar a importância da presença da área técnica, pois são aqueles afetados diretamente e diariamente e não são tão bem representados. Do fórum sai como resultado projetos com o “.xxx", para site de conteúdo adulto, debates de como "criar” uma inteligência artificial adequada, padrões de documentação de software, entre outros.
9
Inteligência Artificial
Treinando Modelos com Watson Knowledge Studio - Parte 1 Rodrigo Garcia Topan Moreira Estudante de Análise e Desenv. de Sistemas na Fatec Praia Grande e Estagiário em TI no Grupo Resolv
Watson Knowledge Studio (WKS) Watson Knowledge Studio é uma aplicação oferecida pela IBM Cloud que permite o treinamento de modelos de machine learning customizados para a extração de dados valiosos de documentos de texto de acordo as necessidades do usuário e as necessidades do cenário. Através do Knowledge Studio é possível treinar o Watson para identificar dados significativos de textos dentro das especificidades de um determinado tema escolhido. Por exemplo identificar o autor de um artigo, a data do artigo, o assunto abordado e até mesmo a carga emocional do texto. Como funciona Basicamente, o Watson utiliza as estruturas semânticas, contextos e terminologias dos documentos inseridos como dataset de treinamento
para identificar padrões semânticos, contextos e terminologias semelhantes em novos documentos submetidos a ele após a publicação do seu modelo customizado. Através da análise de contexto ele consegue localizar as entidades presentes nos novos documentos e extrair os valores relacionados a essas entidades. Entidade: Pessoa , Valor: Rodrigo. Para treinar um modelo customizado e extrair valor de um texto seguimos uma esteira básica de atividades: • Importar um dataset de documentos para treino que respeitem o cenário específico que o watson deve entender. Exemplo: um conjunto de artigos • Analisar as estruturas, os objetos que queremos extrair desse tipo de texto. O watson utiliza a terminologia entidade. Exemplos de entidades: Pessoa, Autor, Cliente, Fornecedor, Quantidade, etc.
•
•
Catalogar as entidades a serem identificadas e extraídas dos documentos. Treinar o Watson a reconhecer essas entidades nos textos através de marcações. O Knowledge Studio se refere a essas marcações como “Anotações ou Human Annotators”. Nada mais é do que apontar o Watson para um cachorro e falar, “Isso é uma espécie de cachorro Watson. É muito importante para mim que você identifique espécies deste animal”.
Busca Knowledge Studio no Catálogo
Inteligência Artificial
Ao realizar o upgrade você terá acesso ao Knowledge Studio. Verifique o local, organização e espaço e instancie seu Knowledge Studio, clicando em ‘Criar’.
Logado no IBM Cloud, busque por Knowledge Studio no Catálogo e clique nele. Para ter acesso aos recursos do Knowledge Studio você precisará informar o número do seu cartão, mas você não irá ser cobrado enquanto não extrapolar o limite do plano free acordo o sistema de pagamento Pay-as-you-go. Clique em atualizar e preencha as informações.de
Clique em launch para ter acesso à plataforma. Você será redirecionado para o gateway e possivelmente irá demorar um pouco até a plataforma abrir.
11
Inteligência Artificial
documents. Em documents, clicar em Upload Documents Sets.
Desenvolvimento do modelo customizado Nessa etapa iremos desenvolver nosso próprio modelo de machine-learning para extração de dados de textos não estruturados. Create Workspace: Clique em create workspace, nomeie o seu workspace, escolha a linguagem dos documentos com o qual o Watson irá trabalhar e clique em create.
Importar Dataset para treino: Já dentro do seu workspace, no menu lateral dentro de Assets e Tools, clicar em
Clique no ícone no centro do modal e selecione os arquivos do seu computador que servirão de treinamento para o nosso modelo de machine learning ou arraste e solte os arquivos do dataset para o centro do modal. Para o meu dataset de treino importei textos de notícias do canaltech. Os arquivos texto devem possuir codificação UTF-8. Após isso, clique em upload.
Inteligência Artificial
Após clicar em ‘Create Annotation Sets’. Precisamos configurar o usuário que terá permissão para fazer as anotações (marcações) nos documentos. Os annotations sets são grupos de marcação de documentos para o treinamento do modelo. Clique em generate para gerar o conjunto de anotações. Create Annotation Sets: Clique em ‘Create Annotation Sets’ para apontarmos os documentos que poderão ser usados pelo modelo do Watson.
Criar Entities: Dentro de Assets e Tools, no menu lateral e embaixo documents, clicar em entity types para a criação das entidades que deverão ser identificadas pelo modelo de machine learning. No 13
Inteligência Artificial
meu modelo, identificarei autores, título e data de notícias. Clicar em new entities informar o nome, para o nosso modelo, salve a entidade sem subtype e as roles ficarão com o mesmo nome da entidade, clique em save.
uma tarefa (task) para que esta treine em cima destes documentos do set. Selecione o seu annotation set e clique em ‘create task’.
Task identificação(Human Annotation) de entidades: Agora, devemos criar a task. A tarefa que o nosso modelo deverá executar. No caso, a identificação das nossas entidades. Para começar, clique em ‘Add Task’, nomeie a tarefa e aponte uma data no futuro em deadline para adicionar uma nova tarefa que será o nosso identificador de entidades em documentos de textos não estruturados.
Realizando Marcações: Com a nossa tarefa (task) criada, iremos configurar as marcações de cada documento. Selecione a task.
Clique em ‘Annotate’ do lado direito da tabela na coluna ‘Action’ Precisamos relacionar agora, o conjunto de documentos de um annotation set a
Inteligência Artificial
Selecionado um dos documentos, selecione uma entidade e relacione ela ao seu respectivo valor através das marcações. É muito importante que todas marcações sejam relacionadas corretamente com os seus respectivos valores para que o nosso modelo realize interpretações corretas após treinado. Espaço = Marcar , Del = Remover Marcação. Ao fim, clique em save para salvar o progresso de marcação do usuário. Repita esse processo para todos os documentos.
Selecione o documento que você deseja realizar as marcações
#ATENÇÃO. Revise todas as suas marcações e de todos os documentos. Tendo certeza, clique em ‘Submit All Documents’, as marcações terão seu status alterados para ‘Completed’. Uma vez, neste status a plataforma NÃO permite alterações. Tenha muita atenção. O erro nesta etapa resulta na necessidade de deleção da task e o processo de marcações deverá ser refeito.
15
Inteligência Artificial
Se o status estiver como ‘Completed’ significa que você já possui todos os itens para realizar o treinamento de seu modelo.
#ATENÇÃO. Dentro de Documents novamente, em Tasks. Clique na sua Task, selecione o conjunto de arquivos já marcado, revise eles novamente se necessário ou aprove o conjunto clicando em Accept. O erro nessa etapa resulta na necessidade de que o modelo seja recriado inteiramente.
Treinamento de modelo Dentro de ‘Model Management’, em Perfomance, clique em ‘Train and Evaluete’.
Ao clicar em ‘Train and Evaluete’ você deverá ter uma tela como essa abaixo. Nesta tela você diz ao Watson para
Inteligência Artificial
realizar o treinamento com base em seus conjuntos de arquivos marcados. Além disso, como realizaremos o treinamento do nosso modelo com poucos arquivos, para obtermos melhores resultados, devemos disponibilizar nosso conjunto inteiramente para o treinamento e nenhum arquivo para os testes setandoos da seguinte forma. Geralmente para treinamento e testes de modelos de machine learning é recomendado 70% do conjunto de arquivos para treinamento e 30% do para os testes. Trainning Set = 100 Test Set = 0 Blind Set = 0 Com tudo configurado corretamente clique em Train e o processo de treinamento do nosso modelo customizado será processado pelo Watson. Esse processo deve demorar um pouco.
Se tudo ocorreu bem, você conseguirá visualizar uma mensagem verde ao canto superior direito da tela dizendo que o modelo foi treinado com sucesso. Se algo der errado, você receberá um erro e deve mapear todo o seu processo de criação do modelo, verifique se não esqueceu nada ao longo do processo, se todos os documentos foram marcados e se a barra de progresso da sua task se encontra em 100%. Publicação/deploy Na etapa final para publicação do nosso modelo, devemos, no menu lateral esquerdo, dentro de ‘Model Management’, em Versions, devemos clicar em take snapshot na tabela abaixo, na coluna ‘Action’ Clicar em ‘OK’ 17
Inteligência Artificial
assunto para a parte 2 desse artigo o qual explicarei como relacionar o seu modelo com o serviço Natural Language Understanding.
Agora devemos clicar em deploy em ‘Action’, na nova linha gerada proveniente do ‘Snapshot’.
O Watson então pergunta qual serviço iremos relacionar nosso modelo customizado já treinado. Mas isso é
Próximos passos - Natural Language Processing/ Watson Api Explorer
Créditos: Grupo Resolv - Consultoria de Inteligência em Dados; Fernando Veiga; Sérgio Gama ; Team Projeto25
Agenda
Agenda 13/mar Meetup: NerdzãoCampinas #3 – Docker & Phalcon o mínimo que você precisa saber. Horario: 19:00 até 22:00 Local: Av. João Erbolato, 376 - Vila Castelo Branco, Campinas · Campinas Link: https://www.meetup.com/ptBR/Nerdzao/events/248249207/
14/mar Meetup: Nerdzão #37 – Back-End. Horario: 19:00 até 22:00 Local: Rua Arquiteto Olavo Redig de Campos, 105 · São Paulo Link: https://www.meetup.com/ptBR/Nerdzao/events/248323275/
21/mar Meetup: NerdzãoCampinas #6 - Mobile Horario: 19:00 até 22:00 Local: Av. Cel. Silva Telles, 977, 9º andar · Campinas Link: https://www.meetup.com/ptBR/Nerdzao/events/248323703/
22/mar Meetup: NerdZaoCampinas #4 - Segurança da Informação Heitor Gouvea Horario: 19:00 até 22:00 Local: Av. Cambacicas, 520 Parque Imperador · Campinas - SP Link: https://www.meetup.com/ptBR/Nerdzao/events/248250095/
24/mar Meetup: #Node Red Na Veia# THT + GERSE in IFSP Campus Guarulhos Horario: 09:00 até 13:00 Local: Av. Salgado Filho, 3501 · Guarulhos
Link: https://www.meetup.com/pt-BR/THT-ThingsHacker-Team/events/248570166/
26/mar Meetup: NerdZaoCampinas #5 - Comunidades e Carreiras em T.I Horario: 19:00 até 22:00 Local: Av. João Erbolato, 376 - Vila Castelo Branco, Campinas · Campinas Link: https://www.meetup.com/ptBR/Nerdzao/events/248250342/
28/mar Meetup: Nerdzão #31 - Big Data Horario: 19:00 até 21:00 Local: RUA BOA VISTA, 254 - 6º andar · São Paulo Link: https://www.meetup.com/ptBR/Nerdzao/events/247629451/ Meetup: Live - O poder do MongoDB Aggregation Framework para Desenvolvedores Horario: 22:00 até 23:00 Local: Sua casa! Link: https://www.meetup.com/ptBR/Nerdzao/events/247277053/
31/mar Meetup: Arduino Day #013: THT + Santos Hacker Club Horario: 13:00 até 18:00 Local: rua sete de setembro 52A · Santos Link: https://www.meetup.com/pt-BR/THT-ThingsHacker-Team/events/247966157/
28/abr Meetup: 13º Connecting Knowledge <THT + Nerdzão> in UFSJ Horario: 09:00 até 18:00 Local: Praça Frei Orlando 170 · São João Del Rei Link: https://www.meetup.com/pt-BR/THT-ThingsHacker-Team/events/248446564/ 19