In einigen Lebenssituationen müssen Sie sehr schnell handeln. Manchmal ist dieser Zustand unmöglich: Zum Beispiel ist es ohne großes Glück in sehr kurzer Zeit einfach unmöglich, eine Person mit einer seltenen Blutgruppe zu finden, die auch bereit ist, sie zu teilen. Die Jungs haben ein Produkt namens DonorUA entwickelt, das mit dem Chat-Bot wirklich Leben rettet. Weitere Details unter dem Schnitt.
Ich gebe dem Autor das Wort.Vor einigen Jahren habe ich bei einem Hackathon zur Schaffung sozialer Dienste versucht, ein Projekt zur Automatisierung von Beschwerden über den Betrieb von Wohnungen und kommunalen Diensten zu entwickeln. Die Entwicklung ging zügig voran, die Demoversion war komplex und technologisch fortschrittlich, sodass die Jury weder den Aufwand noch die Idee selbst bewertete. Bei dieser Veranstaltung traf ich jedoch ein Mädchen, die Leiterin einer öffentlichen Organisation, die sich seit mehreren Jahren mit verschiedenen Problemen im Bereich der Blutspende in der Ukraine befasst hatte. Wort für Wort - und Sie sind bereits Mitbegründer eines neuen Projekts.
In diesem Moment wusste ich nichts über Blutspenden. Das einzige Wissen war, dass Menschen manchmal Blut an andere Menschen spenden. Wie es organisiert ist, mit welchen Problemen diese Sphäre lebt, wie viel es kostet und wo wir sind - für mich war das ein Rätsel.
Ich hatte große Erfahrung in der Automatisierung von Prozessen und im Schreiben von Unternehmenssystemen und entschied, dass das Erstellen einer Datenbank und das Automatisieren bestimmter Prozesse nicht viel Zeit in Anspruch nehmen würde.
Zunächst stellte sich heraus, dass dem Land ein einheitliches Register der Blutspender fehlt. Dann fand ich heraus, dass ausnahmslos alle inländischen Spenderorganisationen bestenfalls eine Excel-Datei mit einer Liste der Spender, ihrer Telefone und ihrer Blutgruppe verwenden. Als der Antrag auf Suche nach Spendern eintraf, setzten sich die Mitarbeiter der Organisation ans Telefon und riefen alle hintereinander an, in der Hoffnung, dass jemand antworten würde. Wie Sie wissen, war die Wirksamkeit dieses Ansatzes nahezu Null.

In allen Ländern ist die Gesetzgebung im Bereich Spenden sehr, sehr streng. In der Ukraine können Sie beispielsweise ein ganzes Jahr lang kein Blut spenden, wenn Sie durchbohrt oder tätowiert haben, oder ein paar Monate, wenn Sie in ein exotisches Land gereist sind oder nur Ihren Partner gewechselt haben. Die Liste der Kontraindikationen und Spendenbeschränkungen umfasst mehr als eine Seite.
In Industrieländern, in denen es keine offensichtlichen Probleme mit Blutspenden gibt, ist das Problem ganz einfach gelöst - der Staat finanziert diesen Bereich großzügig. In weniger entwickelten und unterentwickelten Ländern kann der Blutmangel bei Spendern bis zu 90% betragen, was Blut zu einem teuren Gut macht und einen riesigen Schattenmarkt schafft. In vielen postsowjetischen Ländern abstrahiert der Staat häufig von der Suche nach Spendern und verlagert die Verantwortung auf Angehörige von Patienten, die tatsächlich Spenderblut benötigen. Und da das Leben des Patienten sehr davon abhängt, ob er die Transfusion rechtzeitig erhalten hat oder nicht, wird die Frage nach einer schnellen Suche nach Spendern ohne Übertreibung zur Frage nach „Leben und Tod“.
Wie sich später herausstellte, ist dies weit entfernt von allen Problemen, sodass das Projekt für „zwei Wochen“ zu etwas viel mehr geworden ist.
Erste Schritte
Ein echter Start für das Projekt ist die Teilnahme an der IDCEE 2014-Konferenz, in deren Rahmen der Hackathon über soziale Innovation abgehalten wurde. An diesem Tag haben wir gewonnen und uns wurde klar, dass das Thema interessant und wichtig ist. Mit großer Begeisterung haben wir begonnen, das Projekt umzusetzen. Voila, und nach 4 Monaten, im Frühjahr 2015, haben wir die erste Version veröffentlicht, die eine Datenbank mit Empfängern und Spendern von Excel-Tablets sowie einen relativ einfachen Mechanismus zur Auswahl von Spendern und Empfängern enthält. Mit Blick auf die Zukunft möchte ich sagen, dass das Empfehlungssystem eine Vielzahl von Änderungen erfahren hat und derzeit 10 bis 15 verschiedene Parameter berücksichtigt.
Der erste Wendepunkt ereignete sich anderthalb Monate nach dem Start des Projekts, als die Koordinatoren innerhalb von 15 Minuten nach Veröffentlichung des Antrags auf der Website erstmals einen Spender finden konnten. Ich werde ehrlich sein - viele in unserer Organisation reagierten mit großer Skepsis auf die Automatisierung und das zu entwickelnde System. Nachdem das System die erste Aufgabe abgeschlossen hatte, gewannen wir das Vertrauen, dass wir uns in die richtige Richtung bewegen.
Bis Ende 2015 befanden sich bereits rund 4.000 Spender in der Datenbank, wodurch mindestens die Hälfte der Spender-Suchanfragen geschlossen werden konnte. Die zweite Hälfte wurde auf die alte Art geschlossen - über das Telefon. Das ganze Jahr 2015 verlief im Kampf zwischen dem alten und dem neuen Ansatz. Am Ende gewann der neue Ansatz. Wir haben die Suche nach Spendern per Telefon und die Verwendung von Excel verboten, den Zugriff auf das System ausnahmslos auf alle Koordinatoren beschränkt und alle Telefonleitungen getrennt. Wir haben erkannt, dass wir einen einzigen Plattformkoordinator brauchen, der eine Aufgabe hat - die Suche nach Spendern mit den regulären Mitteln des DonorUA-Systems. Es war schmerzhaft, ich musste etwas festziehen, aber als Ergebnis funktionierte das System voll und wir erkannten, dass wir mehr Anwendungen schließen konnten. Aber niemand wusste von dem Projekt (eine der bekanntesten ukrainischen Veröffentlichungen in einer einzigen Veröffentlichung über neue soziale Projekte im Jahr 2015 erwähnte nicht einmal ein Wort über unser Projekt), bzw. eine kleine Anzahl von Menschen wandte sich an uns. Trotz der Vielzahl von Beiträgen zur Spendersuche auf Facebook / Twitter / Vkontakte. Und dann ...
Überwachung sozialer Netzwerke
... Ich habe der Firma YouScan einen Vorschlag gemacht, die sich mit der Überwachung sozialer Netzwerke in ru- und ukrnet befasst. Ihr System ist auf große und mittlere Unternehmen ausgerichtet, und ehrlich gesagt hat mein Vorschlag, ihr System zum Auffinden von Spendersuchnachrichten zu verwenden, sie entmutigt. Der Unternehmensvertreter machte eine Pause, um mehrere Tests durchzuführen, und kehrte einige Tage später mit der Information zurück, dass unsere Hypothese korrekt war und dass sein System die Aufgabe, Nachrichten zu finden, gut bewältigt. So hatten wir sofort die Möglichkeit, in Echtzeit alle Nachrichten zum Thema zu überwachen und schnell darauf zu reagieren. Dieser Ansatz hat es uns ermöglicht, führend in sozialen Netzwerken zu werden. In den meisten Veröffentlichungen zur Spendersuche ist in den Kommentaren ein Link zu unserem Projekt enthalten, und wir finden andere Veröffentlichungen über YouScan. Nachdem wir Nachrichten gefunden haben, wenden wir uns an die Autoren der Veröffentlichungen und bieten verschiedene Optionen für die Zusammenarbeit an.
Die erhöhte Zahl von Anträgen auf Suche nach Blutspendern musste durch eine Erhöhung der Spenderbasis ausgeglichen werden. Und nach einiger Überlegung entstand die Idee, die Rekrutierung von Blutspendern über soziale Netzwerke zu automatisieren. Wir haben beschlossen, die Überwachung von sozialen Netzwerken, Chatbots und Systemen zur Verarbeitung natürlicher Sprache zu kombinieren, um nach potenziellen Spendern zu suchen. Mit dieser Idee kamen wir zum Startup Weekend: Social Innovations nach Stockholm und ... gewannen erneut.
Auf der linken Seite finden Sie einen allgemeinen Überblick über die Verarbeitung natürlicher Sprache und den Prozess der Konvertierung von Text in ein strukturiertes Objekt. Rechts sehen Sie ein Beispiel für eine Nachricht und Entitäten, die daraus extrahiert werden können.Aus Nachrichten können wir automatisch Daten wie den Namen des Empfängers, die erforderliche Anzahl von Spendern, dringend oder nicht, Blutgruppe und Rh-Faktor, Stadt und Kontaktdaten extrahieren. Für das Modelltraining haben wir WIT.AI und Microsoft LUIS verwendet. Für die englische Sprache haben wir sehr gute Ergebnisse erzielt, aber leider funktionieren solche Systeme in kyrillischen Sprachen - Russisch und Ukrainisch - schlecht. Und angesichts der Tatsache, dass das System auf diese Sprachen ausgerichtet ist, wurde die Entwicklung dieser Richtung auf bessere Zeiten verschoben.
Tatsächlich war die Idee viel weiter gefasst: einen Chatbot zu entwickeln, mit dem Sie automatisch Blutspender über soziale Systeme und Instant Messenger rekrutieren können.
Ein Beispiel dafür, wie die Dialoge zwischen dem Chatbot und potenziellen Blutspendern aussehen könntenLeider ist diese Idee schwer umzusetzen - vor allem aufgrund des Skandals von Facebook und Cambridge Analytica sowie nach der Verabschiedung des GPRD-Gesetzes in Europa, das die persönliche Erhebung, Analyse und Verwaltung personenbezogener Daten nicht erlaubt.
Persönlicher Assistent des Spenders - Spender UA.Bot
Aber nach dem Sieg in Stockholm haben wir das Potenzial von Chatbots erkannt und waren sehr verärgert über den Mangel an NLP / NER-Tools für die ukrainische Sprache. So wurde das Nebenprojekt geboren - Donor UA.Bot.
Mit DonorUA.Bot wollten wir verschiedene Probleme lösen:
- sich mit dem Thema Chatbots befassen - erfolgreich;
- Erstellen einer Named Entity Recognition für die ukrainische Sprache - teilweise erfolgreich;
- eine Wissensbasis über Kontraindikationen für Spenden sowie Gesetze, Einschränkungen und Vorteile für Spender zu sammeln - erfolgreich wird die Datenbank ständig aktualisiert;
- Erstellen Sie zunächst ein Tool für sich selbst - für einen Support-Service, da 80% der Fragen - dieselben - erfolgreich sind.
Darüber hinaus konnten wir mit unserem Chat-Bot eine große Anzahl von E-Mail-Newslettern ablehnen, die durch personalisierte und automatische Nachrichten in Viber und Telegram ersetzt wurden. E-Mail ist weiterhin in der Liste der Optionen verfügbar, aber immer mehr Menschen bevorzugen Messenger.
Skype- und Messenger-BotAber mit SMS-Mailings sind wir nicht zusammengewachsen. Alle nationalen Betreiber lehnten das Projekt ab, ein SMS-Gateway bereitzustellen. Daher ist die Verwendung von Chatbots und Instant Messenger ein offensichtlicher Schritt und sogar sehr, sehr billig.
Was jetzt?
Heute ist DonorUA eine vollwertige CRM / CMS-Plattform für die Rekrutierung und Verwaltung von Spendern, die Folgendes umfasst:
- Büros des Administrators, Blutspenders, Blutzentrums, Arztes.
- Ein Empfehlungssystem, mit dem Spender die aktuelle Liste der Empfänger anzeigen können, die ihre Blutgruppe benötigen, und Systemadministratoren, um geeignete Spender für einen bestimmten Empfänger zu finden.
- Ein Benachrichtigungssystem, das automatisch Benachrichtigungen an Viber / Telegramm / E-Mail sendet, wenn eine Spender-Empfänger-Übereinstimmung gefunden wird.
- Bloodshed ist eine Reihe nützlicher Informationen für Spender in einem Wiki-Format.
- Bonusprogramm für Spender.
- Offizielle offene (und verarbeitete) Daten des ukrainischen Gesundheitsministeriums und offene Statistiken.
- Überwachung sozialer Netzwerke.
- Spender UA. Bot und AI.
- Mobile Anwendungen für Android, iOS, Windows.
- Mobile Anwendungen für Partner des Bonusprogramms für iOS / Android.
- Karte der Blutzentren und Überprüfung der Blutzentren.
- Spender-Support-Service.
- Eine offene API, auf deren Grundlage mehrere Integrationen mit anderen Diensten implementiert werden.
- Unternehmensspende.
- Spezielle Programme und Rabatte für Spender von Partnern.
Hier sieht es zum Beispiel aus wie ein Informationsstand in einem der Blutzentren:

Und so sieht es in unserem System aus:
Rote Farbe bedeutet, dass wenig kritisches Blut vorhanden ist, Gelb bedeutet, dass das Blut ausgeht, Grün bedeutet genugOder hier ist ein weiteres Beispiel für Automatisierung. Vor jeder Spende muss der Spender einen Fragebogen ausfüllen, der aus ungefähr 30 Fragen besteht. Dies dauert 1 bis 3 Minuten. Wenn Sie sich vorstellen, dass ein durchschnittliches Blutzentrum 40-50 Menschen pro Tag aufnehmen kann, beträgt die Ersparnis 1-1,5 Stunden bei 4-5 Arbeitern pro Tag (!). In unserem System kann ein Spender einen Antrag einmal online ausfüllen und aktualisieren, wenn sich die Informationen ändern (was sehr selten vorkommt), und das Blutzentrum kann den ausgefüllten Antrag in seinem Büro herunterladen. Und es gibt viele solcher Beispiele, bei denen wir bestimmte Prozesse optimieren konnten.
Die Umsetzung aller Prozesse in Zahlen hat einen weiteren positiven Effekt: Wir können die Situation jederzeit beurteilen - sowohl auf der Ebene eines separaten Blutzentrums als auch auf der Ebene einer Stadt oder des gesamten Landes als Ganzes.
Architektur- und Technologiestapel
Das Projekt wird mit ASP.NET MVC + Web API + Entity Framework auf der Microsoft Azure-Plattform erstellt. Wir verwenden Azure SQL-Datenbank, Azure Blob-Speicher, Azure-Jobs, Azure CDN, Cognitive Services + Microsoft Bot Framework. Auf Xamarin entwickelte mobile Apps. Für die Teamarbeit werden Office 365-, Slack-, Asana- und Visual Studio-Teamsysteme verwendet. Insgesamt ist der Standard-.NET / Azure-Stack nichts Besonderes.
Wir haben unsere eigene (ziemlich einfache) NER für die ukrainische Sprache über das Microsoft Bot Framework + geschrieben und die Integration mit Viber hinzugefügt, wodurch wir schnell QnA-Chatbots (Fragen und Antworten) in der ukrainischen Sprache erstellen konnten (ähnlich wie Microsoft QnA Maker, das Teil von Azure Cognitive ist Services) und stellen Sie sie schnell auf allen gängigen Plattformen bereit - Messenger, Viber, Telegramm, Skype, Skype for Business, Slack, Microsoft Teams, E-Mail, Webchat und verwenden Sie die Direct Line-API, um Chatbot in mobile Anwendungen zu integrieren.
Standard-Chat-Bot-Architektur unter Azure + Microsoft Bot FrameworkMicrosoft hat freundlicherweise Ressourcen für unser Azure-Projekt über das Microsoft Bizspark-Programm bereitgestellt. Vor kurzem wurde Microsoft Bizspark durch Microsoft für Startups ersetzt, und das Abrufen von Ressourcen ist viel schwieriger geworden. Wir haben uns jedoch erfolgreich auf ein anderes Programm beworben - Microsoft for Nonprofit, in dem Sie Office 365 für 300 Benutzer und Microsoft Azure-Ressourcen für 5000 USD pro Jahr vollständig erhalten können gratis. Trotz der Tatsache, dass das Projekt tatsächlich sozial ist, werden alle Prozesse wie in einem echten Geschäftsprojekt aufgebaut.
Apropos Geschäft.
Geschäftsmodell und Positionierung
Die Frage der Finanzierung wird uns sehr oft gestellt, ebenso wie die Positionierung unseres Projekts.
Von Anfang an haben wir DonorUA als unrentables soziales Projekt positioniert. Aber unrentabel bedeutet nicht, dass die Menschen keine Gehälter und Rechnungen bezahlen müssen. In den Köpfen vieler Menschen ist es jedoch gleichermaßen kostenlos, nicht profitabel zu sein. Wir wollten uns nicht auf das Essen von Stipendien einlassen, und ehrlich gesagt haben uns fast alle Fonds in einem frühen Stadium der Verhandlungen in Gang gesetzt - sie sagen, kein Format. Aber wir wollten keine endlosen Ausschreibungsunterlagen ausfüllen, und in Wahrheit wissen wir nicht wie. Daher sind fast alle Projektfinanzierungen Eigenmittel und teilweise finanzielle Unterstützung von einer Person, die nicht mit dem Projekt verbunden ist.
Wir haben die Möglichkeit einer Monetarisierung des Projekts für Empfänger nicht in Betracht gezogen - die Mehrheit der Empfänger, die sich an uns wenden und bereits psychologische und materielle Probleme haben. Und diejenigen, die unsere Dienstleistungen kaufen können, kontaktieren uns in der Regel nicht, sondern lösen Probleme über „ihre Kanäle“.
Als die Positionierung mit dem sozialen Projekt "nicht ging", begannen wir, das Projekt als E-Health-Startup zu positionieren, was in der Tat nicht sehr weit von der Wahrheit entfernt ist, aber mit einigen Nuancen. Eine solche Positionierung hat sich ausgezahlt - wir haben regelmäßig angefangen, in die Medien einzusteigen, konnten mehrere Startup-Wettbewerbe gewinnen und wurden als Experten für bürgertechnische und soziale Innovationen eingeladen. Leider brachte uns dies keine Zuschüsse, Partner oder Investitionen.
Eine lustige Situation ereignete sich bei einem der Startup-Wettbewerbe, bei denen der Gewinner ungefähr 75.000 US-Dollar für die Entwicklung erhalten sollte. Aber nachdem wir diesen Wettbewerb gewonnen hatten, wurde uns ... ein Buch präsentiert. Ja, ukrainische Startup-Wettbewerbe sind sinnlos und gnadenlos :-) Dann gab es noch ein paar Finale, Siege und Teilnahme, aber irgendwann wurde uns klar, dass es Zeitverschwendung war.
Derzeit bieten wir sozial verantwortlichen Unternehmen die Möglichkeit, Spendertage für Unternehmen abzuhalten und Teil der Entwicklung der Geberbewegung zu sein. Wir suchen aktiv nach solchen Unternehmen für die Zusammenarbeit, die ein völlig neues Maß an Teambildung sowie soziale Verantwortung von Unternehmen bieten.
Also haben wir angefangen, ein bisschen Geld zu verdienen. Das Schlüsselwort ist ein
bisschen :-) Und wir haben noch viele Pläne!
Maschinelles Lernen und künstliche Intelligenz
Überwachung von sozialen Netzwerken, Chat-Bots, NLP / NER - tatsächlich verwenden wir bereits separate KI-Elemente, um bestimmte Probleme zu lösen. Die Möglichkeiten zur Verwendung von MO und AI sind jedoch breiter.
Im Moment beschäftigen wir uns mit der Lösung mehrerer Probleme.
Vorhersage der Nachfrage nach gespendetem Blut basierend auf historischen Daten
Die Aufgabe ist ziemlich normal, aber das Problem ist, dass es nur sehr wenige historische Daten gibt. Sie werden bestenfalls aggregiert, sodass Sie sie nicht verwenden können. Unsere Daten reichen jedoch nicht aus. Ich hoffe jedoch, dass wir in Zukunft durch eine engere Integration in Blutzentren entpersönlichte historische Daten erhalten und die volle Leistung von KI-Algorithmen nutzen können, um die Nachfrage vorherzusagen.
Vorhersage des Ereignisses, dass der Spender in den nächsten X Tagen Blut spenden wird, mit einer Wahrscheinlichkeit von N.
Für die Entwicklung von Modellen haben wir einen offenen Datensatz verwendet - den Datensatz des
Blood Transfusion Service Center , der tatsächlich Daten von einem der Blutzentren enthält. Nachdem wir uns mit öffentlich verfügbaren Daten vertraut gemacht hatten, begannen wir mit der Analyse der Daten, die wir mit Donor UA gesammelt hatten. Mehr dazu lesen Sie hier.
Verringerung der Anzahl der Übereinstimmungen des Empfängerspenders
Der Matching-Algorithmus für Spender und Empfänger funktioniert recht gut, hat jedoch einen wesentlichen Nachteil: Wenn Sie die Datenbank erweitern und beliebte Blutgruppen auswählen, erhalten Sie Tausende von Matches. Mehr ist nicht immer besser. Wir möchten wirklich nicht, dass Nachrichten von uns von Spendern als Spam wahrgenommen werden. Daher ist es notwendig, das Problem der Verringerung der Anzahl von Übereinstimmungen des Spender-Empfängers ohne Qualitätsverlust zu lösen. Darüber hinaus sollten wir nicht so aktive Spender zu regelmäßigen Spenden überreden.
Um Probleme zu lösen, verwenden wir eine Vielzahl von Tools - beginnend mit Microsoft Azure Machine Learning, endend mit verschiedenen Python-Bibliotheken und einem neuen Tool aus der Microsoft ML.NET-Bibliothek.
Anstelle einer Schlussfolgerung
Moderne Technologien eröffnen eine Vielzahl neuer Möglichkeiten, unter anderem zur Lösung der akuten Probleme der Menschheit.
An unserem Beispiel wollen wir zeigen, dass die Synergie von aktiven Menschen und moderner Technologie Wunder wirken kann. Im Rahmen von DonorUA haben wir drei Jahre lang 2,5.000 Empfängern direkt geholfen, und 20.000 Blutspenden sind potenziell 60.000 gerettete Leben.
Cloud-Technologien, künstliche Intelligenz und Algorithmen für maschinelles Lernen eröffnen Entwicklern und Unternehmen neue Möglichkeiten, von denen Sie nur noch zehn Jahre träumen konnten.
. .
.
Über den Autor

— CEO DevRain Solutions, CTO UA, ..., Microsoft Artificial Intelligence Most Valuable Professional, Microsoft Regional Director.