본문 바로가기

자료

C#에서 tensorflow 사용하는 방법 알아보기

728x90

(*아래 사이트를 참고하여 작성하였습니다:
(1) http://euhyeji.blogspot.com/2018/08/tensorflowsharp01.html
(2) https://github.com/migueldeicaza/TensorFlowSharp)

 

        C#에서 Tensorflow로 만든 모델을 활용할 수 있는 방법은 아래와 같습니다. Tensorflow에서 제공하는 TensorFlowsharp(https://github.com/migueldeicaza/TensorFlowSharp)을 사용하면 C#에서 tensorflow를 사용할 수 있습니다. Tensorflow, Keras로 학습시킨 모델을 .NET에 로드시켜 학습이나 참조를 시키는 응용 프로그램을 만들 수 있는 API TensorFlowSharp에서 제공합니다. TensorFlowSharp C#에서 설치하는 방법은 아래와 같습니다.

 

        <TensorFlowSharp C#에서 설치하는 방법>
        (참고 사이트:  http://euhyeji.blogspot.com/2018/08/visualstudio2017.html )

        1.        프로젝트 파일을 생성할  .NET Framework 4.6.1 이상으로 설정합니다.

        2.       [project]  [Manage NuGet Packages]  Browse에서 search Tensorflowsharp을 입력합니다. → 

                 TensorFlowSharp을 선택하여 현재 프로젝트에 설치합니다.

        3.       Solution explorer에서 References 보면 TensorFlowSharp 설치되어 있는 것을 확인할  있습니다.

 

        TensorFlowSharp에서는 두 가지 방식을 지원합니다. (1) 이미 Tensorflow에서 만들어져 있는 모델을 가져오는 것입니다. (2) TensorFlow의 문법을 C#에서 사용하는 방식입니다. 아래는 (1), (2)에 대한 각각의 설명입니다.

 

 

1.    이미 Tensorflow에서 만들어져 있는 모델을 가져오는 방식 

 

        : Python에서 TensorFlow 또는 Keras 사용하여 프로토 타입을 생성한 다음 학습된 모델을 저장  다음 TensorFlowSharp 사용하여 .NET 결과를 로드할  있다. 그리고나서 가져온 모델을 가지고 C#에서 자체적으로 데이터를 학습 또는 피드할  있습니다.

 

<TensorFlowSharp Github에 있는 예제 코드>

(참고사이트: https://github.com/migueldeicaza/TensorFlowSharp)  

 

 

2.    TensorFlow의 문법을 C#에서 사용하는 방식 

        : 핵심은 TFSession()을 객체로 선언하고 C#에서 API를 사용하는 방식으로 TensorFlow 문법을 C#에서 사용하는 것입니다. 이것보다는 1번 방식으로 프로젝트를 진행해야 하지않을까 싶습니다.

 

<TensorFlowSharp Github에 있는 예제 코드>

 https://github.com/migueldeicaza/TensorFlowSharp) &nbsp;">(참고사이트: https://github.com/migueldeicaza/TensorFlowSharp)  

 

https://www.codeproject.com/Articles/5164135/TensorFlow-Creating-Csharp-Applications-using#csharpconsole_create

 

TensorFlow - Creating C# Applications using TensorFlowSharp

How to create C# applications using TensorFlowSharp

www.codeproject.com

 

http://euhyeji.blogspot.com/2018/08/tensorflowsharp01.html

 

728x90