Ejemplo n.º 1
0
 def setUpClass(cls):
     cls.model_dir = tempfile.TemporaryDirectory()
     cls.model = PyTorchNeuralNetwork(
         classifications=["rock", "paper", "scissors"],
         features=Features(Feature("image", int, 300 * 300)),
         predict=Feature("label", int, 1),
         directory=cls.model_dir.name,
         network=RockPaperScissorsModel,
         epochs=1,
         batch_size=32,
         imageSize=150,
         validation_split=0.2,
         loss=Loss,
         optimizer="Adam",
         enableGPU=True,
     )
Ejemplo n.º 2
0
 def setUpClass(cls):
     cls.model_dir = tempfile.TemporaryDirectory()
     cls.model = PyTorchNeuralNetwork(
         classifications=["rock", "paper", "scissors"],
         features=Features(Feature("image", int, 300 * 300)),
         predict=Feature("label", int, 1),
         directory=cls.model_dir.name,
         network=RockPaperScissorsModel,
         epochs=1,
         batch_size=32,
         imageSize=150,
         validation_split=0.2,
         loss=Loss,
         optimizer="Adam",
         enableGPU=True,
     )
     cls.traindir = asyncio.run(
         cached_download_unpack_archive(
             "https://storage.googleapis.com/laurencemoroney-blog.appspot.com/rps.zip",
             "rps.zip",
             "traindir",
             "c6a9119b0c6a0907b782bd99e04ce09a0924c0895df6a26bc6fb06baca4526f55e51f7156cceb4791cc65632d66085e8",
         )
     )
     cls.testdir = asyncio.run(
         cached_download_unpack_archive(
             "https://storage.googleapis.com/laurencemoroney-blog.appspot.com/rps-test-set.zip",
             "rps-test-set.zip",
             "testdir",
             "fc45a0ebe58b9aafc3cd5a60020fa042d3a19c26b0f820aee630b9602c8f53dd52fd40f35d44432dd031dea8f30a5f66",
         )
     )
     cls.predictdir = asyncio.run(
         cached_download_unpack_archive(
             "https://storage.googleapis.com/laurencemoroney-blog.appspot.com/rps-validation.zip",
             "rps-validation.zip",
             "predictdir",
             "375457bb95771ffeace2beedab877292d232f31e76502618d25e0d92a3e029d386429f52c771b05ae1c7229d2f5ecc29",
         )
     )
Ejemplo n.º 3
0
        x = self.linear(x.view(-1, 16 * 9 * 9))
        return x


RockPaperScissorsModel = ConvNet()
Loss = CrossEntropyLossFunction()

# Define the dffml model config
model = PyTorchNeuralNetwork(
    classifications=["rock", "paper", "scissors"],
    features=Features(Feature("image", int, 300 * 300)),
    predict=Feature("label", int, 1),
    directory="rps_model",
    network=RockPaperScissorsModel,
    epochs=10,
    batch_size=32,
    imageSize=150,
    validation_split=0.2,
    loss=Loss,
    optimizer="Adam",
    enableGPU=True,
    patience=2,
)

# Define source for training image dataset
train_source = DirectorySource(
    foldername="rps",
    feature="image",
    labels=["rock", "paper", "scissors"],
)