Tumgik
#id def do some things a bit differently. the focus would go more towards the car thing. and the 2nd half couldve been fleshed out more
pikslasrce · 7 months
Text
titane (2021) was uh. something
2 notes · View notes
indecisive-v · 3 years
Text
NINJAMUFFIN DOING ANOTHER AMA ON TWITTER, HERE'S MORE SHIT FOR YA! keep in mind i'm just sharing the funkin related stuff, though i am including WAAAAY more than what i shared before 👍 go check out ninja's twitter profile for questions about stuff like ritz! questions in blue, answers in orange. if yall don't wanna read everything i MIGHT make a version of this post where i replace the answers with my own summaries of em (and if the questions are long, those too)
and here's a link to the ama tweet itself! dunno if it's still goin
Q: I figure the answer will be yes but do you have more plans to implement more guest appearances from people in the newgrounds community into FNF? Or are you all gunna focus on OG lore and stuff going forward
A: for guest appearances, I think we have always seen it as getting a healthy mix of both. PERSONALLY I'd like to lean towards having more OG stuff than guest stuff, BUT it's all a matter of what other boys think of that as well. I'm not the sole person working on game!
Q: Are you gonna release the full FNF game or are you gonna be releasing week after week? Like, are you gonna release week 8 or are we gonna wait some years until The Full Ass Game comes out?
A: Release plan for FNF right now is a few more updates or whatev to the 'demo' we have out right now, and then a long silence of probably no updates whatsoever until the full game is done (which will likely be a few years). That's partly why we made kickstarter for game.
Q: Hey so like, how much will Fnf cost after it's finished? And when will you ask the supporters what they want the game on?
A: It's all subject to change, but right now it prob gonna be standard 15-25$ lil steam indie game.
We will ask Kickstarter pledgers and whatnot what they want the game on SUPER close to when its released, to keep options open if we get onto anything like a console people want.
Q: 1. how was your day
2. are you releasing a week 8 song early like week 7, or are you goin full lockdown
A: I am doing GOOD today, and I think recently I've been good in general.
up to the mood, but so far we doing good about not having anything leak or whatev, so I think it'd be fun to have update come out with people not knowing what to expect at all. Build dat intrigue
Q: Will fnf ever get official plushies?? Seems like an untapped market
A: FNF plushies will prob happen some point, we have a lot of current merch stuff on our plates already though! (Mostly kickstarter type stuff, shirts, pins, posters, and all the physical OST stuff) Its a lot to sort out, but in time more and more stuff will happen. We r jus 4 boys!
Q: did you ever expect your game to blow up as it did? what was your first reaction to seeing it become super popular
A: FNF never had a humble moment, literally day 1 before the prototype even came out, the vid on twitter had like 5K likes overnight. Then when ludum dare version came out, it got 5K likes again, like it wasnt just a fluke. Was crazy, and def felt like somethin was different wit FNF
Q: Do you plan on getting other people to come in to help with the music? That seems like a lot of work to dump on one person, what with the erect mode and whatnot.
I guess the question could apply to all aspects of development. Will you be bringing on more people to help?
A: We definitely are getting help from other people. We are always keeping an eye on people for various different things. In terms of programming, already I've gotten 2 people (MtH and Geokureli) to help with certain Week 7 stuff (charting/polish, and loading stuff). Shit like dat
Q: Oh, also, will the Steam version be Workshop compatible? That'd really help streamline the process of downloading mods.
A: Steam version of FNF will likely NOT be Steam workshop compatible, because we want all the mods to NOT be spread out through different places. There WILL be modding support that is as streamlined as Steam workshop though. Mainly for non-steam versions of the game!
Q: Are there any chances that the game will have a physical release? Also any updates on a switch port? I remember one of you guys talking/joking about it.
A: Not impossible for FNF to get a physical release. We would want to see how far we could go with it though. I think it'd be super easy to do something wit people like LimitedRun games or whatev, but I think stuff like that can only go so far. I wanna see Funkin in mf Walmart!!!!!!
not that LimitedRun isn't going to be an option! Just we consider and pursue many different things! FNF release is years away, so we have time to think about everything. Whole mindset can be different just a few months from now.
Q: Out of curiosity, how are you dealing with all the popularity? It blew up so fast id barely be able to handle it if I was in your shoes.
A: The only way I've been able to handle it is having the other boys on the crew and being able to talk to them about all the overwhelmingness.
Part of it feels very lonesome, feels like NO ONE can come close to comprehending exactly how I'm feeling, except them. also other PALS!!!
Q: Do you own any of the bootleg FNF merchandise? Like any bootleg plushies or anything?
A: i dont, i genuinely think they r a waste of money, and I know any bootleg shit that gets made, we can prob go about and make it, and make it 100x cooler because we actually put effort into shit. bootleg shit just in it for the coin, so they aint gettin that from me
Q: How did you go about getting in contact with sr pelo for skid and pumps vocals?
A: Pelo i think was familiar and pals wit PhantomArcade a bit thru various Newgrounds things and collabs and whatnot.
pelo retweeted the first OG FNF posts first ever, and brought a LOT of attention to it. to pay him back, we put skid and pump in game! ask dave for more info prob
Q: what's the plan for having the full ass game open source if it's gonna cost money? couldn't people just download the source and compile the game for free?
A: when FNF is fully released, the full source code will be released as well.
the game will be DRM free so it will be way easier for people to redistribute the released/offical .exe instead of compiling it, so that's not the issue anyways. people will pay for things if they like it
Q: What are the chances of it getting on consoles like switch or Playstation, ps5 would definitely be my preferred way to play
A: it'd be a matter of hiring someone to build out backend stuff for those specific consoles. someone who knows their way around all the wacky code stuff, AND knows console hardware stuff. Then its just a matter of hittin up those console manufacturers (Sony, Microsoft, or Nintendo)
the CLOSEST one is SWITCH. pretty much all of that backend is already made, so it just a matter of gettin all that access and shit.
i think in any case though, there's a lot of NDA stuff required, i dunno how much we'd be able to talk about it even IF we get that stuf sorted
Q: any ideas of releasing it on epic store or another platform?
A: Right now, the only thing that is 100% confirmed and WILL happen is a Steam version, itchio version, and mobile versions on respective app stores. Other storefronts aren't out of the picture though, but we don't want to spread ourselves too thin with it.
Q: Will you continue using HaxeFlixel to make the rest of FNF?
A: yes, because it is what I'm the most technically proficient in, and generally is VERY flexible. just a matter of ME becoming a better coder. It's ALL open source, so if I need something done a certain way, either I can do it, or we can hire someone to do it.
Q: have you seen game theory's videos on your game yet and if so, what do you think about them? (not talking about his predictions because i dont want spoilers. i like mystery)
A: it is always good silly fun to watch the Game Theory vids about Funkin with some pals, and see what matpat thinks of the game. i lov the vids, but wish he used my face less! Or at least used a cuter pic of me like this one!!
Tumblr media
Q: Ok so: What does the future of FNF look like to you?
A: future of FNF is a rhythm game that not only exceeds every expectation that people have of it, but subverts most expectations and conventions as well.
Q: Do you plan on retouching on older weeks once the game is fully out? Like reanimating sprites, redoing some charting, updating the background, etc
A: retouching and probably overhauling certain aspects is almost definitely gonna happen. Everything is fluid and can be changed (and should be changed when necessary). i dont think anything should be too attached to, especially this early on in development
Q: I honestly do not care if the answer to this is vague as hell to keep surprises and shit lol but… Since Week 7 was the closest we’ll get to a playable girlfriend (still bf controlling tho), do you have plans to make girlfriend playable in spin-off things or just freeplay?
A: wouldnt be out of the picture for a playable GF, i don't think we've had some hard thing AGAINST it. just a matter of what we want out of the game, and what sort of story or whatev we could do with that concept
Q: How do BF and GF manage to meet famous newgrounds characters (such as pico, tankman and the others to come) like is this all in one universe/ timeline or are they being brought in?
A: i think they are all just there existing. i think there's a lot of wacky things in other media that try to justify crossovers, like MULTIVERSE bullshit or TIMELINE shit, but i dunno, its like subspace emissary. Captain Falcon and Olimar from Pikmin just hang out. Shit like dat
disclaimer that all lore shit is in phantomarcade head pretty much and maybe there is wacky dimensions or somethin
Q: Will the game have dlc?
A: its not too unlikely that we'd have expansions of some sort, but i mean right now we plan on packing in as much as we can into base game, and trying to make that as pure as possible.
if there is ANY dlc, i would personally want it to be 100% free updates
Q: How did you meet Phantom Arcade, Kawai Sprite, and EvilSker? And what do you think about the community and its controversies?
A: me and phantomarcade been fukin around NG for years so years and years ago we naturally crossed paths and became pals
about 2 years ago i found kawaisprites music on NG, and started talkin wit him, made Ritz wit him and we fell in lov
and evilsk8r i met cuz of FNF!!!
quik elaborate on evilsk8r, wanted artist for gamejam FNF was for (ludum dare), and OG person i asked wasnt available, so he referred me to evilsk8r, who I have never met or talked to before ever.
1 note · View note
benbarnesescape · 7 years
Text
Blood, Sex and Whiskey - Part 5
All Comes Crashing Down 
Tumblr media
Warnings: M for Violence, Language
A/N: This is just a reminder that this story was influenced by the characters in the comic more than the plot of the Netflix show. Though now I def. might pull more characters from there and some influences, this is an inspired work of fiction by them. Also if I missed you in the tags I’m sorry! 
That said – enjoy!
 Tag List:  @iheartbinbons @binbonsadoration @lafemmedemon @la-fille-en-aiguilles@ladyblablabla @drinix @padfootagain @princesse-de-ravenclaw @lovelysiriuss @deerprongs @maraudereestauderelb
You’re desperate as your bloody hands shakily dial the number to your commander on the tiny Toyota Yaris’ console, your foot a brick under the gas pedal as you weaved in and out of New York traffic.
“Pick up, pick up, pick up.” You mutter underneath your breath, listening to the phone echo the ring in the tiny space as you cut off a semi trunk to speed off the ramp.
“ID.”
Your bosses cold voice cuts through the air and you fight back the sob before you sputter out your military security id.
“Glad to hear your still alive Viper.”
There’s relief in his voice and you give a grateful nod. There wasn’t anything more dangerous from this mission than the ones you had been on before, except the variable that still had you confused, uncomfortable.
Billy.
There was something different in his voice that had you grasping your brain, like déjà vu. But you didn’t serve in the military and you were sure you never encountered Billy’s unit.
Then you frown.
You couldn’t be sure. The first 20 years of your life was like smoke in your brain. Sometimes memories would come back, fuzzy snapshots that would trigger feelings of nostalgia. But they were short and typically left you sweats, shaking and uncomfortable as you tried to claw back to reality.
You couldn’t afford the serum side effect to paralyze you right now.
“Did you get my message? Do you have a unit headed toward Castle’s house?”
Your voice is desperate as you turn down the street corner, so familiar with the route to Frank Castle’s house that you can even determine how many miles you are before you arrive. The small community is dark. Quiet.
Nothing had happened yet.
“We were unsure when. We had a patrol or two head over but they said there was limited to no activity…”
“Send our men. Jenkins, do you hear me, they’re going to bomb the place. We have to get them out and into protective custody stat.”
You turn into his block, slowing down the car as you slowly near the small home. They lived across from a park, a small one in the community and you park on the side closest to the park taking in the horizon, looking for movement. It’s as silent as an ocean before the storm.
“You can confirm this.”
“I heard it from Billy’s mouth. They’re all in there. Frank. His family. We can’t let him murder them. Bombings are the Russo boy’s specialty.”
Silence, then.
“Are you there now? At Castle’s place?”
“Yes.”
“How does it look?”
“Quiet. Too quiet. Let me in there. In and out – I can get them in 8 minutes.”
“Not less?” the question is a challenge and you scoff as you check the barrel of your gun, reloading it before sticking it between your bra.
“There’s a kid. He’s the three minute factor I have to consider. And Frank probably trying to murder me from waking him from his sleep and forcing his family out of the house.”
“Do what needs to be done.”
You step out of the car, the jingle of the door being open the only sound resonating in the silent neighborhood. You shiver, your body instantly breaking out in goosebumps as you draw your jacket closer to you.
Something was off. Wrong. Off keel.
You start to move toward the house slowly. Cold, spring air feels your lungs as your ears fill with the faint sound of a dog barking. There is a light flicker coming out of one of the rooms on the top floor of the Castle home, probably a TV. Its dry – drier than normal for the east coast – as the fait smell of something familiar feels your nostrils. You were only halfway across the street when you turn, stopping to look across the playground.
Now someone else was there. And they were watching you.
“Send a unit over. Bomb unit. Billy might be on his way with his men. Send a bomb unit and our squad.”
You shake the feeling off. Ignore every natural instinct that tells you that something is wrong as you tighten your hand around the phone, turning back to the house.
Then it hits you. It resonates in the ground first, the shockwave rippling through the thick tar and concrete before it reaches you, throwing off your body’s gravity as you’re blasted out of the air. The air is inked with orange, red and yellow – heat overwhelming your body as silence fills you, darkness taking over as you feel yourself lifted from the ground.
Then there’s darkness.
When you wake up, your ears are ringing loudly. Your body aches, you’re sore as you move your body, and you stiffen, trying your best to bite back the scream that threatens to emit from you.
 Your car alarm, along with others, are ringing loudly as you slowly move your right arm. Then you’re left. You will your left leg, then you’re right. You focus on where the pain is resonating and your pray your spine isn’t injured – that you’ve broken a rib or two. You slowly start to try to move your back and sob back relief. Definitely your ribs – maybe even a punctured lung. But that’s it. Your phone is still gripped around your hand, a small steel vice as you hear Commander Jenkins scream out “Agent. Agent Viper. Agent!?”
You move slowly as you sit up on the trunk, assessing the other damages you may have received. Outside of the rib injury, a few cuts and bruises. But you were fine. You raise the phone to your ear as you echo this out into the small metallic device, almost in a zombie state,  
“I’m fine.”
Your voice is cracked as you try to gather your senses, allowing your brain to register what had just happened. And then it hits you.
You had failed.
You try to will yourself out of the dented metal, trying to ignore the franticness of Jenkins voice trying to gauge a report. The sound of neighbors stirring from their homes as they come out of their homes, trying to understand the events. The faint sound of sirens nearing.
It’s the sound of blood curling screaming that finally motivates you as you ignore everything, focusing on the owner of the sound.
Frank Castle.
He’s donned in his black attire, the white skull gleaming in the fire light as he sits on his knees, tragically looking onto the scene – of his home. Of what was once his wife and son.
You falling into a heap on the ground stirs his attention, pure hate and rage flashing in his eyes. Trying to understand where you fall into this equation.
You watch him, heaving heavily before you assess the terrain. Trying to gauge how much time you have left before everyone is on top of you, before this neighborhood becomes a bookmark in history as a blood bath.
You turn off your phone, ignoring Jenkins as he’s barking off orders as you stammer closer to Frank.
You know that a man in his place will do one of two things. He will either kill you, fast and quick.  Or he’ll take you hostage until he no longer needs you in which case he will take pleasure in the kill. Slow, painful and delectably sweet.  
You had failed – never failed a mission before – and was willing to deal with the consequence. You may have a red ledger in your history, this consequences of your past no longer in your memory - stolen from you but you knew the damage of who you used to be. The damage it had done to people – to families. You were a toxin, a bomb, the bullet that pierced its enemy. No matter how hard you tried, you were damaging, cancerous, lethal.
Dying by a man who only wanted to do right for this world seemed just.
You’re limping to him, trying to shake off the effects of being blasted in close proximity when you see the gleam. It almost clashes with the fire, blending with embers consuming the old wood but you see it just as much as Frank can’t – too distracted in grief and despair.
Billy’s last move.
You’re light, quick on your feet. Surprised that the pain from earlier isn’t limiting you from barreling toward Frank, your body swift and limber as you tackle him, rolling him out of the way  just in time to avoid the bullet that was aimed for his head. You roll off into a car as Frank rolls in front of his lawn, trying to ingest what has just occurred. Those dark eyes lay upon you again, drinking you in with renewed anger and confusion, before he looks to the place he was kneeling at, the crisp indenture in the cement from the sniper riffle. Another round goes off, a bit above your head and you chuckle, a strong pain erupting in your ribs as you cough up blood.
This is how you were going to end.
Not by Castle, an honorable death. By fucking Billy Russo.
Seemed fitting considering the person you had become.
Another shot close to your head and you close your eyes, waiting for death to encompass you. Focusing on the increased chatter of neighbors who have neared, the sound of sirens now even closer – probably three blocks now. The heat of the flames, the smell of skin and rot filling the air. The soft vibration of your phone in your pocket, the weight of the gun in your chest as it sticks to you in hot humidity. This is what your life had always been. A spectacle of death. You were always waiting for it. Secretly wanted it. Couldn’t fear it. It was the second home in your mind.
You allow yourself to lie there, blood you now knew to be filling your lungs as you spit out more, fighting it for drowning you from within as it tampers down your chin, hot and sticky.  
Waiting for relief.
You see Frank inch toward you, on his stomach. He’s counted the number of shots, knows he has a window to finish what Billy has started.
“I’m sorry. I tried to save them but I was too late and I’m sorry.”
Your voice is raw and the pain is overpowering as you close your eyes once more.
Waiting for it to finally be over.  
A/N: I leave this to you my dear readers. I want to continue on but want to gauge if its worth my investing. So I will either continue with this series upon popular demand or leave it here. Let me know your thoughts!
112 notes · View notes
comicteaparty · 6 years
Text
September 6th, 2018 CTP Archive
The archive for the Comic Tea Party chat that occurred on September 6th, 2018, from 5PM - 7PM PDT.  The chat focused on MORBIDITY by Charu.
Tumblr media
Featured Comment:
Tumblr media
Chat:
RebelVampire
COMIC TEA PARTY- THURSDAY BOOK CLUB START!
Good evening, everyone~! This week’s Thursday Book Club is officially beginning! Today we are discussing MORBIDITY by Charu~! (https://tapas.io/series/MORBIDITY)
Remember that Thursday discussions are completely freeform! However, every 30 minutes I will drop in OPTIONAL discussion questions in case you’d like a bit of a prompt. If you miss out on one of these prompts, you can find them pinned for the chat’s duration. Additionally, remember that while constructive criticism is allowed, our focus is fun and respectfully appreciating the comic. All that said, let’s begin!
QUESTION 1. What is your favorite scene in the comic so far and why?
Superjustinbros
Ello!
RebelVampire
good day, SJ
Superjustinbros
Good day to you as well
RebelVampire
lets see, i think not so much a full scene, but one of my favorite moments is when Yuuto asks Keagan why Keagan let him in if Keagan doesn't recognize him. and keagan just has the best expression while saying he wonders himself. it was such a great insert of comedy in that moment that i couldnt help but laugh. i also think it was kind of a great showcase for keagan's personality as well
Superjustinbros
https://tapas.io/episode/1111726 I dunno why but I got a bit of a chuckle out of this scene
With how... sudden the tone changed
RebelVampire
i do enjoy how confused keagan looks in this part. i like the sense of ominous with that broken piece on the plant though. it screams with beautiful foreshadowing i hope at least.
Superjustinbros
Yeah
RebelVampire
ive also been enjoying how the recent chapter has been going. mostly with how its framed in that we never really get to see who i assume is ryo really. its focused on keagan and i like that it makes ryo seem a tad more mysterious
saetje
My favorite scene is definitely near the end of the content where Ryo starts freaking out/getting corrupted. I think it’s at that point we’re getting a sort of taste for a mood shift that’s going to be happening
Superjustinbros
I couldn't think of a good way to mention that little... episode earlier
but it definitely seems strange(edited)
saetje
I also agree I like that ryo is only seen through Keegan’s eyes right now. Solely focusing on Keegan’s perspective leaves ryo on a pedestal currently. I have a feeling we’re going to learn more about ryo later, but it’s smart to start us off through Kaegan’s eyes
RebelVampire
i like how with the whole mood shift that ryo was super accurate in that he was spoiling the mood. i particularly loved when yuuto caught up to ryo cause at that point just the sheer imagery and what was going on made me feel that the situation was truly dangerous
mathtans
I made it. ^^ Rebel, I liked that same scene, where Yuuto then remarks on how it's good he's trustworthy or whatnot.
Superjustinbros
MATH
mathtans
I didn't even notice the planet, whoa.
Hi all!
Superjustinbros
The end of the chapter looks like the start of some kind of crazy creepypasta(edited)
mathtans
Yuuto's attitude in general is pretty fun in my mind (okay if I play games?) but it definitely took a turn with the reactions towards the end. I think he didn't do his research on Keagan.
RebelVampire
haha it does kind of have a creepypasta vibe. i can picture the reddit thread for r/nosleep now. XD
to be fair to yuuto its been like 16 years so ryo would be a poor source of keagan info and maybe keagan is an internet hermit who doesnt even have facebook
saetje
I think it’s an interesting thought that kaegan’s attachment to Ryo is a little selfish. It seems as though it’s literally tethering Ryo’s ghost from moving on and putting his spirit (and others?) in danger, as well as ruining kaegan’s own relationships and life. Kaegan does seem quite overly obsessed(edited)
mathtans
It's possible. I wonder if Ryo was paying more attention to Keagan for a long time (either of his own volition or not) and only recently got his brother involved... then Yuuto didn't realize how bad things were.
seatje: Agreed. I wonder if maybe he was partly responsible for Ryo's death.
saetje
Oh that’s an interesting thought, math!
RebelVampire
yeah tbh i adore how grey it is. cause you could make an argument equally as valid in saying its selfish for ryo to ask keagan to move on. and i love that cause its what makes the conflict complicated and complex. cause there isnt one right answer cause you just cant make ppl feel things you want to feel at the drop of a hat.
saetje
So true
mathtans
I can't think of another good reason why he'd obsess that much. Even if they were lovers (which is kind of implied), I figure there has to be more to it...?
Yup, humans are a complex mess.
RebelVampire
nah they werent lovers cause huge age diff. i think the summary says it was a one-sided crush.
Superjustinbros
Right they are, math
RebelVampire
so theres def something fishy going on here
mathtans
I'm actually kind of reminded of a serial I wrote on a similar topic, which occurred to me as I was reading too. It's a good theme to build on.
saetje
I’m a little confused by the timeline- was kaegan young and just had a crush on an older ryo or did they get to a point of being consenting lovers?
Oh! Rebel answered
mathtans
Rebel: Ahh, good point, missed that. Guess I jumped to conclusions given the circumstances of when we first heard the name.
RebelVampire
“Nine year old Keagan had a onesided crush on eightteen year old Ryo. Then, Ryo died. Nearly sixteen years later Ryo's little brother Yuuto comes into Keagan's life to tell him to "get over Ryo's death".”
just so everyone can be on the same page
Superjustinbros
Thanks, Rebel.
RebelVampire
i take the implication to be that ryo died when keagan was 9
saetje
Okay, there you go! Thank you
RebelVampire
which man, props to keagan for A+ memory. i barely remember anything from when i was 9 XD
mathtans
Could still have been somewhat responsible though, even if young.
I barely remember things from last week sometimes. O.o
Superjustinbros
I remember a lot of things from my childhood
just saying
I practically remember how all the rooms in my house looked when I was that age
saetje
I was just thinking that, ha. Sixteen years is a long time to hold onto something, especially from childhood in such a strong way. But I guess it was also such a traumatic event for him, which tends to stick more too
Superjustinbros
and how my schools looked at the time I attended.
RebelVampire
yeah i guess if were being fair id have remembered a traumatic death. but it implies super closeness i think that goes beyond a one-sided crush. so theres definitely more to see there
QUESTION 2. While it’s clear that Keagan and Ryo had past history, a lot is left to question. How do you believe Keagan and Ryo met, especially considering their age difference? Why do you think Keagan crushed so hard on Ryo despite the age difference between them? Do you think the attachment to Ryo was born purely out of affection, or do you think there’s more to Keagan’s past that explains the attachment? Do you think the way Ryo died has something to do with why Keagan can’t move forward? Or is it something in general perhaps about Keagan’s past history with Ryo? Lastly, why do you think Keagan remembers Ryo so well but seems completely clueless about Yuuto?
gives self A+ for beautiful segway
mathtans
Or segue, even.
saetje
Oh that’s true- how could he not know yuuto?
mathtans
Maybe Yuuto's a half-brother?
saetje
I have a thought that yuuto may be a trans man? So perhaps he transitioned and presented as a girl on the past?
Superjustinbros
I wonder, if Ryo didn't die, would Keagan find it more easy to move forward?
mathtans
Yuuto's also younger, so maybe Ryo left home at 16 or something and didn't talk about his family.
saetje
Just feels as though the artist is fairly good at drawing anatomy of all sexes, not shying away from lgbt content, and yuuto seems intentionally more slender and androgynous. But it’s just a passing thought/hunch , I could be wrong
mathtans
On the topic of how they met... maybe they met online first? Or through some sort of spiritual connection? That could also explain the difficulty in letting go.
saetje
Yeah it’s also possible he never met Yuuto?
Superjustinbros
What was technology like back when Keagan was younger
I wonder
mathtans
Saeje: Could be, I guess based on some of the Q&A stuff I just see him as a guy with his own style.
Superjustinbros
Cause when I was that age the internet was like, brand new
mathtans
That who never met Yuuto, Keagan or Ryo himself?
saetje
Ah, I tend to skim q&a stuff so it’s possible I missed some key character insights
RebelVampire
dont discount the trans theory. never impossible. and i assume theyre following our time line so internet was probably like it was 16 years ago.
i feel like keagan must of met yuuto tho
just cause yuuto showed up thinking keagan would obviously know him somehow
and if they never met there is no reason for yuuto to assume that
and in all honesty it seems most likely that keagan met ryo through yuuto
just cause yuuto and keagan seem closer in age maybe
mathtans
I guess I just assumed that the "would obviously know" part came from the fact that if you're obsessing over a guy for 15+ years, you'd look into his family. Come to think, maybe they met at the funeral and Keegan simply doesn't recall that.
Assuming that there was a funeral, and it's not a case of Ryo's body vanishing after being murdered by an evil demon that Keagan unleashed upon the world.
saetje
just found this on the 'q&a' section, but might not be canon:(edited)
mathtans
(Oh no, new channel, I can't do my trolling face...)
Superjustinbros
Dawwww!!!
saetje
so I'm probably wrong aaand! I guess they did know each other, but it's just likely Kaegan didn't recognize him right away. I mean his style did change quite a lot
mathtans
Right, I saw that, I guess I didn't immediately think it was an actual photo as much as an artist rendering.
RebelVampire
ah yeah i was just gonna point that image out from the Q&A!
mathtans
Yuuto dyes the hair now.
Superjustinbros
well people do change a lot when they age
mathtans
I wonder if he went into the practice in part because of whatever happened to Ryo.
Maybe it used to be Ryo's thing.
Now gotta pick up the slack in the family.
RebelVampire
yeah to be fair if yuuto and keagan lost contact, of course he probably doesnt recognize yuuto after 16 years old.
Superjustinbros
Exactly
saetje
yeah
RebelVampire
and yuuto is silly in retrospect to expect that. but hard to say what the nature of the relationship was
maybe keagan and yuuto were bestest friends, yuuto introduced keagan to ryo, and then keagan was like "who are you im busy crushing on this cool older fellow"
saetje
It's not improbable they (kaegan and yuuto) were friends first, and Kaegan just crushed real bad on the older brother, which would also make sense why it was so one-sided but they would also be hanging out (as he was probably hanging out with/chaperoning his little brother, and consequently his little brother's friends as well)(edited)
mathtans
Maybe it's something a bit more supernatural. Like, Keagan tried some sort of "forget" spell on Ryo but it backfired so much that he forgot Yuuto instead.
RebelVampire
thatd be tragic, tho would be more likely itd be yuuto doing the spell casting.
albeit to this notion of keagan and yuuto being friends, we dont really see yuuto in the flashbacks so far so its also possible something else was going on. like ryo was keagan's tutor or something
im gonna go out on a limb and suspect that keagan did not have a happy home life
and thus the attachment to ryo cause ryo was an adult who was showing him kindness
mathtans
That's a very good thought.
Interesting how in the bit of flashback we've seen, Ryo is trying to get Keagan to skate on his own, metaphor for life?
Superjustinbros
Oh yea
That would traumatize someone, seeing an adult that they once loved died
RebelVampire
oh ya know what, i wasnt even reading that scene metaphorically. good catch, math~!
metaphorically i certainly is very telling of what keagan is feeling
mathtans
Seems like even back then, before Ryo died, Keagan had issues. Tied in with your unhappy home life thing.
Superjustinbros
^
RebelVampire
but im just taking a stab in the dark tbf. i just feel like theres gotta be more than one-sided crush. and that ryo's death is tied up in personal demons
albeit you could be right that keagan somehow caused ryo's death
mathtans
Keagan introduced the cat, not knowing about the deadly cat allergy.
RebelVampire
has it been stated how ryo died?
mathtans
If so, I missed it.
I just offer up my crazy theories.
RebelVampire
i dont recall either so how ryo died could have a lot to do with things even if keagan didnt cause it
QUESTION 3. The entire plot of the comic is essentially based around one question: will Keagan be able to move on from Ryo? What do you think is holding Keagan back exactly? Is it fear of the future without Ryo, true love, or some sort of inner demon? Do you think Keagan is sincere when he says he has tried to move on, or do you suspect self-sabotage? Even if Keagan gets over Ryo, do you think Ryo will successfully be able to move on? How do you even think Keagan might get over Ryo? Also, what do you think Yuuto and/or Suzy’s role if any might be in helping him move forward? Finally, do you have any theories in general for future events of the comic?
mathtans
I feel like it's one of those things where after you move on, you're worried you'll forget details... which is true enough. But Keagan's got himself so tied up in it that he might forget things about himself. I don't know that it's anything external.
RebelVampire
oh ya know what, i never thought of it from that perspective. that he doesnt want to move on cause hes afraid of all the memories vanishing in the breeze
mathtans
Also, I think Keagan might have tried to move on in the past, but after it didn't work a couple times he just goes through the motions now to appease others around him.
Not just memories of Ryo, but memories of how happy he was back then. Maybe the happiest he'd ever been?
Superjustinbros
Perhaps
Then again it can be hard to move on form something
and even if you do, memories of what happened can still haunt you(edited)
RebelVampire
tbf this makes me reconsider that maybe keagan's attachment is not bred from a bad past, but a lackluster present.
Superjustinbros
That could be the case
RebelVampire
in that maybe keagan has continually had life issues that have made him cling to that happiness
like what does keagan do for a living even O_O maybe he missed out on dat dream job
mathtans
Could be a bit of both.
Maybe he's an insurance salesman.
"Please buy this life insurance... I have this whole story about how sad people will be if you die..."
RebelVampire
spirit insurance. if only yuuto had come to him sooner, yuuto couldve gotten ryo's spirit state ensured. yuuto is gonna miss out on that sweat afterlife policy money now
in regards to keagan's sincerity in trying to move on, i actually think it was subconscious self-sabotage. so in that he was doing everything he was told mentally and physically, but there was that small tiny part of his brain continually whispering how nothing would ever be right again without ryo
mathtans
Which reminds me, I wonder where Yuuto had to go to get the stone.
There probably was some self-sabotage, or at least Ryo seemed keen on calling him on that.
Maybe Yuuto was guided to find the stone by Ryo...? Wait, no, because Ryo didn't even think it would work. We're not sure what any of their day jobs are, are we?
RebelVampire
well yuuto said he was a spirit medium. albeit doesnt mean thats a career technically speaking. idk if being a spirit medium can pay these days without people staring and accusing you of being a fraud. or ya know if you get a reality tv show.
cleary the entire comic is just a tv show hoax so yuuto can become the most prolific spirit medium on tv
mathtans
A spirit medium's rare.
He seems to know what he's doing though. I wonder if Ryo sought him out for that reason, or if it's just a freebie for the family.
Superjustinbros
Now that'd be quite a twist
RebelVampire
that or ryo just had nowhere to go. i mean its like theres much to do as a ghost i imagine
cause you cant touch things or anything
or talk to anyone
you just float around and look at stuff
but considering the cover to chapter 1, i will say that its not just keagan holding ryo back. cause ryo is clearly chained to both yuuto and keagan and i dont think yuuto has quite moved on himself.
mathtans
Oh, that's an interesting point with the visual. Does the chaining work both ways, I wonder, or is it a matter of Yuuto's moved on but is still linked to Ryo out of necessity?
Ghost karaoke might be pretty neat.
Superjustinbros
Poor Ryo :<
For real tho ghost karaoke sounds metal as heck(edited)
mathtans
As far as the future of the comic goes, I figure we'll see the results of a spirit being darkened somehow, either directly or in the history books or something.
RebelVampire
oooooh
did not consider that but i hope thats the case
that we actually get to see a vengeful spirit not ryo
cause i feel like keagan is the type who goes by the mantra seeing is believing
in the sense that yuuto will tell him, keagan will be like "suuuure"
and then vengeful spirit will be seen and keagan will be like "RYO NOOOOOO"
mathtans
"You see this building?" "No." "That's because a ghost KNOCKED IT DOWN." "Ahhhh!" ^.^
Do you think Ryo can see other spirits? Like, would have an idea of what's happening to himself? Or is it not obvious internally?
RebelVampire
idk about seeing other spirits but maybe? i do think ryo has some idea about whats happening to him tho. cause i get the impression that its not so much the spirit ceases to be themselves as it is that they become engulfed in their own emotional vengence and can think of nothing else
mathtans
Ryo: "Look, the ghost of Christmas Future."
RebelVampire
but dont quote me on that, cause theres a lot to be learned about spirits
mathtans
Ooh, emotional vengence is an interesting one... do you think Ryo might hurt Keagan? (And that Keagan would just totally take it?)
RebelVampire
QUESTION 4. Events in the comic come about solely because of the actions of the mysterious Yuuto. Do you believe Yuuto’s motivations are purely to protect his brother’s spirit, or do you think he might be up to something else? How do you think Yuuto wound up becoming a spirit medium? Was it family tradition, a career choice for Yuuto to connect with spirits (and his brother by extension), or was it happenstance? Considering it’s been 16 years, why do you think Yuuto waited so long to come to Keagan? Did Ryo’s spirit only come to Yuuto’s attention recently, or did Yuuto feel no need to take action until Ryo was becoming a vengeful spirit? Additionally, why do you think Ryo has been stable as a spirit over all those years and is only now coming undone? What consequences would there be if Ryo became a vengeful spirit at the end?
RebelVampire
if ryo became of vengful spirit then yes
cause the vengful part implies vengence
and clearly the vengence is gonna be aimed at the ppl not letting you move on
Superjustinbros
Well it's part of the name
mathtans
Could just be aimed at humans in general. Or for that matter, at spirit mediums, maybe that's part of the reason Yuuto's motivated. Doesn't want ghosts messing up his profession.
RebelVampire
could be. it actually would also depend how mindful of vengful spirit is. cause if theyre driven by pure emotion than they might not be consciously able to target their hurt and just lash out at anyone
mathtans
Also, maybe Ryo hasn't been stable as a spirit over all those years? Maybe he was more etherial, and it's only in the last year or so that he's been able to manifest himself to Yuuto.
RebelVampire
that could be
Superjustinbros
Seems like that could be the case, @mathtans
He's never been stable cause he's had someone latching onto him for years
even in death
He can never escape affection
RebelVampire
or ya know, we have no idea how long yuuto has been a medium
maybe yuuto has literally been a medium for all of 2 weeks
and just happens to be smug about it XD
mathtans
He graduated from being a small last year.
Maybe he's not even the most powerful medium in town, just the one most connected? Keagan might seek out others for more information.
I wonder if Ryo can possess people, now that he's levelling up.
saetje
That would be scary
I’m interested to know how like a corrupted ghost like ryo could/will harm those around them
mathtans
Oh! Maybe Keagan is just a prognosticator, because Ryo is going to possess Suzy, and that's why he used the name at the start.
"I have foreseen this."
Superjustinbros
Guess this is gonig further into the idea that this story's gonna get a lot more creepier
mathtans
I think it can still be lighthearted though. In fact, that makes some of the other moments (a la Release Me) all the more eye opening.
Superjustinbros
Yea
good point
RebelVampire
possession would certainly be quite dangerous. though idk how that fulfills vengence. unless the plan is to possess keagan, spend all keagan's money, and then roll out
Superjustinbros
Christ
that's cold
mathtans
"I spent it all on potato chips."
Superjustinbros
I would totally do that
RebelVampire
if im going to assume yuuto is actually also chaining ryo to the mortal plane, i actually want to assume ryo has been around for a while and yuuto himself just didnt want to do anything about it. and was like "nah its fine well get you to move on soon bro lets spend time together." and only now when ryo is going crazy is yuuto like "oops"
but this begs a question suddenly
how the heck did they even know its keagan's fault?
like is there magic ghost senses going on here?
are they just visiting everyone who knew ryo and accusing them?
Superjustinbros
All this time I was thinking "who is this ghost boy just chilling around everyone" until I noticed it's Ryo
mathtans
I suppose I just figured that Ryo would know who was tying him down/thinking of him.
Given the need to have the stone, I don't think they'd be walking around semi-randomly.
I'm also not convinced that Yuuto is tying him down. Maybe he's just acting as an anchor, like, to keep you from getting pulled way over there to the dark places, hold onto a piece of me.
Superjustinbros
I can see that
mathtans
Though it could have morphed into something else over all this time.
Maybe even something neither of them see.
What with both of them wearing glasses.
Superjustinbros
Lol
mathtans
Actually, any comments on art style? I'm very bad for really noticing that stuff. Nice shading though?
Superjustinbros
It's got some good shading, I'll say.
Backgrounds aren't super detailed but that's alright since they're not the focus
https://tapas.io/episode/1089748 Though some of the more trippy ones like these are cool
mathtans
Spirit craziness.
Superjustinbros
Playing with spirits is some really trippy stuff
"What kind of drugs are you taking"
mathtans
That androgynous look that sae brought up is a good point too; I can see it, but Yuuto still comes across as male (and in the genderbend art for q&a as female).
RebelVampire
visually i think the comic stands out most when the tone shifts to the creepy. cause thats when the effects really are A+ and just capture that nice unsettling feel
Superjustinbros
Exactly
saetje
I think the art is pretty good! Artist has a good eye for anatomy, I appreciate the character designs.
I agree the art style is neat when it gets creepy
Superjustinbros
Anatomy especially
Plus the creepy stuff is out of place that it can surprise the viewer when comparing it to the comic's normal art
saetje
Yeah, they vary their body types and really understand anatomy! Very solid character construction
Superjustinbros
Indeed
saetje
Ohh yeah good point Superjustinbros
It sort of gives this vibe of duality
Superjustinbros
Indeed
Like you got a normal world
and a creepy spiritual one
like dimensional rifts between two universes that don 't belong
saetje
Yeah!
mathtans
I liked seeing how some of the character designs shifted in the behind the scenes stuff.
As for my usual shipping thoughts.... hmmm... Suzy and Yuuto? He did feel bad for her. ^.-
saetje
He also seemed to check her out walking up the stairs
RebelVampire
i do hope suzy has a role in this because at the very least i hope she gets her underwear back XD
saetje
Ha! Also bras are expensive so, yeah, definitely.
mathtans
Oh, right! That little whistle.
Superjustinbros
Gotta go for that underwear! XD
saetje
She needs those back
Superjustinbros
Definitely
mathtans
It's interesting that Yuuto has an earring which is an inverted cross too, I think.
Superjustinbros
Well this is the last minute, so I'd like to say good luck to charuchii on continuing the comic.
mathtans
I'm all for more Suzy partly to see if she has some girl friends she talks to as well. Normal people.
Superjustinbros
It was fun chatting~
mathtans
It's a very interesting premise!
RebelVampire
COMIC TEA PARTY- THURSDAY BOOK CLUB END!
Sadly, this wraps up this week’s Thursday Book Club chat for now. Thank you so much to everyone for reading and joining us! We want to give a special thank you to Charu, as well, for making MORBIDITY. If you liked the comic, make sure to support Charu’s efforts however you’re able to~!
Read and Comment: https://tapas.io/series/MORBIDITY
Charu’s Twitter: https://twitter.com/charuchii
Comic Tea Party- Thursday Book Club
Next week’s Thursday Book Club will be about Gemini Journey by Tracy MacLauchlan & Yesenia Carrero. For participants, you have the next week to read as much of the comic as you would like~! We hope to see you on Thursday, September 13th, from 5PM to 7PM PDT for the chat in #thursday_bookclub!
Comic’s Main Site: http://geminijourney.com/
Comic’s LINE Webtoon Mirror: https://www.webtoons.com/en/challenge/gemini-journey/list?title_no=111693
0 notes
itbeatsbookmarks · 7 years
Link
(Via: Hacker News)
Emil Mikhailov is the founder of XIX.ai (YC W17). Roman Trusov is a researcher at XIX.ai.
Recent studies by Google Brain have shown that any machine learning classifier can be tricked to give incorrect predictions, and with a little bit of skill, you can get them to give pretty much any result you want.
This fact steadily becomes worrisome as more and more systems are powered by artificial intelligence — and many of them are crucial for our safe and comfortable life. Banks, surveillance systems, ATMs, face recognition on your laptop — and very very soon, self-driving cars. Lately, safety concerns about AI were revolving around ethics — today we are going to talk about more pressuring and real issues.
What is an Adversarial Attack?
Machine learning algorithms accept inputs as numeric vectors. Designing an input in a specific way to get the wrong result from the model is called an adversarial attack.
How is this possible? No machine learning algorithm is perfect and they make mistakes — albeit very rarely. However, machine learning models consist of a series of specific transformations, and most of these transformations turn out to be very sensitive to slight changes in input. Harnessing this sensitivity and exploiting it to modify an algorithm’s behavior is an important problem in AI security.
In this article we will show practical examples of the main types of attacks, explain why is it so easy to perform them, and discuss the security implications that stem from this technology.
Types of Adversarial Attacks
Here are the main types of hacks we will focus on:
Non-targeted adversarial attack: the most general type of attack when all you want to do is to make the classifier give an incorrect result.
Targeted adversarial attack: a slightly more difficult attack which aims to receive a particular class for your input.
Inception v3
We will demonstrate how a non-targeted adversarial attack can be used against Google’s Inception v3 ImageNet classifier:
Inception v3 architecture, Source: Google
A trained neural network, essentially represents a high-dimensional decision boundary — think of it as a set of cells, where every point (in this case an image) in the same cell is associated with the same class. Of course, the boundary is not perfect. These “cells” are crude and linear and that is their main vulnerability.
Ideally, a good adversarial attack is a modified input that is visually indistinguishable from the original — yet the classifier gives a totally different prediction for it. The main idea behind it is to find a set of slight perturbations for every class of images that would “drag” the representation vector from the initial “cell” and put it into another. In this article, we will call the original image “Source” and the perturbation we add to it — “Noise”. Although it’s not really noise, as we’ll see, there’s quite a lot of structure in it.
So, what we need to know now is only a direction in which we should move from the initial point (Source) to reach the nearest cell — or, in case of a targeted attack, a specific cell of the target class.
Step by Step
The simplest yet still very efficient algorithm is known as Fast Gradient Step Method (FGSM). The core idea is to add some weak noise on every step of optimization, drifting towards the desired class — or, if you wish, away from the correct one. Sometimes we will have to limit the amplitude of noise to keep the attack subtle — for example, in case a human might be investigating our shenanigans. The amplitude in our case means the intensity of a pixel’s channel — limiting it ensures that the noise will be almost imperceptible, and in the most extreme case will look like an overly compressed JPEG.
This is a pure optimization problem — but in this case, we optimize the noise to maximize the error. You can directly measure the error and compute the gradient in this case since you have access to the raw outputs of the network.
That’s nice, you’d say, but what if we don’t have the raw outputs – only a single class? What if we don’t know the architecture? Sure. Let’s assume the most realistic case when we are attacking a complete “black box” that takes a picture and gives you only a class. That’s it. What do you do?
You start with the same thing. You generate noise, add it to the image, send it to the classifier and repeat the process until the machine makes a mistake. At some point, whether you limit the amplitude of the noise or not, you will hit the spot where the true class stops appearing at all — all you have to do now is to figure out the weakest possible noise that would give you the same result. Simple binary search.
Let’s see why is this possible. Consider different cross-sections of the image space. If you start moving in some direction, where do you end up? FGSM, as defined, moves you towards the border between the true class and some other class, as you can see on the picture below:
The border between “truth” and “false” is almost linear. The first cool thing we can derive from it is that when you follow the gradient, once you find the area where the predicted class changes, you can be fairly confident that the attack is successful. On the other hand, it tells us that the structure of the decision function is far simpler that most researchers thought it to be.
This method is quite simple — and yet it’s quite effective. It’s capable of fooling pretty much any machine learning algorithm in cases when there were no attempts to defend them.
Let’s Perform a Non-targeted Attack
An example of how a successful non-targeted attack can turn your sports car into a toaster
For our experiments we will use PyTorch and a pretrained Inception_v3 classifier from torchvision package. All code is available on GitHub.
Let’s decompose the idea of an attack step-by-step. First, we’ll need a set of images that we are going to transform into adversarial examples. For convenience and brevity, I’ll use a “development set” from NIPS 2017 Adversarial Attack Challenge. Downloading script is available here: http://ift.tt/2zsMVGv
Starting with all necessary imports
import torch from torch import nn from torch.autograd import Variable from torch.autograd.gradcheck import zero_gradients import torchvision.transforms as T from torchvision.models.inception import inception_v3 from PIL import Image import matplotlib.pyplot as plt import numpy as np
We define main settings and initialize the network:
classes = eval(open('classes.txt').read()) trans = T.Compose([T.ToTensor(), T.Lambda(lambda t: t.unsqueeze(0))]) reverse_trans = lambda x: np.asarray(T.ToPILImage()(x)) What we have here is a transformation needed to convert a PIL image to a Torch tensor and a reverse transformation that gives us a numpy array that we can reinterpret as an image. eps = 2 * 8 / 225. steps = 40 norm = float('inf') step_alpha = 0.0001 model = inception_v3(pretrained=True, transform_input=True).cuda() loss = nn.CrossEntropyLoss() model.eval();
This is a pretrained network that’s immediately ready-to-use. All operations in this tutorial are performed on GPU. If you don’t want to use it, all you have to do is to remove “.cuda()” calls and “.cpu()” calls whenever they occur in the code.
We have also defined a loss function we’ll perform the gradient ascent on. Notice the step_alpha parameter — we’ll discuss it closer a bit later.
To make the attack more subtle, we will have to impose the constraints on the noise we add. A good way to do it is to limit the L-infinity norm of the noise to a certain value. This way there will be no excessively bright or dim artifacts on the image, as a nice bonus is that L-infinity is very easy to interpret — it’s just a maximum absolute value, which in case of images means the brightness of a channel.
Add just before we get to writing the code for the attack, here are a few handy functions for visualizations:
def load_image(img_path): img = trans(Image.open(img_path).convert('RGB')) return img
The method load_image is self-explanatory, we are reading an image from disk and convert it to the format accepted by our network.
def get_class(img): x = Variable(img, volatile=True).cuda() cls = model(x).data.max(1)[1].cpu().numpy()[0] return classes[cls]
The classifier gives us only a numeric id of a class by default – this method combines the inference and mapping the most probable class to the class name.
def draw_result(img, noise, adv_img): fig, ax = plt.subplots(1, 3, figsize=(15, 10)) orig_class, attack_class = get_class(img), get_class(adv_img) ax[0].imshow(reverse_trans(img[0])) ax[0].set_title('Original image: {}'.format(orig_class.split(',')[0])) ax[1].imshow(noise[0].cpu().numpy().transpose(1, 2, 0)) ax[1].set_title('Attacking noise') ax[2].imshow(reverse_trans(adv_img[0])) ax[2].set_title('Adversarial example: {}'.format(attack_class)) for i in range(3): ax[i].set_axis_off() plt.tight_layout() plt.show()
So, our FGSM attack will depend on three parameters: Maximum intensity (this should not exceed 16) 1. Number of gradient steps 2. Step size A quick series of experiments gives a range of 10-20 for gradient steps with a step size of 0.001. You don’t want too large steps, as they often lead to unstable results, same as huge learning rates for training. This update routine is the same as vanilla grad descent, so the same range of LR apply here.
And here’s the method that does the heavy lifting:
def non_targeted_attack(img): img = img.cuda() label = torch.zeros(1, 1).cuda() x, y = Variable(img, requires_grad=True), Variable(label) for step in range(steps): zero_gradients(x) out = model(x) y.data = out.data.max(1)[1] _loss = loss(out, y) _loss.backward() normed_grad = step_alpha * torch.sign(x.grad.data) step_adv = x.data + normed_grad adv = step_adv - img adv = torch.clamp(adv, -eps, eps) result = img + adv result = torch.clamp(result, 0.0, 1.0) x.data = result return result.cpu(), adv.cpu()
By adding the clipped gradient to the image, we move further and further from the original class. We have the complete control over how fine-grained our process is in two “dimensions”:
1. We control the amplitude of the noise with parameter eps: the lesser the more subtle the corruption of the output image will be. 2. We control the stability of an attack with parameter step_alpha: same as it happens during the ordinary training of a neural network, if we set it too high, the loss will oscillate and will likely miss the optimal point early on.
If we don’t limit the amplitude of the attack, the result can end up similar to an average image of an item in a target class, the tradeoff will look like this:
In all my experiments the smallest eps worked very well, giving successful attacks with imperceptible changes. All noise is enhanced for illustration purposes.
Let’s run the attack and see what we get:
img = load_image('input.png') adv_img, noise = non_targeted_attack(img) draw_result(img, noise, adv_img)
Now Let’s Perform a Targeted Attack
Alright, so, what if we want our network to yield a specific class? This will require only a few slight changes in the attack code:
def targeted_attack(img, label): img = img.cuda() label = torch.Tensor([label]).long().cuda() x, y = Variable(img, requires_grad=True), Variable(label) for step in range(steps): zero_gradients(x) out = model(x) _loss = loss(out, y) _loss.backward() normed_grad = step_alpha * torch.sign(x.grad.data) step_adv = x.data - normed_grad adv = step_adv - img adv = torch.clamp(adv, -eps, eps) result = img + adv result = torch.clamp(result, 0.0, 1.0) x.data = result return result.cpu(), adv.cpu()
The main change here is the sign of the gradient. As opposed to the non-targeted attack, where the goal was to increase the error assuming that the targeted model is almost always correct, now we are going to minimize the error:
step_adv = x.data - normed_grad
Let’s have some fun and try adversarial attacks on Google’s FaceNet, which is, in this case, an Inception_v3 feature extractor with a dense layer that tells you what person is most likely in the picture. We test it on Labeled Faces in the Wild dataset, which is a standard benchmark in face recognition. The network in an extension of Inception v3 trained jointly with a classifier on 500 most frequent people in LFW dataset.
A sample from LFW dataset
The goal will be to get every person in the dataset classified as Keanu Reeves.
Optionally, since we have a lot of images, we can add a stopping criterion for cases when the attack succeeds early. Stopping the attack when the log loss is less than 0.001 is quite reasonable and in practice can give significant speedups. Consider this graph:
A very long plateau means that most of the time you can shave off a lot of computation time. Before we go further: judging only by the number of steps needed for convergence, what can we infer about the network’s decision function, which is too high-dimensional to be efficiently examined? Since the optimization problem is so easily solved, we conclude that the boundary is a somewhat trivial function, most likely linear.
What does it tell us? The first insight is that the classes in a neural network are very close to each other. The other not so obvious thing is that if you just take some random noise, the classifier will give you at least some prediction, which is not always a good thing. This is still an unsolved problem in image understanding, recently tackled by adversarial training.
How many steps does a successful targeted attack take? Let’s find out:
The result of a targeted attack is not very entertaining – reduced amplitude of the noise makes it impossible to distinguish two images visually.
Real World Examples
It’s a long way from our experiments to a DEFCON keynote speech. Yet even now the range of possibilities for adversarial attacks is worrisome. Just to name a few ones inspired by the paper “Adversarial examples in the physical world” (strictly for discussion purposes):
1. Print a “noisy” ATM check written for $100 – and cash it for $1,000,000. 2. Swap a road sign with a slightly perturbed one that would set the speed limit to 200 – in a world of self-driving cars it can be quite dangerous. 3. Don’t wait for self-driving cars – redraw your license plate and cameras will never recognize your car.
Security and Performance Concerns
Now that we already know how to perform a successful attack let’s ask ourselves why are they so dangerous. Yes, FGSM is available to anyone, but is there any defense against it?
There are two types of defense strategies: 1. Reactive strategy: training another classifier to detect adversarial inputs and reject them. 2. Proactive strategy: implementing an adversarial training routine.
A proactive strategy not only helps against overfitting, making the classifier more general and robust, but also can speed up the convergence of your model. But according to current results, it doesn’t eliminate all problems with adversarial attacks.
There’s also a practical trade-off. Suddenly, in performance-critical service, we have not one, but two rather heavy classifiers. This is just impractical by itself — and you need additional expertise with GANs to implement both. And so far there is no absolutely robust classifier — the best candidates come from deep learning family of algorithms with adversarial training.
Some people say that since discriminators in GANs can be trained to detect adversarial examples (without removing the attack itself), the problem of attacks can be solved by rejecting the corrupted samples. This solution is suboptimal from both business and scientific perspective. Apart from the fact that nobody wants to risk having false positives, there’s a simple argument as old as machine learning itself: whatever a human can do, a machine can be taught to do. Humans have no problem correctly interpreting adversarial examples, so there must be a way to do it automatically.
Last but not least, transfer learning is highly applicable to the attacks. Even if the attacker doesn’t have access to the model, the examples generated for a sufficiently good classifier will be able to fool many other models trained for the same purpose.
Directions for Research
This part is just a collection of questions that could bring interesting research and with some luck would likely make you famous — or at least will be fun to investigate.
1. How can we efficiently perform adversarial training on a classifier? That would solve [almost] all the problems. If we train a network not only to predict the labels but also to be able to tell whether you try to fool it — great. 2. What does the decision boundary for most classes look like? We know that it’s almost linear. But to what extent? The exact form (or, using a correct fancy term, “topology”) of the class boundary would give us insights about the most efficient attack/defense. 3. How can we detect the presence of an adversarial example? When you see a corrupted image of, let’s say, an elephant — you recognize it. Probably by the colorful noise. But for the machine it’s not a noisy photo of an elephant, it’s an airplane. And it’s so sure about it, that it doesn’t make sense to question its own decisions and report this incident to a machine shrink.
Resources
Papers 1. Explaining and Harnessing Adversarial Examples: http://ift.tt/2v75n7k 2. The Space of Transferable Adversarial Examples: http://ift.tt/2ztPHvh 3. Adversarial Autoencoders: http://ift.tt/2xJwZCp 4. Adversarial examples in the physical world: http://ift.tt/2zsXCJd
Tutorials 1. Tutorial by Ian Goodfellow: http://ift.tt/1N4qYjh 2. Lecture from Stanford course: https://www.youtube.com/watch?v=CIfsB_EYsVI 3. OpenAI tutorial: http://ift.tt/2nR18dy
Repositories and Tools 1. Cleverhans is a great TensorFlow-based library for adversarial attacks and defences: http://ift.tt/2sQefKF 2. FoolBox – another collection of attacks that you can use with a framework of your preference http://ift.tt/2sRklhY
Competitions 1. Non-targeted attacks: http://ift.tt/2sH50Rr 2. Targeted attacks: http://ift.tt/2eFEv8B 3. Defenses: http://ift.tt/2eFEu4x
0 notes