Welcome
After a month of design and six months of coding, we will try to tell about our project
FAVORaim.com .
IdeaThe idea of the project appeared spontaneously - it was just a desire to know when tango nights were held in the city. After all, one institution can hold such themed evenings only a couple of times a year, and it is quite problematic to track them - you need to either constantly search for yourself on the Internet, or be subscribed to a bunch of public places. The organizers place information on such events on their page in the VC, but this is not a reason - for the sake of several times a year - to subscribe to all such groups in social networks.
In the process of thinking about the idea, a mature conclusion was that a person has different interests, according to which it would be convenient for him to receive information when something interesting happens for him in the city. And in addition to the events, I would like to receive offers from businesses that strictly correspond to personal interests.
What is the project aboutFAVORaim is personal events and offers.
1. FAVORaim helps to keep abreast of events on strictly interested topics.
For example, for fans of the Supernatural series, FAVORaim selects thematic parties and fan meetings (the same is true for fans of other TV shows and cult films). And for a startup, the system will find not only professional conferences and meetings with venture financiers, but also informal startup parties. Also, the user has the ability to track more detailed and professional topics: Android, SMM, fan marketing, etc. A powerful direction we have grown anime theme.

2. Analysis of external information for compliance with the interests of the user.
Even without entering the store, using the mobile application FAVORaim, the user can see what suits him in terms of style, size and preferences. And in the shopping center to see what is interesting and suitable for the user (so far without indoor-navigation).
')
Having spent almost a month on analytics and architecture planning, we started coding, which took 6 months. And here, as always, the first difficulties appeared, and ideas that I really wanted to do.
For habr we will tell some details of technology.
InterestsWe have made a system in which, no matter how a person indicates his interests, his words are determined and correspond exactly to what he wants to receive. For example, the words and phrases “Huvian”, “Doctor Who fan”, “Doctor Who series” have one essence, but the writing is different. The same with the Tolkiens and the Lord of the Rings. FAVORaim can recognize these interest groups and provide logically necessary information. In this direction, we were able to implement more professional comparisons in the field of SMM, various types of marketing, medicine, programming, etc.
In this paper, we are faced with the problem of homonyms. For example, an organ can be a musical instrument, and part of a person. And the variants of writing “web design”, “web design”, “website design” or “web modeling”, “web design” can be a huge amount and it is difficult to predict them, but, nevertheless, these options are identical in meaning. I didn’t want to create a dictionary with all possible options, so this task was solved with the help of neural network training. Analyzing user behavior, the system determines which logical entity the phrase belongs to.
In the same system, we implemented language support, i.e. it didn’t matter in what language a person introduced his interests - Russian, English or French - FAVORaim can distribute and compare all this information.
When we decided to make a language support system, we needed to redo the architecture. It was a morally difficult step that significantly delayed the release date. The main question is “For what?”. And we were motivated by the fact that being in Europe, the user could travel from country to country (where there is a different language) and continue to receive information based on their interests. The same is true in the USA with their English and widespread Spanish.
When the neural network functionality was ready, it became easier to match Records (events, offers) with the user's interests - the system itself can logically refer the text of the Record to the corresponding interest. Not without errors, of course, it happens that the system is mistaken, so at this stage we check all the records, and in case of an error we set the correct version - this is how the system learns.
Knowledge Base and Neural NetworkAs in all neural networks, the quality of work in our system is the better, the more data it contains. The system learns itself by analyzing data and creating so-called neurons for each user. It is the neural network that helps us structure and predict data about user interests. We do not dig into the data on the user's computer, do not drag everything from his cookies. The determination of interests is based on user reactions, analysis of similar data and forecasting.
ScenariosAnother detail in the development of user interests is the script. The script logic is set by us. For example, if it is recognized that the user is a pregnant girl, then after a certain period, she is assigned the interests associated with a newborn child, then with a small child, etc.
The same scenarios exist for the professional sphere, business, culture.
RecommendationsBy slightly modernizing a fairly well-known algorithm for determining the basic vector of interests, we developed recommendations, i.e. the system is able to offer the user what he likes. This information is based on the analysis of users with similar interests. The user is offered the most popular version of the Record, which corresponds to the new interest, and the user's reaction to it is calculated. In case of a positive reaction, this interest is entered into the user knowledge base.
Mobile app notifications
Push notifications will surprise no one, we have made them of several types:
1. New entries in the tape. You can configure the information to come in a day or once a week.
2. Interesting near. If within a radius of 500m (in the user’s settings also 300 m or 1 km) something happens or the user is interested, FAVORaim will notify him about it.
About the growth of informationThe project has been running for a little more than a month, and the main task for now is to collect as many versatile information as possible (user interests, events). The project is designed for self-growing content, so now we attract organizers and other companies as much as possible to add information about their events. Many go to our meeting and even specially create themed evenings, for example, the mafia in English.
Now the Moscow base is actively developing, but data on other cities is gradually appearing. Even if a person enters his interests, and the system does not select anything for him, then as soon as something appears, we will definitely notify.
ServicesWe have developed a website and an application for Android, and somewhere there, on moderation in the AppStore, is our application for iOS.
About the interests of usersAnd then the fun began. We assumed that the main number of interests would be the same and quite common, but our users surprise us. The range of interests is huge, and for each interest there are events. We have learned such new words for us as: kizomba, bukkrossing, zumba, mandala, huvian and many more incomprehensible.
From the announced1. Depending on the mood, a person’s wishes may vary. Therefore, we have improved the selection function. If a person wants to go to a nightclub, and he is an avid animeshnik, then FAVORaim will offer him an anime party. If a person likes programming, but today he wants to communicate and have fun, then the system will provide information about programmers' night get-togethers (yes, such people have been in our database).
2. Now we have not yet implemented all our plans, but our main goal is to personalize the choice of information and implement it in as many spheres of our life as possible.
Each person is individual - each has their own interests.We believe that today there is too much information around a person, and we need a tool that will select the right one based on a person’s personal interests. We are engaged in this direction.
Thank you for paying attention to our short review. We did not want to make in the first post a huge text with a large number of letters, so we will try in the following articles to describe in more detail the features of building a neural network and the direction of data personalization.