<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Srini Rangaswamy on Medium]]></title>
        <description><![CDATA[Stories by Srini Rangaswamy on Medium]]></description>
        <link>https://medium.com/@dekoupled?source=rss-80d104fc490f------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*sJvCdg7ZqoGpVsIHcgF6wQ.jpeg</url>
            <title>Stories by Srini Rangaswamy on Medium</title>
            <link>https://medium.com/@dekoupled?source=rss-80d104fc490f------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 14:59:37 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@dekoupled/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[From Local Skills to Governed Orchestration: Three Patterns of Agentic AI Maturity]]></title>
            <link>https://medium.com/another-integration-blog/from-local-skills-to-governed-orchestration-three-patterns-of-agentic-ai-maturity-69175b30eacc?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/69175b30eacc</guid>
            <category><![CDATA[mulesoft]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[governance]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Tue, 23 Jun 2026 14:26:03 GMT</pubDate>
            <atom:updated>2026-06-23T14:26:03.182Z</atom:updated>
            <content:encoded><![CDATA[<p>In the spirit of AI adoption, knowledge workers are developing hundreds of Claude skills and/or Custom GPTs that connect to backend systems such as CRM platforms, expense management tools, and other enterprise applications. Their primary goal is to automate repetitive tasks through AI-assisted workflows and improve day-to-day productivity.</p><blockquote>For many users, these skills, running locally on individual machines, are considered “agents.”</blockquote><p>In reality, many of these are closer to AI-powered workflows than enterprise-grade agents. While they excel at automating operational activities, they often lack centralized governance, orchestration, observability, and lifecycle management.</p><p>As a result, organizations face <strong>agent and skill sprawl</strong>, along with a growing challenge: how to govern an increasingly fragmented landscape of local skills, cloud-hosted agents, AI applications, and non-human identities.</p><p>This post outlines three AI workflow orchestration patterns of increasing maturity that organizations can adopt as they progress through their agentic journey.</p><h3>Pattern 1: MuleSoft “Between”</h3><p>Here Claude or ChatGPT serves as the primary engagement surface. These AI apps also orchestrate with tool calling via MCP or APIs to backend systems, while workflows are encapsulated as local skills or plugins running on user devices.</p><p>These local skills provide flexibility and a low barrier to entry. Users can rapidly build and customize workflows to suit their needs.</p><p>However, the tradeoff is governance.</p><p>Because the skills reside on local machines, they are difficult to centrally manage, can be modified by users, and often lead to inconsistent implementations across teams.</p><figure><img alt="Pattern 1: Mule “Between” for local skills with limited governance" src="https://cdn-images-1.medium.com/max/1024/1*k6AhiXWKn88CX9_QbxSg1w.png" /></figure><blockquote>In this pattern, <a href="https://www.mulesoft.com/platform/omni-api-gateway">MuleSoft Omni Gateway</a> can sit in <strong><em>between</em></strong> the engagement layer and enterprise apps, providing:</blockquote><ul><li>Governance of backend access</li><li>Security controls</li><li>Policy enforcement</li><li>Trust boundaries</li><li>Visibility into tool usage</li></ul><p>This creates a safer foundation while still allowing users to leverage local AI-driven workflows.</p><h3>Pattern 2: MuleSoft “Around”</h3><p>The second pattern extends the first by shifting portions of the orchestration logic into the <a href="https://www.mulesoft.com/ai/agent-broker">MuleSoft Agent Broker</a>, a key component of the centrally managed Agent Control Plane.</p><p>Now, workflow/orchestration logic exists in both places:</p><ul><li>Local AI applications continue to provide user-driven workflows and flexibility</li><li>A centrally managed broker orchestrates more critical business processes</li></ul><blockquote>The broker effectively sits <strong><em>around</em></strong> enterprise tools, providing orchestration, governance, control, and visibility.</blockquote><p>Unlike local skills, centrally managed workflows cannot be modified by individual users and are governed consistently across the organization.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*peUvptAktYx8lPonDpaspw.png" /></figure><p>This hybrid model is particularly useful during transition periods when organizations need to support both employee-created workflows and enterprise-managed automations.</p><p>For example, an employee might use a personal AI assistant to prepare a customer briefing, while a centrally governed workflow handles approval processes, compliance checks, and updates to systems of record.</p><p>Organizations gain flexibility without sacrificing control.</p><h3>Pattern 3: MuleSoft “Over”</h3><p>In the most mature pattern, orchestration is fully centralized, no more local skills.</p><blockquote>A broker or orchestration platform owns the coordination of tools, workflows, and managed agents. Engagement channels become interchangeable interfaces rather than the source of orchestration logic.</blockquote><p>Users can interact through:</p><ul><li>Slack</li><li>Claude or ChatGPT</li><li>Custom applications</li><li>Internal portals</li><li>APIs</li></ul><p>Regardless of the entry point, orchestration remains centralized.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aM70cx5CjO7uce3nKFK1xg.png" /></figure><p>This approach provides:</p><ul><li>A single point of access</li><li>Consistent business logic</li><li>Centrally governed workflows</li><li>Full visibility</li><li>Enterprise-grade security and compliance</li><li>Coordinated multi-agent execution</li></ul><p>This is where true multi-agent orchestration emerges, with agents, tools, and workflows operating under a centrally managed control plane rather than as isolated, disconnected implementations.</p><h3>The Path to Governed Orchestration</h3><p>These three patterns represent stages of maturity and are not competing architectures.</p><p>Many organizations start with local AI skills because they are fast, accessible, and deliver immediate value. Over time, governance, security, consistency, and scale become increasingly important, driving a gradual shift toward centrally orchestrated workflows and managed agent ecosystems.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*g3UnsRPdpzhfELFC9_AW_g.png" /></figure><p>The key is recognizing where you are today and building an architecture that allows you to evolve without forcing a complete redesign.</p><p>The future is unlikely to be entirely local or entirely centralized.</p><p>Instead, successful organizations will strike a balance between user flexibility and enterprise governance, creating a clear path from AI-powered workflows to orchestrated multi-agent systems.</p><p><em>Special thanks to </em><strong><em>Chuck Hirstius, Distinguished Solution Engineer at MuleSoft</em></strong><em>,</em><strong><em> </em></strong><em>for the technical leadership and architectural thinking that shaped the Between, Around, and Over maturity patterns described in this post.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=69175b30eacc" width="1" height="1" alt=""><hr><p><a href="https://medium.com/another-integration-blog/from-local-skills-to-governed-orchestration-three-patterns-of-agentic-ai-maturity-69175b30eacc">From Local Skills to Governed Orchestration: Three Patterns of Agentic AI Maturity</a> was originally published in <a href="https://medium.com/another-integration-blog">Another Integration Blog</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[MuleSoft Connectors and beyond: Enabling connectivity with a variety of applications]]></title>
            <link>https://medium.com/another-integration-blog/mulesoft-connectors-and-beyond-enabling-connectivity-with-a-variety-of-applications-54f8626c7fc0?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/54f8626c7fc0</guid>
            <category><![CDATA[connectivity]]></category>
            <category><![CDATA[api]]></category>
            <category><![CDATA[mulesoft]]></category>
            <category><![CDATA[integration]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Mon, 11 Jul 2022 17:32:57 GMT</pubDate>
            <atom:updated>2022-07-11T17:32:57.934Z</atom:updated>
            <content:encoded><![CDATA[<p>Connectivity to your applications and data is one of the core pillars of <a href="http://mulesoft.com/">MuleSoft Anypoint Platform</a> that empowers developers to innovate at scale. Anypoint Connectors are the center of connectivity and MuleSoft Exchange has 250+ out-of-the-box connectors to many popular SaaS, Cloud, and traditional applications.</p><p>In the ever-expanding software application landscape you may not find an out-of-the-box Connector for your favorite application. Not to worry…</p><blockquote>This post will walk you through how MuleSoft enables connectivity with any and all applications — with or without Connectors.</blockquote><p>For simplification, let’s divide the application landscape along two axes and four quadrants — application category (modern and traditional) and usage (common and niche):</p><ul><li>Modern applications are cloud/SaaS based that typically expose individual APIs or complete API specifications.</li><li>Traditional applications are mainly on-premises and could use SOAP service, messages, files, SDKs, or some legacy approach for integration.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*0FP2193JKQ1b5jtL1HQcZA.png" /></figure><p>With the above context let’s see how MuleSoft supports integration with modern and traditional applications in common and niche cases.</p><h4>1. Common modern applications</h4><p>For commonly used modern applications (top right quadrant), the MuleSoft Anypoint Platform provides out-of-the-box Connectors. The benefits of using Connectors include reduced code complexity, simplified authentication, inferring metadata, and easier code maintenance.</p><figure><img alt="Connectors for common modern applications" src="https://cdn-images-1.medium.com/max/1024/1*0NtAOnr_iunpjQlJKX5sUg.png" /><figcaption>Connectors for common modern applications</figcaption></figure><p>Example Connectors for modern enterprise applications include: DocuSign, Salesforce, Workday, and Zoom and for infrastructure services include Azure Data Lake, Amazon S3, and Google Pub/Sub from major cloud providers. Browse <a href="https://www.mulesoft.com/exchange/">MuleSoft Exchange</a> for the full list.</p><blockquote>There are four categories of Connectors — Premium, Select, MuleSoft Certified and Community; see description and <a href="https://www.mulesoft.com/legal/versioning-back-support-policy#anypoint-connectors">support policy</a> for details.</blockquote><p>Typically Connectors in this quadrant fall under Select category that are included as part of the Anypoint Platform subscription.</p><h4>2. Common traditional applications</h4><p>Similar to modern applications, MuleSoft Anypoint offers Connectors for commonly used traditional applications including SAP ERP, Oracle ERP, IBM CICS, and Microsoft Dynamics. In addition, Connectors are also available for common standards like X12, EDIFACT, AS2, and HL7.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1016/1*39TlMShQPbGroNklubMLKg.png" /><figcaption>Connectors for common traditional applications</figcaption></figure><blockquote>One key difference compared to the modern category is <strong>some (not all)</strong> Connectors in this quadrant fall under the Premium type requiring an additional license.</blockquote><p>See <a href="https://www.mulesoft.com/exchange/?search=category%3A%22level%22%20%3D%20%22Premium%22&amp;show=all">link</a> for list of Premium Connectors.</p><h4>3. Niche modern applications</h4><p>While Connectors are a great way to integrate with your applications MuleSoft may not have a Connector for your favorite application.</p><blockquote>When there is no out-of-the-box Connector available you can use one of the two options: a) Connector Generator and b) HTTP Connector.</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*WvZC1NKxRokQ4-bZ" /><figcaption>Connectivity options when a connector is not available</figcaption></figure><p>The Connector Generator, as the name suggests, generates an Anypoint Connector from an API specification in OAS (aka Swagger) or RAML format. The Connector can then be downloaded into Anypoint Studio and be used to connect to the target application.</p><p>Several vendors publish API specification for their applications making it easy to consume. For example, Avalara <a href="https://rest.avatax.com/swagger/ui/index.html">AvaTax</a> and <a href="https://qa.pricefx.eu/pricefx-api/json/index.html">Pricefx</a> publish OAS specifications. If the vendor doesn’t provide then you can write an OAS/RAML specification for the operations you are interested in which can then be used to generate a Connector.</p><p>Using the Connector Generator is easy; just upload the API spec into Anypoint Design Center and publish it to Anypoint Exchange. Now from Exchange you can browse all the REST API operations, view documentation, and download a Mule Connector as seen below. See the <a href="https://docs.mulesoft.com/exchange/to-deploy-using-rest-connect">documentation</a> on REST Connector Generator for further details.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/652/1*4TI41wBIbR0eZD9sCHXgzw.png" /><figcaption>Generated Connector using API specification</figcaption></figure><p>The second option is to use Anypoint <a href="https://docs.mulesoft.com/http-connector/1.7/">HTTP Connector</a> to call the individual REST APIs directly; typically application vendors document APIs in a Developer portal if they are not publishing the OAS specification.</p><h4>4. Niche traditional applications</h4><p>This fourth quadrant represents niche legacy applications that doesn’t expose APIs. Such applications typically provide one or more approaches for integration including SOAP-based web service, file, message, database call, or script (to call a function) and MuleSoft has Connectors for all of these approaches.</p><p>For instance, Mule <a href="https://docs.mulesoft.com/scripting-module/2.0/scripting-module-studio">Scripting module</a> enables the execution of custom logic written in a scripting language, the Java module for integrating with custom Java code, and Microsoft .NET Connector enables the execution of native .NET code.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*xKXE_92sPb6cfsU0" /><figcaption>Connectivity options when API or Connector is not available</figcaption></figure><h4>Can I create my own custom Connector?</h4><p>Yes, you can if none of the above options work and you have a special case.</p><p>The REST-based and traditional integration approaches work fine for application-oriented use cases but infrastructure services like AWS S3 or Google BigQuery will require more nuanced integration for file and network management or for performance optimization. For such cases, Java-based connectors work much better and <a href="https://docs.mulesoft.com/mule-sdk/1.1/getting-started">Mule SDK for Java</a> enables you to create a custom connector. See the list of <a href="https://www.mulesoft.com/exchange/?search=category%3A%22level%22%20%3D%20%22MuleSoft-Certified%22&amp;show=all">certified connectors</a> published in Exchange by the MuleSoft implementation partners.</p><h4>Conclusion</h4><p>MuleSoft Anypoint Connectors are a big part of enabling application connectivity to deliver with speed and agility. MuleSoft Exchange provides 250+ connectors for commonly used modern and niche applications.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*hZEwbxplkGRHBQoD" /></figure><p>When a Connector is not available for your application there are options including Connector Generator, calling REST APIs using HTTP Connector, or building your own custom connector. With a wide range of options MuleSoft enables you to connect to <strong>any</strong> application rapidly and create innovative solutions.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=54f8626c7fc0" width="1" height="1" alt=""><hr><p><a href="https://medium.com/another-integration-blog/mulesoft-connectors-and-beyond-enabling-connectivity-with-a-variety-of-applications-54f8626c7fc0">MuleSoft Connectors and beyond: Enabling connectivity with a variety of applications</a> was originally published in <a href="https://medium.com/another-integration-blog">Another Integration Blog</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Commerce platforms — past, present, and future]]></title>
            <link>https://dekoupled.medium.com/commerce-platforms-past-present-and-future-b84f83e2f85f?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/b84f83e2f85f</guid>
            <category><![CDATA[api]]></category>
            <category><![CDATA[commerce]]></category>
            <category><![CDATA[retail]]></category>
            <category><![CDATA[microservices]]></category>
            <category><![CDATA[omnichannel]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Tue, 27 Jul 2021 01:10:45 GMT</pubDate>
            <atom:updated>2021-07-27T01:15:39.076Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/680/1*NC0MTGqLyZoy_TbNmFj1gg.png" /><figcaption>Credit: Dreamstime Stock Photos</figcaption></figure><h3>Commerce platforms — past, present, and future</h3><p>Today, I listened to the Jason &amp; Scot Show Episode 270 — <a href="https://retailgeek.com/jason-scot-show-episode-270-microservice-platfroms/">Microservice based commerce platforms</a> with Kelly Goetsch, an insightful podcast on a topic that is near and dear to my heart.</p><p>The podcast touched on the past and current trends around the [enterprise] Commerce platforms; I believe it is evidence to the thesis that</p><blockquote><em>Business used to drive technology but now technology is driving the business.</em></blockquote><p>Thanks, Kelly for sharing your expertise and Jason &amp; Scot for covering this important topic.</p><p>Below are my three key observations:</p><p><strong>1. Commoditization:</strong> Commerce platform core features are unbundled, commoditized, and available as modular building blocks (think Legos) in a SaaS model. This allows retailers to choose best-of-the-breed components off the cloud and combine them with their brand secret sauce to compose unique shopper experiences i.e., <strong><em>composable commerce</em></strong>. This is the present state, but how we got here is #2 below.</p><p><strong>2. Packaged application to components</strong></p><ul><li>The enterprise Commerce platform market was essentially a three-horse race between IBM, Oracle, and SAP hybris roughly till 2015, give or take (and I was fortunate to be riding two of them during their glory years.) These platforms are packaged applications with guard rails and require SIs to customize and implement brand-specific processes. Several large retailers in the Internet Retailer Top 500 list drove billions of dollars in GMV each year. The platforms were successful but their time has come.</li><li>The cloud happened! There is an old saying in the cloud world —</li></ul><blockquote>Either you’re born in the cloud or not :)</blockquote><ul><li>Very few software platforms successfully made the transition from on-premise to cloud.</li><li>The cloud revolution was followed by microservices, APIs, headless, and now composable. The platform capabilities got decomposed into API-first, stateless and scalable components following <a href="https://machalliance.org/">MACH</a> principles which are built bottoms-up by several newer Commerce platforms and component vendors that specialize in one thing really well that is antithetical to the notion of platform as offered by the enterprise vendors.</li></ul><p><strong>3. Competing on architecture, not on capabilities</strong></p><ul><li>The newer platform/component vendors are now competing on the underlying architecture vs capability. This is an important shift! In my view, this is the <a href="https://dekoupled.com/the-power-shift-from-cmo-to-cto/"><strong>shift of power from CMO to CTO</strong></a> and a driving force behind the above two points.</li><li>Online commerce is roughly a 20-year-old market with most of the features and processes well-defined to be commoditized. The idea of cart, catalog, content, campaigns, payments, returns, and so on are commoditized and are not expected to change. What will change though is how they will surface in the shopper experience and where it will interface with the backend business processes enabling retailers to innovate new experiences rapidly. Naturally, the focus now is on agility and not on functionality.</li></ul><p>Now, where this is all going is even more interesting. With major cloud vendors already offering some of the Commerce components, it may not be surprising if they expand to offer full platform capabilities.</p><p>In the early days of Commerce, retailers built custom applications, then came enterprise platforms, and now retailers into “composing” custom platforms but using well-defined, off-the-shelf SaaS components. The cycle reminds me of the following quote by T.S. Eliot,</p><blockquote>We shall not cease from exploration, and the end of all our exploring will be to arrive where we started and know the place for the first time.</blockquote><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=b84f83e2f85f" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Should brands create NFTs?]]></title>
            <link>https://dekoupled.medium.com/should-retail-and-consumer-brands-create-nfts-ec5c87df0a3b?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/ec5c87df0a3b</guid>
            <category><![CDATA[brands]]></category>
            <category><![CDATA[retail]]></category>
            <category><![CDATA[blockchain]]></category>
            <category><![CDATA[marketing]]></category>
            <category><![CDATA[nft]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Sat, 19 Jun 2021 01:47:55 GMT</pubDate>
            <atom:updated>2021-06-19T13:06:12.465Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DVs6lfU2awg551pTI9GE7Q.png" /><figcaption>The above images are NFTs, not physical products</figcaption></figure><p>A 250 year old British auction house sold digital ownership i.e. Non-fungible Token (NFT) to a collage of 5,000 digital pictures for $69M. The digital was created by a random artist in North America and bought by a South Asian dude. And when America’s longest running TV show CBS 60 minutes features that <a href="https://www.youtube.com/watch?v=8kGlepv2C7M">story</a>, you know what the average Joe is thinking. “How can I create and sell my own NFT?”</p><p>Are retailers and consumer brands riding the trend?</p><p>Read on for some analysis, business benefits, examples, and a 1-min demo video.</p><h3>The non-fungible what?</h3><p>First, what is a token? A bunch of numbers that uniquely identifies a digital asset. For a good intro, see these posts on <a href="https://thenewstack.io/how-non-fungible-tokens-are-disrupting-the-art-world-and-more/">NewStack</a> and <a href="https://www.cnbc.com/2021/03/03/what-are-nfts-all-you-need-to-know-about-crypto-collectibles.html">CNBC</a>.</p><p>Second, what is fungible (interchangeable) about these tokens?</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*_5HaG9H48Vgnr8Ub" /><figcaption>Image courtesy of ArzDigital</figcaption></figure><h3>Let’s talk business</h3><p>Now that you are an NFT expert, let’s see why a Retail or Consumer Goods brand should care.</p><p>NFT offers the following useful attributes around marketing and selling:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*-aRNygt2UuhiiaxA" /></figure><p>Two attributes stand out — <strong>Marketing currency</strong> and <strong>Programmable</strong>.</p><h3>Marketing currency</h3><p>NFT is without a doubt a new marketing currency. Yes, the hype may fade, but there is a good possibility that the concept of digital ownership will survive.</p><p>What is fascinating about NFTs is that it could be both a product and a marketing tool.</p><p>The product is a digital asset that encapsulates some form of creativity or a moment in time. The idea of owning digital (bragging) rights to that moment is marketing on its own.</p><p>See example below before you think I am crazy!</p><h3>Programmable</h3><p>For techies, this idea of programming via Smart Contracts opens a world of possibilities.</p><p>Smart Contracts make NFT dynamic, monetizable, and serendipitous.</p><p>For example, you could tokenize your 1969 Mustang and give driving rights to token owners for a day at random. No, I <a href="https://www.bloomberg.com/news/articles/2020-01-31/want-to-own-a-ferrari-now-you-can-through-a-new-digital-token">didn’t make this up</a> on the spot.</p><p>Another good example is <a href="https://zephyrnet.com/this-nft-self-destructs-if-global-temperatures-rise-2c/">Two Degrees</a> — an NFT that will self-destruct if global temperatures rise 2°C. Ouch, that’s ironic in the context of crypto energy use and global warming.</p><h3>Are brands dropping NFTs?</h3><p>You bet!</p><p>Today, you can buy Nike shoes you can’t wear, tacos you can’t eat, and Pringles you can’t bite.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*xxfShDDdYaQL3lJF" /></figure><p>Just Food published an article titled, <a href="https://www.just-food.com/comment/why-nfts-can-offer-marketing-opportunities-for-fmcg-brands">Why NFTs can offer marketing opportunities for FMCG brands</a> where they discuss ideas on how brands can leverage NFT pheno-mania.</p><blockquote><strong>NFTs essentially offer three areas of utility for CPG brands: as part of overall long-term brand building (marketing); for short-term promotional use (promotion); and to generate immediate awareness for a company and its brand.</strong></blockquote><blockquote>Just Food — Why NFTs can offer marketing opportunities for FMCG brands</blockquote><h3>What does a good NFT look like?</h3><p>NFT is about creating buzz…I mean creating unique value that resonates with the brand, timed for market events, and that which makes it stand out. Then make it <strong>digitally scarce</strong>, i.e. mint only limited copies of it. For example, if you sell apple pies, limit it to 314 to make it subtly meaningful, or not.</p><p>To get immediate attention you have to be a brand, a celebrity, an artist, or an innovator (e.g. solve world hunger, cure cancer).</p><p>Brands have an easy start — they have both market awareness and an audience. All they have to do is redirect their marketing prowess to creating digital assets.</p><p>Timing is key. One great example is Charmin toilet paper NFtP.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/220/0*8pRbuBMXpm9epr7k" /></figure><p>Here is the excerpt from the <a href="https://www.just-food.com/comment/why-nfts-can-offer-marketing-opportunities-for-fmcg-brands">Just Food</a> article:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/936/0*KTMyfXNO4Lz3INSZ" /></figure><p>Now, did you notice the above excerpt starts with, “The NFT must make sense.” Not sure I agree, as it can limit creativity.</p><p>Another good example is CNBC’s <a href="https://www.cnbc.com/2021/05/24/mark-haines-remembering-and-honoring-a-cnbc-icon-with-an-nft-auction.html">Haines Bottom</a> that sold for $61,000. It’s a short video clip of Mark Haines calling the market bottom during the 2009 stock market crash.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/370/0*v2TWAtPEvBdAb_2q" /></figure><p>The key attribute of a good NFT is the ability to capture an important message or moment in history.</p><blockquote><strong>To memorialize moments, mint NFTs!</strong></blockquote><p>I think that is a cute line, can I NFT that? Well, not so fast, I ain’t no celebrity</p><h3>But what if you are a celebrity?</h3><p>Well, then anything goes, mostly. You can literally state a fact like “<em>Time is irreversible</em>” or draw a picture and create an NFT out of it.</p><p>On a serious note, one great example is <a href="https://veefriends.com/">VeeFriends</a> by Gary Vaynerchuk: “the main ambition of this project is to create meaningful intellectual property and create an extraordinary community. All tokens are a three-year admission token to VeeCon, an annual super-conference.”</p><p>Gary, a social marketing guru said,</p><blockquote><strong>“I know that NFTs will be here for the rest of my life.”</strong></blockquote><blockquote>Gary Vee</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/881/0*FF3RfC8mQeGXGbQ-" /></figure><h3>If you are still not bought into NFTs…</h3><p>Check out this $50 painting at Etsy which comes with a NFT to prove authenticity. If you are asking, “What do I do with this NFT,” it is the wrong question.</p><blockquote><strong>The point is, the market is willing to buy, and now the question is, are you selling it or not?</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*z4ckyFpJFlF_plL-" /></figure><h3>So should brands create NFTs?</h3><p>Absolutely!</p><p>NFTs are</p><ul><li>New marketing currency</li><li>Product + marketing medium</li><li>Useful to create brand awareness</li><li>Important to attract newer demographics (crypto gen…is that thing?)</li><li>Inexpensive and no supply constraints</li><li>Limited only by creativity</li></ul><p>So what are you waiting for? Go forth, and mint-away!</p><h3>How about a demo?</h3><p>This <a href="https://dekoupled.com/wp-content/uploads/2021/06/MuleComicNFTDemo.mp4">1-min demo video</a> provides a simple NFT ownership experience.</p><p>For the techies, here is how I implemented it.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*BnHg8BPkDYFrcC0B" /></figure><p>If you’re wondering how to connect your Web 2.0 application to Web 3.0/DApps, MuleSoft can help as we connect anything and change everything.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ec5c87df0a3b" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to accelerate financial lending operations with APIs and AI]]></title>
            <link>https://dekoupled.medium.com/how-to-accelerate-financial-lending-operations-with-apis-and-ai-f0a0e5b6e099?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/f0a0e5b6e099</guid>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[mulesoft]]></category>
            <category><![CDATA[machine-learning]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Mon, 14 Jun 2021 13:17:16 GMT</pubDate>
            <atom:updated>2021-06-14T13:17:16.672Z</atom:updated>
            <content:encoded><![CDATA[<p>The U.S. government relief programs in response to <a href="https://www.mulesoft.com/resources/covid-19">COVID-19</a> have put an unprecedented workload on the <a href="https://www.mulesoft.com/integration-solutions/soa/financial-services">banking industry</a>. The small business funding programs like Paycheck Protection Program (PPP) loans and Small Business Administration (SBA) Bridge loans have generated <a href="https://www.usatoday.com/story/opinion/todaysdebate/2020/04/20/sba-ppp-14-years-worth-loans-14-days-editorials-debates/5167961002/">14 years’ worth of applications in 13 days</a> underscoring the importance of digital transformation.</p><p>A recent blog post on <a href="https://blogs.mulesoft.com/biz/industries/connected-digital-banking/">navigating finan</a><a href="https://blogs.mulesoft.com/biz/industries/connected-digital-banking/">c</a><a href="https://blogs.mulesoft.com/biz/industries/connected-digital-banking/">ial uncertainty with connected digital banking</a> offered three guiding principles that will empower banks during this trying time. Of those three, the first principle is to leverage API-led connectivity to digitize and scale lending operations.</p><p>In this post, we offer a solution to an example use case in support of that first principle. The example highlights the benefit of APIs to rapidly integrate disparate systems and the power of artificial intelligence (AI) in automating mundane tasks to accelerate the lending process.</p><h3>Sample use case: The loan application</h3><p>Let’s take the SBA loan application process. According to the Small Business Administration site, the <a href="https://www.sba.gov/content/steps-life-sba-loan">life of an SBA loan</a> has 17 steps, many of them require some kind of document processing and verification. Specifically, the front-end of the process, loan origination step, involves handling various forms and documents. For example, the PPP application requires 12 different documents including proof of payroll, ownership (Schedule K-1), rent, utility bill, and so on.</p><p>A simplified workflow of the loan application process is as follows:</p><ul><li>The loan applicant fills the web form on the bank’s site then uploads/email various documents.</li><li>The uploaded documents typically are stored in some kind of cloud storage solution, like Box or an email server, in the case of emailed documents.</li><li>The staff extracts, reviews (e.g. validate for local jurisdiction requirement and regulation), and saves the documents along with the customer record in a CRM system, like Salesforce.</li><li>The officer then validates the document, evaluates risk, and submits the application to a back-end system for underwriting and decision.</li></ul><p>While some of the workflow steps — like risk evaluation and decision making — may require loan officer intervention, most of the other steps involving document review and validation can be automated which the majority of lenders perform manually today.</p><p>How do we scale this process quickly? The volume of applications makes it impossible to scale with manual operations. The number of different systems involved in the process makes it hard and time-consuming to automate the process using the traditional point-to-point integration.</p><p>A better and strategic approach to integration is needed where we use consumable building blocks (i.e., APIs) representing various process elements that can be composed (as opposed to building from scratch) to serve the dynamic business demands i.e., an API-led approach.</p><h3>Composing the process using APIs</h3><p>Now let’s take a section of the loan application use case and apply an API-led approach to compose the process steps below. The APIs supporting the following steps are available in the <a href="https://github.com/srimplify">Github project</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*jbiXlxD_DneQ8g-A.png" /></figure><p>The <a href="https://www.mulesoft.com/lp/whitepaper/api/api-led-connectivity">API-led connectivity</a> uses a methodical approach to connect data to applications through reusable APIs promoting consumption and self-service.</p><p>The first step is creating a system layer to unlock access to key applications. Here we use out-of-the-box connectors for <a href="https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-box-connector/">Box</a>, <a href="https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-salesforce-connector/">Salesforce</a>, and the <a href="https://docs.mulesoft.com/exchange/to-deploy-using-rest-connect">MuleSoft REST Connect</a> to access data without worrying about the complexities of the underlying systems. The result is a set of reusable building blocks that can now be consumed over and over and composed into different business processes.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*3PwtFEUr4JPazuZZ.png" /></figure><p>The second step creates the middle layer, also known as the Process Layer, that uses the System APIs to compose the following two processes:</p><ol><li>Document management Process API to extract and attach the loan documents uploaded from cloud storage to the corresponding account record in the CRM or a Content Management System (CMS).</li><li>Document validation process API to automatically transform the document from a PDF or image format to machine-readable data using <a href="https://glynt.ai/">GLYNT</a>, an AI solution. Then the data can be processed, validated against the business rules, and submitted to the Loan Origination System.</li></ol><p>The Process Layer APIs are built to eliminate the manual steps so the bank staff can focus on high-value tasks like risk evaluation and handling special cases or exceptions. The result is the ability to handle high volumes at scale without errors and respond faster to customer needs.</p><p>Finally, the Experience Layer at the top can consume the Process APIs to expose appropriate information to the loan processing application and the loan application web portal.</p><h3>Automate document processing with AI</h3><p>While APIs are used to accelerate data and process integration, AI is used to automate the manual and arduous document validation process. Here we use <a href="https://glynt.ai/">GLYNT</a>, an AI-powered no-code solution to transform a stream of documents into a stream of data. This solution is exposed as a set of REST APIs which is turned into a consumable building block using the MuleSoft REST connector.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/897/0*aUbsiR8FBd4wK0yg.png" /></figure><p>At a high-level GLYNT uses a supervised machine-learning model which is first trained using a set of sample documents. Once trained, the model can be called on the actual document to output data in a JSON format. The document-specific model is automatically overlaid with a classifier model to further abstract the complexity of understanding individual document models.</p><h3>Making the digital transformation journey</h3><p>Digitizing loan documents and composing the loan application process using APIs could be the first step in improving customer response time and experience. Now customers can snap and upload a photo of the document using their mobile phone and get to the decision point much faster.</p><p>With the API-led approach now it is easier to extend support for a new channel like mobile or chatbot by just creating a new Experience API that leverages the existing process layer. For example, imagine the benefit of swiftly adding a chatbot channel to offload the call center load, with both the chatbot and call center rep using the same document data.</p><p>As the banking industry focuses on helping customer service with urgent financial needs, an API-led approach not only helps in accelerating lending operations but also lays a future-proof foundation for successful digital transformation.</p><p>For more discussion on this topic, tune in to our on-demand webinar: <a href="https://www.mulesoft.com/webinars/api/strategy-financial-services-covid19">COVID-19’s impact to API strategies in financial services</a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f0a0e5b6e099" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Chatbots — Why and How]]></title>
            <link>https://dekoupled.medium.com/chatbots-why-and-how-7292c8e89fb5?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/7292c8e89fb5</guid>
            <category><![CDATA[customer-experience]]></category>
            <category><![CDATA[digital-transformation]]></category>
            <category><![CDATA[machine-learning]]></category>
            <category><![CDATA[chatbots]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Wed, 10 Jul 2019 18:21:58 GMT</pubDate>
            <atom:updated>2019-07-10T18:21:58.301Z</atom:updated>
            <content:encoded><![CDATA[<h3>Chatbots — Why and How</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/755/1*6ZN_OVZqTbRxEZppa6et2g.png" /></figure><p>Chatbots and Digital assistants have emerged as one of the important channels for companies to deliver personalized customer experiences. For many enterprises Chatbot falls under the digital transformation initiative as it offers the potential to interact with the customer wherever they are — mobile, web, or messaging apps — in a highly targeted fashion using data and machine learning. Here is <a href="https://www.forbes.com/sites/bernardmarr/2019/02/11/7-amazing-examples-of-online-chatbots-and-virtual-digital-assistants-in-practice/#25dc1a1f533e">an excellent overview</a> of Chatbots and a list of examples in practice by Forbes.</p><p>While many companies are experimenting some are still grappling with the question of why my customers need a chatbot when they already have an app, a web site, and the call center. I think the answer is in the question itself — why create an app when there is a web site. Chatbots are not just a new way of communication; it provides a natural way to interact with humans in an intelligent way.</p><p>For example, it is much easier to ask the bot “when is my credit card late fee due and how much is it” while you are standing in a checkout queue to make that impulsive buy. Granted you can swipe and tap your mobile phone to get the same information but it is a lot easier to type/speak a simple question. Don’t believe me? Read <a href="https://thefinancialbrand.com/84350/bank-of-america-chatbot-erica-retail-banking-virtual-assistant/">this detailed article</a> on Erica — Bank of America’s Chabot that is used by both millennials and baby boomers alike for simple tasks like locking the card which is literally a couple of taps away from the mobile app.</p><blockquote>Convenience is a key attribute of customer experience and Chatbots are all about making the interaction frictionless and targeted.</blockquote><p>So I believe enterprise market adoption of Chatbots (text and voice) is going to only accelerate.</p><p>In the rest of the post, I’ll share the key points I took away from Oracle Chatbot training class that I attended a few weeks ago. Thanks to Grant Ronald and the team from <a href="https://www.oracle.com/solutions/chatbots/what-is-a-chatbot">Oracle Chatbot group</a> for an engaging class.</p><ul><li>Chatbot as an application delivers value by simply abstracting the power of Machine Learning (ML) and Natural Language Processing (NLP) in a way that is transparent to the business user and the developer. In many applications, machine learning could be just one piece of the puzzle or several steps removed from delivering the end user experience. In contrast, the ML component of Chatbot directly adds value to the customer experience.</li><li>Chatbot uses classification algorithm, a supervised machine learning technique, to classify the input string based on the training data set. So it is important to train the Chatbot for unexpected or unsolved user input/utterances as well — i.e., training for the unhappy path is equally important as training for the happy path.</li><li>Use case selection for Chatbot requires deliberate thinking. Not all Interactive Voice Response (IVR) use cases can be ported over to Chatbot. Note humans express problems/desires and not the solution. So it is ideal to think from scratch and start with simple use cases like FAQs and navigation mechanism as explained in the Bank of America article referred above.</li></ul><blockquote>Conversation design experience is paramount for the success of Chatbot. It is more of an art than science requiring business thinking, human psychology, and linguistics to support global deployment. Oh, don’t forget that Chatbot can also have a personality!</blockquote><ul><li>Chatbot solution implementation entails a full software development lifecycle rather than plugging in a widget on the website. Specifically, conversation design, integration with channels and backend, and importantly continuous training and deployment are essential. In some sense, you will never be done as needs (human input) keep changing and expanding and hence the need for continuous training and deployment like any other data science/ML project.</li><li>Finally, measuring success requires inspecting analytics to identify maturity level, discovering unmet needs (remember, consumers will always surprise you), and tracking metrics like customer engagement level, traffic offload from other channels like the call center, and customer satisfaction scores.</li></ul><p>Digital Assistants and Chatbots are here to stay and are a powerful channel to enhance the customer experience. Leveraging the channel successfully requires a project lifecycle thinking starting from use case identification to on-going training based on new user data and other considerations that I’ve listed above.</p><p>Have a point or a comment? Feel free to comment below.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7292c8e89fb5" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[4 Takeaways from ‘How Google Does Machine Learning’ course]]></title>
            <link>https://dekoupled.medium.com/4-takeaways-from-how-google-does-machine-learning-course-d8d3d2cce393?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/d8d3d2cce393</guid>
            <category><![CDATA[coursera]]></category>
            <category><![CDATA[gcp]]></category>
            <category><![CDATA[machine-learning]]></category>
            <category><![CDATA[google]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Mon, 18 Feb 2019 03:55:26 GMT</pubDate>
            <atom:updated>2019-02-18T03:55:26.937Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/739/1*3ykeRPgjFcV2fANfDquGVg.jpeg" /></figure><p>Today, Machine Learning (ML) technology is simplified and abstracted to an API call so you can solve a data-intensive pattern matching problem easily. Google’s <a href="https://experiments.withgoogle.com/collection/ai/move-mirror/view">Move Mirror</a> is a great example.</p><p>While creating a standalone ML-based consumer app is reasonably straightforward, it can be quite challenging to infuse ML at scale into a mission-critical enterprise-class cloud platform. Enterprise apps have to consider various steps in the machine learning life cycle including data cleansing, integration, and production deployment. Operationalizing ML is a topic by itself and I’ll share more on that in a future post.</p><p>When I researched about operationalizing ML, I found an online course titled <em>How Google Does Machine Learning</em>. Intrigued by the title, I took the course to understand how leveraging ML in consumer web apps compares to enterprise apps. The course gave me fresh perspectives on ML and validated several of my views on bringing ML to life.</p><p>In this post, I’ll share four key learning from the course.</p><h3>1. Machine Learning (ML) effort allocation — Expectation vs. Reality</h3><p>From a business process automation project standpoint, Machine Learning component is just one small piece of the total effort. The diagram below compares the expected effort with reality across various steps in making the project successful and this fairly matches with my recent experience.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/739/1*35xv3cMwzpQksa7jw-WoQw.jpeg" /><figcaption><em>Source: How Google does Machine Learning, Coursera</em></figcaption></figure><blockquote>My takeaway is ML model generation and parameter tuning are important but it can’t be the only focus of an ML project. Data gathering and cleansing, integrating ML predictions and feedback loop, and the infrastructure for deploying ML models in production are some of the critical steps that consume more effort.</blockquote><p>Check Google’s blog post on <a href="https://medium.com/thelaunchpad/the-ml-surprise-f54706361a6c">ML surprise</a> for more on this point.</p><p>Product managers leading the ML project should consider above effort allocation in prioritization and planning in order to deliver the value of ML to end customer.</p><h3>2. ML Strategy is first and foremost a data strategy</h3><p>This seems obvious at first. But Google suggests big data and analytics as a <em>pre-requisite</em> for doing any machine learning. In other words, ML is used to automate the insight generation process (of analytics) at scale with a learning feedback loop. The bigger point is if you don’t have the data to run analytics then you can’t do ML.</p><blockquote>Simple ML and more data are better than fancy ML and small data. Quality and quantity of data should take precedence over fancy models and algorithms.</blockquote><p>Next is support for batch and streaming data. Unless the same ML system runs both the batch data and streaming data the training-serving skew will become an issue. This could be due to data scientists and production team using a different set of coding tools. Apache Beam or Google DataFlow solves this by processing batch and streaming data pipelines in the same way.</p><h3>3. Multiple models for a business problem</h3><p>For models to be effective in prediction, it is important to break the problem into smaller tasks and apply the specific model to each task as opposed to using a single monolithic model.</p><p>For example, forecasting stock-outs can be divided into predicting product demand, predicting inventory, and predicting restocking time and each one can use a different model. Also, the model could vary by product category as forecasting logic is different for an electronic and a kitchen item.</p><p>On a related note, Google has over 4,000 ML models in production that are transforming Google to become an AI-first company.</p><h3>4. Equality of opportunity</h3><p>This important ML concept gives individuals an equal chance of desired outcome i.e. when you move a sample from one sub-group to another the outcome remains the same. Depending on the situation the model can minimize or maximize false positive rate (or type I error) or false negative rate (or type II error). The trade-off between Precision and Recall will improve inclusiveness.</p><blockquote>To ensure equality of opportunity data should be fair and representative as bias in the data leads to bias in the model.</blockquote><p>Data problems like unbalanced distribution, unexpected feature values, missing values, and distribution skew between data sets (i.e., train and test set) can bias the model. <a href="https://pair-code.github.io/facets/">Facets</a>, an open-source visualization tool, helps to understand the data, discover anomalies, and help create inclusive ML models.</p><h3>ML in action</h3><p>Earlier, I wrote that ML technology is simplified for easier consumption and the course labs prove that statement. In the course lab exercise, I got my hands dirty with Python, DataLab and BigQuery columnar database running on Google Cloud Platform using VMs and server-less managed services.</p><p>Running an analysis on a large dataset with 70M rows using BigQuery in less than three seconds is impressive. Finally, the pre-trained models for vision, video, speech, and Natural Language Processing (NLP) are easily accessible via APIs so you don’t have write models for common use cases from scratch.</p><p>That wraps my key learning and takeaways from the Google Machine Learning introduction course.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d8d3d2cce393" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[7 concepts to launch into Machine Learning]]></title>
            <link>https://dekoupled.medium.com/7-concepts-to-launch-into-machine-learning-e1ef42fe77c7?source=rss-80d104fc490f------2</link>
            <guid isPermaLink="false">https://medium.com/p/e1ef42fe77c7</guid>
            <category><![CDATA[gcp]]></category>
            <category><![CDATA[machine-learning]]></category>
            <category><![CDATA[google]]></category>
            <category><![CDATA[coursera]]></category>
            <category><![CDATA[google-cloud-platform]]></category>
            <dc:creator><![CDATA[Srini Rangaswamy]]></dc:creator>
            <pubDate>Mon, 11 Feb 2019 20:38:04 GMT</pubDate>
            <atom:updated>2019-02-18T03:58:02.023Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*BNwHsGl1QcojWbYsGsbRdg.png" /></figure><p>After completing <em>How Google Does Machine Learning</em> course (summary in an earlier <a href="https://medium.com/@srimplify/4-takeaways-from-how-google-does-machine-learning-course-d8d3d2cce393">post</a>), I began <strong><em>Launching into Machine Learning</em></strong><em> </em>course by Google Cloud on Coursera. I was hoping to beat the course deadline, but I miscalculated the depth and complexity of the material. In addition to refreshing some calculus, I had to search a few blogs and refer to the book <em>Hands-On Machine Learning with Scikit-Learn and TensorFlow</em> by <em>Aurélien Géron</em>to gain a solid grounding on the concepts.</p><p>In this post, I’ll document seven key concepts covered by the course to launch into Machine Learning.</p><h3>1. Machine Learning (ML) terminologies demystified</h3><p>While it is exciting to see how mathematical concepts are applied to a data problem some terminologies are referred under new names influenced by the ML discipline. For example, the independent variable in an equation is referred to as a feature in ML. Once I got through the ML-speak it became easier to follow the course.</p><p>Below are some basic ML terminologies with description. ML purists out there are welcome to correct me :)</p><ul><li>Algorithm — a set of rules to solve a problem. The algorithm is independent of the dataset. For e.g. a simple regression y = a + x * b (understand this is an equation, but you get the idea)</li><li>Model — the output of the machine learning process. It is specific to a dataset. E.g. <em>Tip amount = 1 + 0.12 * Bill amount</em>. Many use algorithm and model interchangeably</li></ul><blockquote>Feature — an input parameter or independent variable. In ML, this is information we already have access to e.g. Bill Amount in the above equation</blockquote><ul><li>Feature weight — the coefficient of a variable. In ML feature weight is determined through the training process e.g. 0.12 in the above equation</li><li>Bias term — a constant in the equation e.g. 1 in the above equation</li><li>Hyperparameter — this requires some explanation so it is captured below separately</li></ul><blockquote><em>Labeled data — Label is essentially what the ML model predicts. Labeled data are dataset containing answers (i.e. values to be predicted) e.g. past one-year data on Bill amount with corresponding Tip amount</em></blockquote><ul><li>Loss function — also known as a cost function, is the error metric used to measure the model performance. e.g. root mean squared error (RMSE) for linear regression</li><li>Training — the process of applying an algorithm on an existing dataset to come up with a model. E.g. training process outputs the equation <em>Tip amount = 1 + 0.12 * Bill amount</em> by modeling the existing dataset using regression</li><li>Generalization — the property of an ML model to <em>fairly</em> represent the current dataset so it can predict the labels on unseen data with minimal error. In other words, the model is a good proxy for real-world data which it hasn’t seen before</li></ul><h3>2. Machine Learning types</h3><p>Supervised and Unsupervised are the two main Machine Learning types. There is a ton literature on the web about these two types, but I was looking for a side-by-side comparison that captures the key differences between them so I created one below.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/685/1*ehqKpOz-qH4k5AZYmpkwXQ.png" /></figure><p>There are two more types, Semi-supervised and Reinforcement. <strong>Semi-supervised</strong> Machine Learning is a hybrid of Supervised and Unsupervised, that mainly feeds off of few labeled dataset using supervised and transitions to unsupervised on a large unlabeled dataset. A great example is tagging of photos with names e.g. iOS Camera app and Google Photos.</p><p>The fourth is <strong>Reinforcement </strong>learning that learns by itself based on the reward or penalty from previous actions. Robots learn how to walk using this algorithm.</p><h3>3. Optimizing the ML model</h3><p>The goal of ML is to create a model for a given dataset to predict the label (dependent variable) accurately. The accuracy of prediction increases when the prediction error is minimized. If ML uses a linear regression with few variables there are analytical tools to determine the best feature weights that minimize the error, which is RMSE in this case.</p><p>What if you have with hundreds or thousands of features and a large dataset? Analytical computation becomes impractical. Gradient Descent comes to rescue!</p><blockquote><em>Gradient Descent (GD) is an optimization algorithm that iteratively tweaks the weights to minimize the error. GD scales and runs faster and is widely used to optimize the ML model.</em></blockquote><p><strong>Gradient Descent</strong> iterates by <strong>first </strong>identifying the direction to change the weight (referred as slope/gradient or derivative in calculus), <strong>second </strong>changing the weight in steps (aka learning rate), and <strong>third </strong>checking for the error and looping through until a minimum is reached. This is the process of <em>walking down the loss curve</em> (for the single parameter) or loss surface (multiple parameters) on all the points in parameter space. Check this blog post at <a href="https://machinelearningmastery.com/gradient-descent-for-machine-learning">Machine Learning Mastery</a> for further explanation.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/773/1*3IfVUYrHhbkTT2iClvMw5A.png" /></figure><p>There are mainly <strong>three flavors of Gradient Descent </strong>— Batch, Mini-batch, and Stochastic. Mini-batch is the popular one, which runs on a subset of the data by extracting samples that on average balance each other out. The size of this subset is referred to as a batch size.</p><h3>4. Parameter vs. Hyperparameter</h3><p>You will hear Data Scientists talk a lot about hyperparameter tuning. To understand what a hyperparameter is, it is first important to highlight a key point about the previous concept of optimization.</p><blockquote>Most ML models require an optimization algorithm to perfect the model and Gradient Descent is a good example. But note this optimization algorithm itself is not part of the final ML model.</blockquote><p>Let me try a simple analogy — assume you are a student, learning to drive with an instructor who is guiding so you get <em>trained</em> quickly and effectively. When you learn to drive well (with minimal error) and pass the driver’s test (model validation) you don’t need the instructor anymore.</p><p>Now the attribute of the student (i.e. model) learning to drive is the parameter or model parameter and the attribute of the instructor (i.e. optimization algorithm) is the hyperparameter. For Gradient Descent, learning rate (aka step size) and batch size are hyperparameters.</p><p>Below is a simple side-by-side comparison and explanation of parameter and hyperparameter.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/598/1*AV9JWmtPeM9Wz9HqUhI1Sw.png" /></figure><h3>5. Machine Learning workflow</h3><p>ML workflow puts together all the above concepts to arrive at a generalized model for prediction. Model selection is the first step (after gathering and cleansing data) which is driven by the use case and data distribution.</p><p>Then train the model with a set of hyperparameters and validate the results. Based on the results tune the hyperparameters (i.e. adjust the batch size and learning rate or nodes and layers for neural nets) and repeat the process until model shows signs of overfitting.</p><blockquote><em>Hyperparameters play a key role in regulating the ML workflow by generalizing the model for a given data set.</em></blockquote><p>Finally, use the last non-overfit model (the model before when overfitting starts) for prediction.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/678/1*yVeIFVQf9qIGCo-uWg59ug.png" /></figure><h3>6. Three buckets of data</h3><p>The ML workflow requires three different data buckets.</p><ul><li><strong>Training </strong>set or bucket for computing feature weights and going through the optimization process with Gradient Descent to minimize the error</li><li>The <strong>Validation </strong>set is used to frequently evaluate the performance of the model on a data-set that the model hasn’t seen in order to tune the hyperparameters</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/335/1*A0Cxo2v7t6pHOpLZi4zFXg.png" /></figure><ul><li>The <strong>Test </strong>set is used for the final evaluation of the model to make a go or no-go decision at the business level. This is usually done by evaluating the model against a business performance metric or by establishing a simple benchmark</li></ul><blockquote><em>While the Validation set is used multiple times to tune hyperparameter for better model performance the Test set is used only once.</em></blockquote><p>This is to prevent the model from learning the Test set and subsequently provide an unbiased evaluation of a final model fit.</p><h3>7. Sampling for repeatability</h3><p>Machine Learning is all about <strong>experimenting with models and data </strong>to automate prediction at scale.</p><p>Successful experimentation requires repeatability. Data scientists experiment by keeping the dataset constant while tweaking and tuning the model and running it again, on the exact same experimentation data set.</p><p><strong>Repeatability </strong>also enables collaboration by allowing team members to run the experiment and get the same results.</p><p>In order to repeat experiments and get the same results, you need a repeatable sample of datasets.</p><blockquote><em>Systematic sampling technique is used to create repeatable datasets.</em></blockquote><p>One such technique is to use a one-way hash function on a column that has a fair distribution. For e.g. apply hash on the date column and use modulo operator to select a certain percentile of data for a given bucket.</p><p>That completes the seven basic Machine Learning concepts. It is worth repeating that Machine Learning is an experimentation process with data and models. Understanding these basic concepts is not only essential to put that process into practice, but also helps the Business to better engage with the Data Scientists.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e1ef42fe77c7" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>