dev #4

Merged
let merged 5 commits from dev into main 2026-05-29 16:17:03 +00:00
4 changed files with 355 additions and 0 deletions

213
GITEA.md Normal file
View File

@@ -0,0 +1,213 @@
# Gitea
[![](https://github.com/go-gitea/gitea/actions/workflows/release-nightly.yml/badge.svg?branch=main)](https://github.com/go-gitea/gitea/actions/workflows/release-nightly.yml?query=branch%3Amain "Release Nightly")
[![](https://img.shields.io/discord/322538954119184384.svg?logo=discord&logoColor=white&label=Discord&color=5865F2)](https://discord.gg/Gitea "Join the Discord chat at https://discord.gg/Gitea")
[![](https://goreportcard.com/badge/code.gitea.io/gitea)](https://goreportcard.com/report/code.gitea.io/gitea "Go Report Card")
[![](https://pkg.go.dev/badge/code.gitea.io/gitea?status.svg)](https://pkg.go.dev/code.gitea.io/gitea "GoDoc")
[![](https://img.shields.io/github/release/go-gitea/gitea.svg)](https://github.com/go-gitea/gitea/releases/latest "GitHub release")
[![](https://www.codetriage.com/go-gitea/gitea/badges/users.svg)](https://www.codetriage.com/go-gitea/gitea "Help Contribute to Open Source")
[![](https://opencollective.com/gitea/tiers/backers/badge.svg?label=backers&color=brightgreen)](https://opencollective.com/gitea "Become a backer/sponsor of gitea")
[![](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT "License: MIT")
[![Contribute with Gitpod](https://img.shields.io/badge/Contribute%20with-Gitpod-908a85?logo=gitpod&color=green)](https://gitpod.io/#https://github.com/go-gitea/gitea)
[![](https://badges.crowdin.net/gitea/localized.svg)](https://translate.gitea.com "Crowdin")
[繁體中文](./README.zh-tw.md) | [简体中文](./README.zh-cn.md)
## Purpose
The goal of this project is to make the easiest, fastest, and most
painless way of setting up a self-hosted Git service.
As Gitea is written in Go, it works across **all** the platforms and
architectures that are supported by Go, including Linux, macOS, and
Windows on x86, amd64, ARM and PowerPC architectures.
This project has been
[forked](https://blog.gitea.com/welcome-to-gitea/) from
[Gogs](https://gogs.io) since November of 2016, but a lot has changed.
For online demonstrations, you can visit [demo.gitea.com](https://demo.gitea.com).
For accessing free Gitea service (with a limited number of repositories), you can visit [gitea.com](https://gitea.com/user/login).
To quickly deploy your own dedicated Gitea instance on Gitea Cloud, you can start a free trial at [cloud.gitea.com](https://cloud.gitea.com).
## Documentation
You can find comprehensive documentation on our official [documentation website](https://docs.gitea.com/).
It includes installation, administration, usage, development, contributing guides, and more to help you get started and explore all features effectively.
If you have any suggestions or would like to contribute to it, you can visit the [documentation repository](https://gitea.com/gitea/docs)
## Building
From the root of the source tree, run:
TAGS="bindata" make build
or if SQLite support is required:
TAGS="bindata sqlite sqlite_unlock_notify" make build
The `build` target is split into two sub-targets:
- `make backend` which requires [Go Stable](https://go.dev/dl/), the required version is defined in [go.mod](/go.mod).
- `make frontend` which requires [Node.js LTS](https://nodejs.org/en/download/) or greater and [pnpm](https://pnpm.io/installation).
Internet connectivity is required to download the go and npm modules. When building from the official source tarballs which include pre-built frontend files, the `frontend` target will not be triggered, making it possible to build without Node.js.
More info: https://docs.gitea.com/installation/install-from-source
## Using
After building, a binary file named `gitea` will be generated in the root of the source tree by default. To run it, use:
./gitea web
> [!NOTE]
> If you're interested in using our APIs, we have experimental support with [documentation](https://docs.gitea.com/api).
## Contributing
Expected workflow is: Fork -> Patch -> Push -> Pull Request
> [!NOTE]
>
> 1. **YOU MUST READ THE [CONTRIBUTORS GUIDE](CONTRIBUTING.md) BEFORE STARTING TO WORK ON A PULL REQUEST.**
> 2. If you have found a vulnerability in the project, please write privately to **security@gitea.io**. Thanks!
## Translating
[![Crowdin](https://badges.crowdin.net/gitea/localized.svg)](https://translate.gitea.com)
Translations are done through [Crowdin](https://translate.gitea.com). If you want to translate to a new language, ask one of the managers in the Crowdin project to add a new language there.
You can also just create an issue for adding a language or ask on Discord on the #translation channel. If you need context or find some translation issues, you can leave a comment on the string or ask on Discord. For general translation questions there is a section in the docs. Currently a bit empty, but we hope to fill it as questions pop up.
Get more information from [documentation](https://docs.gitea.com/contributing/localization).
## Official and Third-Party Projects
We provide an official [go-sdk](https://gitea.com/gitea/go-sdk), a CLI tool called [tea](https://gitea.com/gitea/tea) and an [action runner](https://gitea.com/gitea/act_runner) for Gitea Action.
We maintain a list of Gitea-related projects at [gitea/awesome-gitea](https://gitea.com/gitea/awesome-gitea), where you can discover more third-party projects, including SDKs, plugins, themes, and more.
## Communication
[![](https://img.shields.io/discord/322538954119184384.svg?logo=discord&logoColor=white&label=Discord&color=5865F2)](https://discord.gg/Gitea "Join the Discord chat at https://discord.gg/Gitea")
If you have questions that are not covered by the [documentation](https://docs.gitea.com/), you can get in contact with us on our [Discord server](https://discord.gg/Gitea) or create a post in the [discourse forum](https://forum.gitea.com/).
## Authors
- [Maintainers](https://github.com/orgs/go-gitea/people)
- [Contributors](https://github.com/go-gitea/gitea/graphs/contributors)
- [Translators](options/locale/TRANSLATORS)
## Backers
Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/gitea#backer)]
<a href="https://opencollective.com/gitea#backers" target="_blank"><img src="https://opencollective.com/gitea/backers.svg?width=890"></a>
## Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/gitea#sponsor)]
<a href="https://opencollective.com/gitea/sponsor/0/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/0/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/1/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/1/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/2/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/2/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/3/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/3/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/4/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/4/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/5/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/5/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/6/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/6/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/7/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/7/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/8/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/8/avatar.svg"></a>
<a href="https://opencollective.com/gitea/sponsor/9/website" target="_blank"><img src="https://opencollective.com/gitea/sponsor/9/avatar.svg"></a>
## FAQ
**How do you pronounce Gitea?**
Gitea is pronounced [/ɡɪti:/](https://youtu.be/EM71-2uDAoY) as in "gi-tea" with a hard g.
**Why is this not hosted on a Gitea instance?**
We're [working on it](https://github.com/go-gitea/gitea/issues/1029).
**Where can I find the security patches?**
In the [release log](https://github.com/go-gitea/gitea/releases) or the [change log](https://github.com/go-gitea/gitea/blob/main/CHANGELOG.md), search for the keyword `SECURITY` to find the security patches.
## License
This project is licensed under the MIT License.
See the [LICENSE](https://github.com/go-gitea/gitea/blob/main/LICENSE) file
for the full license text.
## Further information
<details>
<summary>Looking for an overview of the interface? Check it out!</summary>
### Login/Register Page
![Login](https://dl.gitea.com/screenshots/login.png)
![Register](https://dl.gitea.com/screenshots/register.png)
### User Dashboard
![Home](https://dl.gitea.com/screenshots/home.png)
![Issues](https://dl.gitea.com/screenshots/issues.png)
![Pull Requests](https://dl.gitea.com/screenshots/pull_requests.png)
![Milestones](https://dl.gitea.com/screenshots/milestones.png)
### User Profile
![Profile](https://dl.gitea.com/screenshots/user_profile.png)
### Explore
![Repos](https://dl.gitea.com/screenshots/explore_repos.png)
![Users](https://dl.gitea.com/screenshots/explore_users.png)
![Orgs](https://dl.gitea.com/screenshots/explore_orgs.png)
### Repository
![Home](https://dl.gitea.com/screenshots/repo_home.png)
![Commits](https://dl.gitea.com/screenshots/repo_commits.png)
![Branches](https://dl.gitea.com/screenshots/repo_branches.png)
![Labels](https://dl.gitea.com/screenshots/repo_labels.png)
![Milestones](https://dl.gitea.com/screenshots/repo_milestones.png)
![Releases](https://dl.gitea.com/screenshots/repo_releases.png)
![Tags](https://dl.gitea.com/screenshots/repo_tags.png)
#### Repository Issue
![List](https://dl.gitea.com/screenshots/repo_issues.png)
![Issue](https://dl.gitea.com/screenshots/repo_issue.png)
#### Repository Pull Requests
![List](https://dl.gitea.com/screenshots/repo_pull_requests.png)
![Pull Request](https://dl.gitea.com/screenshots/repo_pull_request.png)
![File](https://dl.gitea.com/screenshots/repo_pull_request_file.png)
![Commits](https://dl.gitea.com/screenshots/repo_pull_request_commits.png)
#### Repository Actions
![List](https://dl.gitea.com/screenshots/repo_actions.png)
![Details](https://dl.gitea.com/screenshots/repo_actions_run.png)
#### Repository Activity
![Activity](https://dl.gitea.com/screenshots/repo_activity.png)
![Contributors](https://dl.gitea.com/screenshots/repo_contributors.png)
![Code Frequency](https://dl.gitea.com/screenshots/repo_code_frequency.png)
![Recent Commits](https://dl.gitea.com/screenshots/repo_recent_commits.png)
### Organization
![Home](https://dl.gitea.com/screenshots/org_home.png)
</details>

24
README.md Normal file
View File

@@ -0,0 +1,24 @@
Exercises
Exercise: Mapping Your Current AI Use
Why? This is the foundation for every exercise that follows in this course.
List 46 tasks you've actually used AI for in the last two weeks. If you haven't used AI much yet, list tasks you'd like to use it for. Be specific: "drafted a client email explaining a project delay" tells you something. "Writing" doesn't.
For each task, note one line: did the output land on the first try, or did you need to rework it before it was usable? Don't overthink this. A quick gut check is fine.
Now share your list with Claude (or any AI assistant) and ask: "For each of these tasks, what's one way this could go wrong if I'm not paying attention?" See if the failure modes it names feel relatable. If they don't, push back: "That doesn't match my experience. Here's what actually went wrong..."
Hold onto this list. You'll return to it in every lesson, and it'll look different each time you do.
Lesson reflection
Which of your listed tasks felt "safe" to hand to AI, and which felt risky? Can you articulate why yet?
What's one AI behavior you've noticed (good or bad) that you couldn't explain at the time?
What's next
Before the four properties, we need to draw a line around what "AI" means in this course. We're talking specifically about generative AI and how it's different from other forms of AI.
Feedback
As you progress through the course, we'd love to hear from you about how you are using concepts from the course in your work, plus any feedback you may have. Share your feedback here.
Acknowledgments and license
Copyright 2026 Anthropic. Original work building on the AI Fluency Framework developed by Prof. Rick Dakan (Ringling College of Art and Design) and Prof. Joseph Feller (University College Cork). Released under the CC BY-NC-SA 4.0 license.
Downloads
AI Capabilities & Limitations Framework Overview.pdf(opens in new tab)

114
notas.md Normal file
View File

@@ -0,0 +1,114 @@
A detecção de objetos e a segmentação de imagens são tarefas de visão computacional que buscam identificar e localizar elementos em uma imagem, mas diferem fundamentalmente no nível de detalhe da localização e na forma como representam esses elementos.
A detecção de objetos consiste na combinação das tarefas de classificação (dizer o que é o objeto) e localização (dizer onde ele está)
. Seu objetivo é encontrar instâncias de múltiplos objetos na imagem e demarcá-los utilizando caixas delimitadoras (bounding boxes), que são representadas por coordenadas retangulares (como x, y, largura e altura)
. Por exemplo, em uma imagem com vários animais, a detecção desenhará caixas separadas e independentes ao redor de cada cachorro e gato presente, indicando a região geral que eles ocupam
.
A segmentação, por outro lado, é mais precisa e opera no nível dos pixels, delineando o contorno e a silhueta exata do que está sendo analisado. Ela se divide principalmente nas seguintes categorias:
Segmentação Semântica: Tem como objetivo rotular cada pixel da imagem com a sua respectiva classe (por exemplo, classificando pixels como céu, grama, gato, árvore)
. A principal característica dessa abordagem é que ela não diferencia instâncias individuais do mesmo objeto
. Ou seja, se houver duas vacas em um pasto, a segmentação semântica agrupará todos os pixels que compõem os dois animais em uma única categoria "vaca", sem distingui-las como dois indivíduos separados
.
Segmentação de Instâncias: Resolve a limitação da segmentação semântica ao diferenciar objetos individuais
. Essa abordagem geralmente realiza a detecção de objetos primeiro e, em seguida, prevê uma máscara de pixels exata para cada objeto específico encontrado
. Dessa forma, ela consegue apontar os pixels que pertencem à "vaca 1" e separá-los dos pixels da "vaca 2"
.
Segmentação Panóptica: É a combinação avançada da segmentação semântica com a segmentação de instâncias, buscando classificar todos os pixels do cenário (como céu e rua) ao mesmo tempo em que diferencia os objetos individuais (como diferentes pedestres e carros)
.
Em resumo, enquanto a detecção de objetos usa áreas retangulares para isolar instâncias de objetos em uma imagem, a segmentação mapeia a forma exata dos elementos através da classificação individual de cada pixel
.
Como as redes neurais aprendem representações em diferentes camadas?
As redes neurais, particularmente as Redes Neurais Convolucionais (CNNs), aprendem representações dos dados de forma hierárquica. O objetivo desse processo é gerar uma representação eficiente que extraia as características da imagem e simplifique a tarefa final de predição (como classificar a identidade de um objeto)
.
A representação aprendida torna-se progressivamente mais complexa e semântica à medida que avançamos pelas diferentes camadas da rede:
Características de baixo nível (Low-level features): A primeira camada oculta, que analisa diretamente os pixels de entrada, geralmente aprende a detectar características muito básicas, como bordas (edges)
.
Características de nível médio (Mid-level features): A segunda camada oculta combina as características da camada anterior para detectar formas um pouco mais elaboradas, como cantos e contornos (corners and contours)
.
Características de alto nível (High-level features): A terceira camada oculta e as subsequentes combinam as formas médias para representar estruturas altamente complexas, como partes de objetos (object parts)
.
Na camada de saída, todas essas representações construídas nas camadas ocultas são utilizadas para prever a identidade final do objeto como um todo (por exemplo, classificar se é um carro, uma pessoa ou um animal)
.
É importante destacar que as representações (features) são determinadas principalmente por dois fatores: a camada usada para extrair a característica e o tipo de dado usado para treinar o modelo
. Por exemplo, quando analisamos o que ativa os neurônios de uma rede, notamos que uma rede treinada no dataset ImageNet (focado em objetos variados) tende a aprender e detectar estruturas com formato de "bolha" (blob-like), enquanto uma rede treinada no dataset Places (focado em cenários) aprende a detectar estruturas que se assemelham mais a paisagens
.
Essa natureza hierárquica do aprendizado de representações é o que possibilita a técnica de Transferência de Aprendizado (Transfer Learning). Como as camadas iniciais aprendem características genéricas e fundamentais aplicáveis a muitas imagens (como contornos e cores), é possível pegar uma rede já treinada em um conjunto de dados gigantesco e reutilizar essas camadas iniciais congeladas, apenas substituindo e treinando as camadas finais para focar nas características específicas de uma nova tarefa com menos dados disponíveis
.
O que são redes convolucionais e como elas analisam imagens?
As Redes Neurais Convolucionais (CNNs) são uma classe especial de modelo de aprendizado profundo (deep learning) projetada especificamente para processar dados que se apresentam em múltiplas matrizes, como imagens, que possuem dimensões espaciais (largura e altura) e um canal de cores (geralmente vermelho, verde e azul)
. Em grande medida, as CNNs buscam imitar a maneira como os humanos classificam imagens, sendo capazes de reconhecer características e padrões específicos independentemente de onde apareçam na cena
.
A análise de uma imagem por uma rede convolucional explora a propriedade de que os sinais visuais formam hierarquias compostas
. Em vez de analisar todos os pixels de forma plana, a rede aprende a extrair informações em níveis progressivos de abstração
. Esse processo hierárquico, que avança desde características de baixo nível (como linhas e bordas), passando por características de nível médio (curvas e formas), até chegar a características de alto nível (partes de objetos e cenas completas), ocorre por meio da combinação de quatro conceitos essenciais: conexões locais, pesos compartilhados, agrupamento (pooling) e o uso de múltiplas camadas
.
Para realizar essa análise, a arquitetura de uma CNN intercala diferentes tipos de camadas especializadas:
Camadas de Convolução: Utilizam um conjunto de "filtros" (ou templates), que são matrizes numéricas pequenas (por exemplo, 3x3) aplicadas de forma deslizante sobre pequenas regiões locais da imagem
. A convolução é uma operação matemática simples que multiplica e soma os valores dos pixels com os valores do filtro; se a região da imagem se assemelhar ao padrão do filtro (como uma listra vertical), a operação produzirá um valor alto
. Como as estatísticas locais das imagens são invariantes à localização, as CNNs utilizam pesos compartilhados, o que significa que o mesmo filtro é reutilizado em toda a imagem para buscar o mesmo padrão
.
Camadas de Ativação Não-linear: Após a convolução, o resultado normalmente passa por uma função matemática não-linear, sendo a ReLU (Rectified Linear Unit) a mais comum
. Ela ajuda a rede a modelar funções altamente complexas.
Camadas de Agrupamento (Pooling): O papel destas camadas é condensar e resumir a imagem, fundindo características semanticamente semelhantes
. A operação mais comum é o max pooling, que analisa pequenos blocos da imagem (como 2x2 pixels) e preserva apenas o valor máximo daquele bloco
. Ao fazer esse "resumo", o agrupamento reduz a dimensão da representação e torna a rede invariante a pequenas mudanças de posição e distorções, garantindo que o padrão seja reconhecido mesmo que mude um pouco de lugar
.
À medida que a rede se aprofunda, esses blocos de convolução e pooling são repetidos
. Cada nova camada trata os mapas de características da camada anterior como se fossem uma nova imagem, gerando abstrações cada vez mais complexas
.
Por fim, quando os dados são reduzidos a mapas muito pequenos através das camadas de pooling, eles são "achatados" (flattened), transformando-se em um vetor unidimensional simples
. Esses vetores finais alimentam camadas densas (totalmente conectadas), que consolidam todas as partes identificadas para emitir a previsão final — ou seja, a classificação de qual objeto a imagem representa
.
Como funciona o algoritmo de backpropagation no aprendizado?
O algoritmo de backpropagation (ou retropropagação de erros) é o método fundamental usado para treinar redes neurais de múltiplas camadas, permitindo que elas descubram como ajustar seus parâmetros internos (pesos) para fazer previsões precisas
.
Ele funciona em conjunto com algoritmos de otimização, como a Descida de Gradiente (Gradient Descent), e baseia-se em um princípio de cálculo matemático chamado regra da cadeia (chain rule)
.
O processo de aprendizado ocorre em ciclos repetitivos que envolvem os seguintes passos:
Passo para frente (Forward pass): Os dados de treinamento (como uma imagem ou texto) são inseridos na rede e propagados através de suas várias camadas matemáticas até gerar uma previsão na camada de saída
.
Quantificação do erro: A previsão gerada pela rede é comparada com a resposta real e correta usando uma função de custo/perda (loss function), medindo assim a diferença ou o nível de erro daquela previsão
.
Passo para trás (Backward pass - a retropropagação em si): O algoritmo trabalha de trás para frente, partindo da camada de saída em direção à camada de entrada
. Aplicando a regra da cadeia, ele calcula a derivada (ou gradiente) do erro em relação a cada uma das conexões da rede
. Em termos práticos, a retropropagação calcula e atribui uma "fração da culpa" do erro final a cada neurônio e peso que participou da previsão
.
Atualização dos pesos: Com o gradiente de erro calculado para cada parâmetro, a rede utiliza a Descida de Gradiente para dar um pequeno passo na direção oposta ao erro, ajustando os valores de todos os pesos simultaneamente
.
A repetição contínua desse processo ao longo de muitos exemplos de treinamento faz com que o erro diminua gradativamente, até que a rede neural seja capaz de extrair os recursos corretos e generalizar as informações para dados que nunca viu antes
.
O que é a regra da cadeia no backpropagation?
A regra da cadeia (chain rule) é um princípio matemático de cálculo diferencial que descreve como pequenos efeitos de variáveis dependentes se compõem
. Na prática, o algoritmo de backpropagation é fundamentalmente a aplicação direta da regra da cadeia para calcular o gradiente de uma função objetivo (como o erro de predição) em relação aos pesos de uma arquitetura de rede neural de múltiplas camadas
.
No contexto do aprendizado das redes neurais, a regra da cadeia atua da seguinte forma:
Composição de derivadas: A regra dita que se uma pequena mudança em uma variável x afeta uma variável y, e essa mudança em y afeta uma variável z, o efeito de x sobre z é obtido através da multiplicação de suas derivadas parciais
.
Cálculo de trás para frente: A principal contribuição da regra da cadeia é permitir que a derivada (ou gradiente) do erro em relação à entrada de uma camada específica da rede seja calculada trabalhando de trás para frente, partindo do gradiente da saída desse mesmo módulo
.
Distribuição da "culpa": O ato de aplicar essa diferenciação em cascata camada por camada faz com que a regra da cadeia consiga atribuir uma fração do resíduo (uma parcela do erro final) a cada um dos parâmetros e neurônios individuais que participaram da previsão
.
É exatamente devido à eficiência da regra da cadeia que o cálculo das atualizações dos pesos permanece sendo um processo relativamente simples e direto, mesmo quando aplicado a redes neurais profundas e extremamente complexas
.
Como o deep learning difere das técnicas tradicionais de aprendizado?
A principal diferença entre o deep learning e as técnicas tradicionais de aprendizado de máquina reside na forma como as características (features) dos dados são extraídas e representadas.
Historicamente, as técnicas tradicionais eram limitadas na sua capacidade de processar dados naturais em sua forma bruta
. Para construir um sistema de reconhecimento de padrões convencional, era necessária uma cuidadosa engenharia manual e grande conhecimento especializado (domain expertise) para projetar extratores capazes de transformar os dados brutos (como os pixels de uma imagem) em vetores de características adequados para o classificador
. Além disso, classificadores tradicionais "rasos" (como os lineares) têm grande dificuldade em ignorar variações irrelevantes nos dados (como a mudança de iluminação ou pose em uma imagem) ao mesmo tempo em que tentam detectar as diferenças importantes
.
O deep learning elimina grande parte dessa necessidade de engenharia manual
. Ele é um conjunto de métodos de aprendizagem de representações que permite que o sistema seja alimentado diretamente com dados brutos, descobrindo automaticamente as representações necessárias para a tarefa
. Isso é feito através do uso de múltiplas camadas de processamento não-linear, que transformam as informações progressivamente em níveis cada vez maiores de abstração e complexidade
.
Outras diferenças importantes incluem:
Volume de dados e computação: Diferente dos métodos antigos, o deep learning é capaz de tirar proveito contínuo do aumento do poder computacional e de conjuntos de dados massivos
. Essa abordagem é geralmente a escolha mais atrativa quando o tamanho da amostra de treinamento é extremamente grande
.
Interpretabilidade: Existe uma troca (tradeoff) entre a flexibilidade do modelo e a facilidade de compreendê-lo. O deep learning cria modelos altamente flexíveis para estimar padrões intricados, mas possui uma interpretabilidade muito baixa quando comparado a métodos estatísticos tradicionais (como regressões lineares ou árvores de decisão)
.
Complexidade de implementação: Sempre que métodos mais simples e tradicionais puderem atingir um desempenho semelhante em uma tarefa com menos dados, eles costumam ser preferíveis. Isso ocorre porque métodos tradicionais são mais fáceis de ajustar, mais compreensíveis e potencialmente menos frágeis do que as arquiteturas altamente complexas de deep learning
.

4
tsconfig.json Normal file
View File

@@ -0,0 +1,4 @@
{
"extends": "./tsconfig.json",
"exclude": ["node_modules", "test", "dist", "**/*spec.ts"]
}