2016-06-21 14 views
13

Ho una discreta esperienza con TensorFlow e sto per intraprendere un progetto che culminerà infine nell'utilizzo di un modello addestrato TensorFlow in un ambiente di produzione C#. Essenzialmente, avrò dati live che entreranno nell'ambiente C# e alla fine avrò bisogno di prendere decisioni/intraprendere determinate azioni basate sull'output del mio modello in TensorFlow. Questo è fondamentalmente solo un vincolo dell'infrastruttura esistente.Utilizzo di modelli di deep learning da TensorFlow in altri ambienti di lingua

Posso pensare a un paio di modi potenzialmente cattivi per implementare questo, come scrivere i dati sul disco e poi chiamare la parte Python dell'applicazione e quindi leggere finalmente l'output del risultato dall'applicazione Python e prendere qualche azione basata su di essa. Questo è lento, tuttavia.

Ci sono modi più veloci per realizzare questa stessa relazione integrata tra C# e Tensorflow basato su Python. Vedo che there appear to be some ways per farlo con C++ e TensorFlow, ma che dire di C#?

+0

Se si parla di due applicazioni sullo stesso computer, perché non utilizzare un semplice flusso TCP tra i due? – pay

+0

In realtà, questa è davvero una buona idea. Avrei dovuto pensarci. –

risposta

9

Si tratta di un caso d'uso principale per TensorFlow Serving, che consente di creare un processo di C++ che può essere eseguito su un modello di inferenza tensorflow addestrato, e serve le richieste di inferenza su gRPC. Puoi scrivere il codice cliente in qualsiasi lingua che sia gRPC supports. Dai un'occhiata al tutorial MNIST: C++ server e Python client componenti.

+0

Non ho molta esperienza di tensorflow, ma per un mio progetto stavo pensando di avere la mia applicazione principale su .net core, e in un'API a flacone separata, ho tutto il codice necessario per sfruttare il potere dell'apprendimento profondo in un'API python separata che si collega allo stesso database. Qualcuno sa quale approccio potrebbe essere migliore? –

+0

Qualsiasi aggiornamento @mrry @carlos? Forse cntk sarà presto in grado di eseguire l'attività di importazione del modello tf? –

+0

Miguel de Icaza ha sviluppato [TensorFlowSharp] (https://github.com/migueldeicaza/TensorFlowSharp), che fornisce collegamenti .NET a TensorFlow. È probabilmente l'ambiente più completo per la programmazione in C# con TensorFlow. – mrry

Problemi correlati