Skip to content
View phobrain's full-sized avatar
Block or Report

Block or report phobrain

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
phobrain/README.md

Phobrain is a toy or tool for examining how one's mind works, starting by doing 'compare and contrast' on pairs of photos - to cultivate multidimensional thinking and curiosity. Labeling pairs like/not enables training simple neural nets that can project unseen pairs. Weighing pairs leads to clashes in rationales, introducing classification in a nitty-gritty, personal way.

The setup should become more user-friendly, starting from this programmer-level description:

Copy photos to an images folder. 
Color information and Imagenet vectors are extracted. 
Create postgres database, with pgvector. 
Import photo info into database. 
Compile/start web server. 
View/label photo pairs via browser. 
Train models, predict pairs, view.

See https://github.com/phobrain/Phobrain/blob/main/pr/INSTALL

The (Java) web server is intended for local use as a default for data protection. It is old school, and I hope to see AGPL-licensed rewrites in new languages. Much data prep code is also in Java, which is used for its fantastic parallelism compared to python. Training/prediction use keras; much optimization could be done for batch predictions.

Neural nets: color histograms and Imagenet vectors are used to represent photos. Pairs labeled 0/1 train nets to ~85% accuracy. Then vectors of size 2..16 are generated for the photos using those nets (these are personal pair analogs of Imagenet vectors), and groups of these smaller vectors are again taken to represent the photos, using the original labeled pairs to train miniscule nets that predict interesting photos with ~90% accuracy.

Observation: the gold standard for labeling is to use randomly-generated pairs. Alternative methods are provided for variety.

Popular repositories Loading

  1. hello-world hello-world Public

    Phobrain is a photo-pair instantiation of a life form creation experiment

  2. java-util java-util Public

    Java library and utilities for photo analysis and preparation for Phobrain

    Java

  3. Phobrain Phobrain Public

    Phobrain is a tool for generating, labeling, and exploring 'Rorschach pairs' of photos, toward modeling personality and mind.

    Java