Recognizing the 2021 TensorFlow Contributor Awardees

Posted by the TensorFlow team

TensorFlow wouldn’t be where it is today without its bustling global community of contributors. There are many ways these developers contribute. They write code to improve TensorFlow, teach classes, answer questions on forums, and organize and host events.

We are thankful to every person that’s helped the TensorFlow community over the years. And at this year’s TensorFlow Contributor Summit, we wanted to show thanks by recognizing individuals who went above and beyond on their TensorFlow contributions in 2021.

So without further ado, we are pleased to introduce the TensorFlow Contributor Awardees of 2021!

SIG Leadership Award

Awarded to a highly active SIG

Jason Zaman, SIG Build

Active SIG Award

Awarded to an impactful Special Interest Group (SIG) leader

Sean Morgan, SIG Add-ons

TF Forum Award

Awarded to a helpful TF Forum user with many liked posts and responses

Ekaterina Dranitsyna

Diversity and Inclusion Award

Awarded to the person who made a significant effort to bring diversity into the TensorFlow ecosystem

Merve Noyan

Education Outreach Awards

Awarded to the people who made significant contributions to educational outreach

Gant Laborde

Sandeep Mistry

Community Management Award

Awarded to highly active community leaders

TensorFlow User Group Pune (TFUG Pune)

Yogesh Kulkarni, Shashank Sane, and Aditya Kane

Regional Awards

Awarded to top contributors by geographic region

Margaret Maynard-Reid, Americas

Sayak Paul, South Asia / Oceania

Chansung Park, East Asia

Ruqiya Bin Safi, Middle East / Africa

M. Yusuf Sarıgöz, Europe

Art by Margaret Maynard-Reid
Art by Margaret Maynard-Reid

Thank you again to all the TensorFlow contributors! We look forward to recognizing even more of you next year.

Read More

If I Had a Hammer: Purdue’s Anvil Supercomputer Will See Use All Over the Land

Carol Song is opening a door for researchers to advance science on Anvil, Purdue University’s new AI-ready supercomputer, an opportunity she couldn’t have imagined as a teenager in China.

“I grew up in a tumultuous time when, unless you had unusual circumstances, the only option for high school grads was to work alongside farmers or factory workers, then suddenly I was told I could go to college,” said Song, now the project director of Anvil.

And not just any college. Her scores on a national entrance exam opened the door to Tsinghua University, home to China’s most prestigious engineering school.

Along the way, someone told her computers would be big, so she signed up for computer science before she had ever seen a computer. She learned soon enough.

“We were building hardware from the ground up, designing microinstructions and logic circuits, so I got to understand computers from the inside out,” she said.

Easing Access to Supercomputers

Skip forward a few years to grad school at the University of Illinois when another big door opened.

While working in distributed systems, she was hired as one of the first programmers at the National Center for Supercomputing Applications,  one of the first sites in a U.S. program funding supercomputers that researchers shared.

To make the systems more accessible, she helped develop alternatives to the crude editing tools of the day that displayed one line of a program at a time. And she helped pioneering researchers like Michael Norman create visualizations of their work.

GPUs Add AI to HPC

In 2005, she joined Purdue, where she has helped manage nearly three dozen research projects representing more than $60 million in grants as a senior research scientist in the university’s supercomputing center.

“All that helped when we started defining Anvil. I see researchers’ pain points when they are getting on a new system,” said Song.

Anvil links 1,000 Dell EMC PowerEdge C6525 server nodes with 2,000 of the latest AMD x86 CPUs and 64 NVIDIA A100 Tensor Core GPUs on a NVIDIA Quantum InfiniBand network to handle traditional HPC and new AI workloads.

The system, built by Dell Technologies, will deliver 5.3 petaflops and half a million GPU cycles per year to tens of thousands of researchers across the U.S. working on the National Science Foundation’s XSEDE network.

Anvil Forges Desktop, Cloud Links

To harness that power, Anvil supports interactive user interfaces as well as the batch jobs that are traditional in high performance computing.

“Researchers can use their favorite tools like Jupyter notebooks and remote desktop interfaces so the cluster can look just like in their daily work environment,” she said.

Anvil will also support links to Microsoft Azure, so researchers can access its large datasets and commercial cloud-computing muscle. “It’s an innovative part of this system that will let researchers experiment with creating workflows that span research and commercial environments,” Song said.

Fighting COVID, Exploring AI

More than 30 research teams have already signed up to be early users of Anvil.

One team will apply deep learning to medical images to improve diagnosis of respiratory diseases including COVID-19. Another will build causal and logical check points into neural networks to explore why deep learning delivers excellent results.

“We’ll support a lot of GPU-specific tools like NGC containers for accelerated applications, and as with every new system, users can ask for additional toolkits and libraries they want,” she said.

The Anvil team aims to invite industry collaborations to test new ideas using up to 10 percent of the system’s capacity. “It’s a discretionary use we want to apply strategically to enable projects that wouldn’t happen without such resources,” she said.

Opening Doors for Science and Inclusion

Early users are working on Anvil today and the system will be available for all users in about a month.

Anvil’s opening day has a special significance for Song, one of the few women to act as a lead manager for a national supercomputer site.

Carol Song. project director, Purdue Anvil supercomputer
Carol Song and Purdue’s Anvil supercomputer

“I’ve been fortunate to be in environments where I’ve always been encouraged to do my best and given opportunities,” she said.

“Around the industry and the research computing community there still aren’t a lot of women in leadership roles, so it’s an ongoing effort and there’s a lot of room to do better, but I’m also very enthusiastic about mentoring women to help them get into this field,” she added.

Purdue’s research computing group shares Song’s enthusiasm about getting women into supercomputing. It’s home to one of the first chapters of the international Women in High-Performance Computing organization.

Purdue’s Women in HPC chapter sent an all-female team to a student cluster competition at SC18. It also hosts outside speakers, provides travel support to attend conferences and connects students and early career professionals to experienced mentors like Song.

Pictured at top: Carol Song, Anvil’s principal investigator (PI) and project director along with Anvil co-PIs (from left) Rajesh Kalyanam, Xiao Zhu and Preston Smith. 

The post If I Had a Hammer: Purdue’s Anvil Supercomputer Will See Use All Over the Land appeared first on The Official NVIDIA Blog.

Read More

NVIDIA AI Enterprise Helps Researchers, Hospitals Targeting Cancer Hit the Mark

Whether facilitating cancer screenings, cutting down on false positives, or improving tumor identification and treatment planning, AI is a powerful agent for healthcare innovation and acceleration.

Yet, despite its promise, integrating AI into actual solutions can challenge many IT organizations.

The Netherlands Cancer Institute (NKI), one of the world’s top-rated cancer research and treatment centers, is using the NVIDIA AI Enterprise software suite to test AI workloads on higher-precision 3D cancer scans than are commonly used today.

NKI’s AI model was previously trained on lower-resolution images. But with the higher memory capacity offered by NVIDIA AI Enterprise, its researchers could instead use high-resolution images for training. This improvement helps clinicians better target the size and location of a tumor every time a patient receives treatment.

The NVIDIA AI Enterprise suite that NKI deployed is designed to optimize the development and deployment of AI. It’s certified and supported by NVIDIA to enable hospitals, researchers and IT professionals to run AI workloads on mainstream servers with VMware vSphere in their on-prem data centers and private clouds.

Delivering treatments on virtualized infrastructure means hospitals and research institutions can use the same tools they already work with on existing applications. This helps maximize their investments while making innovations in care more affordable and accessible.

NKI used an AI model to better reconstruct a Cone Beam Computed Tomography (CBCT) thoracic image, resulting in clearer image quality compared to conventional methods.

Speeding Breakthroughs in Healthcare Research 

NKI had gotten off to a quick start with its project on NVIDIA AI Enterprise by using NVIDIA LaunchPad.

The LaunchPad program provides immediate access to optimized software running on accelerated infrastructure to help customers prototype and test data science and AI workloads. This month, the program was extended to nine Equinix locations worldwide.

The NVIDIA AI Enterprise software suite, available in LaunchPad, makes it possible to run advanced AI workloads on mainstream accelerated servers with VMware vSphere, including systems from Dell Technologies, Hewlett Packard Enterprise, Lenovo and many others.

Rhino Health, a federated learning platform powered by NVIDIA FLARE, is available today through NVIDIA AI Enterprise, making it easy for any hospital to leverage Federated learning for AI development and validation. Other organizations, like The American College of Radiology’s AI LAB, are also planning to use the NVIDIA AI Enterprise software.

Researchers at NKI used NVIDIA AI Enterprise, running on the HPE Synergy, a composable software system from Hewlett Packard Enterprise, to build deep learning models by combining the massive 2D and 3D data sources and AI to pinpoint the location of tumors before each radiotherapy treatment session. 

“Doctors could use this solution as an alternative to CT scans on day of treatment to optimize the treatment plan to validate the radiotherapy plan,” said Jonas Teuwen, group leader at the Netherlands Cancer Institute.

Using NVIDIA AI Enterprise, Teuwen’s team in Amsterdam ran their workloads on NVIDIA A100 80GB GPUs in a server hosted in Silicon Valley. Their convolutional neural network was built in less than three months and was trained on less than 300 clinical lung CT scans that were then reconstructed and generalized to head and neck data.

In the future, NKI researchers also hope to translate this work to potential use cases in interventional radiology to repair arteries in cardiac surgeries and dental surgery implants.

Accelerating Hospital AI Deployment With NVIDIA AI Enterprise

NVIDIA AI Enterprise simplifies the AI rollout experience for organizations who host a variety of healthcare and operations applications on virtualized infrastructure. It enables IT administrators to run AI applications like Vyasa and iCAD alongside core hospital applications, streamlining the workflow in an environment they’re already familiar with.

Compute resources can be adjusted with just a few clicks, giving hospitals the ability to transform care for both patients and healthcare providers.

Vyasa, a provider of deep learning analysis tools for healthcare and life sciences, uses NVIDIA AI Enterprise to build applications that can search unstructured content such as patient care records. With the software, Vyasa can develop their deep learning applications faster and help dive through unstructured data and PDFs to assess which patients are at a higher risk. It identifies those who haven’t been in for a check-up in more than a year, and can refine for additional risk factors like age and race.

“NVIDIA AI Enterprise has reduced our deployment times by half thanks to rapid provisioning of platform requirements that eliminate the need to manually download and integrate software packages,” said Frans Lawaetz, CIO at Vyasa. 

Radiologists use iCAD’s innovative ProFound AI software to assist with reading mammograms. These AI solutions help identify cancer earlier, categorize breast density, and accurately assess short-term personalized breast cancer risk based on each woman’s screening mammogram. Running advanced workloads with VMware vSphere is important for iCAD’s healthcare customers as they can easily integrate their data intensive applications into any hospital infrastructure.

A host of other software makers, like the American College of Radiology’s AI LAB and Rhino Health, with its federated learning platform, have begun validating their software on NVIDIA AI Enterprise to ease deployment by integrating into a common healthcare IT infrastructure.

The ability for NVIDIA AI Enterprise to unify the data center for healthcare organizations has sparked the creation of an ecosystem with NVIDIA technology at its heart. The common NVIDIA and VMware infrastructure benefits software vendors and healthcare organizations alike by making the deployment and management of these solutions much easier.

For many healthcare IT and software companies, integrating AI into hospital environments is a top priority. Many NVIDIA Inception partners will be testing the ease of deploying their offerings on NVIDIA AI Enterprise in these types of environments. They include ​​Aidence, Arterys, contextflow, ImageBiopsy Lab, InformAI, MD.ai, methinks.ai, RADLogics, Sciberia, Subtle Medical and VUNO.

NVIDIA Inception is a program that offers go-to-market support, expertise and technology for AI, data science and HPC startups.

Qualified enterprises can apply to experience NVIDIA AI Enterprise in curated, no-cost labs offered on NVIDIA LaunchPad.

Hear more about NVIDIA’s work in healthcare by tuning in to my special address on Nov. 29 at RSNA, the Radiological Society of North America’s annual meeting.

Main image shows how NVIDIA AI Enterprise allows hospital IT administrators to run AI applications alongside core hospital applications, like iCAD Profound AI Software for mammograms.

The post NVIDIA AI Enterprise Helps Researchers, Hospitals Targeting Cancer Hit the Mark appeared first on The Official NVIDIA Blog.

Read More

Federated Learning With FLARE: NVIDIA Brings Collaborative AI to Healthcare and Beyond

NVIDIA is making it easier than ever for researchers to harness federated learning by open-sourcing NVIDIA FLARE, a software development kit that helps distributed parties collaborate to develop more generalizable AI models.

Federated learning is a privacy-preserving technique that’s particularly beneficial in cases where data is sparse, confidential or lacks diversity. But it’s also useful for large datasets, which can be biased by an organization’s data collection methods, or by patient or customer demographics.

NVIDIA FLARE — short for Federated Learning Application Runtime Environment — is the engine underlying NVIDIA Clara Train’s federated learning software, which has been used for AI applications in medical imaging, genetic analysis, oncology and COVID-19 research. The SDK allows researchers and data scientists to adapt their existing machine learning and deep learning workflows to a distributed paradigm.

Making NVIDIA FLARE open source will better empower cutting-edge AI in almost any industry by giving researchers and platform developers more tools to customize their federated learning solutions.

With the SDK, researchers can choose among different federated learning architectures, tailoring their approach for domain-specific applications. And platform developers can use NVIDIA FLARE to provide customers with the distributed infrastructure required to build a multi-party collaboration application.

Flexible Federated Learning Workflows for Multiple Industries 

Federated learning participants work together to train or evaluate AI models without having to pool or exchange each group’s proprietary datasets. NVIDIA FLARE provides different distributed architectures that accomplish this, including peer-to-peer, cyclic and server-client approaches, among others.

Using the server-client technique, where learned model parameters from each participant are sent to a common server and aggregated into a global model, NVIDIA has led federated learning projects that help segment pancreatic tumors, classify breast density in mammograms to inform breast cancer risk, and predict oxygen needs for COVID patients.

The server-client architecture was also used for two federated learning collaborations using NVIDIA FLARE: NVIDIA worked with Roche Digital Pathology researchers to run a successful internal simulation using whole slide images for classification, and with Netherlands-based  Erasmus Medical Center for an AI application that identifies genetic variants associated with schizophrenia cases.

But not every federated learning application is suited to the server-client approach. By supporting additional architectures, NVIDIA FLARE will make federated learning accessible to a wider range of applications. Potential use cases include helping energy companies analyze seismic and wellbore data, manufacturers optimize factory operations and financial firms improve fraud detection models.

NVIDIA FLARE Integrates With Healthcare AI Platforms

NVIDIA FLARE can integrate with existing AI initiatives, including the open-source MONAI framework for medical imaging.

“Open-sourcing NVIDIA FLARE to accelerate federated learning research is especially important in the healthcare sector, where access to multi-institutional datasets is crucial, yet concerns around patient privacy can limit the ability to share data,” said Dr. Jayashree Kalapathy, associate professor of radiology at Harvard Medical School and leader of the MONAI community’s federated learning working group. “We are excited to contribute to NVIDIA FLARE and continue the integration with MONAI to push the frontiers of medical imaging research.”

NVIDIA FLARE will also be used to power federated learning solutions at: 

  • American College of Radiology (ACR): The medical society has worked with NVIDIA on federated learning studies that apply AI to radiology images for breast cancer and COVID-19 applications. It plans to distribute NVIDIA FLARE in the ACR AI-LAB, a software platform that is available to the society’s tens of thousands of members.
  • Flywheel: The company’s Flywheel Exchange platform enables users to access and share data and algorithms for biomedical research, manage federated projects for analysis and training, and choose their preferred federated learning solution — including NVIDIA FLARE.
  • Taiwan Web Service Corporation: The company offers a GPU-powered MLOps platform that enables customers to run federated learning based on NVIDIA FLARE. Five medical imaging projects are currently being conducted on the company’s private cluster, each with several participating hospitals.
  • Rhino Health: The partner and member of the NVIDIA Inception program has integrated NVIDIA FLARE into its federated learning solution, which is helping researchers at Massachusetts General Hospital develop an AI model that more accurately diagnoses brain aneurysms, and experts at the National Cancer Institute’s Early Detection Research Network develop and validate medical imaging AI models that identify early signs of pancreatic cancer.

“To collaborate effectively and efficiently, healthcare researchers need a common platform for AI development without the risk of breaching patient privacy,” said Dr. Ittai Dayan, founder of Rhino Health. “Rhino Health’s ‘Federated Learning as a Platform’ solution, built with NVIDIA FLARE, will be a useful tool to help accelerate the impact of healthcare AI.”

Get started with federated learning by downloading NVIDIA FLARE. Hear more about NVIDIA’s work in healthcare by tuning in to a special address on Nov. 29 at 6 p.m. CT by David Niewolny, director of healthcare business development at NVIDIA, at RSNA, the Radiological Society of North America’s annual meeting.

Subscribe to NVIDIA healthcare news here

The post Federated Learning With FLARE: NVIDIA Brings Collaborative AI to Healthcare and Beyond appeared first on The Official NVIDIA Blog.

Read More

Improve the return on your marketing investments with intelligent user segmentation in Amazon Personalize

Today, we’re excited to announce intelligent user segmentation powered by machine learning (ML) in Amazon Personalize, a new way to deliver personalized experiences to your users and run more effective campaigns through your marketing channels.

Traditionally, user segmentation depends on demographic or psychographic information to sort users into predefined audiences. More advanced techniques look to identify common behavioral patterns in the customer journey (such as frequent site visits, recent purchases, or cart abandonment) using business rules to derive users’ intent. These techniques rely on assumptions about the users’ preferences and intentions that limit their scalability, don’t automatically learn from changing user behaviors, and don’t offer user experiences personalized for each user. User segmentation in Amazon Personalize uses ML techniques, developed and perfected at Amazon, to learn what is relevant to users. Amazon Personalize automatically identifies high propensity users without the need to develop and maintain an extensive and brittle catalog of rules. This means you can create more effective user segments that scale with your catalog and learn from your users’ changing behavior to deliver what matters to them.

Amazon Personalize enables developers to build personalized user experiences with the same ML technology used by Amazon with no ML expertise required. We make it easy for developers to build applications capable of delivering a wide array of personalization experiences. You can start creating user segments quickly with the Amazon Personalize API or AWS Management Console and only pay for what you use, with no minimum fees or upfront commitments. All data is encrypted to be private and secure, and is only used to create your user segments.

This post walks you through how to use Amazon Personalize to segment your users based on preferences for grocery products using an Amazon Prime Pantry dataset.

Overview of solution

We’re introducing two new recipes that segment your users based on their interest in different product categories, brands, and more. Our item affinity recipe (aws-item-affinity) identifies users based on their interest in the individual items in your catalog, such as a movie, song, or product. The item attribute affinity recipe (aws-item-attribute) identifies users based on the attributes of items in your catalog, such as genre or brand. This allows you to better engage users with your marketing campaigns and improve retention through targeted messaging.

The notebook that accompanies this post demonstrates how to use the aws-item-affinity and aws-item-attribute recipe to create user segments based on their preferences for grocery products in an Amazon Prime Pantry dataset. We use one dataset group that contains user-item interaction data and item metadata. We use these datasets to train solutions using the two recipes and create user segments in batch.

To test the performance of the solution, we split the interactions data into a training set and test set. The Amazon Prime Pantry dataset has approximately 18 years of interaction data from August 9, 2000, to October 5, 2018, with approximately 1.7 million interactions. We hold out 5% of the most recent interactions and train on the remaining 95%. This results in a split where we use interactions from August 9, 2000, through February 1, 2018, to train the solution and use the remaining 8 months of interactions to simulate future activity as ground truth.

Results

When reproducing these tests in the notebook, your results may vary slightly. This is because when training, the solution the parameters of the underlying models are randomly initialized.

Let’s first review the results by looking at a few examples. We ran queries on three items, and identified 10 users that have a high propensity to engage with the items. We then look at the users’ shopping histories to assess if they would likely be interested in the queried product.

The following table shows the results of a segmentation query on gingerbread coffee, an item we might want to promote for the holiday season. Each row in the table shows the last three purchases of the 10 users returned from the query. Most of the users we identified are clearly coffee drinkers, having recently purchased coffee and coffee creamers. Interestingly, the item we queried on is a whole bean coffee, not a ground coffee. We see in the item histories that, where the information is available, the users have recently purchased whole bean coffee.

Gingerbread Coffee, 1 lb Whole Bean FlavorSeal Vacuum Bag: Bite into a freshly baked Gingerbread Coffee
USER_ID Last Three Purchases
A1H3ATRIQ098I7 Brew La La Red Velvet Cupcake Coffee Ola’s Exotic Super Premium Coffee Organic Uganda B Coffee Masters Gourmet Coffee
ANEDXRFDZDL18 Pepperidge Farm Goldfish Crackers Boston Baked Beans (1) 5.3 Oz Theater Box Sizecont Boost Simply Complete Nutritional Drink
APHFL4MDJRGWB Dunkin’ Donuts Original Blend Ground Coffee Coffee-Mate Coffee Mix Folgers Gourmet Selections Coconut Cream Pie Flavo
ANX42D33MNOVP The Coffee Fool Fool’s House American Don Francisco’s Hawaiian Hazelnut Don Francisco’s French Roast Coffee
A2NLJJVA0IEK2S Coffee Masters Flavored Coffee Lays 15pk Hickory Sticks Original (47g / 1.6oz per Albanese Confectionery Sugar Free Gummy Bears
A1GDEQIGFPRBNO Christopher Bean Coffee Flavored Ground Coffee Cameron’s French Vanilla Almond Whole Bean Coffee Cameron’s Coffee Roasted Whole Bean Coffee
A1MDO8RZCZ40B0 Master Chef Ground Coffee New England Ground Coffee Maxwell House Wake Up Roast Medium Coffee
A2LK2DENORQI8S The Bean Coffee Company Organic Holiday Bean (Vani Lola Savannah Angel Dust Ground New England Coffee Blueberry Cobbler
AGW1F5N8HV3AS New England Coffee Colombian Kirkland Signature chicken breast Lola Savannah Banana Nut Whole Bean
A13YHYM6FA6VJO Lola Savannah Triple Vanilla Whole Bean Lola Savannah Vanilla Cinnamon Pecan Whole Bean Pecan Maple Nut

The next table shows a segmentation query on hickory liquid smoke, a seasoning used for barbecuing and curing bacon. We see a number of different grocery products that might accompany barbecue in the users’ recent purchases: barbecue sauces, seasonings, and hot sauce. Two of the users recently purchased Prague Powder No. 1 Pink Curing Salt, a product also used for curing bacon. We may have missed these two users if we had relied on rules to identify people interested in grilling.

Wright’s Natural Hickory Seasoning Liquid Smoke, 128 Ounce This seasoning is produced by burning fresh cut hickory chips, then condensing the smoke into a liquid form.
USER_ID Last Three Purchases
A1MHK19QSCV8SY Hoosier Hill Farm Prague Powder No.1 Pink Curing S APPLE CIDER VINEGAR Fleischmann’s Instant Dry Yeast 1lb bagDry Yeast.M
A3G5P0SU1AW2DO Wright’s Natural Hickory Seasoning Liquid Smoke Eight O’Clock Whole Bean Coffee Kitchen Bouquet Browning and Seasoning Sauce
A2WW9T8EEI8NU4 Hidden Valley Dips Mix Creamy Dill .9 oz Packets ( Frontier Garlic Powder Wolf Chili Without Beans
A2TEJ1S0SK7ZT Black Tai Salt Co’s – (Food Grade) Himalayan Cryst Marukan Genuine Brewed Rice Vinegar Unseasoned Cheddar Cheese Powder
A3MPY3AGRMPCZL Wright’s Natural Hickory Seasoning Liquid Smoke San Francisco Bay OneCup Fog Chaser (120 Count) Si Kikkoman Soy Sauce
A2U77Z3Z7DC9T9 Food to Live Yellow Mustard Seeds (Kosher) 5 Pound 100 Sheets (6.7oz) Dried Kelp Seaweed Nori Raw Uns SB Oriental Hot Mustard Powder
A2IPDJISO5T6AX Angel Brand Oyster Sauce Bullhead Barbecue Sauce ONE ORGANIC Sushi Nori Premium Roasted Organic Sea
A3NDGGX7CWV8RT Frontier Mustard Seed Da Bomb Ghost Pepper HOT SaucesWe infused our hot Starwest Botanicals Organic Rosemary Leaf Whole
A3F7NO1Q3RQ9Y0 Yankee Traders Brand Whole Allspice Aji No Moto Ajinomoto Monosodium Glutamate Umami S Hoosier Hill Farm Prague Powder No.1 Pink Curing S
A3JKI7AWYSTILO Lalah’s Heated Indian Curry Powder 3 Lb LargeCurry Ducal Beans Black Beans with Cheese Emerald Nuts Whole Cashews

Our third example shows a segmentation query on a decoration used to top cakes. We see that the users identified are not only bakers, but are also clearly interested in decorating their baked goods. We see recent purchases like other cake toppers, edible decorations, and fondant (an icing used to sculpt cakes).

Letter C – Swarovski Crystal Monogram Wedding Cake Topper Letter, Jazz up your cakes with a sparkling monogram from our Sparkling collection! These single letter monograms are silver plated covered in crystal rhinestones and come in several sizes for your convenience.
USER_ID Last Three Purchases
A3RLEN577P4E3M The Republic Of Tea Alyssa’s Gluten Free Oatmeal Cookies – Pack of 4. Double Honey Filled Candies
AOZ0D3AGVROT5 Sea Green Disco Glitter Dust Christmas Green Disco Glitter Dust Baby Green Disco Glitter Dust
AC7O52PQ4HPYR Rhinestone Cake Topper Number 7 by otherThis delic Rhinestone Cake Topper Number 5This delicate and h Rhinestone Cake Topper Number 8 by otherThis delic
ALXKY9T83C4Z6 Heart Language of Love Bride and Groom White Weddi Bliss Cake Topper by Lenox (836473)It’s a gift tha First Dance Bride and Groom Wedding Cake TopperRom
A2XERDJ6I2K38U Egyptian Gold Luster Dust Kellogg’s Rice Krispies Treats Wilton Decorator Preferred Green Fondant
A1474SH2RB49MP Assorted Snowflake Sugar Decorations Disney Movie Darice VL3L Mirror Acrylic Initial Letter Cake Top Edible Snowflakes Sugar Decorations (15 pc).
A24E9YGY3V94N8 TOOGOO(R) Double-Heart Cake Topper Decoration for Custom Personalized Mr Mrs Wedding Cake Topper Wit Jacobs Twiglets 6 Pack Jacobs Twiglets are one of
A385P0YAW6U5J3 Tinksky Wedding Cake Topper God Gave Me You Sparkl Sweet Sixteen Cake Topper 16th Birthday Cake Toppe Catching the Big One DecoSet Cake DecorationReel i
A3QW120I2BY1MU Golda’s Kitchen Acetate Cake Collars – 4. Twinings of London English Breakfast Tea K-Cups fo Chefmaster by US Cake Supply 9-Ounce Airbrush Clea
A3DCP979LU7CTE DecoPac Heading for The Green DecoSet Cake TopperL Rhinestne Cake Topper Number 90This delicate and h Rhinestone Cake Topper Letter KThis delicate and h

These three examples make sense based on our editorial judgement, but to truly assess the performance of the recipe, we need to analyze more of the results. To do this broader assessment, we run the aws-item-affinity solution on 500 randomly selected items that appear in the test set to query a list of 2,262 users (1% of the users in the dataset). We then use the test set to assess how frequently the 2,262 users purchased the items during the test period. For comparison, we also assess how frequently 2,262 of the most active users purchased the items during the test period. The following table shows that the aws-item-affinity solution is four times better at identifying users that would purchase a given item.

Test Metrics
Hits Recall
Personalize – Item Affinity 0.2880 0.1297
Active User Baseline 0.0720 0.0320

Although these results are informative, they’re not a perfect reflection of the performance of the recipe because the user segmentation wasn’t used to promote the items which users later interacted with. The best way to measure performance is an online A/B test—running a marketing campaign on a list of users derived from the aws-item-affinity solution alongside a set of the most active users to measure the difference in engagement.

Conclusion

Amazon Personalize now makes it easy to run more intelligent user segmentation at scale, without having to maintain complex sets of rules or relying on broad assumptions about the preferences of your users. This allows you to better engage users with your marketing campaigns and improve retention through targeted messaging.

To learn more about Amazon Personalize, visit the product page.


About the Authors

Daniel Foley is a Senior Product Manager for Amazon Personalize. He is focused on building applications that leverage artificial intelligence to solve our customers’ largest challenges. Outside of work, Dan is an avid skier and hiker.

Debarshi Raha is a Senior Software Engineer for Amazon Personalize. He is passionate about building AI-based personalization systems at scale. In his spare time, he enjoys traveling and photography.

Ge Liu is an Applied Scientist at AWS AI Labs working on developing next generation recommender system for Amazon Personalize. Her research interests include Recommender System, Deep Learning, and Reinforcement Learning.

Haizhou Fu is a senior software engineer on the Amazon Personalize team working on designing and building recommendation systems and solutions for different industries. Outside of his work, he loves playing soccer, basketball and watching movies, reading and learning about physics, especially theories related to time and space.

Read More

Amazon Personalize announces recommenders optimized for Retail and Media & Entertainment

Today, we’re excited to announce the launch of personalized recommenders in Amazon Personalize that are optimized for retail and media and entertainment, making it even easier to personalize your websites, apps, and marketing campaigns. With this launch, we have drawn on Amazon’s rich experience creating unique personalized user experiences using machine learning (ML) to build recommenders for common personalization use cases. Use cases optimized recommendation solutions deliver personalized experiences for your users that consider the metrics that matter most to your business, the preferences of your individual users, and where your users are being served a personalized experience within the user journey. You can quickly integrate recommenders into any application via easy-to-use APIs.

This post walks you through the process of creating a recommender and getting recommendations for your users.

New personalized recommenders

To realize the true potential of personalization, businesses need to tailor their content to the user journey. For instance, an ecommerce website can recommend products to an existing customer based on their past browsing history (for example, a “Recommended for you” carousel) to drive greater engagement by providing item recommendations that are relevant to that user’s individual interests. On a product detail page, you can upsell products through a “Customers who viewed X also viewed” widget that uses the context of the product your customer is already engaging with. Finally, on the checkout page, a retailer may want to cross-sell products with “Frequently bought together” recommendations to increase average order value.

Similarly, a video-on-demand business can place a widget on their home page that shows the most popular recommendations to highlight the most viewed content across the world in the past week or month. You may want to build a “Because you watched this” widget after videos are watched to provide similar content with a greater chance of driving an increase in the time spent on your platform.

Each touchpoint requires intelligent personalization that understands the user, their current context, and their real-time interests or in-session preferences when delivering recommendations. Businesses today understand the need for and benefits of personalization, but building recommendation systems from the ground up requires significant investments of time and resources, in addition to extensive ML expertise.

With the launch of recommenders, you simply select the use cases you need from a library of recommenders within Amazon Personalize. “Most Viewed,” “Best Sellers”, “Frequently Bought Together,” “Customers who Viewed X also Viewed,” and “Recommended for you” are available for retail, and “Most Popular,” “Because you Watched X,” “More Like X,” and “Top Picks” are available for media and entertainment, with more to come. You select the recommenders for your use cases and Amazon Personalize does the heavy lifting of using ML to generate recommendations that you access through an easy-to-use API.

Recommenders learn from your users’ historical activity as well as their real-time interactions with items in your catalog to adjust to changing user preferences and deliver immediate value to your end users and business. Recommenders fully manage the lifecycle of maintaining and hosting personalized recommendation solutions. This accelerates the time needed to bring a solution to market and ensures that the recommendation solutions you deliver to production stay relevant for your users.

Amazon Personalize enables developers to build personalized user experiences with the same ML technology used by Amazon with no ML expertise required. We make it easy for developers to build applications capable of delivering a wide array of personalization experiences. You can start getting recommendations with Amazon Personalize quickly using a few simple API calls or some clicks on the AWS Management Console. You only pay for what you use, with no minimum fees or upfront commitments. All data is encrypted to be private and secure, and is only used to create your recommendations and segments.

Create a recommender

This section walks through the process of creating a recommender. The first step is to create a domain dataset group, which you can create by loading historic data in Amazon Simple Storage Service (Amazon S3) or from data gathered from real-time events.

Each dataset group can contain up to three datasets: Users, Items, and Interactions, with the Interactions dataset being mandatory to create a recommender. Datasets must adhere to the domain-specific schema in order to be used to create the domain-related recommenders.

In this post, we use the Amazon Prime Pantry dataset, which consists of purchase-related data for grocery items, to set up a retail recommender. We have uploaded the interactions dataset under the dataset group Prime-Pantry. You can monitor the status of the data upload through the dashboard for the Prime-Pantry dataset group on the Amazon Personalize console. After the data is imported successfully, choose Create recommenders.

As of this writing, Amazon Personalize offers five recipes for retail customers and four for media and entertainment customers.

The retail recipes are as follows:

  • Customers who viewed X also viewed – Recommendations for items that customers also viewed when they viewed a given item
  • Frequently bought together – Recommendations for items that customers buy together based on a specific item
  • Popular Items by Purchases – Popular items based on the items purchased by your users
  • Popular Items by Views – Popular items based on items viewed by your users
  • Recommended for you – Personalized recommendations for a given user ensuring that any items previously purchased are filtered out

The recipes for media and entertainment are as follows:

  • Most Popular – Most popular videos
  • Because you watched X – Videos similar to a given video watched by a user
  • More like X – Videos similar to a given video
  • Top picks for you – Personalized content recommendations for a specified user

The following screenshot shows how you can select recommenders based on your business needs and define the names of the recommenders. You use each recommender’s ARN to get recommendations when using the REST APIs. In this example, we create two recommenders. The first recommender is for the use case “Items frequently bought together” and is called PP-ItemsFrequentlyBoughtTogether. We also create a recommender for the use case “Popular Items by Purchases” called PP-PopularItemsByPurchases.

You can toggle Use default recommender configurations and Amazon Personalize automatically chooses the best configuration for the models underlying the recommenders. Then choose Create recommenders to start the model building process.

The time taken to create a recommender depends on the data and use cases selected. During this time, Amazon Personalize selects the optimal algorithm for each of the selected use cases, processes the underlying data, and trains a custom private model for your users. You can access all your recommenders and their current status on the Recommenders page.

When the recommender’s status changes to Active, you can choose it to review relevant details about the recommender and test it. Testing helps check the recommendations before you integrate the recommender into your website or application.

The following image shows the test output for a particular item ID for the recommender PP ItemsFrequentlyBoughtTogether.

At this step, you can also apply any filters on the recommendations; for example, to remove items purchased in the past.

Amazon Personalize also provides a recommender ARN in the details section, which you can use to produce recommendations through the Amazon Personalize REST APIs. The following code is an example of calling your API from Python for PP-FrequentlyBoughtTogetherRecommender:

get_recommendations_response = personalize_runtime.get_recommendations( 
campaignArn = arn:aws:personalize:us-west-2:261294318658:recommender/PP-ItemsFrequentlyBoughtTogether 
itemId = str(item_id) 
)

This API call produces the same results as if testing the recommender via the console.

Your recommender is now ready to feed into your website or app and personalize the journey of each of your customers.

Conclusion

Amazon Personalize packages our rich experience creating unique personalized user experiences with ML at Amazon and offers our expertise as a fully managed service to developers looking to personalize their websites and apps. With the launch of use case optimized recommenders, we’re going one step further to tailor our learnings to the unique marketing needs of each industry and each individual business. Recommenders allow you to easily and swiftly access recommendations that are optimized for your specific use case. By understanding the unique context of your customers and their touchpoints, Amazon Personalize allows you to harness the raw power of ML to derive more value for your business and your users.

To learn more about Amazon Personalize, visit the product page.


About the Authors

Anchit Gupta is a Senior Product Manager for Amazon Personalize. She focuses on delivering products that make it easier to build machine learning solutions. In her spare time, she enjoys cooking, playing board/card games, and reading.

Hao Ding is an Applied Scientist at AWS AI Labs and is working on developing next generation recommender system for Amazon Personalize. His research interests include Recommender System, Deep Learning, and Graph Mining.

Pranav Agarwal is a Sr. Software Development Engineer with Amazon Personalize and works on architecting software systems and building AI-powered recommender systems at scale. Outside of work, he enjoys reading, running and has started picking up ice-skating.

Nghia Hoang is a Senior Machine Learning Scientist at AWS AI Labs working on developing personalized learning methods with applications to recommender systems. His research interests include Probabilistic Inference, Deep Generative Learning, Personalized Federated Learning and Meta Learning.

Read More

Artificial intelligence that understands object relationships

When humans look at a scene, they see objects and the relationships between them. On top of your desk, there might be a laptop that is sitting to the left of a phone, which is in front of a computer monitor.

Many deep learning models struggle to see the world this way because they don’t understand the entangled relationships between individual objects. Without knowledge of these relationships, a robot designed to help someone in a kitchen would have difficulty following a command like “pick up the spatula that is to the left of the stove and place it on top of the cutting board.”

In an effort to solve this problem, MIT researchers have developed a model that understands the underlying relationships between objects in a scene. Their model represents individual relationships one at a time, then combines these representations to describe the overall scene. This enables the model to generate more accurate images from text descriptions, even when the scene includes several objects that are arranged in different relationships with one another.

This work could be applied in situations where industrial robots must perform intricate, multistep manipulation tasks, like stacking items in a warehouse or assembling appliances. It also moves the field one step closer to enabling machines that can learn from and interact with their environments more like humans do.

“When I look at a table, I can’t say that there is an object at XYZ location. Our minds don’t work like that. In our minds, when we understand a scene, we really understand it based on the relationships between the objects. We think that by building a system that can understand the relationships between objects, we could use that system to more effectively manipulate and change our environments,” says Yilun Du, a PhD student in the Computer Science and Artificial Intelligence Laboratory (CSAIL) and co-lead author of the paper.

Du wrote the paper with co-lead authors Shuang Li, a CSAIL PhD student, and Nan Liu, a graduate student at the University of Illinois at Urbana-Champaign; as well as Joshua B. Tenenbaum, a professor of computational cognitive science in the Department of Brain and Cognitive Sciences and a member of CSAIL; and senior author Antonio Torralba, the Delta Electronics Professor of Electrical Engineering and Computer Science and a member of CSAIL. The research will be presented at the Conference on Neural Information Processing Systems in December.

One relationship at a time

The framework the researchers developed can generate an image of a scene based on a text description of objects and their relationships, like “A wood table to the left of a blue stool. A red couch to the right of a blue stool.”

Their system would break these sentences down into two smaller pieces that describe each individual relationship (“a wood table to the left of a blue stool” and “a red couch to the right of a blue stool”), and then model each part separately. Those pieces are then combined through an optimization process that generates an image of the scene.

The researchers used a machine-learning technique called energy-based models to represent the individual object relationships in a scene description. This technique enables them to use one energy-based model to encode each relational description, and then compose them together in a way that infers all objects and relationships.

By breaking the sentences down into shorter pieces for each relationship, the system can recombine them in a variety of ways, so it is better able to adapt to scene descriptions it hasn’t seen before, Li explains.

“Other systems would take all the relations holistically and generate the image one-shot from the description. However, such approaches fail when we have out-of-distribution descriptions, such as descriptions with more relations, since these model can’t really adapt one shot to generate images containing more relationships. However, as we are composing these separate, smaller models together, we can model a larger number of relationships and adapt to novel combinations,” Du says.

The system also works in reverse — given an image, it can find text descriptions that match the relationships between objects in the scene. In addition, their model can be used to edit an image by rearranging the objects in the scene so they match a new description.

Understanding complex scenes

The researchers compared their model to other deep learning methods that were given text descriptions and tasked with generating images that displayed the corresponding objects and their relationships. In each instance, their model outperformed the baselines.

They also asked humans to evaluate whether the generated images matched the original scene description. In the most complex examples, where descriptions contained three relationships, 91 percent of participants concluded that the new model performed better.

“One interesting thing we found is that for our model, we can increase our sentence from having one relation description to having two, or three, or even four descriptions, and our approach continues to be able to generate images that are correctly described by those descriptions, while other methods fail,” Du says.

The researchers also showed the model images of scenes it hadn’t seen before, as well as several different text descriptions of each image, and it was able to successfully identify the description that best matched the object relationships in the image.

And when the researchers gave the system two relational scene descriptions that described the same image but in different ways, the model was able to understand that the descriptions were equivalent.

The researchers were impressed by the robustness of their model, especially when working with descriptions it hadn’t encountered before.

“This is very promising because that is closer to how humans work. Humans may only see several examples, but we can extract useful information from just those few examples and combine them together to create infinite combinations. And our model has such a property that allows it to learn from fewer data but generalize to more complex scenes or image generations,” Li says.

While these early results are encouraging, the researchers would like to see how their model performs on real-world images that are more complex, with noisy backgrounds and objects that are blocking one another.

They are also interested in eventually incorporating their model into robotics systems, enabling a robot to infer object relationships from videos and then apply this knowledge to manipulate objects in the world.

“Developing visual representations that can deal with the compositional nature of the world around us is one of the key open problems in computer vision. This paper makes significant progress on this problem by proposing an energy-based model that explicitly models multiple relations among the objects depicted in the image. The results are really impressive,” says Josef Sivic, a distinguished researcher at the Czech Institute of Informatics, Robotics, and Cybernetics at Czech Technical University, who was not involved with this research.

This research is supported, in part, by Raytheon BBN Technologies Corp., Mitsubishi Electric Research Laboratory, the National Science Foundation, the Office of Naval Research, and the IBM Thomas J. Watson Research Center.

Read More

An Introduction to Keras Preprocessing Layers

Posted by Matthew Watson, Keras Developer

Determining the right feature representation for your data can be one of the trickiest parts of building a model. Imagine you are working with categorical input features such as names of colors. You could one-hot encode the feature so each color gets a 1 in a specific index ('red' = [0, 0, 1, 0, 0]), or you could embed the feature so each color maps to a unique trainable vector ('red' = [0.1, 0.2, 0.5, -0.2]). Larger category spaces might do better with an embedding, and smaller spaces as a one-hot encoding, but the answer is not clear cut. It will require experimentation on your specific dataset.

Ideally, we would like updates to our feature representation and updates to our model architecture to happen in a tight iterative loop, applying new transformations to our data while changing our model architecture. In practice, feature preprocessing and model building are usually handled by entirely different libraries, frameworks, or languages. This can slow the process of experimentation.

On the Keras team, we recently released Keras Preprocessing Layers, a set of Keras layers aimed at making preprocessing data fit more naturally into model development workflows. In this post we are going to use the layers to build a simple sentiment classification model with the imdb movie review dataset. The goal will be to show how preprocessing can be flexibly developed and applied. To start, we can import tensorflow and download the training data.

import tensorflow as tf
import tensorflow_datasets as tfds

train_ds = tfds.load('imdb_reviews', split='train', as_supervised=True).batch(32)

Keras preprocessing layers can handle a wide range of input, including structured data, images, and text. In this case, we will be working with raw text, so we will use the TextVectorization layer.

By default, the TextVectorization layer will process text in three phases:

  • First, remove punctuation and lower cases the input.
  • Next, split text into lists of individual string words.
  • Finally, map strings to numeric outputs using a vocabulary of known words.

A simple approach we can try here is a multi-hot encoding, where we only consider the presence or absence of terms in the review. For example, say a layer vocabulary is ['movie', 'good', 'bad'], and a review read 'This movie was bad.'. We would encode this as [1, 0, 1], where movie (the first vocab term) and bad (the last vocab term) are present.

text_vectorizer = tf.keras.layers.TextVectorization(
output_mode='multi_hot', max_tokens=2500)
features = train_ds.map(lambda x, y: x)
text_vectorizer.adapt(features)

Above, we create a TextVectorization layer with multi-hot output, and do two things to set the layer’s state. First, we map over our training dataset and discard the integer label indicating a positive or negative review. This gives us a dataset containing only the review text. Next, we adapt() the layer over this dataset, which causes the layer to learn a vocabulary of the most frequent terms in all documents, capped at a max of 2500.

Adapt is a utility function on all stateful preprocessing layers, which allows layers to set their internal state from input data. Calling adapt is always optional. For TextVectorization, we could instead supply a precomputed vocabulary on layer construction, and skip the adapt step.

We can now train a simple linear model on top of this multi-hot encoding. We will define two functions: preprocess, which converts raw input data to the representation we want for our model, and forward_pass, which applies the trainable layers.

def preprocess(x):
return text_vectorizer(x)

def forward_pass(x):
return tf.keras.layers.Dense(1)(x) # Linear model

inputs = tf.keras.Input(shape=(1,), dtype='string')
outputs = forward_pass(preprocess(inputs))
model = tf.keras.Model(inputs, outputs)
model.compile(loss=tf.keras.losses.BinaryCrossentropy(from_logits=True))
model.fit(train_ds, epochs=5)

That’s it for an end-to-end training example, and already enough for 85% accuracy. You can find complete code for this example at the bottom of this post.

Let’s experiment with a new feature. Our multi-hot encoding does not contain any notion of review length, so we can try adding a feature for normalized string length. Preprocessing layers can be mixed with TensorFlow ops and custom layers as desired. Here we can combine the tf.strings.length function with the Normalization layer, which will scale the input to have 0 mean and 1 variance. We have only updated code up to the preprocess function below, but we will show the rest of training for clarity.

# This layer will scale our review length feature to mean 0 variance 1.
normalizer = tf.keras.layers.Normalization(axis=None)
normalizer.adapt(features.map(lambda x: tf.strings.length(x)))

def preprocess(x):
multi_hot_terms = text_vectorizer(x)
normalized_length = normalizer(tf.strings.length(x))
# Combine the multi-hot encoding with review length.
return tf.keras.layers.concatenate((multi_hot_terms, normalized_length))

def forward_pass(x):
return tf.keras.layers.Dense(1)(x) # Linear model.

inputs = tf.keras.Input(shape=(1,), dtype='string')
outputs = forward_pass(preprocess(inputs))
model = tf.keras.Model(inputs, outputs)
model.compile(loss=tf.keras.losses.BinaryCrossentropy(from_logits=True))
model.fit(train_ds, epochs=5)

Above, we create the normalization layer and adapt it to our input. Within the preprocess function, we simply concatenate our multi-hot encoding and length features together. We learn a linear model over the union of the two feature representations.

The last change we can make is to speed up training. We have one major opportunity to improve our training throughput. Right now, every training step, we spend some time on the CPU performing string operations (which cannot run on an accelerator), followed by calculating a loss function and gradients on a GPU.

With all computation in a single model, we will first preprocess each batch on the CPU and then update parameter weights on the GPU. This leaves gaps in our GPU usage.
With all computation in a single model, we will first preprocess each batch on the CPU and then update parameter weights on the GPU. This leaves gaps in our GPU usage.

This gap in accelerator usage is totally unnecessary! Preprocessing is distinct from the actual forward pass of our model. The preprocessing doesn’t use any of the parameters being trained. It’s a static transformation that we could precompute.

To speed things up, we would like to prefetch our preprocessed batches, so that each time we are training on one batch we are preprocessing the next. This is easy to do with the tf.data library, which was built for uses like this. The only major change we need to make is to split our monolithic keras.Model into two: one for preprocessing and one for training. This is easy with Keras’ functional API.

inputs = tf.keras.Input(shape=(1,), dtype="string")
preprocessed_inputs = preprocess(inputs)
outputs = forward_pass(preprocessed_inputs)

# The first model will only apply preprocessing.
preprocessing_model = tf.keras.Model(inputs, preprocessed_inputs)
# The second model will only apply the forward pass.
training_model = tf.keras.Model(preprocessed_inputs, outputs)
training_model.compile(
loss=tf.keras.losses.BinaryCrossentropy(from_logits=True))

# Apply preprocessing asynchronously with tf.data.
# It is important to call prefetch and remember the AUTOTUNE options.
preprocessed_ds = train_ds.map(
lambda x, y: (preprocessing_model(x), y),
num_parallel_calls=tf.data.AUTOTUNE).prefetch(tf.data.AUTOTUNE)

# Now the GPU can focus on the training part of the model.
training_model.fit(preprocessed_ds, epochs=5)

In the above example, we pass a single keras.Input through our preprocess and forward_pass functions, but define two separate models over the transformed inputs. This slices our single graph of operations into two. Another valid option would be to only make a training model, and call the preprocess function directly when we map over our dataset. In this case, the keras.Input would need to reflect the type and shape of the preprocessed features rather than the raw strings.

Using tf.data to prefetch batches cuts our train step time by over 30%! Our compute time now looks more like the following:

With tf.data, we are now precomputing each preprocessed batch before the GPU needs it. This significantly speeds up training.
With tf.data, we are now precomputing each preprocessed batch before the GPU needs it. This significantly speeds up training.

We could even go a step further than this, and use tf.data to cache our preprocessed dataset in memory or on disk. We would simply add a .cache() call directly before the call to prefetch. In this way, we could entirely skip computing our preprocessing batches after the first epoch of training.

After training, we can rejoin our split model into a single model during inference. This allows us to save a model that can directly handle raw input data.

inputs = preprocessing_model.input
outputs = training_model(preprocessing_model(inputs))
inference_model = tf.keras.Model(inputs, outputs)
inference_model.predict(
tf.constant(["Terrible, no good, trash.", "I loved this movie!"]))

Keras preprocessing layers aim to provide a flexible and expressive way to build data preprocessing pipelines. Prebuilt layers can be mixed and matched with custom layers and other tensorflow functions. Preprocessing can be split from training and applied efficiently with tf.data, and joined later for inference. We hope they allow for more natural and efficient iterations on feature representation in your models.

To play around with the code from this post in a Colab, you can follow this link. To see a wide range of tasks you can do with preprocessing layers, see the Quick Recipes section of our preprocessing guide. You can also check out our complete tutorials for basic text classification, image data augmentation, and structured data classification.

Read More