# 다른PC에서 키보드로 입력한 모든것들을 내PC에서 한번에 알수있다!
# 그것도모자라, 한번에 여러개의 PC도 컨트롤가능하다구~@!!
현재 진행 상황이다.
아직까지는 완전히 초기단계이지만,
디자인을 좀 할려고한다.
현재는 위 사진과 같이 막연하게 값을 불러오기만하지만,
나중에는 콘솔디자인도 좀 하여, 깔끔하게 불러오고싶을때는 불러오는창,
아니면, 클라이언트만을 관리하는 창.. 이런식으로 나눌것이다.
# 최근 딥러닝에 관하여 공부하고있는데, 'c/c++에서 파이썬에서 실행된 머신/딥러닝결과값을 얻어올 수 있을까?'라는 생각에서 개발을 시작
# 파이썬에서 딥러닝을 통해 실행된 결과값을 c/c++로 옮기기위하여 만듬. 이유는, c/c++에서 파이썬에서 실행된 딥러닝 내용을 런타임으로 불러오기위함.
# 원리는 매우 간단함. 자식프로세스로 파이썬 인터프리터기 만들고, 거기다가 입출력파이프라인 꽃아서 불러오기.
위와 같이 파이썬에서 스크립팅형식으로 불러온것이아닌,
실제로 c++로 작성된 프로그램에서 런타임으로 불러온내용을 캡쳐한 사진이다.
이것또한 완전히 개발초기단계이므로, 디자인을 적용하지않았고, 오직 테스트용으로 어떤식으로 불러오는지만 확인하는 단계이다.
나중에는 디자인을 좀 하고, 여러가지로 가공하여 배포할 예정이다.
여기에 사용된 파이썬코드는 일반적인 선형회귀코드이다.
혼동하는 분들을 위하여 한번더 말하는데,
이것은 c/c++에서 dll없이 런타임으로 파이썬코드를 실행하고 나온결과를 불러오는 프로그램이다.
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
xData = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
yData = [1100, 2200, 3300, 4400, 5500, 6600, 7700, 8800, 9900, 11000]
W = tf.Variable(tf.random_uniform([1], -100, 100))
b = tf.Variable(tf.random_uniform([1], -100, 100))
X = tf.placeholder(tf.float32)
Y = tf.placeholder(tf.float32)
H = W * X + b
cost = tf.reduce_mean(tf.square(H - Y))
a = tf.Variable(0.01)
optimizer = tf.train.GradientDescentOptimizer(a)
train = optimizer.minimize(cost)
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
for i in range(5001):
sess.run(train, feed_dict={X: xData, Y: yData})
if i % 500 == 0:
print(i, sess.run(W), sess.run(b), sess.run(cost, feed_dict={X: xData, Y: yData}))
print(sess.run(H, feed_dict={X: [11]}))