Hallo!In diesem Artikel werde ich Ihnen erzählen, wie ich es geschafft habe, einen Bot zu schreiben, der die gesamte Leistung der neuronalen Netze von IBM Watson nutzt, um die Anwesenheit von Katzen auf dem Bild zu bestimmen.
Als ich im April etwas über den BotPrize- Wettbewerb erfuhr, beschloss ich, einige Bots zu schreiben.Ich habe C # und eine wunderbare Bibliothek von MrRoundRobinals Programmiersprache ausgewählt und PostgreSql als Datenbank verwendet.Mein erster Bot befasste sich mit dem Herunterladen von Dateien auf die berühmte Datei-Hosting-Site mega.nz.Aber als nächstes Thema habe ich Katzen gewählt. Mit dem Bot können Sie den bereits in der Datenbank vorhandenen Siegeln Vorlieben / Abneigungen hinzufügen und Ihre Fotos der Siegel zur Moderation senden. Auch im Inline-Modus können Sie Ihren Freunden die treuesten Katzen schicken.Nachdem ich die Moderation manuell implementiert hatte, fand ich sie langweilig, und Sie können ein neuronales Netzwerk verwenden, das selbst bestimmt, ob sich eine Katze auf dem Bild befindet oder nicht.Nach einer kurzen Suche stellte ich fest, dass IBM Watson und seine Visual Recognition API dies können.
Es stellte sich als ziemlich einfach heraus - senden Sie das Bild zur Verarbeitung und als Antwort erhalten Sie ein JSON-Array von dem, was IBM Watson in diesem Bild gefunden hat.Json Beispiel[
{
«classes»: [
{
«class»: «animal»,
«score»: 0.997762,
«type_hierarchy»: "/animals"
},
{
«class»: «mammal»,
«score»: 0.995504,
«type_hierarchy»: "/animals/mammal"
},
{
«class»: «cat»,
«score»: 0.990987,
«type_hierarchy»: "/animals/pets/cat"
},
{
«class»: «kitten»,
«score»: 0.668188,
«type_hierarchy»: "/animals/pets/kitten"
}
],
«classifier_id»: «default»,
«name»: «default»
}
]
Wenn sich in JSON eine Katze mit einer Wahrscheinlichkeit von mehr als 0,75 befindet, wird dieses Bild automatisch moderiert. Wenn nicht, wird es zur manuellen Moderation an den Ofen gesendet . Ich habe die Datenbank zunächst über die catapi- Website ausgefüllt und die Verarbeitung von ca. 400 Siegeln dauerte nicht länger als 5 Minuten.Sie können hier versuchen, verschiedene Bilder an IBM Watson zu senden .Die einzige Schwierigkeit, die ich bei der Registrierung in der Bluemix-Konsole hatte, war, dass sie die ganze Zeit hängen blieb.Ich habe es geschafft, mich über die Developerworks- Site anzumelden, indem ich das Kontrollkästchen "Ich möchte IBM Bluemix verwenden" aktiviert habe.Als Nächstes erhielt ich den Schlüssel von der Visual Recognition-API und wurde geschult, um Anforderungen in der Explorer-API zu stellenDer Monat, in dem die Visual Recognition-API verwendet wird, ist kostenlos. Anschließend ist das tägliche Limit von 250 Bildern pro Tag enthalten. Der Preis von 2 US-Dollar für 1000 Bilder stößt jedoch auf großen Optimismus.Die Idee, den Watson-Supercomputer dazu zu bringen, Katzen auf dem Bild anstelle von mir zu identifizieren, hat mir sehr gut gefallen.IBM verfügt über eine große Anzahl anderer APIs und Services, und es besteht ein großer Spielraum für die Integration in Telegram.