Cascaded-fcn: Modelltestproblem

Erstellt am 10. Apr. 2017  ·  19Kommentare  ·  Quelle: IBBM/Cascaded-FCN

Hallo, ich habe Ihr freigegebenes Modell getestet, mein Code bezieht sich auf Ihr Notebook. Mein Code ist

`caffe.set_mode_gpu()
caffe.set_device(2)
net_liver = caffe.Net('/home/zhou/zou/Cascaded-FCN/models/cascadedfcn/step1/step1_deploy.prototxt', '/home/zhou/zou/Cascaded-FCN/models/cas cadedfcn/step1/step1_weights. Kaffeemodell', Kaffee.TEST)

img=read_dicom_series(../train_image/3Dircadb1.17/PATIENT_DICOM/")
lbl=read_liver_lesion_masks(../train_image/3Dircadb1.17/MASKS_DICOM/")
S = 90
img_p = step1_preprocess_img_slice(img[...,S])
lbl_p = preprocess_lbl_slice(lbl[...,S])
net_liver.blobs['data'].data[0,0,...] = img_p
pred = net_liver.forward()['prob'][0,1] > 0,5
plt.figure(figsize=(3*5,10))
plt.subplot(1, 3, _1)
plt.title('CT')
plt.imshow(img_p[92:-92,92:-92], 'grau')
plt.subplot(1, 3, 2)
plt.title('GT')
plt.imshow(lbl_p, 'grau')
plt.subplot(1, 3, 3)
plt.title('pred')
plt.imshow(pred, 'grau')`

aber das Ergebnis ist so schlecht
result

Hilfreichster Kommentar

Ich denke, das veröffentlichte Modell ist falsch, wenn ich mein eigenes Modell selbst trainiere und den obigen Code verwende, funktioniert es gut und das Ergebnis ist gut
3dircadb1 1 68

@RenieWell @mohamed-ezz

Alle 19 Kommentare

Gibt es einen Trick, den ich übersehen habe?

Das Ergebnis sieht seltsam aus. Stellen Sie sicher, dass Sie das Notebook unverändert ausführen können und korrekte Ergebnisse erhalten, bevor Sie Änderungen vornehmen.

Der Code ist derselbe wie der, den Sie im Notizbuch zeigen, daher kann ich nicht finden, wo der Code falsch ist. Können Sie mir eine Anleitung geben? Danke

Ich hatte das gleiche Problem mit Ihnen, haben Sie es herausgefunden? Ich würde mich freuen, wenn Sie Ihren Weg nach draußen teilen könnten. @manutdzou

Ich denke, das veröffentlichte Modell ist falsch, wenn ich mein eigenes Modell selbst trainiere und den obigen Code verwende, funktioniert es gut und das Ergebnis ist gut
3dircadb1 1 68

@RenieWell @mohamed-ezz

Das sind großartige Neuigkeiten @manutdzou . Sie können gerne einen Pull-Request schreiben und Ihr trainiertes Modell der Öffentlichkeit anbieten. Laden Sie Ihr Modell einfach auf einen öffentlichen Filehoster hoch und ändern Sie die Readme mit dem Link und Ihrem Namen.

Wow, ich habe das gleiche seltsame Ergebnis wie Ihr erstes Ergebnis. Dann bin ich sicher, dass dieses veröffentlichte Modell nicht so gut ist. Wie auch immer, ich baue U-Net auf TensorFlow neu, mein Vorhersageergebnis ist nicht so gut, aber nicht seltsam.

@manutdzou . Hallo Leute, könnt ihr euren Code teilen?
Danke sehr.

Hallo alle miteinander,
Ich habe gerade die Readme aktualisiert und ein Docker-Image hinzugefügt, das unseren Code reibungslos ausführt.
Weitere Informationen zum Starten des Docker-Images finden Sie in der Readme.
Das erwartete Ergebnis sollte wie dieser Ausdruck aussehen.
Besten Wünsche,
Patrick
cascaded_unet_inference.pdf.pdf

@PatrickChrist Hallo Patrick, danke für die großartige Arbeit, aber wenn ich versuche, das vortrainierte Modell zu verwenden, finde ich, dass der nvidia-docker schwer zu installieren ist und könnten Sie bitte ein korrektes vortrainiertes Modell ohne nvidia-docker teilen

@zakizhou Ich denke, weil dies ein Problem der Reproduzierbarkeit ist, ist Docker unsere beste Wahl, um dies zu erreichen.

nvidia-docker wird nur benötigt, wenn Sie die Dateien auf der GPU verarbeiten möchten. Sie können jedoch einfach docker verwenden, wenn Sie mit der Ausführung auf CPU einverstanden sind.

Wenn Sie eine Linux-Distribution verwenden, welche Probleme haben Sie bei der Installation nvidia-docker ?

Die Modelle werden auch in https://github.com/IBBM/Cascaded-FCN/tree/master/models/cascadedfcn geteilt, Sie können sie in Ihrer Hostumgebung (ohne Docker) verwenden.

@mohamed-ezz danke für deine Antwort, ich verwende ubuntu ohne gpus, tatsächlich habe ich docker anstelle von nvidia-docker versucht, aber leider, als ich versuchte, vortrainiertes Caffe-Modell, den Kern von jupyter, zu importieren Notebook abgeladen und ich verstehe nicht warum. Wie das, was @manutdzou in dieser Ausgabe sagte, das vortrainierte Modell hier https://github.com/IBBM/Cascaded-FCN/tree/master/models/cascadedfcn zeigt eine schlechte Leistung auf dem Beispielbild. Ich habe Caffe mit Conda installiert. Glauben Sie, dass die falsche Version von Caffe dieses Problem verursacht hat?

Ja, es ist wahrscheinlich die Caffe-Version. Bitte verwenden Sie das Docker-Image.

Am 4. Juli 2017 um 17:45 Uhr schrieb „Jie Zhou“ [email protected] :

@mohamed-ezz https://github.com/mohamed-ezz Danke für deine Antwort, das bin ich
Ubuntu ohne gpus verwenden, tatsächlich habe ich Docker stattdessen versucht
nvidia-docker, aber leider, als ich versuchte, ein vortrainiertes Caffe-Modell zu importieren,
Der Kern des Jupyter-Notebooks wurde abgelegt und ich verstehe nicht warum. Wie was
@manutdzou https://github.com/manutdzou sagte in dieser Ausgabe, die
vortrainiertes Modell hier https://github.com/IBBM/Cascaded-FCN/tree/master/
models/cascadedfcn schneidet auf dem Beispielbild schlecht ab. Ich habe Kaffee installiert
Mit Conda, glauben Sie, dass dies die falsche Version von Caffe ist, die dies verursacht hat
Problem?


Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail und zeigen Sie sie auf GitHub an
https://github.com/IBBM/Cascaded-FCN/issues/13#issuecomment-312908109 ,
oder den Thread stumm schalten
https://github.com/notifications/unsubscribe-auth/ADqENQMhAJvhyvV1SZ5ApQelMqNhBlTMks5sKl39gaJpZM4M4ckQ
.

@mohamed-ezz OK, ich würde das Modell auf einem Server mit GPU ausprobieren, nochmals vielen Dank!

Keine Notwendigkeit für eine GPU, verwenden Sie stattdessen einfach Docker mit dem Bild in der README.md
von nvidia-docker.

Am 4. Juli 2017 um 18:59 Uhr schrieb „Jie Zhou“ [email protected] :

@mohamed-ezz https://github.com/mohamed-ezz OK, ich würde das Modell an einem ausprobieren
Server mit GPU, nochmals vielen Dank!


Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail und zeigen Sie sie auf GitHub an
https://github.com/IBBM/Cascaded-FCN/issues/13#issuecomment-312919887 ,
oder den Thread stumm schalten
https://github.com/notifications/unsubscribe-auth/ADqENQh6pIiGyQYTbKSOx_2reMDlja3Cks5sKm-GgaJpZM4M4ckQ
.

Ich habe eine Version des rechten Leber- und Läsionsmodells in Baidu veröffentlicht, das dieses Modell so verwenden kann

`importiere sys,os
sys.path.insert(0, '/home/zhou/zou/caffe_ws/python')
sys.path.insert(0,'/home/zhou/zou/Cascaded-FCN/lib')
importiere numpy als np
aus matplotlib importiere pyplot als plt
Kaffee importieren

result_path = "/home/zhou/zou/Cascaded-FCN/code/result/"
wenn nicht os.path.exists(result_path):
os.makedirs(Ergebnispfad)

im_list = open('test_lesion_list.txt', 'r').read().splitlines()

caffe.set_mode_gpu()
caffe.set_device(0)
net_liver = caffe.Net('deploy.prototxt', 'liver.caffemodel', caffe.TEST)
net_lesion = caffe.Net('deploy.prototxt', 'lesion.caffemodel', caffe.TEST)

Leber = 1
Läsion = 2
für i in range(0,len(im_list)):
im = np.load(im_list[i].split(' ')[0])
mask = np.load(im_list[i].split(' ')[1])
in_ = np.array(im, dtype=np.float32)
in_expand = in_[np.newaxis, ...]
blob = in_expand[np.newaxis, :, :, :]

net_liver.blobs['data'].reshape(*blob.shape)
net_liver.blobs['data'].data[...] = blob
net_liver.forward()
output_liver = net_liver.blobs['prob'].data[0].argmax(axis=0)

net_lesion.blobs['data'].reshape(*blob.shape)
net_lesion.blobs['data'].data[...] = blob
net_lesion.forward()
output_lesion = net_lesion.blobs['prob'].data[0].argmax(axis=0)

output = output_liver
ind_1 = np.where(output_liver ==0)
output_lesion[ind_1] = 255
ind_2 = np.where(output_lesion ==0)
output[ind_2] = 2

plt.figure(figsize=(3*5,10))
plt.subplot(1, 3, 1)
plt.title('CT')
plt.imshow(im[92:-92,92:-92], 'gray')
plt.subplot(1, 3, 2)
plt.title('GT')
plt.imshow(mask, 'gray')
plt.subplot(1, 3, 3)
plt.title('pred')
plt.imshow(output, 'gray')
path = result_path + im_list[i].split(' ')[0].split('/')[-1][0:-3] +'jpg'
plt.savefig(path)
plt.close()

`
ein Ergebnis wird angezeigt

3dircadb1 17 85
3dircadb1 17 80
@mohamed-ezz @RenieWell @mjiansun @PatrickChrist @PiaoLiangHXD

Schicht {
Name: "Daten"
Typ: "Eingabe"
oben: "Daten"
input_param { shape: { dim: 1 dim: 1 dim: 572 dim: 572 } }
}

Schicht {
Name: "conv_d0a-b"
Typ: "Faltung"
unten: "Daten"
oben: "d0b"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 64
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d0b"
Typ: "ReLU"
unten: "d0b"
oben: "d0b"
}
Schicht {
Name: "conv_d0b-c"
Typ: "Faltung"
unten: "d0b"
oben: "d0c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 64
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d0c"
Typ: "ReLU"
unten: "d0c"
oben: "d0c"
}
Schicht {
Name: "pool_d0c-1a"
Typ: "Pooling"
unten: "d0c"
oben: "d1a"
pooling_param {
Schwimmbad: MAX
Kernelgröße: 2
Schritt: 2
}
}
Schicht {
Name: "conv_d1a-b"
Typ: "Faltung"
unten: "d1a"
oben: "d1b"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 128
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d1b"
Typ: "ReLU"
unten: "d1b"
oben: "d1b"
}
Schicht {
Name: "conv_d1b-c"
Typ: "Faltung"
unten: "d1b"
oben: "d1c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 128
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d1c"
Typ: "ReLU"
unten: "d1c"
oben: "d1c"
}
Schicht {
Name: "pool_d1c-2a"
Typ: "Pooling"
unten: "d1c"
oben: "d2a"
pooling_param {
Schwimmbad: MAX
Kernelgröße: 2
Schritt: 2
}
}
Schicht {
Name: "conv_d2a-b"
Typ: "Faltung"
unten: "d2a"
oben: "d2b"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 256
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d2b"
Typ: "ReLU"
unten: "d2b"
oben: "d2b"
}
Schicht {
Name: "conv_d2b-c"
Typ: "Faltung"
unten: "d2b"
oben: "d2c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 256
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d2c"
Typ: "ReLU"
unten: "d2c"
oben: "d2c"
}
Schicht {
Name: "pool_d2c-3a"
Typ: "Pooling"
unten: "d2c"
oben: "d3a"
pooling_param {
Schwimmbad: MAX
Kernelgröße: 2
Schritt: 2
}
}
Schicht {
Name: "conv_d3a-b"
Typ: "Faltung"
unten: "d3a"
oben: "d3b"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 512
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d3b"
Typ: "ReLU"
unten: "d3b"
oben: "d3b"
}
Schicht {
Name: "conv_d3b-c"
Typ: "Faltung"
unten: "d3b"
oben: "d3c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 512
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d3c"
Typ: "ReLU"
unten: "d3c"
oben: "d3c"
}

Schicht {
Name: "pool_d3c-4a"
Typ: "Pooling"
unten: "d3c"
oben: "d4a"
pooling_param {
Schwimmbad: MAX
Kernelgröße: 2
Schritt: 2
}
}
Schicht {
Name: "conv_d4a-b"
Typ: "Faltung"
unten: "d4a"
oben: "d4b"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 1024
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d4b"
Typ: "ReLU"
unten: "d4b"
oben: "d4b"
}
Schicht {
Name: "conv_d4b-c"
Typ: "Faltung"
unten: "d4b"
oben: "d4c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 1024
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "relu_d4c"
Typ: "ReLU"
unten: "d4c"
oben: "d4c"
}

Schicht {
Name: "upconv_d4c_u3a"
Typ: "Entfaltung"
unten: "d4c"
oben: "u3a"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 512
Auflage: 0
Kernelgröße: 2
Schritt: 2
Gewichtsfüller {
Typ: "xavier"
}
}
}

Schicht {
Name: "relu_u3a"
Typ: "ReLU"
unten: "u3a"
oben: "u3a"
}
Schicht {
Name: "crop_d3c-d3cc"
Typ: "Zuschneiden"
unten: "d3c"
unten: "u3a"
oben: "d3cc"

}
Schicht {
Name: "concat_d3cc_u3a-b"
Typ: "Concat"
unten: "u3a"
unten: "d3cc"
oben: "u3b"
}
Schicht {
Name: "conv_u3b-c"
Typ: "Faltung"
unten: "u3b"
oben: "u3c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 512
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u3c"
Typ: "ReLU"
unten: "u3c"
oben: "u3c"
}
Schicht {
Name: "conv_u3c-d"
Typ: "Faltung"
unten: "u3c"
oben: "u3d"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 512
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u3d"
Typ: "ReLU"
unten: "u3d"
oben: "u3d"
}
Schicht {
Name: "upconv_u3d_u2a"
Typ: "Entfaltung"
unten: "u3d"
oben: "u2a"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 256
Auflage: 0
Kernelgröße: 2
Schritt: 2
Gewichtsfüller {
Typ: "xavier"
}
}
}
Schicht {
Name: "relu_u2a"
Typ: "ReLU"
unten: "u2a"
oben: "u2a"
}
Schicht {
Name: "crop_d2c-d2cc"
Typ: "Zuschneiden"
unten: "d2c"
unten: "u2a"
oben: "d2cc"

}
Schicht {
Name: "concat_d2cc_u2a-b"
Typ: "Concat"
unten: "u2a"
unten: "d2cc"
oben: "u2b"
}
Schicht {
Name: "conv_u2b-c"
Typ: "Faltung"
unten: "u2b"
oben: "u2c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 256
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u2c"
Typ: "ReLU"
unten: "u2c"
oben: "u2c"
}
Schicht {
Name: "conv_u2c-d"
Typ: "Faltung"
unten: "u2c"
oben: "u2d"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 256
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u2d"
Typ: "ReLU"
unten: "u2d"
oben: "u2d"
}
Schicht {
Name: "upconv_u2d_u1a"
Typ: "Entfaltung"
unten: "u2d"
oben: "u1a"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 128
Auflage: 0
Kernelgröße: 2
Schritt: 2
Gewichtsfüller {
Typ: "xavier"
}
}
}
Schicht {
Name: "relu_u1a"
Typ: "ReLU"
unten: "u1a"
oben: "u1a"
}
Schicht {
Name: "Ernte_d1c-d1cc"
Typ: "Zuschneiden"
unten: "d1c"
unten: "u1a"
oben: "d1cc"

}
Schicht {
Name: "concat_d1cc_u1a-b"
Typ: "Concat"
unten: "u1a"
unten: "d1cc"
oben: "u1b"
}
Schicht {
Name: "conv_u1b-c"
Typ: "Faltung"
unten: "u1b"
oben: "u1c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 128
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u1c"
Typ: "ReLU"
unten: "u1c"
oben: "u1c"
}
Schicht {
Name: "conv_u1c-d"
Typ: "Faltung"
unten: "u1c"
oben: "u1d"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 128
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u1d"
Typ: "ReLU"
unten: "u1d"
oben: "u1d"
}
Schicht {
Name: "upconv_u1d_u0a_NEW"
Typ: "Entfaltung"
unten: "u1d"
oben: "u0a"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 64
Auflage: 0
Kernelgröße: 2
Schritt: 2
Gewichtsfüller {
Typ: "xavier"
}
}
}
Schicht {
Name: "relu_u0a"
Typ: "ReLU"
unten: "u0a"
oben: "u0a"
}
Schicht {
Name: "Ernte_d0c-d0cc"
Typ: "Zuschneiden"
unten: "d0c"
unten: "u0a"
oben: "d0cc"

}
Schicht {
Name: "concat_d0cc_u0a-b"
Typ: "Concat"
unten: "u0a"
unten: "d0cc"
oben: "u0b"
}
Schicht {
Name: "conv_u0b-c_Neu"
Typ: "Faltung"
unten: "u0b"
oben: "u0c"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 64
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u0c"
Typ: "ReLU"
unten: "u0c"
oben: "u0c"
}
Schicht {
Name: "conv_u0c-d_Neu"
Typ: "Faltung"
unten: "u0c"
oben: "u0d"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 64
Auflage: 0
Kernelgröße: 3
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}
Schicht {
Name: "relu_u0d"
Typ: "ReLU"
unten: "u0d"
oben: "u0d"
}
Schicht {
name: "conv_u0d-score_Neu"
Typ: "Faltung"
unten: "u0d"
Bestes Ergebnis"
Parameter {
lr_mult: 1
Verfall_mult: 1
}
Parameter {
lr_mult: 2
Verfall_mult: 0
}
convolution_param {
num_output: 2
Auflage: 0
Kernelgröße: 1
Gewichtsfüller {
Typ: "xavier"
}
Motor: CAFFE
}
}

Schicht {
Name: "wahrscheinlich"
Typ: "Softmax"
unten: "Ergebnis"
oben: "wahrscheinlich"
}

Tolle Arbeit @manutdzou
Danke für deine Unterstützung. Würde es Ihnen etwas ausmachen, Ihre Arbeit in dieses Repo zu schreiben?
Wir könnten einen Ordner model-zoo/manutdzou haben, in dem du deinen Code als Notebook und deinen Prototxt und die Links zu Baidu als Textdatei postest? Andere Benutzer werden es definitiv zu schätzen wissen. Wenn Sie eine Arbeit über Ihre Arbeit haben, können wir diese auch hinzufügen.

Ok, wenn mein Code und mein Modell gut funktionieren, werde ich mich gerne in dieses Repo einschreiben!

发自网易邮箱大师
Am 07.07.2017 17:33 schrieb Patrick Christ:

Tolle Arbeit @manutdzou
Danke für deine Unterstützung. Würde es Ihnen etwas ausmachen, Ihre Arbeit in dieses Repo zu schreiben?
Wir könnten einen Ordner model-zoo/manutdzou haben, in dem du deinen Code als Notebook und deinen Prototxt und die Links zu Baidu als Textdatei postest? Andere Benutzer werden es definitiv zu schätzen wissen. Wenn Sie eine Arbeit über Ihre Arbeit haben, können wir diese auch hinzufügen.


Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail, zeigen Sie sie auf GitHub an oder schalten Sie den Thread stumm.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen