on git build release mode add some todos
Some checks failed
Build Typst document / build_typst_documents (push) Failing after 10s
Some checks failed
Build Typst document / build_typst_documents (push) Failing after 10s
This commit is contained in:
parent
1b41fff04b
commit
53d11ae459
3
.github/workflows/buildtypst.yml
vendored
3
.github/workflows/buildtypst.yml
vendored
@ -11,6 +11,9 @@ jobs:
|
||||
uses: lvignoli/typst-action@main
|
||||
with:
|
||||
source_file: main.typ
|
||||
options: |
|
||||
--input inwriting=false
|
||||
--input draft=false
|
||||
- name: Upload PDF file
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
|
@ -1,4 +1,5 @@
|
||||
#import "@preview/subpar:0.1.1"
|
||||
#import "utils.typ": todo
|
||||
|
||||
= Material and Methods
|
||||
|
||||
@ -87,8 +88,8 @@ These models learn a representation of each class and classify new examples base
|
||||
) <prototypefewshot>
|
||||
|
||||
The first and easiest method of this bachelor thesis uses a simple ResNet to calucalte those embeddings and is basically a simple prototypical netowrk.
|
||||
See //%todo link to this section
|
||||
// todo proper source
|
||||
See #todo[link to this section]
|
||||
#todo[proper source]
|
||||
|
||||
=== Generalisation from few samples
|
||||
|
||||
@ -102,8 +103,8 @@ In few-shot learning the model has to generalize from just a few samples.
|
||||
PatchCore is an advanced method designed for cold-start anomaly detection and localization, primarily focused on industrial image data.
|
||||
It operates on the principle that an image is anomalous if any of its patches is anomalous.
|
||||
The method achieves state-of-the-art performance on benchmarks like MVTec AD with high accuracy, low computational cost, and competitive inference times. #cite(<patchcorepaper>)
|
||||
#todo[Absatz umformulieren und vereinfachen]
|
||||
|
||||
// todo vll ersten absatz umofrmulieren und vereinfachen
|
||||
The PatchCore framework leverages a pre-trained convolutional neural network (e.g., WideResNet50) to extract mid-level features from image patches.
|
||||
By focusing on intermediate layers, PatchCore balances the retention of localized information with a reduction in bias associated with high-level features pre-trained on ImageNet.
|
||||
To enhance robustness to spatial variations, the method aggregates features from local neighborhoods using adaptive pooling, which increases the receptive field without sacrificing spatial resolution. #cite(<patchcorepaper>)
|
||||
@ -112,6 +113,7 @@ A crucial component of PatchCore is its memory bank, which stores patch-level fe
|
||||
This memory bank represents the nominal distribution of features against which test patches are compared.
|
||||
To ensure computational efficiency and scalability, PatchCore employs a coreset reduction technique to condense the memory bank by selecting the most representative patch features.
|
||||
This optimization reduces both storage requirements and inference times while maintaining the integrity of the feature space. #cite(<patchcorepaper>)
|
||||
#todo[reference to image below]
|
||||
|
||||
During inference, PatchCore computes anomaly scores by measuring the distance between patch features from test images and their nearest neighbors in the memory bank.
|
||||
If any patch exhibits a significant deviation, the corresponding image is flagged as anomalous.
|
||||
@ -122,8 +124,6 @@ Patchcore reaches a 99.6% AUROC on the MVTec AD dataset when detecting anomalies
|
||||
A great advantage of this method is the coreset subsampling reducing the memory bank size significantly.
|
||||
This lowers computational costs while maintaining detection accuracy.~#cite(<patchcorepaper>)
|
||||
|
||||
// todo reference to image below
|
||||
|
||||
#figure(
|
||||
image("rsc/patchcore_overview.png", width: 80%),
|
||||
caption: [Architecture of Patchcore. #cite(<patchcorepaper>)],
|
||||
@ -136,6 +136,7 @@ It focuses on maintining performance as well as high computational efficiency.
|
||||
At its core, EfficientAD uses a lightweight feature extractor, the Patch Description Network (PDN), which processes images in less than a millisecond on modern hardware.
|
||||
In comparison to Patchcore which relies on a deeper, more computationaly heavy WideResNet-101 network, the PDN uses only four convulutional layers and two pooling layers.
|
||||
This results in reduced latency while retains the ability to generate patch-level features.~#cite(<efficientADpaper>)
|
||||
#todo[reference to image below]
|
||||
|
||||
The detection of anomalies is achieved through a student-teacher framework.
|
||||
The teacher network is a PDN and pre-trained on normal (good) images and the student network is trained to predict the teachers output.
|
||||
@ -148,10 +149,7 @@ This is done by the integration of an autoencoder trained to replicate the teach
|
||||
|
||||
By comparing the outputs of the autoencdoer and the student logical anomalies are effectively detected.
|
||||
This is a challenge that Patchcore does not directly address.~#cite(<efficientADpaper>)
|
||||
|
||||
// todo maybe add key advantages such as low computational cost and high performance
|
||||
//
|
||||
// todo reference to image below
|
||||
#todo[maybe add key advantages such as low computational cost and high performance]
|
||||
|
||||
|
||||
#figure(
|
||||
@ -201,8 +199,13 @@ For this bachelor theis the ResNet-50 architecture was used to predict the corre
|
||||
=== CAML
|
||||
// https://arxiv.org/pdf/2310.10971v2
|
||||
CAML (Context aware meta learning) is one of the state-of-the-art methods for few-shot learning.
|
||||
#todo[Here we should describe in detail how caml works]
|
||||
|
||||
#figure(
|
||||
image("rsc/caml_architecture.png", width: 80%),
|
||||
caption: [Architecture of CAML. #cite(<caml_paper>)],
|
||||
) <camlarchitecture>
|
||||
|
||||
Todo
|
||||
=== P$>$M$>$F
|
||||
Todo
|
||||
|
||||
|
BIN
rsc/caml_architecture.png
Normal file
BIN
rsc/caml_architecture.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 218 KiB |
10
sources.bib
10
sources.bib
@ -108,3 +108,13 @@
|
||||
primaryClass={cs.LG},
|
||||
url={https://arxiv.org/abs/1703.05175},
|
||||
}
|
||||
|
||||
@misc{caml_paper,
|
||||
title={Context-Aware Meta-Learning},
|
||||
author={Christopher Fifty and Dennis Duan and Ronald G. Junkins and Ehsan Amid and Jure Leskovec and Christopher Re and Sebastian Thrun},
|
||||
year={2024},
|
||||
eprint={2310.10971},
|
||||
archivePrefix={arXiv},
|
||||
primaryClass={cs.LG},
|
||||
url={https://arxiv.org/abs/2310.10971},
|
||||
}
|
||||
|
10
utils.typ
10
utils.typ
@ -1,11 +1,15 @@
|
||||
#let inwriting = false
|
||||
#let draft = false
|
||||
#import "@preview/drafting:0.2.1": margin-note
|
||||
|
||||
#let inp = sys.inputs
|
||||
|
||||
#let inwriting = inp.at("inwriting", default: "true") == "true"
|
||||
#let draft = inp.at("draft", default: "true") == "true"
|
||||
|
||||
#assert(not(inwriting and not(draft)), message: "If inwriting is true, draft should be true as well.")
|
||||
|
||||
#let todo(it) = [
|
||||
#if inwriting [
|
||||
#text(size: 0.8em)[#emoji.pencil] #text(it, fill: red, weight: 600)
|
||||
#margin-note(it)
|
||||
]
|
||||
]
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user