Comments (3)
stop_queries aims to measure the number of queries needed until the first time we found a successful attack (note that we can still continue performing RayS to get better decision boundary estimates), so it is different from the final number of queries. In this regard, we update the stop_queries for all working_ind each time and stop updating them once they are not in working_ind (success attack found). Hope this answers your question.
from rays.
@uclaml Why you place working_ind = (dist > self.epsilon).nonzero().flatten()
after stop_queries[working_ind] = self.queries[working_ind]
??? Isn't it to be placed before stop_queries[working_ind] = self.queries[working_ind]
?
from rays.
A simple counterexample: assume it works in the order you said. stop_queries is initialized as a zero vector and working_ind is an all-one vector. Suppose in the first attempt we successfully attacked all indices, meaning dist<=epsilon for all indices. Now you will first update working_ind to be an empty list and therefore there will be no update on stop_queries (remains zero vector). Yet this is not correct, as the stop_queries should be the queries used in the first attempt. Hope this helps.
from rays.
Related Issues (5)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rays.