>>> We aim to find practical applications for machine learning techniques by running real-world experiments at scale.
In order to provide consistent data collection, all our experiments add value to their users, thus generating income.
This way, the experiments become self-sustainable and can run continuously without delivering any predefined result.
Nature provides our inspiration due to it`s algorithmic perfection.
>>> We embark on long-term projects that generate and process data from various industries. Find them below, sorted by the techniques used:
Machine VisionIn focus: Image Segmentation, Object Classification.
Research in this field aims to gain a better control on algorithms applied in image and video segmentation by testing and training various types of neural networks, minimizing the resources consumed and increasing the confidence of the output.
Main input: This project aims to gather constructions plans made by architects - official blueprints.
This format is far more reliable than the ones available on the internet (2d/3d floorplans) because it`s normalized according to architectural standards.
Derivatives: Through this project we were able to gain a deeper insight in the construction and real estate industry, thus paving the way to future projects like eDezvoltator.
Sustainability: 100% self-sustained. The website generates about 1M EUR yearly revenue for a construction company based in Bucharest. We collect a small percentage of their income.
Main input: Through this travel website we gathered more than 1000 panoramic images from various locations (hotels, restaurants etc).
Panoramic images because they contain a far more natural perspective than still images, thus allowing us to train models in ways closer to natural learning than with usual image data sets.
Derivatives: As a secondary layer of data, we scraped almost 2M images from social media with real people at various events (like a party). We will use these images to refine sentiment classification models.
Sustainability: ~70% self-sustained. In oder to gather the the panoramic images, we had to send field teams that visited each location and took the photos with specialised hardware (Ricoh THETA).
These teams were partially financed by a small sum that we collected from the respective locations in exchange for the materials delivered (photos and virtual tours).
In the nearby future, we aim to monetize this project through a voucher mechanism.
We consider that, for real-life usage of machine learning models, it`s critical to segment the image before initialising any other form of classification.
This is very close to how nature solved this problem - our brains focus on a part of the scene before starting to react to it, often times being almost oblivious to the rest of the scene.
Successful segmentation will greatly reduce resource consumption and output quality by threading various parts of the image through specialised models.
For example, a certain scene may include people dancing and people sitting at tables. The table scene can be passed through a model trained on objects like tableware or food with the primary aim to detect objects, while the dancing scene can be sent to a model trained on concerts and events with the primary aim to detect sentiment.
This way, the machine will not only build precise interpretations of the scene but also make sense of the context in which the scene takes place, similar to how our brain connects different parts of information in order to create holistic understanding.
We use both simple and complex scenes to train our models in a multi-step succession. The first layer aims to identify the type of scene from a known index by looking for features (for example bed + nightstands + tv is 90% bedroom), then is passes the scene to the next layer which is a specialised one (that was trained with bedroom objects) and does most of the computing.
The first layer computes as little as possible of the scene. It`s main role is feeding the lower layers in a thread based system - so it does some resource allocation and prioritization.
Nature combines input from various sensors to classify objects.
For example, we use touch AND vision to build a mental model of a toy dog by rotating and examining it from various angles.
In order to partially replicate this nature`s ways, we decided to use panoramic images and 3D virtual tours that capture the scenes from more than one viewpoint.
This way, we detect objects using "dynamic features" - features observed from different perspectives, thus greatly increasing the model`s accuracy.
This is mostly a secondary activity. We don`t assign it as much resources as to the other two fields described before.
Combined with image segmentation, we aim to predetermine the mood of each person in the scene based on context, not just on facial expression.
The desired result of this research is to deliver pre-trained models that can reliably and efficiently describe various scenes, can extract features from the scene and can manipulate the features in other applications such as text generation or database building.
Example: applied in tourism, the model can be given images from a hotel and, without human intervention, assign the images into the correct categories (bedroom, terrace, restaurant etc.), extract features from the images (twin beds, towels, hair dryer etc.) and use the resulting data in listings over the internet.
Example: applied in real estate, the model can take as input the blueprint of a building and generate from it lists for the materials and labour needed for construction. The price estimation can be dynamic, based on the user`s preference in regard to quality.
Example: applied in manufacturing, the application can complete several types of quality control tasks that currently can`t be solved with traditional machinery. Detecting small cracks in "noisy" products is such a task, it cannot be examined with ultrasound and the products have to be visually inspected by specialised QA workers.
Pattern RecognitionIn focus: Data Labelling, Data Visualization
Research in this area aims to identify early trends in high-value industries and render strategies based on them.
Main input: This project uses two main data sets, representing a segment of the real estate market in Romania - new buildings.
The first set is related to the housing offer and it contains more than 300 data points collected from more than 700 real estate projects, mostly in Bucharest.
The "demand" data-set includes information collected from the users of the website. This data is generated by a series of triggers scattered through the platform. We measure everything from macro-interactions (such as choosing price-range) to micro-interactions (such as time spent looking at a certain part of the page).
Derivatives: In order to prepare the content published on the website, we require the real estate developers to provide technical drawings of their buildings. Besides creating content, we use these drawings to train the machine vision models described in the previous section.
Sustainability: ~90% self-sustained. The platform generates leads which we then monetize through a CPL or commission-based mechanism.
We try to identify repetitive patterns in which the users react to certain features of the offer.
Labelling is done according to an internal code syste. Then, the data is passed through normalisation procedures in order to eliminate any irregularities.
The normalised data is plotted using various chart models and examined by real estate professionals that look for correlations between the plotted behaviour.
As of 2021, this project entered the data collection phase by gaining visibility on search engines and generating about 12K visitors per month. The data collected so far is very thin and cannot be used in any our research.
We expect to enter the research phase between 2022 and 2024, when the website will be fully visible, according to our SEO strategy.
By then, traffic should rise to about 50K visitors per month, generating enough data to conduct meaningful research.
Natural Language Processing
In focus: Transformers, Transfer Learning, Low-code Applications
Due to the fact that we have vast amounts of curated training data available - texts written in Romanian by hired copywriters, we consider exploring speech related applications for machine learning such as chat-bots or content writers.
Research in this area has not started and it`s currently under evaluation. It will probably aim to create free low-code assisted copywriting tools.
>>> We aim to compute as much as possible with our own equipment.
Currently, more than 90% of our computing is done using Google, Microsoft and Amazon services.
Because AI research is based on edge experiments, a big part of the computing power is consumed chasing dead-ends.
Short-term goal: Data Center
In order to optimize our costs, we are aim to fund a small scale data center using Romanian start-up funding schemes.
Because these schemes are very modest in comparison with hardware costs, all the funds will have be invested in computing power.
We are looking for companies specialised in building custom ASIC designs, powered by Tensor or Neuromorphic processing units.
Long-term goal: Hydroelectric Power Plant
The next step will be gaining the ability to use all our computing power without worrying about power usage.
To overcome this challenge, we wish to secure EU Research Grants. The funding will have to cover the cost of building a facility in a mountain region where we acquired 2000sqm of land alongside a river.
At the time this text was written, we were in discussions with Turbulent (NL) to install their residential solution which can deliver a stable 800kW/day - enough to run our computers for free.
Also, the facility will have to be designed such that the river flows through the data center, where the water temperature (9deg C) will be used for cooling purposes, further reducing the power usage.
Securing this facility can allow us to run large scale, long term experiments without pressure from investors.