segunda-feira, 11 de dezembro de 2023
Meu time caiu para a segundona
quarta-feira, 9 de agosto de 2023
Redes e as frases sinceras
As tecnologias de frontend (ou front-end) são todos os recursos que realiza uma interação direta com o usuário que consiste principalmente na interface gráfica. Essas tecnologias tem seu valor, claro ! Porém em relação às tecnologias de backend que englobam o que podemos considerar o que é mais fundamental em redes de computadores e que está muito relacionado aos serviços, protocolos, sistemas e a fundamentação matemática, estatística, física e até filosófica.
Sim, não só os protocolos mas toda a fundamentação de conexões de rede, tem um quê de espetacular na medida em que apesar dos avanços principalmente em termos de velocidade, a base, o fundamental se manteve. Daí o seu valor. Para corroborar esse ponto de vista menciono a Association for Computing Machinery - ACM. A ACM é uma sociedade científica dedicada à Computação. ACM analisa, reconhece e laureia de diferentes formas os avanços computacionais com impactos positivos na sociedade. Assim sendo o principal prêmio da ACM é o A. M. Turing Award (Prêmio Turing) - considerado o prêmio Nobel da Computação. Em 2004 o Prêmio Turing foi concedido a Vinton Cerf e Robert Kahn pelo trabalho pioneiro em internetworking, incluindo o projeto e implementação do TCP/IP. Em 2016 foi laureado Tim Berners-Lee pela invenção da World Wide Web, o primeiro navegador web, e os protocolos e algoritmos fundamentais que permitiram a escalabilidade da web. Em 2022, Robert Metcalfe foi laureado pela invenção, padronização e comercialização da tecnologia Ethernet. Então SIM, há grande valor nesses avanços.
sábado, 5 de agosto de 2023
Ferramentas de IA
No passado recente os avanços na área de Inteligência Artificial em seus múltiplos desdobramentos tem sido tão vertiginoso que apontar tais desdobramentos é estar fadado à rápida desatualização. Com relação às ferramentas, idem. Ainda assim é possível verificar quais ferramentas e recursos estão disponíveis e alguns tornam-se referência podendo ser utilizados por mais tempo. Lembrando que a lista não é recomendação. A maioria das ferramentas indicadas são para desenvolvedores e são em geral baseadas nas IAs mais famosas.
1. Soluções voltadas a código. Soluções que escrevem, depuram ou explicam códigos. Não vou citar as três principais pois já são muito famosas - ChatGPT, GitHub Copilot, OpenAI Codex.
DeepCode - A principal proposta da DeepCode é a geração de um código seguro ou da análise de segurança de outros códigos. A desenvolvedora do DeepCode destaca as qualidades do produto e se propõe a demonstrar em como o DeepCode pode de fato melhorar códigos existentes e propor novas soluções.Figstack - Com o Figstack o programador poderá obter a explicação linha a linha do que o código faz. Este recurso permite ao Figstack ser uma boa solução para documentação de código. A ferramenta também traduz código entre uma linguagem de programação para outra. Outro recurso disponível nesta ferramenta é avaliar a eficiência do código submetido (em inglês Big O) e claro faz sugestões de melhorias.
2. Soluções voltadas a vida prosaica do empreendedor como criação de imagens, áudios, vídeos e outros automatizações.
Fliki - Fliki é uma ferramenta AI para transformar texto em vídeos com vozes e assim você deixa de pagar uma fortuna para produtoras pois vídeos simples o Fliki dá conta. Não tentei ao ponto de me aprofundar, mas o vídeo inicial dá uma ideia boa das possibilidades. O próprio YouTube poderia ter mais recursos tais como esse, quem sabe no futuro, por enquanto Fliki e similares ajudam os criadores de conteúdo.Runway - Outra ferramenta com tecnologia de IA como a primeira, porém Runway gera vídeos muito mais sofisticados. O Runway foi projetado para criadores de todos os tipos, seja você um escritor experiente ou um iniciante em busca de ajuda. Boa alternativa para geração de material de divulgação de projetos e negócios.Resemble - O Resemble é uma ferramenta de IA exclusiva que permite criar narrações de alta qualidade e semelhantes a humanos em segundos de maneira natural e o menos sintetizado possível e em vários idiomas. O que o torna útil para dublagens. Você pode usá-lo para adicionar narração de nível profissional aos seus vídeos ou podcasts. É perfeito para criar narrações para materiais de marketing, tutoriais e demonstrações de produtos. HyperWrite - HyperWrite é uma poderosa ferramenta de escrita; Conta com 93 módulos diferentes todos voltados para a escrita de texto. De e-mails, artigos, teses, documentação de sistemas, etc, o HyperWrite se dispõe a gerar texto claro, conciso e preciso. O HyperWrite também possui funcionalidade integrada para melhorar a legibilidade e gramática. Além disso, permite fácil compartilhamento e colaboração em documentos, o que é especialmente útil para equipes remotas e desenvolvedores que trabalham em projetos de código aberto.
Menção honrosa ao 1Tools. 1Tools oferece uma vasta miscelânea de recursos, a princípio gratuitamente. Apesar de ter testado, a variedade é tanta que é difícil não haver pelo menos uma que não resolva bem as dores de desenvolvedores e empreendedores.
3. Soluções para comunidades de desenvolvedores, infraestrutura em nuvem e IA. Apesar da tentativa de classificação das ferramentas nessa categoria, cada uma das indicações aqui é uma mistura de plataforma, rede social, comunidade e ferramentas de desenvolvimento em IA.
Keras - Definição da Wikipédia sobre o Keras - "O Keras é uma biblioteca de rede neural de código aberto escrita em Python.". Keras funciona normalmente com outras ferramentas tais como: TensorFlow, Microsoft Cognitive Toolkit, R, Theano, ou PlaidML. Projetado para permitir experimentação rápida com redes neurais profundas, ele se concentra em ser fácil de usar, modular e extensível. Foi desenvolvido como parte do esforço de pesquisa do projeto ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System). François Chollet, autor do Keras, explicou que o Keras foi concebido para ser uma interface, e não uma estrutura de aprendizado de máquina independente. Ele oferece um conjunto de abstrações mais intuitivo que facilita o desenvolvimento de modelos de aprendizado profundo, independentemente do back-end computacional usado. O Keras é a principal biblioteca de desenvolvimento de redes neurais. A pesar do propósito inicial Keras se tornou muito mais que foi proposto.Kaggle - Kaggle é uma comunidade online para competições em ciência de dados. Kaggle foi fundado em 2010 por Anthony Goldbloom and Ben Hamner e foi vendido em 2017 para o Google. Kaggle disponibiliza, datasets (conjunto de dados), cursos, ambientes de desenvolvimento para a comunidade competir na busca de soluções para os mais diversos problemas. Ótimo ambiente para evoluir no aprendizado e na busca de soluções no estilo de gamefication através do qual os participantes recebem distintivos conforme seu avanço e participação na comunidade.Hugging Face - Hugging Face tem uma proposta similar a do Kaggle, porém seu foco é a construção de aplicações utilizando Machine Learning. Sua plataforma permite que usuários compartilhem seus datasets e modelos de aprendizado de máquina. A companhia foi fundada em 2016 por Clément Delangue, Julien Chaumond e Thomas Wolf. Hugging Face possível uma infraestrutura similiar ao do GitHub para manutenção de repositórios, modelos, datasets, aplicações web e suporte a discussões.Google Colab - O Colaboratory ou “Colab” é um produto do Google Research, área de pesquisas científicas do Google. O Colab foi criado a partir de um fork do projeto Jupyter que oferecia serviços para computação interativa entre múltiplas linguagens de programação. O Google porém integrou os recursos do Jupyter em sua infraestrutura e disponibiliza "células" de programação (chamados de notebooks) como se fosse arquivos do Google Drive além de oferecer capacidade de processamento em nuvem. O Colab permite que qualquer pessoa escreva e execute código Python arbitrário pelo navegador e é especialmente adequado para aprendizado de máquina, análise de dados e educação. Pelo Colab também é possível aplicações de maior porte pois o Google vende capacidade computacional para maiores demandas. As demandas pequenas entretanto podem ser atendidas gratuitamente. Menção honrosa nesta parte de infraestrutura escalável em nuvem vai para a Amazon Web Services - AWS. PapersWithCode - Este site se propõe a disponibilizar de maneira livre e aberta artigos, códigos, datasets, métodos e resultados de avaliação relativas a NLP (Neural Language Processing) e Machine Learning. Todo o conteúdo do site é licenciado sob a licença CC-BY-SA (mesma da Wikipedia) que permite a contribuição de todos. Paperwithcode também disponibiliza materiais sobre Astronomia, Física, Ciência da Computação, Matemática e Estatística.O site é um ponto de partida para saber sobre as novidades mais "quentes" e o state-of-the-art de diferentes áreas de pesquisa, porém com foco nas áreas citadas acima.
sábado, 25 de março de 2023
Náufragos, traficantes e degredados
Uma das dificuldades cruciais é a pouca quantidade de materiais historiográficos e muitas constatações terminam por serem cartas e documentos espalhadas pela Europa. Mas grande parte estava na Espanha e Portugal. Os documentos que estavam em Portugal parte foi perdida e parte encontrada, décadas e até séculos depois.
Quero destacar alguns aspectos.
1. As viagens tinham um preço muito alto. E não estou falando de preço financeiro, pois este também era muito alto. Os governos não conseguiam financiar sozinhos as viagens, o custo era dividido entre a iniciativa privada e os governos em geral, ou totalmente custeado pela iniciativa privada e o governo fazia uma concessão. Cada país adotou modelos diferentes, sendo que os pais que estavam mais atrás optaram pela pirataria institucional. O custo maior ao meu ver era o custo humano pois nos que embarcavam em geral não retornavam. Eles recebiam adiantado o pagamento pela viagem e o pagamento ficava com a família. E em geral morriam por doença, naufrágio ou lutas.
2. Cada personagem tinha as atitudes muito diversa do que em geral pensamos. a) Os navegadores queriam sim desbravar mas partiam rumo ao desconhecido tendo que enfrentar situações as mais diversas, motins, emboscadas, perda de material, comprometimento da saúde etc. Quando voltavam com algum êxito eram cumulados de riquezas e títulos. Apesar dos atos de bravura em geral os navegadores eram homens cruéis, ambiciosos e tinham direito sobre a vida e morte dos tripulantes; b) Náufragos e degredados conseguem se adaptar nos novos locais e tornam-se homens poderosos e influentes. Tornando-se mui ricos chegaram a voltar à Europa para comparecer diante de reis e rainhas. Estes iniciaram a miscigenação no Brasil, pois não tinham critérios para se relacionar com as índias e assim terem muitos descendentes. c) Os índios que tiveram as atitudes mais diversas, algumas tribos sendo aguerridas e arredias, outras dissimuladas e outras amigáveis. Os índios ao contrário do que se dizia não aceitaram somente miçangas e bugigangas, rapidamente passaram a querer ferramentas e materiais dos europeus e sim trabalharam duro e foram escravizados mas houve também resistência.
3. Alguns personagens entretanto chamaram muito minha atenção como Caramuru, o Bacharel de Cananéia e claro o náufrago João Ramalho que praticamente foi o senhor do Brasil de fato sendo chamado de pai dos mamelucos e praticamente o pioneiro de São Paulo. João Ramalho dominava tribos e escravos, teve uma vida extremamente longeva (mais de 90 anos) e ativa.
4. Um outro personagem especial é o índio carijó Içá-mirim, filho do cacique Arosca. O navegador francês Binot Paulmier de Goneville veio ao Brasil em 1503 e aportou ao que se acredita na região que é hoje o Estado de Santa Catarina. Binot teve excelente recepção e convívio com os índios, o que levou o cacique a permitir que seu filho Içá-mirim (chamado Essomericq pelos franceses) foi levado para a Europa para aprender a civilização dos navegadores (armas principalmente) de modo quando voltasse pudesse se sobrepor aos inimigos. Infelizmente a viagem de volta foi cheia de percalços e prejuízos o que impediu Binot de voltar ao Brasil. Não podendo cumprir a promessa de retornar com Içá-mirim, Binot o fez herdeiro seu e o casou com sua filha. Içá-mirim ou melhor Essomericq teve vida longa na França (95 anos) e deixou 14 filhos.
5. Os pioneiros do descobrimentos buscavam a sobrevivência num mundo em que a força e as riquezas se sobrepunham e a vida era muito mais frágil mas também não ansiavam por muita glória. Os que os moviam era o desejo pelas riquezas e para isso eles pilhavam, escravizam, guerreavam, tomavam e matavam, tudo pela possibilidade de descobrir riquezas para seus patrocinadores.
domingo, 5 de fevereiro de 2023
A hora é agora de Trevin Wax
O resumo dos mitos propalados pelo uso excessivo de celulares - excetuadas as situações de trabalho e educação - é uma constante lisonja digital.
A esses mitos e dilema, Wax aponta algumas saídas e uso saudável (Práticas).
Saída 1 - Ao silenciar celulares e demais telas - caso seja possível - lhe proporcionará inicialmente um desconforto porém com o tempo você poderá perceber um senso de pequenez - será gritantemente ignorado pela realidade. Que está num mundo gigante e que você é bem pequeno. Será o contrário da lisonja. E novamente a menção a celulares e demais equipamentos se estende a internet pois os equipamentos são somente meios de se acessá-la.
Saída 2 - O Evangelho de Cristo nos liberta da necessidade de controlar a nossa reputação online o tempo todo. O tempo excessivo gasto em celulares nos impede de fazer as perguntas difíceis e olhar profundamente para nossas almas e lidar com o nosso pecado.
Saída 3 - O Evangelho de Cristo reconhece os nossos anseios de conhecer e ser conhecido e expõe a mentira de que a lisonja digital pode resolver esses anseios.
Prática 1 - Separar tempo e espaços para desligar totalmente as telas e você se dedicar a outros projetos e atividades. E assim estar de mente completa (mindfullness - atenção completa) nestas atividades e na relação com outras pessoas.
Prática 2 - Selecionar pessoas que lhe ajudarão a amar a Cristo e sua Igreja.
Prática 3 - Procurar ouvir vozes discordantes de sua opinião a fim de desenvolver tolerância e empatia.
Se você gostou da abordagem, saiba que o livro tem 8 capítulos cada um abordando outros temas. Mas para mim este resumo já foi suficiente.
O livro está a venda no site da Pilgrim nas versões em audiobook e ebook.
domingo, 29 de janeiro de 2023
Redes Neurais 2022.1
Eu me propus a resumir algumas disciplinas que cursei recentemente. Tanto como forma de avaliar a assimilação quanto para fins de registro pessoal. Afinal é preciso ajudar a memória.
No primeiro semestre de 2022 cursei a disciplina de Redes Neurais de 60h como parte do programa de pós-graduação DCCMAPI, como aluno especial. A disciplina foi ministrada pelo Prof. Dr. Areolino de Almeida Neto.
Os tópicos da disciplina foram:
- Redes Neurais Artificiais (RNA). Neste tópico foram apresentadas as RNAs (inicialmente redes rasas), estrutura, arquitetura, tipos e usos de RNA.
Figura 1 - Modelo básico de uma RNA |
Figura 2 - Tipos de topologia |
Figura 3 - Casos de topologia |
Além da definição, tipos e regra de aprendizado computacional. As definições apresentadas foram:
“Aprendizagem é um processo no qual os parâmetros livres de uma rede neural são adaptados através de um processo de estimulação do meio-ambiente no qual a rede está inserida. O tipo de aprendizagem é determinado pela maneira que ocorrem as mudanças nos parâmetros" (S. Haykin)
“Aprendizagem é vista como processo de otimização. Isto é, aprendizagem consiste em um processo de busca de solução em um espaço multidimensional de parâmetros, em geral os pesos das conexões, que
otimize uma dada função objetivo.” (M. Hassoun)
Tipos de aprendizado
Os tipos de aprendizado de aprendizado de máquina pode ser resumido pela imagem abaixo. Há três tipos principais e cada um é mais indicado para lidar com tipos específicos de problemas.
Tipos de redes neurais
Os tipos de redes neurais abordados de fato foram as Redes MLP, RBF e a CollabNet. Porém há muitos tipos de redes e as foram mencionadas as redes Kohonen, Elman, CMAC, Hopfield, Stacked Autoencoder, Convolucional, Time-delay NN, etc.
Entretanto o gráfico abaixo dá uma ideia mais próxima da variedade das redes neurais.
Atividades da disciplina
As atividades da disciplina foram as listadas abaixo com o respectivo link no GitHub. Clique nos links para ser redirecionado.
Atividade 01 - Lista de exercícios de MathLab - Objetivando conhecer os recursos básicos da ferramenta.
Atividade 02 - Reconhecimento de padrões via RNA tipo MLP (MultiLayer Perceptron) com o objetivo de avaliar carros.
Atividade 03 - Reconhecimento de padrões via RNA tipo RBF (Radial Base Function) com o objetivo de avaliar carros.
Atividade 04 - Reconhecimento de fonemas via RNA tipo MLP
Atividade 05 - Reconhecimento de fonemas com múltiplas RNA tipo MLP.
terça-feira, 3 de janeiro de 2023
Tops 2022
2. Everything Everywhere All at Once (2022). Um filme surpreendente, inusitado até digamos estranho mas que basicamente uma declaração de amor entre mãe e filha. Apesar do aspecto fantástico de universos alternativos e forças que se digladiam é mais um olhar inusitado aos fatos comezinhos da vida em família.
3. Top Gun: Maverick (2022). Um dos melhores filmes de 2022 com a fórmula simples do sucesso: força, excelência, combate e ótimas cenas. Estamos tão carentes dessa simplicidade perdida em função das tentativas de estabelecimento pautas que se tornaram mais importantes do que a realidade. Top Gun: Maverick fez sucesso pela escassez de filmes simples e emocionantes.