[PYTHON] Bildbewertungssystem für kleine Mädchen Lolinco maschinelles Lernen

Einführung

Dieser Artikel ist SLP_KBIT Teil 2 Adventskalender 2016 - Qiitas Artikel zum 7. Tag.

Dieser Artikel ist der zweite Teil des vorherigen und nächsten Teils. Lesen Sie daher bitte hier, bevor Sie diesen Artikel lesen.

Lolinco Machine Learning Edition

Dann in der App namens Lolinco, die mit gembaf beim Hackathon bei SLP erstellt wurde, habe ich Ich werde den Teil des maschinellen Lernens erklären, der dafür verantwortlich war. (Wenn Sie nicht den gesamten Code verstehen oder erklären, ist er ziemlich lang, daher ist er ziemlich flauschig, z. B. wie man ihn verwendet.)

Entwicklungsumgebung

Dieses Mal werden wir eine von Google veröffentlichte Bibliothek für maschinelles Lernen namens Tensorflow verwenden.

Python 2.7.6 Liste der Pips Tensorflow (0.5.0)

Informationen zur Installation finden Sie im Folgenden http://qiita.com/bohemian916/items/4f0736dcea932a162d9e

Prozessablauf

Von diesem Prozessablauf ist der Teil, der Tensorflow verwendet, der Teil, der bestimmt, ob es sich um die letzte Loli handelt. image

Implementierung

1. Erstellen Sie ein Modell

In dieser Phase werden die in Front erläuterten Loli und andere Bilder als Lehrerdaten zum Erstellen eines Modells trainiert.

Erstellen Sie test.txt und train.txt, die den Pfad des Bildes der zuerst zu trainierenden Daten sowie das Bild der Testdaten und die Klassifizierung des Bildes (Loli oder andere) enthalten.

test.txt,train.txt


train_img/loli/image_2942_0.jpg 1
train_img/others/image_1150_0.jpg 0
train_img/others/image_588_1.jpg 0 
・
・
・

Erstellen Sie anhand dieser Lehrerdaten ein Modell aus dem folgenden Code. https://github.com/SLP-KBIT/Lolinco/blob/master/lib/init_model.py

Wie Sie am Ende des Codes sehen können, wird das resultierende Modell als model.ckpt gespeichert.

2. Bildunterscheidung

Verwenden Sie jetzt die vorherige model.ckpt, um das Bild zu bestimmen.

Code zur Bestimmung des Bildes https://github.com/SLP-KBIT/Lolinco/blob/master/lib/judge_loli.py

Führen Sie das Image, das Sie zur Laufzeit bestimmen möchten, als Laufzeitargument aus In diesem Fall wird das Gesichtsbild mit OpenCV aus dem Bild extrahiert und das Gesichtsbild wird unterschieden.

Die Extraktion des Gesichtsbildes und die Unterscheidung des Bildes werden beim Routing von Sinatra beschrieben. https://github.com/SLP-KBIT/Lolinco/blob/master/app.rb

Verweise

Identifizieren Sie die Produktionsfirma von Anime Yuruyuri mit TensorFlow http://kivantium.hateblo.jp/entry/2015/11/18/233834

Impressionen

Normalerweise lerne ich nicht maschinell, daher habe ich ein gutes Beispiel gefunden und es nach Beginn dieses Projekts verschoben.

Ich habe versucht, in 2 Tagen so viel wie möglich zu verstehen, aber selbst die Erklärung des Codes war mit vielen technischen Begriffen schwierig ... orz Wenn ich die Möglichkeit habe, Tensorflow zu berühren, möchte ich mit den Grundlagen beginnen.

Recommended Posts

Bildbewertungssystem für kleine Mädchen Lolinco maschinelles Lernen
Kleines Mädchen Bildbeurteilungssystem Lolinco Front Edition
Praktisches Memo zum maschinellen Lernsystem
Maschinelles Lernen
"OpenCV-Python Tutorials" und "Praktisches maschinelles Lernsystem"
Aufgeblasenes Lernbild
[Memo] Maschinelles Lernen
Klassifikation des maschinellen Lernens
Beispiel für maschinelles Lernen
Bildersammlung Python-Skript zum Erstellen von Datensätzen für maschinelles Lernen
Ich habe versucht, das Bild mithilfe von maschinellem Lernen zu komprimieren