chevron-icon
Active RFP

Implement clustering heuristics in MeTTa

Top
chevron-icon
SingularityNET
RFP Owner

Implement clustering heuristics in MeTTa

Implement clustering heuristics in MeTTa

  • Type SingularityNET RFP
  • Total RFP Funding $40,000 USD
  • Proposals 6
  • Awarded Projects n/a

Overview

  • Est. Complexity

    💪 50/ 100

  • Est. Execution Time

    ⏱️ 3 Months

  • Proposal Winners

    🏆 Single

  • Max Funding / Proposal

    $15,000USD

RFP Details

Short summary

The goal is to implement clustering algorithms in MeTTa and demonstrate interesting functionality on simple but meaningful test problems. This serves as a working prototype providing guidance for development of scalable tooling providing similar functionality, suitable for serving as part of a Hyperon-based AGI system following the PRIMUS cognitive architecture.

Main purpose

The primary objective is to implement clustering heuristics in MeTTa

Long description

Context And Background: 

SingularityNET Foundation, in collaboration with other partners such as the OpenCog Foundation and TrueAGI, is working toward a scalable implementation of the Hyperon AGI framework running on decentralized infrastructure, and toward implementation of the PRIMUS cognitive architecture within this framework.

Hyperon and PRIMUS are complex systems involving multiple components, which need to demonstrate appropriate functionalities both individually and in combination. 

This RFP aims to implement clustering heuristics in MeTTa. Clustering is one of the most common unsupervised learning tasks, used to group objects of similar characteristics and assign them a common group label. It has applications in various fields such as pattern recognition, image segmentation, genomics, and marketing analysis. As a language designed for developing AGI systems, MeTTa needs to include standard libraries that perform common machine learning tasks such as clustering.

For this RFP, the focus will be on implementing at least these four key clustering algorithms:

  • K-Means
  • Hierarchical Clustering
  • Spectral Clustering
  • Gaussian Mixture Model (GMM)

These algorithms are fundamental to a wide range of clustering tasks and are widely used in fields that require efficient and effective unsupervised learning. By integrating these methods, MeTTa will gain the ability to process diverse datasets and provide robust clustering capabilities across different problem domains.

MeTTa is a multi-paradigm language for declarative and functional computations over knowledge metagraphs, designed specifically to meet the needs of Artificial General Intelligence (AGI). It is an innovative and relatively new language, and might sometimes come with a learning curve for starters. While there are also plenty of resources and tutorials that one can reference for his/her needs, they may not be enough to fully cover all possible unique usages. 

Collaboration:

This RFP will be followed by subsequent RFPs for applications that leverage Hyperon/PRIMUS to carry out various applications, and that aim to guide Hyperon/PRIMUS systems in cognitive development toward beneficial AGI.

RFP Expected Outcomes:

  • Initial deployment: Deployment of demo use cases that make use of the clustering library
  • OSS code: Provision of code underlying the initial deployment in an open code repository with an appropriate OSS license
  • Thorough documentation: Provision of an accompanying comprehensive documentation detailing each clustering algorithm included in the library along with examples and tutorials showcasing how to use them. The documentation should also describe the structure of the codebase to allow other teams to work on extending the library.
  • Technical report: Provide a technical report summarizing experiments run with the clustering algorithms implemented in the library on well-known benchmark datasets and along with results obtained. The data and code used in the experiments should be publicly available and be shared to allow others to replicate the work.

Functional Requirements

  • Required clustering algorithms
    Develop and implement clustering algorithms within the MeTTa language, focusing on at least the following 4 key algorithms for this initial RFP:
    • K-Means
    • Hierarchical Clustering
    • Spectral Clustering
    • Gaussian Mixture Model (GMM)
  • Evaluation metrics:
    In addition to implementing the clustering algorithms, port the evaluation metrics of clustering algorithms into MeTTa. These include:
  • Data ingestion and compatibility:
    Ensure the system can accept inputs in common data formats such as CSV and TSV, and facilitate integration with other AI workflows by interfacing seamlessly with Numpy and Pandas Python libraries.
  • Clustering output visualization:
    Include a submodule for visualizing the output of clustering algorithms, with support for dimensionality reduction techniques like t-SNE to enhance data visualization.
  • Concurrent processing:
    Leveraging concurrent processing in MeTTa (e.g., multi-core systems) is a valuable feature to optimize performance and scalability, especially for large datasets.
  • Export capabilities:
    Implement a submodule that allows exporting the results of clustering analyses, ensuring the output can be utilized in various downstream applications.
  • Future directions:
    Provide recommendations for extending the library with new clustering algorithms, particularly those based on NNs or other advanced techniques.
  • Developer usability:
    Ensure that the clustering library is developer-friendly and includes comprehensive documentation, tutorials, and examples. The system should be demonstrable and usable by other developers, encouraging broader adoption within the community.

Non-functional Requirements

Programming language

  • Develop and implement clustering algorithms using the MeTTa language.

Documentation

  • Provide comprehensive documentation detailing the library’s structure, the clustering algorithms implemented, and examples of how to use them.
  • Include guidelines for data ingestion, querying practices, and interface customization.
  • Ensure that the documentation is accessible both with the code and on a publicly hosted website.

Technical reporting

  • Prepare a technical report that evaluates the performance of the ported clustering algorithms, including metrics such as accuracy and runtime on benchmark datasets.
  • Compare the performance of the MeTTa-based clustering algorithms with equivalent implementations in Scikit-learn.
  • Discuss challenges encountered during development and how they were addressed.
  • Suggest potential extensions to the library and provide insights into future directions.

Code quality

  • Ensure clean, well-commented code that adheres to best practices, making it easy to maintain and extend.
  • Demonstrate a commitment to quality through comprehensive documentation detailing the software’s structure and functionality.

Visualization and export modules

  • Develop modules for visualizing clustering results and exporting analysis outputs, emphasizing the importance of making the clustering analysis results easily interpretable and usable.

Nice to have

  • Create a project website showcasing the library with example data to highlight its capabilities and facilitate user engagement.
  • Recorded tutorial that can be followed by other developers interested in learning MeTTa

Main evaluation criteria

Alignment with requirements and objective

  • Does the proposal meet the requirements and advances the objectives of the RFP

Pre-existing R&D

  • Has the team previously done similar or related research or development work in other platforms / languages / contexts?

Team competence

  • Does the team have relevant skills?

Cost

  • Does the proposal offer good value for money?

Timeline

  • Does the proposal include a set of clearly defined milestones?

Other resources

Currently, the Scikit-learn framework implements 11 clustering algorithms that have different parameters and assumptions about the input. An overview of the available clustering algorithms can be found here.

Hyperon and related AI-platforms are quickly evolving! This is a bit of a moving target, but the internal SingularityNET team will be available for help and expert advice, where needed. Also included:

  • SingularityNET technology links
  • Educational materials and resources for learning MeTTa
  • SingularityNET holds MeTTa study group calls every other week. Proposers are welcome to attend for support from our researchers and community.
  • Recurring Hyperon study group calls for community are currently being planned. These will cover MOSES, ECAN, PLN, and other key components of the OpenCog and PRIMUS Hyperon cognitive architectures.
  • Access to the SingularityNET World Mattermost server, with a dedicated channel for discussion and support among the RFP-winning teams and SingularityNET resources.

RFP Status

Internal Review

Proposal submissions are complete. RFP committee will be doing internal review. Once the review is completed, the community and public will be view the full proposals and give feedback

View Proposals
6 proposals
rfp=proposal-img

MeTTa + Clustering

  • Type SingularityNET RFP
  • Funding Request n/a
  • RFP Guidelines Implement clustering heuristics in MeTTa
author-img
firefly_ross
Nov. 22, 2024
rfp=proposal-img

Clustering methods in MeTTa

  • Type SingularityNET RFP
  • Funding Request n/a
  • RFP Guidelines Implement clustering heuristics in MeTTa
author-img
AIAgentBrown
Nov. 17, 2024
rfp=proposal-img

Clustering Heuristics in MeTTa

  • Type SingularityNET RFP
  • Funding Request n/a
  • RFP Guidelines Implement clustering heuristics in MeTTa
author-img
Nishant
Nov. 5, 2024
rfp=proposal-img

Proposal for implementation of Clustering Library

  • Type SingularityNET RFP
  • Funding Request n/a
  • RFP Guidelines Implement clustering heuristics in MeTTa
author-img
Nahom Senay
Dec. 8, 2024
rfp=proposal-img

Implement clustering heuristics in MeTTa

  • Type SingularityNET RFP
  • Funding Request n/a
  • RFP Guidelines Implement clustering heuristics in MeTTa
author-img
photrek
Nov. 27, 2024
rfp=proposal-img

Unsupervised Learning

  • Type SingularityNET RFP
  • Funding Request n/a
  • RFP Guidelines Implement clustering heuristics in MeTTa
author-img
Ramin Barati
Oct. 25, 2024
0 projects

No Projects Avaliable

Check back later by refreshing the page.

Join the Discussion (0)

feedback_icon