Failed to make Dataset.filter() work in the model/official/resnet/resnet_run_loop.py file
In the official resnet model, I want to filters the dataset from test.bin by the value of 'label' when eval_only set to be True. I tried the tf.data.Dataset.filter() function to get only one class of test data but it didn't work.
dataset = dataset.filter(lambda inputs, label: tf.equal(label,15))
I put this code in the resnet_run_loop.process_record_dataset function, but it raised an error
raise ValueError("`predicate` must return a scalar boolean tensor.")
I found that the shape of tensor 'label' is (?,) :'Tensor("arg1:0", shape=(?,), dtype=int32, device=/device:CPU:0)'
python tensorflow resnet
add a comment |
In the official resnet model, I want to filters the dataset from test.bin by the value of 'label' when eval_only set to be True. I tried the tf.data.Dataset.filter() function to get only one class of test data but it didn't work.
dataset = dataset.filter(lambda inputs, label: tf.equal(label,15))
I put this code in the resnet_run_loop.process_record_dataset function, but it raised an error
raise ValueError("`predicate` must return a scalar boolean tensor.")
I found that the shape of tensor 'label' is (?,) :'Tensor("arg1:0", shape=(?,), dtype=int32, device=/device:CPU:0)'
python tensorflow resnet
the inputs is the 32*32*3 data of an image, 'label' is the No. of class. 15 stands for 'bottle'. By the way, I'm using cifar100 dataset.
– user5801328
Nov 22 '18 at 5:30
The function passed to filter should return a scalar as the error message indicates, but the shape oflabelis unspecified and so the shape of the output oftf.equal()is unspecified. If you batched the dataset before the call tofilterthen the size oflabelwill indeed be larger than 1. Make sure you filter before batching, so you can safely specify the shape oflabelas(=scalar).
– buzjwa
Nov 27 '18 at 9:03
Also, what version of TF are you using? I've seen an issue withfilterin 1.10.0 giving this error for legit scalars which worked fine in 1.8.0. This is probably irrelevant though.
– buzjwa
Nov 27 '18 at 9:08
add a comment |
In the official resnet model, I want to filters the dataset from test.bin by the value of 'label' when eval_only set to be True. I tried the tf.data.Dataset.filter() function to get only one class of test data but it didn't work.
dataset = dataset.filter(lambda inputs, label: tf.equal(label,15))
I put this code in the resnet_run_loop.process_record_dataset function, but it raised an error
raise ValueError("`predicate` must return a scalar boolean tensor.")
I found that the shape of tensor 'label' is (?,) :'Tensor("arg1:0", shape=(?,), dtype=int32, device=/device:CPU:0)'
python tensorflow resnet
In the official resnet model, I want to filters the dataset from test.bin by the value of 'label' when eval_only set to be True. I tried the tf.data.Dataset.filter() function to get only one class of test data but it didn't work.
dataset = dataset.filter(lambda inputs, label: tf.equal(label,15))
I put this code in the resnet_run_loop.process_record_dataset function, but it raised an error
raise ValueError("`predicate` must return a scalar boolean tensor.")
I found that the shape of tensor 'label' is (?,) :'Tensor("arg1:0", shape=(?,), dtype=int32, device=/device:CPU:0)'
python tensorflow resnet
python tensorflow resnet
asked Nov 22 '18 at 5:18
user5801328user5801328
1
1
the inputs is the 32*32*3 data of an image, 'label' is the No. of class. 15 stands for 'bottle'. By the way, I'm using cifar100 dataset.
– user5801328
Nov 22 '18 at 5:30
The function passed to filter should return a scalar as the error message indicates, but the shape oflabelis unspecified and so the shape of the output oftf.equal()is unspecified. If you batched the dataset before the call tofilterthen the size oflabelwill indeed be larger than 1. Make sure you filter before batching, so you can safely specify the shape oflabelas(=scalar).
– buzjwa
Nov 27 '18 at 9:03
Also, what version of TF are you using? I've seen an issue withfilterin 1.10.0 giving this error for legit scalars which worked fine in 1.8.0. This is probably irrelevant though.
– buzjwa
Nov 27 '18 at 9:08
add a comment |
the inputs is the 32*32*3 data of an image, 'label' is the No. of class. 15 stands for 'bottle'. By the way, I'm using cifar100 dataset.
– user5801328
Nov 22 '18 at 5:30
The function passed to filter should return a scalar as the error message indicates, but the shape oflabelis unspecified and so the shape of the output oftf.equal()is unspecified. If you batched the dataset before the call tofilterthen the size oflabelwill indeed be larger than 1. Make sure you filter before batching, so you can safely specify the shape oflabelas(=scalar).
– buzjwa
Nov 27 '18 at 9:03
Also, what version of TF are you using? I've seen an issue withfilterin 1.10.0 giving this error for legit scalars which worked fine in 1.8.0. This is probably irrelevant though.
– buzjwa
Nov 27 '18 at 9:08
the inputs is the 32*32*3 data of an image, 'label' is the No. of class. 15 stands for 'bottle'. By the way, I'm using cifar100 dataset.
– user5801328
Nov 22 '18 at 5:30
the inputs is the 32*32*3 data of an image, 'label' is the No. of class. 15 stands for 'bottle'. By the way, I'm using cifar100 dataset.
– user5801328
Nov 22 '18 at 5:30
The function passed to filter should return a scalar as the error message indicates, but the shape of
label is unspecified and so the shape of the output of tf.equal() is unspecified. If you batched the dataset before the call to filter then the size of label will indeed be larger than 1. Make sure you filter before batching, so you can safely specify the shape of label as (=scalar).– buzjwa
Nov 27 '18 at 9:03
The function passed to filter should return a scalar as the error message indicates, but the shape of
label is unspecified and so the shape of the output of tf.equal() is unspecified. If you batched the dataset before the call to filter then the size of label will indeed be larger than 1. Make sure you filter before batching, so you can safely specify the shape of label as (=scalar).– buzjwa
Nov 27 '18 at 9:03
Also, what version of TF are you using? I've seen an issue with
filter in 1.10.0 giving this error for legit scalars which worked fine in 1.8.0. This is probably irrelevant though.– buzjwa
Nov 27 '18 at 9:08
Also, what version of TF are you using? I've seen an issue with
filter in 1.10.0 giving this error for legit scalars which worked fine in 1.8.0. This is probably irrelevant though.– buzjwa
Nov 27 '18 at 9:08
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53424304%2ffailed-to-make-dataset-filter-work-in-the-model-official-resnet-resnet-run-loo%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53424304%2ffailed-to-make-dataset-filter-work-in-the-model-official-resnet-resnet-run-loo%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
the inputs is the 32*32*3 data of an image, 'label' is the No. of class. 15 stands for 'bottle'. By the way, I'm using cifar100 dataset.
– user5801328
Nov 22 '18 at 5:30
The function passed to filter should return a scalar as the error message indicates, but the shape of
labelis unspecified and so the shape of the output oftf.equal()is unspecified. If you batched the dataset before the call tofilterthen the size oflabelwill indeed be larger than 1. Make sure you filter before batching, so you can safely specify the shape oflabelas(=scalar).– buzjwa
Nov 27 '18 at 9:03
Also, what version of TF are you using? I've seen an issue with
filterin 1.10.0 giving this error for legit scalars which worked fine in 1.8.0. This is probably irrelevant though.– buzjwa
Nov 27 '18 at 9:08