Cointime

Download App
iOS & Android

A Feature Engineering Case Study in Consistency and Fraud Detection

Validated Venture

Main Takeaways

  • As the world’s largest crypto exchange, it’s crucial we have a risk detection system that is fast yet doesn’t compromise on accuracy. 
  • The challenge we encountered was ensuring our models always used up-to-date information, especially when detecting suspicious account activity in real-time. 
  • To achieve stronger feature consistency and greater production speed, we now make reasonable assumptions about our data and combine our batch and streaming pipelines. 

Discover how our feature engineering pipeline creates strong, consistent features to detect fraudulent withdrawals on the Binance platform. 

Inside our machine learning (ML) pipeline — which you can learn more about in a previous article — we recently built an automated feature engineering pipeline that funnels raw data into reusable online features that can be shared across all risk-related models. 

In the process of building and testing this pipeline, our data scientists encountered an intriguing feature consistency problem: How do we create accurate sets of online features that dynamically change over time?

Consider this real-world scenario: A crypto exchange — in this case, Binance — is trying to detect fraudulent withdrawals before money leaves the platform. One possible solution is to add a feature to your model that detects time lapsed since the user’s last specific operation (e.g., log in or bind mobile). It would look something like this:

user_id|last_bind_google_time_diff_in_days|...

1|3.52|...

The Challenge of Implementation

The number of keys required to calculate and update features in an online feature store is impractical. Using a streaming pipeline, such as Flink, would be impossible since it can only calculate users with records coming into Kafka at the present moment. 

As a compromise, we could use a batch pipeline and accept some delay. Let’s say a model can fetch features from an online feature store and perform real-time inference in around one hour. At the same time, if it takes one hour for a feature store to finish calculating and ingesting data, the batch pipeline would — in theory — solve the problem.

Unfortunately, there’s one glaring issue: using such a batch pipeline is highly time-consuming. This makes finishing within one hour unfeasible when you’re the world’s largest crypto exchange dealing with approximately a hundred million users and a TPS limit for writes.  

We’ve found that the best practice is to make assumptions about our users, thereby shrinking the amount of data going into our feature store. 

Easing the Issue With Practical Assumptions

Online features are ingested in real-time and are constantly changing because they represent the most up-to-date version of an environment. With active Binance users, we cannot afford to use models with outdated features.

It’s imperative that our system flags any suspicious withdrawals as soon as possible. Any added delay, even by a few minutes, means more time for a malicious actor to get away with their crimes. 

So, for the sake of efficiency, we assume recent logins hold relatively higher risk:

  • We find (250 days + 0.125[3/24 delay] day) produces relatively smaller errors than (1 day +  0.125[3/24 delay] day).
  • Most operations won’t exceed a certain threshold; let’s say 365 days. To save time and computing resources, we omit users who haven’t logged in for over a year. 

Our Solution

We use lambda architecture, which entails a process where we combine batch and streaming pipelines, to achieve stronger feature consistency.

What does the solution look like conceptually?

  • Batch Pipeline: Performs feature engineering for a massive user base.
  • Streaming Pipeline: Remedies batch pipeline delay time for recent logins.

What if a record is ingested into the online feature store between the delay time in batch ingestion?

Our features still maintain strong consistency even when records are ingested during the one-hour batch ingestion delay period. This is because the online feature store we use at Binance returns the latest value based on the event_time you specify when retrieving the value.

Comments

All Comments

Recommended for you

  • US Spot Ethereum ETF Sees Net Inflow of $14.98 Million Yesterday

    On October 22, according to monitoring by Trader T, the US spot Ethereum ETF recorded a net inflow of $14.98 million yesterday.

  • Sonic to Transfer 13 Million S Tokens via Strategic OTC Agreement in Next 24 to 48 Hours

    On October 22, Sonic announced on the X platform that approximately 13 million S tokens will be transferred in the next 24 to 48 hours under a strategic over-the-counter (OTC) agreement. The counterparty is a long-term partner of Sonic, and both parties will collaborate to expand Sonic's reach and enhance user engagement through the partner's network.

  • Bank of Korea Maintains Interest Rate as Expected

    On October 22, the Bank of Korea kept the policy interest rate unchanged at 3%, in line with market expectations. Previously, South Korea raised interest rates in consecutive meetings in July and August.

  • U.S. Treasury Secretary Becerra: GENIUS Act Establishes Federal Regulatory Framework for Stablecoin Payments

    U.S. Treasury Secretary Scott Becerra stated that the GENIUS Act is a milestone in the American financial sector, further solidifying the U.S. position as a global cryptocurrency hub. He compared the bill to the National Currency Act signed by President Lincoln in 1863, asserting that it establishes a federal regulatory framework for stablecoin payments in the digital age. Becerra also mentioned that the final rules issued by the Office of the Comptroller of the Currency (OCC) will facilitate the implementation of the bill, providing a clear and pragmatic institutional foundation for private sector innovation, market competition, and maintaining U.S. leadership in the digital asset space.

  • Kalshi to Support Crypto Asset-Backed Loans for Perpetual Futures Margin

    Prediction market platform Kalshi has reached a new arrangement with crypto asset custodian BitGo, allowing certain clients to use their custodial crypto assets as collateral for loans, which will be used for margin in leveraged perpetual futures trading on the Kalshi exchange. This arrangement is aimed at clients of Kalshi Prime, a futures commission merchant registered in the U.S. It employs a tri-party collateral management structure. Loans will be provided by its affiliated lending company, Kalshi Katalyst, with collateral assets held at BitGo Bank & Trust. Eligible collateral assets include Bitcoin, Ethereum, and stablecoins deemed compliant with the GENIUS Act, with plans to integrate additional custodians in the future.

  • Serious Security Vulnerability Discovered in PHP, Leading to Mass Shutdown of Government Websites in Europe

    On October 21, due to the discovery of serious security vulnerabilities in the widely used PHP programming language, multiple government websites across Europe and other regions were forced offline on Wednesday, prompting website operators to take urgent measures to protect system security. The PHP development team announced on Tuesday that two severe security flaws had been identified and urged users to update immediately after the release of the fix. On Wednesday, the PHP team confirmed that a new version addressing the vulnerabilities had been officially released. However, reports indicated that hackers were exploiting these vulnerabilities to breach websites, leading government agencies in countries such as the Netherlands and Finland to proactively shut down some sites before the patch was made available. PHP is one of the most widely used programming languages on the internet, supporting website platforms such as WordPress, Drupal, Joomla, and Magento. According to website technology statistics agency W3Techs, approximately 75% of websites that can identify their programming language use PHP. About 43% of websites globally are powered by WordPress, covering blogs, small business sites, government portals, e-commerce platforms, and news websites. This security incident has resulted in widespread disruptions to websites across multiple European countries, including the Port of Rotterdam, the government portal Overheid.nl, the Royal Netherlands Football Association, the websites of the country's five major political parties, and several hospital websites, all of which have been temporarily shut down.

  • US Stock Indices Open Slightly Higher; SpaceX Soars 8% After Earnings

    The three major US stock indices opened slightly higher, with the Dow Jones Industrial Average up 0.20%, the S&P 500 up 0.29%, and the Nasdaq Composite up 0.71%. SpaceX opened 8% higher, reporting third-quarter revenue of $14.6 billion, a year-on-year increase of 161%. Elon Musk stated that the annual recurring revenue (ARR) is expected to reach between $500 billion and $1 trillion by the end of 2027. Among other popular stocks, Nvidia rose 2.15%, Apple increased 0.09%, Google (Class A) fell 1.28%, Microsoft decreased 0.56%, Amazon was up 0.01%, TSMC rose 1.95%, SpaceX climbed 7.8%, Meta increased 0.24%, Broadcom rose 0.8%, Tesla was up 2.98%, SK Hynix increased 4.11%, Micron Technology rose 3.31%, AMD was up 2.25%, ASML increased 2.83%, Intel rose 2.01%, Cisco increased 0.67%, Oracle was up 1.55%, Dell Technologies (Class C) rose 7.81%, and ARM increased 2.78%.

  • ZEC Surpasses $1300

    Market data shows that ZEC has surpassed $1300, currently priced at $1315.68, with a 24-hour increase of 14.89%. Due to significant market fluctuations, please ensure proper risk management.

  • OpenAI to Launch on Google Cloud: Cutting-Edge Models like GPT-6 Astra and Codex Code Intelligence Available on Google Cloud

    On October 21, the two companies announced that in the coming weeks, OpenAI will offer its cutting-edge AI models and Codex code intelligence services through Google Cloud. This move deepens the collaboration between these two competitors and highlights how major cloud service providers are becoming important distribution channels for top AI models. According to a corporate blog announcement, this partnership will integrate OpenAI's latest models, including GPT-6 Astra, into Google Cloud's Model Garden. Customers will be able to purchase these models on the Google Cloud Marketplace and settle using their existing cloud service procurement credits. OpenAI aims to promote its models to a broader range of enterprise customers.

  • Zelensky: Willing to Reach Peace Agreement While Retaining Control of At Least 75% of Territory

    On October 21, Ukrainian President Zelensky stated in an interview that Ukraine could reach a peace agreement while retaining control of at least 75% of its territory. When asked by the host whether he would be willing to accept a peace agreement that would freeze the situation as it is, with Ukraine still holding 75% or more of its land, Zelensky responded affirmatively, stating, "Now we must freeze (the front lines), this is a practical way to end this war." (CCTV News)