Identify potential Money Laundering from transaction history using Graph Databases and LLMs
The Challenge
A financial institution aims to build a system to detect money laundering patterns and unusual transactions. The challenge lies in the complexity of the problem, which goes beyond a straightforward ML-based approach. Analyzing factors such as past transactions and transaction recipients to identify money laundering patterns is challenging. Tatras utilized graph networks and GenAI to build a solution. This approach improved efficiency, and scalability in detecting suspicious activities.
Hypothesis
- Graph-based data structures can enable easy backtracking and relation finding for transactions.
- GenAI advanced agents can generate dynamic graph queries to retrieve data.
- Retrieved data can be used to generate inferences and answer user queries.
Execution
- Utilized Neo4j Graph DB to store data.
- GenAI Cypher QA agents analyze user queries in natural language and the graph schema to generate graph queries. The query is then executed.
- REACT agent infers from fetched data and user query to provide the final answer.
- Libraries used: Scikit-learn, Langchain, PyTorch, Llama Index Transformers, Fast-API, Neo4j
Outcomes
- A dynamic knowledge graph displayed on the UI provides users with clear insights on money laundering patterns.
- Improved ability to track transactions seamlessly from start to end using the graph-based representation.
- GenAI agents capability to generate dynamic queries enhances system flexibility and generality.
Project Highlights
- Graph-based data structure to effectively track transactions and identify patterns.
- Dynamic knowledge graphs on the UI provide an intuitive way to analyze money laundering patterns.