Flux.jl 모델은 항상 출력 1.0 후에 추가하 s 상 활성화 기능

0

질문

원래는 내가 원하던 모델 출력 0-1 할 수 있도록 지도하는 범주형 이미지 레이블(플럭스입니다.jl 제한 변수는 0 과 1). 그래서 나를 추가하기로 결정했 s 상 활성화 기능은 다음과 같습니다:

σ = sigmoid

model = Chain(
  resnet[1:end-2],
  Dense(2048, 1000),  
  Dense(1000, 256),
  Dense(256, 2, σ),        # we get 2048 features out, and we have 2 classes
);

그러나,지금 내 모델 출력 1.0. 어떤 아이디어는 이유에는 경우 또는 나를 사용하여 활성화 기능을 잘못입니까?

flux.jl julia
2021-11-22 20:59:14
1

최고의 응답

1

사용하는 것을 고려하는 기능을 활성화에 대한 귀하의 숨겨진 레이어에 여러 선형 레이어(고밀도 레이어 없이는 비선형 활성화 기능)은 해당하는 단일 선형 계층입니다. 를 사용하는 경우 카테고리는 독점(개 또는 고양이,하지만 모두)는 모든 케이스(그것은 항상 개 또는 고양이 없어 타조)다음의 확률해야 합하여 하나 softmax 해야에 더욱 적합한 마지막 기능입니다. 이 softmax 기능은 일반적으로 사용 crossentropy 소 기능입니다.

model = Chain(
  resnet[1:end-2],
  Dense(2048, 1000, σ),  
  Dense(1000, 256, σ),
  Dense(256, 2),
  softmax        
);

에 대한 더 나은 수치적 안정성과 정확성,교체할 것을 권장 crossentropylogitcrossentropy 각각(는 경우 softmax 이 필요하지 않습니다).

2021-11-23 08:23:14

이 오류가 있습니다: MethodError: no method matching similar(::Float32, ::Type{Float32}) Closest candidates are: similar(!Matched::Union{LinearAlgebra.Adjoint{T, var"#s814"}, LinearAlgebra.Transpose{T, var"#s814"}} where {T, var"#s814"<:(AbstractVector{T} where T)}, ::Type{T}) where T at /Users/julia/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.6/LinearAlgebra/src/adjtrans.jl
logankilpatrick

@logankilpatrick,참으로,업데이트 내 응답을 넣어 softmax 후에 마지막 밀도층이다. 그것은 지금 작동하는가?
Alex338207

그것은 제한 값은 0 과 1 사이지만 출력 값은 항상 같은 다른 이미지
logankilpatrick

@logankilpatrick 있는지 확인하 ResNet 모델입니다 실제로 사전 교육이 필요합니다. 그것은으로 언급하지 않 pre-에서 훈련 문서(fluxml.ai/Metalhead.jl/dev/README.html)하지 않을 경우,당신은 기차로 모든 모델의 파라미터를 가능성에 대한 더 이상 단지 2 시대. 으로 테스트할 수도 있습니다 실행하여 전체 ResNet 모델 테스트 데이터입니다.
Alex338207

그것은 아마도 문제,나를 훈련을 시도 있습니다.
logankilpatrick

업데이트 모델을 다시 훈련한 모든 레이어 하지만 결과는 동일하게 보
logankilpatrick

당신은 코드를 찾을 수 있습니다 이를 위해 여기: github.com/logankilpatrick/DeepLearningWithJulia/blob/main/src/... 어쩌면 내가 뭔가 잘못입니까?
logankilpatrick

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................