That's commendable from them and a step in the right direction to address a real problem. Unsolicited nudes are considered as sexual assault, and illegal in many countries.
However, I wonder if that's genuine or some PR stunt, as it's "simply" a binary classifier using an off-the-shelf architecture (EfficientNet v2), and having the trained model being publicly released can now allow adversarial attacks.
To be fair they've been using StyleGAN2 and could probably get much better animations with alias free GAN (aka StyleGAN3). Watch the videos there : https://nvlabs.github.io/stylegan3/
As a French person who's been lucky enough to visit Mexico and taste amazing tacos there, I just want to apologize to every Mexican for this. "French" "tacos" are closer to the cursed child of a burrito and a kebab than a taco.
It doesn't have much in common with Mexican culture (nor French gastronomy) and is borderline cultural appropriation. If you want a taco-shaped kebab, rather try an Al Pastor.
> Pelonero had never been to Mexico, still hasn’t. “But I’ve watched a lot of series about tacos on Netflix,”
I guess he hasn't watched this one, or he wouldn't dare naming his things "tacos" :
> It doesn't have much in common with Mexican culture (nor French gastronomy) and is borderline cultural appropriation.
Coming from an American perspective, I'd say this is a good thing.
What y'all are seeing is exactly what we've been seeing (and what Europe as a whole - and the world as a whole - has been seeing for thousands of years): the proliferation of new cuisines. Calling them "tacos" is of course a bit of a sacrilege, but there's more than enough precedent for similarly-named food to have wildly different forms (see also: Spanish tortillas v. Mexican tortillas). And aside from that, this seems like your bog standard fusion cuisine - and given enough time, it'll have its own distinct identity, just like how Mexican food now has a distinct identity instead of being "merely" an amalgamation of Spanish and Aztec cuisines.
More broadly speaking, this is the same mechanism by which cultures proliferate and evolve into new cultures. Cuisine is one aspect of this, and here in the US at least it even helps drive that process; food is communication, and being the fatasses we are, we sure do a heck of a lot of it :)
My thoughts exactly! Have you seen what french kebabs are doing to Indian food now? You can get 'naan wraps'. Seriously, a cheese naan that's layered with mayo/lettuce and whatever meat you want inside. I don't mean to come off as a food snob, but what kebabs are doing now is pure bastardization of indian, french, moroccan, and greek gastronomy.
The result of food bastardization is often delicious. In Houston the M&M Grill is an Arabic and Mexican fusion restaurant. . . . We hope you'll stop by soon to try our Hamburgers, Kabobs, Enchiladas or Chimichangas.
Sorry, in France, we usually just say "kebab" rather than "döner kebab" / "gyro" (so if you go to Turkey and ask for a kebab expecting a gyro, you'll be surprised the first time).
But they usually come with pita bread, while "French tacos" are wrapped in wheat tortillas instead, use any kind of meat(s), have cheese, sauces, ...
Chile ranks first in Latin America — and 44th among 189 countries — in the United Nations Human Development Index. "The U.N. ranking counts not only economic growth, but also health and education standards."
"In Villa Grimaldi detainees would be electrocuted, water boarded, had their heads forced into buckets of urine and excrement, suffocated with bags, hanged by their feet or hands and beaten. Many women were raped and for some detainees, punishment was death."
Human rights abuses are great! Since you seem to think the ends justify the means, I suppose you'll start to sing praise of China as well, since they've done a very good job of developing the nation despite some unscrupulous actions against some people.
I don't recommend you to use that example again, because it would only make you look bad to anyone who knows what he's/she's arguing about
When Pinochet was forced to step down from power, Chile had a ~39% poverty rate, which if we were to use today's new poverty metric it would be around 70% poverty. [pg17]
X axis is GDP, rightmost is better, Y axis is GINI, highest GINI means stronger inequality
As you can easily see, all the advancements on Chile's development have come since Pinochet stepped down from power and his reforms removed one by one, the source of that data was from the Chilean Central Bank
Also, there was an interview around 8 years ago, where historians outlined that basically the only reason why Pinochet stepped down was because the CIA informed him that the US would not continue to prop up his regime, as Pinochet wanted to renege on the vote to step down from power, but the at the time General in charge of the Navy and the General in charge of the Airforce both of them disagreed with Pinochet, so had the CIA not done so, it could have ended on civil war.
And what's interesting of it all, is that the CIA had documents/assessments which stated that if Pinochet were to continue in power, the already rampant poverty and growing slums in Santiago would work as perfect spots for a hard Communist uprising along the MIR and FPMR, both groups communist guerrillas which had already tried to assassinate Pinochet. So the US stopping support of Pinochet was again, intended to advance their own interests in the country
But yeah, slowly things which were done while Pinochet was in power are being corrected
> ...We show that the sale of state-owned firms in dictatorships can help political corporations to emerge and persist over time. Using new data, we characterize Pinochet’s privatizations in Chile and find that some firms were sold underpriced to politically connected buyers. These newly private firms benefited financially from the Pinochet regime. Once democracy arrived, they formed connections with the new government, financed political campaigns, and were more likely to appear in the Panama Papers. These findings reveal how dictatorships can influence young democracies using privatization reforms.
Thanks to social democrats who took over after Pinochet. So whatever Chile is today, a lot of it is thanks to democratic socialism. Still Chile has not gotten rid entirely of its troubled Milton Friedman and the Chicago boys legacy.
"Social democrats" are capitalists. They didn't abandoned capitalism. The current president is an independent who is backed by center-right organizations.
How does this compare to CuPy (https://cupy.chainer.org/) ?
It is now independent from Chainer, is highly compatible with numpy and supports both CUDA and CuDNN.
For the CUDA part I cannot tell, but Numba is also compiling on the fly your Python code into machine code using LLVM. This where it shines. For example, instead of pushing your code into Cython or a Fortran library, you can keep writing in simple Python and get your code to run in some cases nearly as fast as Fortran. This is my use case. I haven't used the CUDA features yet.
Your comment surprised me as clang is regarded to be pretty competitive these days (compared to gcc). I don't know the current state of things but a quick search revealed at least one sentence, http://llvm.org/docs/Vectorizers.html, "the loop below will be vectorized on Intel x86 if the SSE4.1 roundps instruction is available." So it seems SSE4 is supported by LLVM?
The source of my confusion is that the last time I looked into LLVM's SIMD support was in the context of looking at Rust, a bit more than a year ago or so, and back then my conclusion was that neither (Rust or LLVM, then in version 3) are very good tools for that. It seems I was very wrong, at least on the LLVM side.
EDIT: Sorry, to reply to your question, my concern is not GCC vs. clang; If you want max out your vector ops, I would suggest you should compare to ICC as the "standard", at least on Intel CPUs.
Yep, I understand about icc. I actually wonder what is so difficult about optimising the way icc does, what does it actually do so much better than gcc? Anyone know of a good analysis?
I understand the social reasons, but I was wondering more about what compiler does in terms of technical achievements that goes beyond what gcc/clang can successfully generate. Surely this must be something that can be studied empirically.
I'm not sure what parts are clang and what parts are LLVM, but I recently did some tests comparing g++ to clang++ for auto-vectorization and they were very on par. I'd even say clang was a little better than g++ with full optimizations turned on on average.
This was on an AVX2 machine, testing the (auto)-vectorization performance of expression templates. Anything with a compile-time unknown stride or a random gather failed horribly with both. Using (semi-)explicit vectorization turned out to be much faster still.
Impressive; I didn't take a look since the 3.x series, so I am totally stunned by the amount of "love" that LLVM has received lately (4, which was released just a few months ago, and up to the coming version 6, that is under development still).
While your statement can certainly be correct for a sufficiently stringent definition of "advanced" (and replacing "instructions" with "code patterns", etc.), in my experience in using both clang for C++, Julia (a language largely reliant on the LLVM optimizer) and LDC (a D language compiler on top of the LLVM) vectorization support is competitive (and sometimes superior) to GCC. Comparisons with ICC are somewhat more complicated, ICC is unparalleled for specific patterns and often fails horribly in other things, the variance there is quite huge.
Disclaimer: by "vectorization" I'm referring to SSE4, AVX and AVX2, I haven't had a chance to try out AVX512 yet.
Only in parts, not all instructions, and some functionality it did have was buggy. 4 and 5 are much more advanced/competitive on SIMD issues, it seems.
Edit: Oh, sorry you meant that other guy's link to LLVM's vectorization tutorial. Ignore my reply ...
One advantage of Numba is that it doesn't require CUDA. You can easily write your code so that if the machine it's running on has CUDA then it will use that and if it doesn't it will just JIT it for the CPU.