Contents
- 1 Geral
- 2 Exemplos
- 3 Usando em Sala de Aula
- 4 Tutoriais de Instalação, Relatos de Caso
- 5 Plataformas
- 6 Perguntas em Aberto
- 7 Em tempo: Por que Python?
Geral
Infos
Tutoriais
- Jupyter Notebook for Beginners: A Tutorial
- Datacamp::Jupyter Notebook Tutorial: The Definitive Guide
- Introduction to IPython & Jupyter Notebooks (slideshare)
Exemplos
Python
- Fast.AI + Kaggle:
- https://www.kaggle.com/hortonhearsafoo/fast-ai-v3-lesson-1
- Practical Deep Learning for Coders, v3 -> Curso oferecendo diferentes opções em nuvem (Colab, Paperspace, FloyHub, AWS, Azure,… ): https://course.fast.ai/
- Jupyter.org: https://jupyter.org/
- Usando Binder: Equações de Lorenz com Controles Interativos
- Companion Jupyter notebooks for the book “Deep Learning with Python” – https://github.com/fchollet/deep-learning-with-python-notebooks
- Anaconda
- JupyterHub
- Google Colab:
- Python Data Science Handbook:
- https://colab.research.google.com/github/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/03.08-Aggregation-and-Grouping.ipynb
- https://colab.research.google.com/github/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/04.01-Simple-Line-Plots.ipynb
- https://colab.research.google.com/github/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/05.14-Image-Features.ipynb
- Deep Learning::Disciplina Visão Computacional – PPGCC/UFSC
- Deep Learning::Usando a Nuvem para seus Trabalhos
- Notebook com todos os passos para usar Aprendizado por Transferência com Cães e Gatos em PyTorch e fast.ai: cats-dogs-PyTorch-fastaii.pynb (lembre-se de copiá-lo para seu Drive antes de começar a editar, senão você não conseguirá salvar)
- Exemplo em Keras: https://drive.google.com/open?id=1jEW5G2gMrYtn8mDMof8Tk0145ZLOrGb9 (link compartilhado red-only via GDrive)
- Testezinho Simples
- Gerenciando Dados: Downloading Datasets into Google Drive via Google Colab::Step-by-step guide to use Google Drive in Google Colab for data science projects
- Python Data Science Handbook:
- Libs e Aplicaçõesw
R
- Usando Binder para gerar ambiente virtual transiente sem login: https://mybinder.org/v2/gh/binder-examples/r/master?filepath=index.ipynb
- Raiz do exemplo acima: https://jupyter.org/try (com exemplos em JULIA, C++, etc)
C++
- Escolha C++ em: https://jupyter.org/try
Gráficos e Imagens em C++
Usando em Sala de Aula
Jupyter supporta um Slide Presentation Mode -> execução em tela cheia, página a página
Convertendo .ipynb em Python, LaTeX, HTML, etc
Exemplos de Disciplinas
Tutoriais de Instalação, Relatos de Caso
JupyterHub
- Rackspace::Deploying JupyterHub for Education
- Jeff Brown. USING JUPYTERHUB IN THE CLASSROOM: SETUP AND LESSONS LEARNED
Plataformas
Instalações Multiusuário
- JupyterHub (associado a contas de usuário): https://github.com/jupyterhub/jupyterhub
- Visualizador NBViewer (para ver um notebook read-only sem poder executar, mas com resultados gráficos sendo mostrados – dispensa kernels, permite disponibilizar um notebook em qualquer lugar, mas obriga o aluno a copiar a .ipynb para um local seu ou a fazer um login)
- JupyterLabs com Binder (sem login):
Instalações para seu Computador ou sua Intranet
- Jupyter
- Single user: Installing Jupyter Notebook — Jupyter Documentation 4.1.1
- Jupyter Notebook for Beginners: A Tutorial
- Jupyter.org::Installing the Jupyter Notebook – Get up and running with the Jupyter Notebook on your computer within minutes!
- Eu quero, eu quero eu quero! – Instalando em Windows com Anaconda
-
Jean Hauck::passo-a-passo simples para instalar Jupyter com R no Windows* Rodar tudo como Admin1. Instalar Python:Baixar e instalar: https://www.python.org/downloads/release/python-372/2. Instalar R:Baixar e instalar: https://download1.rstudio.org/RStudio-1.1.463.exe3. Instalar Jupyter Notebook: (https://jupyter.org/install)Rodar no prompt:python -m pip install –upgrade pippython -m pip install jupyter4. Instalar RInterpreter no R: (https://irkernel.github.io/installation/)Rodar no R console:install.packages(‘IRkernel’)IRkernel::installspec(user = FALSE)5. Rodar Jupyter:Rodar no prompt:jupyter notebook
- JupyterLab
- Sage
- Install standalone Sage Notebook (supostamente este funciona com Moodle)
- Alguém quer testar?
- Background (se você quiser saber o que é SageMath):
- https://help.ubuntu.com/community/SAGE
- http://www.sagemath.org/download-linux.html
- https://doc.sagemath.org/html/en/installation/
- Install standalone Sage Notebook (supostamente este funciona com Moodle)
Ferramentas/IDEs Offline para usar/editar Jupyter
PyCharm
- https://www.jetbrains.com/pycharm/
- Edita e executa .ipynb de forma wysiwyg
- Feio e Shareware
- A IDE é complexa e voltada ao desenvolvimento de systemas em Python. Inadequada para ensino. Boa para professores.
Atom
- Open source
- Boa IDE para ensino
- Jupyuter é BEM complicado e instalar e de usar neste ambiente
- Não é wysiwyg: inadequado para preparar aulas. Apenas útil ao aluno
- Mais detalhes aqui: Setting up a Ubuntu 18.04.1 LTS system for deep learning and scientific computing
Plataformas Comerciais na Nuvem
Gratuitas
- Google Collab
- Kaggle
Pagas
GoogleCloud
- Se você tem uma conta Google, você tem direito a 300 horas de processamento na Google Cloud:
- Como estamos usando TensorFlow, é possível inclusive usar a nova arquitetura de TPU da Google: https://cloud.google.com/tpu/
- https://www.blog.google/products/google-cloud/google-cloud-offer-tpus-machine-learning/
- https://blog.goodaudience.com/how-to-use-google-cloud-tpus-177c3a025067?gi=37469eca628c
- https://www.theregister.co.uk/2018/06/20/google_cloud_tpus/
- Na Internet está cheio de turoriais de como usar TensorFlow pela interface
Paperspace
Paperspace tem sido bastante discutido e citado. Tem suporte especial aos cursos do fast.ai.
- Site: https://www.paperspace.com/
- Ambiente de desenvolvimento: Gradient
- Tutorial -> Towards Data Science: How to use Paperspace to train your Deep Neural Networks
BigML
BigML é diferente dos outros provedores em nuvem pelo fato de não estar associado a nenhuma grande empresa de processamento de dados ou fabricante de computadores, sendo uma empresa voltada a esse fim. Em função disso possui vários programas acadêmicos que se deve explorar e também a vantagem de ser agnóstico a plataforma e framework: Aqui você pode desenvolver, treinar e rodar tudo e depois levar para casa.
Amazon Web Services – AWS
- AWS
- Amazon EC2
- Amazon SageMaker: A fully-managed platform that enables developers and data scientists to quickly and easily build, train, and deploy machine learning models at any scale and removes all the barriers that typically slow down developers who want to use machine learning.
- SageMaker oferece uma grande variedade de configurações de hardware virtual para você usar: https://aws.amazon.com/sagemaker/pricing/instance-types/
- Amazon Machine Learning Developer Guide
FloydHub
FloydHub é uma plataforma para desenvolvimento e execução de CNNs extremamente simples:
- Site: https://www.floydhub.com/
- FloydHub Workspace é uma IDE de desenvolvimento online (baseada em Jupyter): https://www.floydhub.com/product/build
- Suporta TensorFlow, Keras, Caffe e Pytorch
Microsoft Azure Machine Learning Studio
- Site: https://azure.microsoft.com/en-us/services/machine-learning-studio/
- Possui uma ferramenta: Azure AI -Artificial intelligence productivity for virtually every developer and scenario
- Exemplo: Defect detection with image analysis
IBM Watson Studio
- IBM’s experiment-centric deep learning service within Watson Studio allows data scientists to visually design their neural networks and scale out their training runs while auto-allocation means paying only for the resources utilized.
- Tutorial: Generate restaurant reviews using deep learning
Disscussão dos Provedores
- Medium: AWS vs Paperspace vs FloydHub : Choosing your cloud GPU partner
- Top 5 Machine Learning-as-a-Service providers
Perguntas em Aberto
- Integração IDUFSC
- Integração repositório não transiente de dados: arquivos.ufsc
- = integração com SeaFile (https://www.seafile.com/en/home/)
- Solução? SeTIC::Como mapear a pasta no Linux?
- Integração repositório não transiente de código: codigos.ufsc
- = integração com GitLab (https://about.gitlab.com/)
- Integração Moodle
- Com VPL?
- O que existe:
- Integração com repositórios externos:
- GitHub
- DropBox
Em tempo: Por que Python?
- TIOBE Index for February 2019
- Linguagem de referência para:
- IA
- Ciência de Dados
- Single-Board Computers e IoT (RaspberryPi, etc)