Tumgik
#len-sess
len-illus · 1 year
Text
Tumblr media
from my parents but not together (modern) cynonari au
315 notes · View notes
lendayooo · 1 year
Text
✨a new era✨
Since my usual haunt Twitter is imploding due to capitalism, I’ll be more active here!
Reintroducing myself, I used to be Mich, under the username michela-belfiore, but I outgrew that pseudonym over the years. I am Len! Operating under the username lendayooo for my fanstuffs. I also have an art blog for my art stuff under @len-sess. If you’ve seen my fanart here before, I’ve definitely grown a lot since then!!! (❁´◡`❁)
I hope to post more/reblog more of my current blorbos and interests!!!
3 notes · View notes
anotherwvba · 8 months
Text
Road to the Women's Circuit pt. 3
Niki Binary stepped into the Zen Garden at WVBA Headquarters, her street clothes freshly donned after a grueling sparring session. The moonlight filtered through the trees, casting dappled shadows on the gravel paths. She hummed a calming tune, eyes half-closed in a meditative state.
As she rounded a bend, her eyes caught a figure behind an easel. Cutie Hondo was there, her brush gliding over a canvas that faced away from Niki. The unexpected sound of Niki's humming seemed to startle Cutie, her brush paused mid-stroke.
"Ah, sorry, didn't mean to disturb you," Niki said, noticing Cutie's reaction. "I'll go."
Cutie looked up and smiled when she saw it was Niki. "No, you're fine. What brings you here so late?"
Niki shrugged. "I come here to think... and meditate, especially when I'm nervous. Helps me clear my head."
Cutie set her brush down and wiped her hands on a cloth. "Nervous, huh? That's a relief. Join the club."
Niki looked at Cutie in disbelief as she laid a towel on a nearby bench, preparing to sit and meditate. "You? Nervous? You're kidding, right? You've had six fights and I've never even tried on my fight gear."
Cutie sighed, her eyes meeting Niki's. "Sure, but... this is the WVBA. My coach is a legend here. My brother's a top contender. And somehow, I have to live up to that, not just my dreams, but their legacies. The pressure is… immense."
Niki paused, her towel halfway unfolded. She'd never considered that Cutie, who always seemed so confident, could be as nervous as she was. "Wow, I had no idea."
Cutie smiled. "It's not something I usually share. But you're different. My brother told me he explained the term 'sessatakuma' to you?"
Niki chuckled. "Yeah, though I probably butchered the pronunciation."
Cutie laughed. "It's 'sess-a-ta-koo-ma.'"
"Sessatakuma," Niki repeated, getting it right this time. "But why? We've only known each other for a couple of years, and I've only been boxing for six months. How can I possibly be a rival for you?"
Cutie looked at Niki, her eyes soft but intense. "There's more to it than rivalry. You bring something fresh, something raw and passionate. You're tech-savvy, analytical, and, in your own way, you see boxing through the lens of your art, just like I do."
Niki was speechless, humbled by Cutie's words.
"Would you like to see what I've been painting?" Cutie asked, breaking the silence.
Niki's eyes lit up. "Absolutely."
Cutie turned the easel around. The painting was a stunning depiction of the two of them in a heated boxing exchange, rendered in various shades of gray—except for their gloves. Cutie's were red, and Niki's were green. Both were mid-punch, their faces focused but smiling.
"It's incredible," Niki breathed, awestruck, her eyes tracing the lines and colors. "I love how we're both so focused, yet we're happy."
"That's what I want more than anything from this fight," Cutie said, her voice tinged with emotion. "To share the ring with my best friend, my rival, my—"
"Sessatakuma," Niki finished, emotion filling her voice.
Cutie smiled, her eyes meeting Niki's. "Exactly."
As Cutie began to pack up her painting supplies, Niki finally took her seat on the bench, her towel laid out neatly beneath her. "I'll leave you to your meditation," Cutie said, closing her paint box.
Their eyes locked for a moment. "May the best artist win," Niki said, a playful edge to her voice.
"Oh, I will," Cutie replied, her own voice returning the same playful tone.
The friends laughed and hugged, each feeling a mixture of nerves and exhilaration. The next time they saw each other, they'd be opponents in the ring, but for now, they were just two friends.
"See you in the ring, Cutie Hondo," Niki said with sincere emotion.
Cutie returned the sentiment, "Can't wait, Niki Binary."
And so, under the moonlit sky, the two parted ways, their minds clear. They might be grappling with their nerves, but found strength in their friendship, a bond they would soon take into the ring.
1 note · View note
gazellefamily · 9 months
Text
Tumblr media
THE FAVOR (1994) "White Adult Comedy. Clinton years. Just People. Marriage. Sess. Sharp corners sanded off. Ken Wahl: Whoosh, but a sad one from looking at his wiki. If even Brad Pitt couldn't make those wire lens frames work in '94, then what chance did I have in '07? Damn I waited way too long to splurge for the Sol Moscots" -Sonny Gazelle
0 notes
Note
Okay, I'm asking in all sincerity because I don't really understand anything. Why are people so against the ship Sesshomaru x Adult Rin (don't kill me, I don't ship Sesshomaru with anyone. I don't hate him, just don't ship him with anyone, because I've always been very scared of him since I was a child) and they say that Sesshomaru is Rin's father? I always thought that Rin was just like a little sister to him (Sesshomaru is 19 years old in the canon, for me it is strange to still know that he is a father). I thought Jaken and Kaede were Rin's foster parents. I never saw anyone being against the ship Naofume x Raphitalia, even though Naofume has known Raphitalia since she was a child, be careful of her, accompanied her (very fast) growth and that Naofume has often said clearly that Raphitalia was a daughter to him . So why are some fans against Sesshomaru marrying Rin even after she became an adult? Rin never called Sesshomaru a father and Sesshomaru never referred to Rin as his adopted daughter. In fact, although Sesshomaru protects her, he has never acted fatherly with Rin.
Wow an ask! That’s exciting!
First of all no attacking. Secondly CW: p3d0phelia, gr00ming, and l0licon.
I don’t not ship Sesshomaru and ADULT Rin. Through my personal lens I’ve never really seen their relationship familial. Canon leaves a lot of blanks to fill in. They traveled together for like 9 months then he left her with Kaede. We know he visits and allows her a great deal of agency even when they travel together, which leads me to believe he would have respected that same amount of agency when she’s was growing up. But it’s all head canon because we don’t know and that’s where it gets problematic. Because unless sunrise deigns to show us... it could have been less than savory. So that’s my personal stance.
I’ll preface that I’ve been reading fanfiction in this fandom and writing it since like 2005ish. Pre-final act. Pre-knowledge that Sesshomaru did not raise Rin. And let me tell you, it was a cesspool full of land mines. I first learned the word l0licon in relation to Sesshomaru. I’ve stumbled on fics and art that straight up should be burned. If I could Kirinmaru my way back in time I would do an unsee. So when sess Rin shippers refuse to admit that people bare personal traumas that the idea of this ship triggers they are doing those people a huge disservice. Then I pop back into the fandom 10 years later and daaaaaamn. People are wild on both sides. And tbh both of them have points.
I guess I’ll break it down into like really basic pro/anti arguments:
Anti:
- adult Rin doesn’t exist. She is not a character who has been introduced and sunrise continues to promote her as a child. Maybe that’s just leading people on with the allure of who the mom is.... but it’s in really poor taste. Gross taste actually.
-whether he raised her or not he was in such a position of power over her because of how much she idolized him that he was in position to mould her into whatever he wanted. Which reeks of some gr00ming/child bride ick.
-generally, through their personal scope, they see their relationship as familial. Which makes getting married later not a-ok. Valid.
-the target audience for Inuyasha and Yashahime is 11-16 ish. Hella older people, people who grew up with Inuyasha are watching Yashahime, but we aren’t the target. So sunrise is telling a story to young people that it’s totally ok for someone in a caretaker position to later proposition/marry the person they cared for. And it’s not.
-there’s like a level of feeling betrayed because Rumiko wouldn’t even let them show Inuyasha and Lagome kissing because she was only 15, so for sunrise to take that turn... is like...why? What?
Pro:
-some people, myself included, just didn’t see their relationship as familial so it’s just not a factor.
-the story takes place in an era where people tended to get married younger, so...
-western audiences are viewing through a colonialist lens.
-sunrise hasn’t showed us anything, but Rin had the potential to grow up to be such an independent badass. Like, she was raised by Kaede, Sango, and later Kagome. It’s easy to make those mental connections and imagine adult Rin as a strong independent willful character.
-not a point but IMO pro sess Rin shippers should be the most mad at sunrise, but we are only 7 episodes in and nothing is even confirmed.
That’s like it. It’s a problematic ship and is in the hands of sunrise now.
That was a long post. Sorry. I’ve had 15 years to think about this. And I hope that answers some questions for you.
🖤🖤
One more thing just as an aside: recognizing problematic content in your media doesn’t mean you have to hate it. Most relatable is JKR. Before she was a terf of Twitter she displayed her anti Semitism in her books.
What’s the point of dying on a hill trying to defend her when you could instead take the time to flex those critical thinking skills and research WHY and WHAT was anti Semitic, then decide how you want to proceed. Does it make HP less of a childhood comfort series? No. It just makes you a more rounded thinker.
2 notes · View notes
hedwig-dordt · 4 years
Text
Tagged! Quarantine Questions
I was tagged by @len-mccoy (thank you dear!)
Are you staying home from work/school?
Yes, I work from home now.
If you’re staying home, who is with you?
darling husband, though he goes to his store/workshop during business hours. Thank heavens. 
Are you a homebody?
yes - or at least I thought I was. 
An event you were looking forward to that got cancelled?
I was going to spend the weekend with a bunch of friends in a castle...
What movies have you watched recently?
Call Me By Your Name. It was so good I forgot everything else. 
What shows are you watching?
The Witcher. Yes, I know. Again. It’s the fourth time in as many months. I know. With darling husband: La Casa de Papel. We just finished s3 of The Crown. 
What music are you listening to?
The Amazing Devil
What are you reading? 
Baptism of Fire. 
(me: I should like to read something. My brain: Is it The Witcher? Me: wtf half the time I'm not even sure I like the books that much. My brain: well if it's not The Witcher I don't want it. Me: * sighs * * orders the next book *)
What are you doing for self-care?
...does writing fic count? Otherwise I'm not sure.
@maltypass @incredifishface @ub-sessed @wyomingnot @ligeiasand @lizzietoo @a-gay-loverrr if you want to, of course.
5 notes · View notes
random0gener8r · 7 years
Text
August 17, 2017 & later (21) To be human is to be a study in contradictions. What you need to understand, is that this is my truth. You will have your own. They may share parts, but in the end, it will be based on your life experiences and ideas. My truth will never be your truth; it can only be a guide. My process will never be your process; it can only show you that it is possible. I can never speak your truth, only my own; in hopes that it will inspire. In this spirit of understanding, I share with you my story. Adoption and independence Magic and religion Introversion and imagination Existentialism and teen angst/bag lady CannASand – Thank the God/sess for you I was heading for a dark place. My dream this morning was horrible/enlightening. I ailed my test. I used my power to try to win the Lott. Even for the benefit of others, I was completely taken in by the possible opulence and rich-iness of it. I wanted it for the greater good, and hey, if I get a nice place to live, well, fair fucks. It was wrong, it was bad, by my own definition – we ae all equal, no one deserves to live better than anyone else. There was greed mixed in with the altruism. Which is only my definition, not yours. In the dream, I was hanging with a couple, noting going on; they were kind to me, I had use of all of their facilities, but I didn’t consider that beyond an off-road vehicle that I would like to try. Point – we were cool, and so I wanted to make them breakfast, but suddenly everything went crazy. They left to do what they did out of the house, and I was preparing to leave, I was anticipating packing my car, and yet, making them individualized breakfasts, I guess as going away gift – then everything went wrong. The house hated me. A mattress hated me. I tried to banish it but the overall power of the house was to strong. There was no way I could win. And it just kept taking things from me. My parents. I couldn’t reach my cat. My clothes. The breakfast. My car. I couldn’t escape in the one thing I could always count on. (BTW my tire indicator came on today, FYI, I’d been thinking about it, but today, of all days. I mean, it was due, but really!!!!!) And the wall tried to suck me in to eat me. The walls, floors, streets were twisted and roiling. Trapped in my car, viewed as through the lens of a Monet painting, I don’t know, the Starry Night guy with the comet, was that Picasso? (How sad, but you know who I mean so communication completed! Yeah for me!) Unable to escape, all of my possessions eaten by the wall, a curse placed on me, and my car turned into the mirrored innards of an eight sided die, I was tossed about, all control gone flipping and flopping against the hard glass, no longer in a painting but all hard iron and glass. And I awoke. And I knew I’d failed my spiritual test. My desire to force a favorable outcome goes against my code – gifts only. And I’d tried so hard, I mean, I really put my spiritual back into it. I have expended energy like that longer than I can remember. I really crossed my code – my moral, ethical and belief/spiritual choices that define my personal and only applicable to me, set of absolute judgements of right/wrong, good/bad, acceptance/fear. All ultimate dualities. And as I was looking for a test, there ya go, I got one, and I failed, but I apologized sincerely, yet was still mad ‘cuz it was only 10% about me, a girls gotta live, and not off her parents. I thought it was reasonable. I was wrong. Unable to leave it that way, I took a nap and I was rolled out into a nice world and all was forgiven, but that was their/my higher-self dimension, not down here in the mud, so I got pissed, both meanings. I cursed them back for their miserliness. I thought death thoughts. Then I had some cannasand and talked to Paul. And he cared. And that was all I needed. Just one. The next night was a fabulous dream of flying and reality jumping and enjoying the situation which was fun. So I knew that I had passed the following test to see if I’d actually learned anything. As Paul said, “there is always another test”. I don’t like wasting my time. So I took that experience along with Paul’s creating his own Meetup group as an inspiration to do what it takes to create the reality you want through forward motion, to set a date for the first Center for Spiritual Exploration (from her on out aka CSE) meeting. I was looking forward to sharing it and inviting him to help me out by participating, when the whole camping and movie meetup and having his daughter, situation occurred. I was curious to see how much of the Four Agreements he could apply to the situation. He used the word assume, so it shows awareness of his logical state which is effected by the emotional, and it was what it was.
2 notes · View notes
android-for-life · 5 years
Text
"Count ‘em up: 100 things we announced at I/O ‘19"
Another I/O is in the books! We played in sandboxes, watched eye-popping product demos and listened to AI-powered music. But the fun isn’t over! In case you missed it, here are 100 announcements we made at I/O:
Hardware
1. Hold the phone! Our new smartphones—the Pixel 3a and Pixel 3a XL—hit the shelves this week, bringing together all the essential Google features at a lower price ($399 for the 5.6-inch display and $479 for the 6-inch model). .2. Good things come in threes, like Pixel 3a’s color options. Choose from Purple-ish, Clearly White and Just Black. 3. And no matter what color your phone is, it has the same great Pixel camera. Capture shots in portrait mode and HDR+, or use Night Sight to take magical photos in low light (think outdoor concerts, swanky restaurants or night hikes with friends). 4. To add to the creativity, Time Lapse is coming to Pixel 3a. Soon you can capture an entire sunset within a few seconds of video. 5. All-day battery, baby! The Pixel 3a charges seven hours of battery life in 15 minutes and full battery can last up to 30 hours. 6. Squeeze the Pixel 3a to get the Google Assistant to send texts, find directions, set reminders and a lot more—simply by using your voice. 7. Hi, who’s there? The Google Assistant’s Call Screen feature (available in English in the U.S. and Canada) gives more information about who’s calling before you even answer your phone. Best of all, it helps save you from robocalls once and for all. 8. The Pixel 3a is protected against new threats with three years of security and operating system updates. 9. It also comes with the custom-built Titan M chip to help protect your most sensitive data. 10. All Pixel phones will get a preview of AR in Google Maps. So the next time you're getting around town, you can see walking directions overlaid on the world itself, rather than looking at a blue dot on a map. 11. Say hello to Google Nest. We’re bringing the Home products and Nest brand together to create a helpful home. 12. We welcomed the newest member of the Google Nest family: Google Nest Hub Max. Hub Max has a 10-inch screen, premium stereo sound, a camera with built-in Nest Cam features and the power of Google Assistant. 13. Live Albums on Nest Hub Max lets you select pictures of family and friends from your Google Photos to be displayed on the screen. 14. The built-in Nest Cam helps you keep an eye on things at home. You can turn the camera on when you’re away and check on things right from the Nest App on your phone. 15. The camera on Hub Max also lets you make video calls and leave personalized messages with Google’s video calling app, Duo.   16. If you’re listening to music or watching a cooking tutorial, turn down the volume with a wave of your hand. With Gestures, you simply have to look at the Nest Hub Max and raise your hand to pause media. 17. The home view dashboard lets you control all your connected devices from one dashboard—and the Google Assistant now controls more than 30,000 smart devices from 3,500 brands. 18. Similar to Voice Match, you have the option to enable Nest Hub Max’s Face Match feature that recognizes who’s using the device and shares the most relevant information, like their calendar and estimated commute time. 19. We shared our new privacy commitments, explaining our security and privacy options for Google Nest products. 20. There’s a green light on the front of Hub Max that indicates when the camera is streaming. In addition, you have multiple controls to disable camera features, like the Nest Cam and Face Match. 21. Hub Max will be available in the U.S., U.K. and Australia this summer. 22. Google Nest Hub, formerly Google Home Hub, is now available in 12 more countries—Canada, Denmark, France, Germany, India, Italy, Japan, the Netherlands, Norway, Singapore, Spain and Sweden. 23. And our prices are lower: Google Nest Hub available in the U.S. for $129, and starting today Google Home is $99 and Google Home Max is $299.
Assistant 
24. The Assistant is now on more than one billion devices, available in more than 30 languages across 80 countries. 25. The next generation Assistant will run on-device and answer queries up to 10 times faster, with almost zero latency. It will come to Pixel phones later this year. 26. Keep the conversation going. Now with Continued Conversation, you can make several requests in a row without having to say “Hey Google” each time. 27. We’re extending Duplex to the web to help you complete tasks faster. Just ask the Assistant, “Book a car with for my next trip,” and it will figure out the rest. 28. Sound the alarm! You can now stop a timer or alarm that you set on Google Home speakers and Smart Displays by simply saying, “stop.” 29. Help is on the way! With a new feature called Personal References, the Assistant will better understand you and reference to the important things in your life. Say you’ve told the Assistant which contact “Mom” is. You can then ask, “Hey Google, what’s the weather like at my mom’s house this weekend?” and get the answer without any additional details. 30. Choose your next recipe to try, event to attend or podcast to listen to with Picks for You. This Assistant feature draws from past searches and other contextual cues to give you more personalized results. 31. Over the coming weeks, you’ll be able to access all of the helpfulness of the Assistant directly within Waze. 32. Take advantage of Google Assistant Driving Mode when you’re behind the wheel. The new dashboard automatically starts when you’re driving and displays the most relevant activities like navigation, messaging, calling and media. 33. It’s easier to use the Assistant to control your car remotely, so you can adjust your car’s temperature, check your fuel level or make sure your doors are locked without leaving the house. 34. Control your Assistant data and make privacy choices that are right for you from the “You” tab in your Assistant settings. 35. Ever Googled a “how-to” question? We’re giving content creators easy-to-use developer tools so in the coming months when you ask, “Hey Google, how do I install a dog door?” you’ll get a helpful step-by-step experience from a trusted source like DIY Networks. 36. The Assistant can now help you do specific things in some of your favorite apps. For example, you can say, “Hey Google, start my run in Nike Run Club.” 37. Game makers can now take full advantage of developing for Smart Displays' interactive screens, so you'll start seeing more games that combine voice, visuals and touch.
AI and ML
38. And the winner is…we unveiled the 20 Google AI Impact Challenge grantees  who are using AI to address societal challenges. 39. We’ve made progress on flood forecasting in India. Now we can better use AI to predict flood timing, location and severity across 90 percent of India, and share that information with Google Public Alerts. 40. Two bands took the stage at I/O—with a little help from machine learning. Both YACHT and The Flaming Lips worked with Google engineers to create music with Magenta, our AI tool for artistic creativity 41. Check out our new PAIR Guidebook, an external toolkit that will help ML practitioners make better, user-centered decisions when building with AI. 42. We’re taking the same AI research that makes our products better and using it to enhance user privacy. Federated learning allows Google’s AI products to work better for you, and work better for everyone, without collecting raw data from your devices.
Google News and Search 
43. Now it’s easier to stay in the know. The technology that powers Full Coverage in Google News is coming to Search to better organize search results for news-related topics and give you the context you need to understand a story.   44. When you search for a news topic, you’ll have the option to see different points of a story—from a timeline of events to the key people involved—and surface a breadth of content including articles, tweets and even podcasts. 45. In the coming months, we’ll start including podcasts in Google Search results so you can listen to podcasts directly from the search results page or save an episode for later.
Augmented Reality and Google Lens
46. Seeing is believing! Soon you’ll be able to view 3D objects right from Search and place them into your own space. 47. Lens now provides more visual answers by using AR to overlay useful information and content onto the things you see. For example, if you see a dish you’d like to cook in an upcoming issue of Bon Appetit magazine, you’ll be able to point your camera at a recipe and have the page come to life and show you exactly how to make it. 48. Lens can help you decide what to order. Just point your camera at the menu, and Lens highlights which dishes are popular, right on the menu. Tap on a dish to see photos and snippets of reviews from Google Maps. 49. Now, you can point your camera at text and Lens will automatically overlay the translation right on top of the original words—it works in more than 100 languages. 50. Say what? When you point your camera at text, Lens can now read it out loud. You can also tap on a specific word to search for its definition. This feature is launching first in Google Go, our Search app for first-time smartphone users.
Privacy 
51. You’ll start seeing your Google Account profile icon appear more prominently across all Google products, so takes just one tap to access your privacy and security settings. 52. Now we’re making it easier to manage your data in Maps, the Assistant and YouTube (coming soon). For example, you'll be able to review and delete your location activity data directly in Google Maps, and then quickly get back to your directions. 53. New auto-delete controls for Location History and Web & App Activity allow you to choose to automatically and continuously delete your data. 54. We’re expanding Incognito mode—the option in Chrome that clears your browsing history after every session—to more of our products, including Maps. 55. Thanks to federated learning, Gboard has improved predictive typing as well as emoji predictions across tens of millions of devices. 56. We’ve built security keys directly into your Android phone, giving you easier and more convenient protection against phishing attacks. This is rolling out to all devices running Android 7.0 and above.
Android
57. Android Q’s newest features are centered around innovation, security, privacy and digital wellbeing. 58. A new gesture-based navigation lets you easily move between tasks and utilize a bigger screen. 59. Android Q has tools for developers to build cool apps for foldable phones and 5G, opening up new possibilities for experiences like gaming on your device. 60. Live Caption will automatically caption media playing on your phone—like videos podcasts, audio messages, even stuff you record yourself—across any app. 61. Smart Reply is getting even smarter! Not only will your phone show suggested replies, it’ll also help you take action, like opening addresses from a text message in an app like Maps. 62. You asked, we listened! Android Q brings Dark Theme. You can activate in Settings, or by turning on Battery Saver. 63. We’re bringing privacy to the top level of Settings so you can find all the important controls in one place. 64. Android Q arms you with new permission controls so you can share your location (or not) with apps on your own terms. 65. Time for a time out? With the new Focus Mode, you can get things done without distraction, by selecting the apps you want to stay active and pausing everything you don't. 66. And to help children and families find a better balance with technology, we’re making Family Link part of every device that has Digital Wellbeing, starting with Android Q. 67. Signed, sealed, delivered! There’s a new way to deliver important updates. With Project Mainline, we can update core OS components without a full OS update. 68. All Android devices with Q—including phones, tablets, TVs, and Android Auto—are required to encrypt user data. 69. Some of these features are available today in Android Q Beta which is available on 15 devices from 12 manufacturers (in addition to all Pixel phones). 70. Android Q brings lots of new emoji, including 53 new non-binary designs for emoji that Unicode defines as "genderless.” 71. Buckle up! Android Auto’s new design coming out this summer will help you get on the road faster, show you useful information at a glance and simplify common tasks while driving. 72. Now media developers will be able to build new entertainment experiences for Android-powered infotainment systems. 73. With Tiles on Wear OS by Google you have more swipeable access to things right from your wrist like your goals, next event, weather forecast, heart rate and timer. 74. Android TV platform now has more than 140 pay TV partners, 6 of the 10 top smart TV OEMs using the Android TV platform; and more than 5,000 apps and games in its ecosystem.
Chrome
75. It’s now easier to share files between Linux, Android, and Chrome OS using file manager. 76. Android Studio on Chrome OS helps you optimize your apps for Chrome OS—directly on your Chromebook. 77. All Chromebooks launched this year will be Linux-ready right out of the box. 78. We have more user transparency and controls, like improved cookie controls and more restrictions for fingerprinting across the web.
Ads
79. With the option to bid on tROAS, advertisers will soon be able to automatically pay more for users who are likely to spend more in apps, and pay less for users likely to spend less. 80. We’re teaming up with eight agencies http://bit.ly/2PWq1jx —Vidmob, Consumer Acquisition, Bamboo, Apptamin, Webpals, Creadits, Kaizen Ad and Kuaizi—to provide advertisers end-to-end creative development and consultation services. 81. We’ll be expanding a new monetization program, called Open Bidding, to all publishers later this year so developers can automatically  maximize the value of every impression automatically. 82. New transparency tools across browsers http://bit.ly/2V2slpT will give people greater visibility into the data that Google uses to personalize ads. 83. We also launched new AdMob tools for developers that help give more control over ad content, easily access metrics and quickly identify and remove bad ads.
Accessibility
84. Project Euphonia is using AI to improve computer's' abilities to understand and transcribe a diverse set of speech patterns, including impaired speech. 85. Live Relay uses on-device speech recognition and text-to-speech conversion to allow the phone to listen and speak on people’s behalf while they type. 86. Project Diva is a research effort that makes Google Assistant more accessible for people with disabilities.
More developer announcements
87. We’re launching a preview for Local Home SDK that lets smart home developers bring a new level of speed and reliability to smart home devices. 88. The next version of our Maps Android SDK is now available for public beta. It’s built on a common platform with the Google Maps mobile app, which means better performance and feature support. 89. A new Google Maps Platform integration with deck.gl will make high-quality data visualizations at scale possible. 90. We’re unifying our efforts around third-party connected home devices under a single platform for developers. Now we’ll be delivering a single consumer and developer experience through the Works with Google Assistant program. 91. We introduced updates in ARCore to Augmented Images and Light Estimation— features that let you build more interactive, and realistic experiences. 92. Scene Viewer is a new tool that lets users view 3D objects in AR right from your website. 93. Android development will become increasingly Kotlin-first.
94. We released 11 new Jetpack libraries and open-sourced an early preview of Jetpack Compose, a new unbundled toolkit designed to simplify UI development. 95. Android Studio 3.5 Beta is available for download and includes improvements in three core areas: system health, feature polish and bugs. 96. Flutter 1.5 includes hundreds of changes in response to developer feedback, including updates for new App Store iOS SDK requirements, updates to the iOS and Material widgets, engine support for new device types, and Dart 2.3 featuring new UI-as-code language features. 97. We released the first technical preview of Flutter for the web. 98. Our in-app updates API is out of beta. Now people can install updates without ever leaving the app. 99. New metrics and insights in the Google Play Console help developers better measure app health and analyze performance. 100.A new change is coming to Chrome Canary to help image-heavy websites can load more quickly.
Source : The Official Google Blog via Source information
0 notes
study-iris1022 · 6 years
Text
CartPole問題をA2C(Advanced Actor-Critic)を用いて解いてみた
はい、最初に言い訳をしておきます。
Q.なぜMountain-Car問題ではないのか
A.Mountain-Car問題はゴールした時+1,ゴールしていないときに-1の報酬が与えられる問題だが、この問題をA2Cでは扱いづらいらしく、方策が常に静止になったり、まったくのランダムのままになったりする。いろいろと試してみた(勾配クリッピング,報酬のスケール,活性化関数の変更,等)が成果がなかったので諦めた。
ソースコードは以下。例によってjupyter notebook上で実行している。
from __future__ import division, print_function, unicode_literals import numpy as np import tensorflow as tf import gym import os import sys # to make this notebook's output stable across runs def reset_graph(seed=42): tf.reset_default_graph() tf.set_random_seed(seed) np.random.seed(seed) reset_graph() n_inputs = 4 n_hidden = 50 n_outputs = 2 n_value_outputs = 1 initializer = tf.variance_scaling_initializer() def get_q_network(X_state, name): with tf.variable_scope(name) as scope: hidden1 = tf.layers.dense(X_state, n_hidden, activation=tf.nn.elu, kernel_initializer=initializer) hidden2 = tf.layers.dense(hidden1, n_hidden, activation=tf.nn.elu, kernel_initializer=initializer) logit_actions = tf.layers.dense(hidden2, n_outputs, activation=tf.nn.elu, kernel_initializer=initializer) action_outputs = tf.nn.softmax(logit_actions) value_outputs = tf.layers.dense(hidden2, n_value_outputs, kernel_initializer=initializer) trainable_vars = tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, scope = scope.name) trainable_var_by_names = {var.name[len(scope.name):]: var for var in trainable_vars} return action_outputs, value_outputs, logit_actions, trainable_var_by_names X_state = tf.placeholder(tf.float32, shape=[None, n_inputs]) online_action_values, online_v_values, online_action_logit, online_vars = get_q_network(X_state, name="q_networks/online") target_action_values, target_v_values, target_action_logit, target_vars = get_q_network(X_state, name="q_networks/target") copy_ops = [target_var.assign(online_vars[var_name]) for var_name, target_var in target_vars.items()] copy_online_to_target = tf.group(*copy_ops) learning_rate = 0.005 decay = 0.99 loss_v_coefficient = 0.50 entropy_coefficient = 0.10 with tf.variable_scope("train"): s_t = tf.placeholder(tf.float32, shape=(None, n_inputs)) a_t = tf.placeholder(tf.float32, shape=(None, n_outputs)) r_t = tf.placeholder(tf.float32, shape=(None, 1)) # r_t = r + gamma * V(s) @one step log_prob = - tf.log(tf.reduce_sum(online_action_values * a_t, axis=1, keep_dims=True) + 1e-10) loss_policy = log_prob * tf.stop_gradient(advantage) loss_value = loss_v_coefficient * tf.square(advantage) entropy = - entropy_coefficient * tf.reduce_sum(online_action_values * tf.log(online_action_values + 1e-10), axis=1, keep_dims=True) loss_total = tf.reduce_mean(loss_policy + loss_value - entropy) global_step = tf.Variable(0, trainable=False, name='global_step') optimizer = tf.train.RMSPropOptimizer(learning_rate, decay=decay) training_op = optimizer.minimize(loss_total, global_step=global_step) init = tf.global_variables_initializer() saver = tf.train.Saver() gamma = 0.99 #時間割引率 class ReplayMemory: def __init__(self, maxlen): self.maxlen = maxlen #s,a,r,s,1.0-done self.state = np.empty(shape=maxlen, dtype=np.object) self.action = np.zeros(shape=maxlen, dtype=np.object) self.reward = np.zeros(shape=maxlen, dtype=np.float) self.next_state = np.empty(shape=maxlen, dtype=np.object) self.continues = np.zeros(shape=maxlen, dtype=np.float) self.index = 0 self.length = 0 self.gamma = gamma def append(self, data): self.state[self.index] = data[0] self.action[self.index] = data[1] self.reward[self.index] = data[2] self.next_state[self.index] = data[3] self.continues[self.index] = data[4] self.length = min(self.length + 1, self.maxlen) self.index = (self.index + 1) % self.maxlen def sample_one(self, index, nstep): r = 0 for i in range(nstep): r += self.reward[(index)- i] * (self.gamma ** (i)) s = self.state[(index) - (nstep - 1)] a = self.action[(index) - (nstep - 1)] ns = self.next_state[index] return (s, a, r, ns) def sample(self, batch_size, nstep=1): indices = np.random.randint(self.length - (nstep - 1), size=batch_size) + (nstep - 1) data = [] for j,i in enumerate(indices): s,a,r,ns = self.sample_one(i, nstep) tmp = [s,a,r,ns, self.continues[i]] data.append(tmp) return data def sample_memories(self, batch_size, nstep=1): cols = [[], [], [], [], []] # state, action, reward, next_state, continue for memory in self.sample(batch_size, nstep): for col, value in zip(cols, memory): col.append(value) cols = [np.array(col) for col in cols] cols[0] = np.concatenate(cols[0]).reshape(batch_size, -1) #こいつらは要素が配列なのでconcatenateで戻してやる必要がある cols[3] = np.concatenate(cols[3]).reshape(batch_size, -1) return cols[0], cols[1], cols[2].reshape(-1, 1), cols[3], cols[4].reshape(-1, 1) replay_memory_size = 500000 replay_memory = ReplayMemory(replay_memory_size) eps_min = 0.001 eps_max = 0.5 eps_decay_steps = 400000 def epsilon_greedy(q_values, step): epsilon = max(eps_min, eps_max - (eps_max-eps_min) * step/eps_decay_steps) if np.random.rand() < epsilon: return np.random.randint(n_outputs) # random action else: #return np.argmax(q_values) # optimal action #今回は各actionが確率の形で出ているためargmaxは使わない。 return np.random.choice(n_outputs, p=q_values.flatten()) n_steps = 400000 # total number of training steps training_start = 1000 # start training after 10,000 game iterations training_interval = 4 # run a training step every 4 game iterations save_steps = 1000 # save the model every 1,000 training steps copy_steps = 1000 # copy online DQN to target DQN every 10,000 training steps discount_rate = 0.99 skip_start = 0 # Skip the start of every game (it's just waiting time). batch_size = 50 iteration = 0 # game iterations checkpoint_path = "./my_actor_critic.ckpt" done = True # env needs to be reset loss_val = np.infty loss_policy_val = np.infty loss_value_val = np.infty entropy_val = np.infty game_length = 0 total_max_q = 0 mean_max_q = 0.0 rewards_memory = [] multistep = 1 #multi_step_learningのn. 1以上の整数 env = gym.make('CartPole-v0') env.reset() with tf.Session() as sess: if os.path.isfile(checkpoint_path + ".index"): saver.restore(sess, checkpoint_path) else: init.run() copy_online_to_target.run() total_reward = 0 while True: step = global_step.eval() if step != n_steps: break iteration += 1 print("\rIteration {}\tTraining step {}/{} ({:.1f})%\tLoss {:5f}\tMean Max-Q {:5f} ".format( iteration, step, n_steps, step * 100 / n_steps, loss_val, mean_max_q), end="") if done: # game over, start again obs = env.reset() for skip in range(skip_start): # skip the start of each game obs, reward, done, info = env.step(0) state = obs # Online DQN evaluates what to do action_values = online_action_values.eval(feed_dict={X_state: [state]}) action = epsilon_greedy(action_values, step) # Online DQN plays obs, reward, done, info = env.step(action) next_state = obs # Let's memorize what happened total_reward += reward replay_memory.append((state, action, reward, next_state, 1.0 - done)) state = next_state # Compute statistics for tracking progress (not shown in the book) total_max_q += action_values.max() game_length += 1 if done: mean_max_q = total_max_q / game_length total_max_q = 0.0 game_length = 0 rewards_memory.append(total_reward) total_reward = 0 if iteration < training_start or iteration % training_interval != 0: continue # only train after warmup period and at regular intervals # Sample memories and use the target DQN to produce the target Q-Value X_state_val, X_action_val, rewards, X_next_state_val, continues = ( replay_memory.sample_memories(batch_size, nstep=multistep)) next_v_values = target_v_values.eval( feed_dict={X_state: X_next_state_val}) r = rewards + continues * (discount_rate ** multistep) * next_v_values #one_hot X_action_val_one_hot = np.identity(n_outputs)[X_action_val] feed_dict = {X_state: X_state_val, s_t:X_state_val, a_t:X_action_val_one_hot, r_t:r } # Train the online DQN _, loss_val, loss_policy_val, loss_value_val, entropy_val = sess.run([training_op, loss_total, loss_policy, loss_value, entropy], feed_dict=feed_dict) # Regularly copy the online DQN to the target DQN if step % copy_steps == 0: copy_online_to_target.run() # And save regularly if step % save_steps == 0: saver.save(sess, checkpoint_path)
ポイントとなるところだけ解説しておく。
まずNNの出力について。
logit_actions = tf.layers.dense(hidden2, n_outputs, activation=tf.nn.elu, kernel_initializer=initializer) action_outputs = tf.nn.softmax(logit_actions) value_outputs = tf.layers.dense(hidden2, n_value_outputs, kernel_initializer=initializer)
2つの出力があり、それぞれ変数名をaction-outputとvalue-outputsと置いてある。action_outputの方は状態$s_t$が与えられたときの方策$\pi$で計算された各行動の確率値を示し、value_outputsの方は現在の状態価値$V(s_t)$を示す。
次にLossについて。
Policy-lossの式は以下。これを最大化する。Tensorflowでは最小化に操作は統一しないといけないので、こいつにマイナスをつけてやる必要がある。
$log(\pi( a_t | s_t; \theta)) (R - V(s_i;\theta_v)$
Value-lossの式は以下。これを最小化する。
$R - V(s_i;\theta_v)$
なお、policy-lossには方策$\pi$のエントロピーを足すことによって方策が極端に決定されることがないようにしているエントロピー項がある。
プログラムは以下。足してるのではなく引いてるのは最大化からひっくり返す対象にエントロピー項も入ってるからである。
with tf.variable_scope("train"): a_t = tf.placeholder(tf.float32, shape=(None, n_outputs)) r_t = tf.placeholder(tf.float32, shape=(None, 1)) # r_t = r + gamma * V(s) @one step log_prob = - tf.log(tf.reduce_sum(online_action_values * a_t, axis=1, keep_dims=True) + 1e-10) advantage = r_t - online_v_values loss_policy = log_prob * tf.stop_gradient(advantage) loss_value = loss_v_coefficient * tf.square(advantage) entropy = - entropy_coefficient * tf.reduce_sum(online_action_values * tf.log(online_action_values + 1e-10), axis=1, keep_dims=True) loss_total = tf.reduce_mean(loss_policy + loss_value - entropy)
上のように、最終的に足し合わせればokだ。あとはうまい具合にTensorflowがやってくれる。
スコアの上がり方はこんな感じ。このCartPole問題はスコアが200が上限である。今回から100回の試行の移動平均を表示してみるようにした。強化学習の界隈でどうやってスコアを表示するかという共通見解とかあるんだろうか。
Tumblr media
0 notes
Photo
Tumblr media
Last sess before I head off to JPN. . . . #photo #photos #sony #a77ii #pics #picture #pictures #snapshot #dslr #beautiful #instagood #picoftheday #capture #photography #portrait #landscape #aperture #lens #light #shadow #mirrorless #lightroom #nature #sky #beautiful #wheat #skate #kebbek
0 notes
len-illus · 1 year
Text
Tumblr media
a part of my parents but not together (modern) cynonari au Text (top to bottom, left to right)
Title: subbing in Cyno, thinking: I finally had the time to attend the PTA meeting at Collei's school. Tighnari usually attends, but his migraine worsened and he can handle noise even less than usual. Lady: Oh, it's Collei's other dad! So nice of you to fill in for your husband! You are a lucky lad you know! He's so knowledgeable and kind. And he's very good at management [blah blah blah...] Facilitator: The meeting will start now! Lady: Oh, I better go now... Cyno: Yes, please be careful... [Later, after the meeting] Cyno, thinking while driving: HUSBAND?????? Collei: Mr. Cyno? Tighnari: Focus on driving!!!!
164 notes · View notes
len-illus · 1 year
Text
Tumblr media
[ the warmth within these walls ]
a part of my parents but not together (modern) cynonari au
more to come in the future 😋👌
203 notes · View notes
len-illus · 1 year
Text
Tumblr media
so i binged trigun stampede a few days ago
59 notes · View notes
len-illus · 1 year
Text
Tumblr media
a part of my parents but not together (modern) cynonari au
Text (top to bottom, left to right)
Title: the 9 year old elephant in the room Note: Collei (now 15 y/o, been with them for 7 years) is sleeping over with Amber, Cyno and Tighnari are having dinner with a mutual friend. Friend: You guys aren't dating?? Don't you two literally share an apartment? and a kid? Tighnari: It's cost-efficient. Friend: But haven't the both of you been buddies since the Akademiya? Cyno: Maybe he hasn't gotten sick of me yet. Friend: But didn't Cyno have a crush on Nari way back when? Tighnari: Ye— he WHAT.
92 notes · View notes
len-illus · 1 year
Text
Tumblr media Tumblr media
a part of my parents but not together (modern) cynonari au
Title: teaching moment On one lazy afternoon, Collei finds Tighnari watching a video on his phone. Cyno comes home to some (educational) shenanigans.
98 notes · View notes
len-illus · 1 year
Text
Tumblr media
a part of my parents but not together (modern) cynonari au
Text (top to bottom, left to right)
Title: slip of the tongue Collei: Hey dad— I mean, Mr. Tighnari, can I have a group study with Amber and Eula? Tighnari: Sure, just make sure to bring your medicine okay? And tell Cyno to pick you up since I'm going to Pardis Dhyai before dinner. Collei: Okay, thank you! Tighnari: ... Tighnari: (internally) DAD????
more cynonari + au notes under the cut ↴
Tighnari, once he's gotten over the shock: Seems like your dad jokes license has been revoked Cyno: she called you "dad" first???? Cyno:
Tumblr media
Note: To be clear, Collei in this AU was adopted by Cyno when she was 8. Cyno never urged her to call him "dad" because to him, her comfort is his top priority. Soooo, Collei calls both of them by name for a looong while.
also english is so hard yall like how do i express both familiarity and respect while calling someone? something that can be equated to "tito" or "tita"?? (im filo hii👋) i don't want collei to call them "uncle". people have called english the least affectionate language and i have to agree.
120 notes · View notes