Tensorflow: ํŒŒ์ด์ฌ 3.7 ํ˜ธํ™˜์„ฑ

์— ๋งŒ๋“  2018๋…„ 07์›” 03์ผ  ยท  80์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: tensorflow/tensorflow

๊ฐœ๋ฐœ์ž๋“ค์ด Python 3.7์„ ๋”ฐ๋ผ์žก๊ธฐ ์œ„ํ•ด ์—ด์‹ฌํžˆ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.
ํƒ€์ž„๋ผ์ธ์ด ์žˆ๋‚˜์š”?

pip3 install tensorflow - ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•˜๋ฉด ๋ถ„๋ช…ํžˆ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

OS ํ”Œ๋žซํผ ๋ฐ ๋ฐฐํฌ: Mac OS X 10.13.5
Python: Python 3.7.0(ํ™ˆ๋ธŒ๋ฅ˜)
TensorFlow ์„ค์น˜: ์†Œ์Šค(https://github.com/tensorflow/tensorflow.git)
TensorFlow ๋ฒ„์ „: TensorFlow 1.9.0-rc2
๋ฐ”์ ค ๋ฒ„์ „:

Build label: 0.15.0-homebrew
Build target: bazel-out/darwin-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Tue Jun 26 12:42:27 2018 (1530016947)
Build timestamp: 1530016947
Build timestamp as int: 1530016947

CUDA/cuDNN ๋ฒ„์ „: ์—†์Œ
GPU ๋ชจ๋ธ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ: ์—†์Œ
์žฌํ˜„ํ•  ์ •ํ™•ํ•œ ๋ช…๋ น:
bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package

Starting local Bazel server and connecting to it...
...........................
WARNING: /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/BUILD:1992:1: in srcs attribute of cc_library rule @grpc//:grpc_nanopb: please do not import '@grpc//third_party/nanopb:pb_common.c' directly. You should either move the file to this package or depend on an appropriate rule there. Since this rule was created by the macro 'grpc_generate_one_off_targets', the error might have been caused by the macro implementation in /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/bazel/grpc_build_system.bzl:172:12
WARNING: /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/BUILD:1992:1: in srcs attribute of cc_library rule @grpc//:grpc_nanopb: please do not import '@grpc//third_party/nanopb:pb_decode.c' directly. You should either move the file to this package or depend on an appropriate rule there. Since this rule was created by the macro 'grpc_generate_one_off_targets', the error might have been caused by the macro implementation in /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/bazel/grpc_build_system.bzl:172:12
WARNING: /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/BUILD:1992:1: in srcs attribute of cc_library rule @grpc//:grpc_nanopb: please do not import '@grpc//third_party/nanopb:pb_encode.c' directly. You should either move the file to this package or depend on an appropriate rule there. Since this rule was created by the macro 'grpc_generate_one_off_targets', the error might have been caused by the macro implementation in /private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/grpc/bazel/grpc_build_system.bzl:172:12
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/learn/BUILD:17:1: in py_library rule //tensorflow/contrib/learn:learn: target '//tensorflow/contrib/learn:learn' depends on deprecated target '//tensorflow/contrib/session_bundle:exporter': No longer supported. Switch to SavedModel immediately.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/learn/BUILD:17:1: in py_library rule //tensorflow/contrib/learn:learn: target '//tensorflow/contrib/learn:learn' depends on deprecated target '//tensorflow/contrib/session_bundle:gc': No longer supported. Switch to SavedModel immediately.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/timeseries/python/timeseries/BUILD:356:1: in py_library rule //tensorflow/contrib/timeseries/python/timeseries:ar_model: target '//tensorflow/contrib/timeseries/python/timeseries:ar_model' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/timeseries/python/timeseries/state_space_models/BUILD:73:1: in py_library rule //tensorflow/contrib/timeseries/python/timeseries/state_space_models:kalman_filter: target '//tensorflow/contrib/timeseries/python/timeseries/state_space_models:kalman_filter' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/timeseries/python/timeseries/state_space_models/BUILD:230:1: in py_library rule //tensorflow/contrib/timeseries/python/timeseries/state_space_models:filtering_postprocessor: target '//tensorflow/contrib/timeseries/python/timeseries/state_space_models:filtering_postprocessor' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/bayesflow/BUILD:17:1: in py_library rule //tensorflow/contrib/bayesflow:bayesflow_py: target '//tensorflow/contrib/bayesflow:bayesflow_py' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/seq2seq/BUILD:23:1: in py_library rule //tensorflow/contrib/seq2seq:seq2seq_py: target '//tensorflow/contrib/seq2seq:seq2seq_py' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/kfac/python/ops/BUILD:80:1: in py_library rule //tensorflow/contrib/kfac/python/ops:loss_functions: target '//tensorflow/contrib/kfac/python/ops:loss_functions' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
WARNING: /Users/zardoz/Projects/tensorflow/tensorflow/contrib/BUILD:14:1: in py_library rule //tensorflow/contrib:contrib_py: target '//tensorflow/contrib:contrib_py' depends on deprecated target '//tensorflow/contrib/distributions:distributions_py': TensorFlow Distributions has migrated to TensorFlow Probability (https://github.com/tensorflow/probability). Deprecated copies remaining in tf.contrib.distributions are unmaintained, unsupported, and will be removed by late 2018. You should update all usage of `tf.contrib.distributions` to `tfp.distributions`.
INFO: Analysed target //tensorflow/tools/pip_package:build_pip_package (303 packages loaded).
INFO: Found 1 target...
INFO: From Linking external/grpc/libgrpc_base_c.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(endpoint_pair_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(endpoint_pair_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(ev_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(fork_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(gethostname_fallback.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(gethostname_host_name_max.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(iocp_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(iomgr_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(pollset_set_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(pollset_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(pollset_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(resolve_address_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(socket_utils_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(socket_utils_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(socket_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_client_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_server_utils_posix_noifaddrs.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_server_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(tcp_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(timer_uv.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(unix_sockets_posix_noop.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc_base_c.a(wakeup_fd_eventfd.o) has no symbols
INFO: From Linking external/grpc/libalts_util.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libalts_util.a(check_gcp_environment_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libalts_util.a(check_gcp_environment_windows.o) has no symbols
INFO: From Linking external/grpc/libtsi.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libtsi.a(ssl_session_openssl.o) has no symbols
INFO: From Linking external/grpc/libgrpc++_base.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgrpc++_base.a(rpc_method.o) has no symbols
INFO: From Linking external/grpc/libgpr_base.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(cpu_iphone.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(cpu_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(cpu_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(env_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(env_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(log_android.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(log_linux.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(log_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(string_util_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(string_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(sync_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(time_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(tls_pthread.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(tmpfile_msys.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(tmpfile_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(wrap_memcpy.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(thd_windows.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/libgpr_base.a(stap_timers.o) has no symbols
INFO: From Linking external/grpc/third_party/address_sorting/libaddress_sorting.a [for host]:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: bazel-out/host/bin/external/grpc/third_party/address_sorting/libaddress_sorting.a(address_sorting_windows.o) has no symbols
ERROR: /Users/zardoz/Projects/tensorflow/tensorflow/python/BUILD:5315:1: Executing genrule //tensorflow/python:framework/fast_tensor_util.pyx_cython_translation failed (Exit 1)
Traceback (most recent call last):
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/execroot/org_tensorflow/bazel-out/host/bin/external/cython/cython_binary.runfiles/cython/cython.py", line 17, in <module>
    main(command_line = 1)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 720, in main
    result = compile(sources, options)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 695, in compile
    return compile_multiple(source, options)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 666, in compile_multiple
    context = options.create_context()
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 590, in create_context
    self.cplus, self.language_level, options=self)
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Main.py", line 75, in __init__
    from . import Builtin, CythonScope
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/CythonScope.py", line 5, in <module>
    from .UtilityCode import CythonUtilityCode
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/UtilityCode.py", line 3, in <module>
    from .TreeFragment import parse_from_strings, StringParseContext
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/TreeFragment.py", line 17, in <module>
    from .Visitor import VisitorTransform
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/Visitor.py", line 15, in <module>
    from . import ExprNodes
  File "/private/var/tmp/_bazel_zardoz/5e080a8a46c0e2b2146c013eb1079337/external/cython/Cython/Compiler/ExprNodes.py", line 2875
    await = None
          ^
SyntaxError: invalid syntax
Target //tensorflow/tools/pip_package:build_pip_package failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 179.318s, Critical Path: 6.38s
INFO: 413 processes: 413 local.
FAILED: Build did NOT complete successfully

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@activatedgeek ์‹ค๋ก€์ง€๋งŒ, Tensorflow๊ฐ€ Python 3.7(๊ฑฐ์˜ ํ•œ ๋‹ฌ ์ „์— ์ถœ์‹œ๋จ)๊ณผ ํ˜ธํ™˜๋˜๋„๋ก ๋งŒ๋“œ๋Š” ํƒ€์ž„๋ผ์ธ์— ๊ด€ํ•œ OP ์งˆ๋ฌธ์— ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋‹ตํ•˜๋Š”์ง€ ์•Œ์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  80 ๋Œ“๊ธ€

๊ท€ํ•˜์˜ ๊ฒŒ์‹œ๋ฌผ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋ฌธ์ œ ํ…œํ”Œ๋ฆฟ์—์„œ ๋‹ค์Œ ํ•„๋“œ๋ฅผ ์ฑ„์šฐ์ง€ ์•Š์€ ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ์‚ฌ๋ก€์™€ ๊ด€๋ จ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์—…๋ฐ์ดํŠธํ•˜๊ฑฐ๋‚˜ N/A๋กœ ๋‚จ๊ฒจ๋‘˜ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๊ฐ์‚ฌ ํ•ด์š”.
๋‚ด๊ฐ€ ์‚ฌ์šฉ์ž ์ •์˜ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๊นŒ?
OS ํ”Œ๋žซํผ ๋ฐ ๋ฐฐํฌ
์—์„œ ์„ค์น˜๋œ TensorFlow
ํ…์„œํ”Œ๋กœ์šฐ ๋ฒ„์ „
๋ฐ”์ ค ๋ฒ„์ „
CUDA/cuDNN ๋ฒ„์ „
GPU ๋ชจ๋ธ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ
์žฌ์ƒ์‚ฐ์„ ์œ„ํ•œ ์ •ํ™•ํ•œ ๋ช…๋ น

์š”์ฒญ์— ๋”ฐ๋ผ ์›๋ณธ ๊ฒŒ์‹œ๋ฌผ์„ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

@homofortis ๊ทธ๋™์•ˆ Homebrew์™€ ํ•จ๊ป˜ ์ด๊ฒƒ์„ ์‚ฌ์šฉํ•˜์—ฌ Python ๋ฒ„์ „์„ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb

async ๋ฐ await ๋Š” ์ด์ œ ํ‚ค์›Œ๋“œ์ด๋ฉฐ TF ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ๊ต์ฒดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. https://docs.python.org/3/whatsnew/3.7.html#summary -release-highlights ์ฐธ์กฐ

17022

@activatedgeek ์‹ค๋ก€์ง€๋งŒ, Tensorflow๊ฐ€ Python 3.7(๊ฑฐ์˜ ํ•œ ๋‹ฌ ์ „์— ์ถœ์‹œ๋จ)๊ณผ ํ˜ธํ™˜๋˜๋„๋ก ๋งŒ๋“œ๋Š” ํƒ€์ž„๋ผ์ธ์— ๊ด€ํ•œ OP ์งˆ๋ฌธ์— ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋‹ตํ•˜๋Š”์ง€ ์•Œ์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

@homofortis ์‚ฌ๊ณผ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์•„๋งˆ๋„ ๊ฑฐ๊ธฐ์— ๋ช‡ ๋‹จ์–ด๋ฅผ ๋†“์ณค์„ ๊ฒƒ์ด๊ณ  ๋‹น์‹ ์˜ ์ฃผ์š” ๋ชฉํ‘œ๋Š” ์†Œ์Šค์—์„œ ์ปดํŒŒ์ผํ•˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋งŽ์€ ๊ฒ€์ƒ‰์œผ๋กœ ์ธํ•ด ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๊ณ , Tensorflow๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ์ข‹์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์„ค๋ช…์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ์ง„๋‹จ์€ Python-3.7๊ณผ์˜ tensorflow ํ˜ธํ™˜์„ฑ๊ณผ ๊ด€๋ จ์ด ์—†์ง€๋งŒ ๋„ˆ๋ฌด ์˜ค๋ž˜๋œ Cython์„ ์‚ฌ์šฉํ•˜๊ณ  ํ˜„์žฌ ์ •ํ™•ํžˆ ์ด ๋ฌธ์ œ๋Š” Bazel ์ž‘์—… ๊ณต๊ฐ„์—์„œ ์–ธ๊ธ‰๋œ Cython์ด ์ถฉ๋ถ„ํžˆ ์ƒˆ๋กญ๊ธฐ ๋•Œ๋ฌธ์— ์žฌํ˜„๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ์ ์–ด๋„ 2๊ฐœ์˜ Python-3.7 ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • tensorflow/c/eager/c_api.{h,cc} pywrap_tensorflow_internal.py ์˜ ๋ณ€์ˆ˜ ์ด๋ฆ„์œผ๋กœ async ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ - #20690
  • char * ์—์„œ const char * ๋กœ PyUnicode_AsUTF8AndSize() ์˜ ๋ฐ˜ํ™˜ ์œ ํ˜• ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•œ ํŒŒ์†
    ์•„๋งˆ๋„ ํ›„์ž๋ฅผ ๋ณ„๋„์˜ ๋ฌธ์ œ๋กœ ๋‘๋Š” ๊ฒƒ์ด ๋” ๋‚˜์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

FWIW, VS2017 ๋ฐ ๋‹ค์Œ ํŒจ์น˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Python 3.7์šฉ Windows์—์„œ MKL๋กœ tensorflow 1.9๋ฅผ ๋นŒ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค(์•„์ง ํ…Œ์ŠคํŠธ๋˜์ง€ ์•Š์Œ).

diff --git a/tensorflow/c/eager/c_api.h b/tensorflow/c/eager/c_api.h
index 1862af3ce2..093b97110f 100644
--- a/tensorflow/c/eager/c_api.h
+++ b/tensorflow/c/eager/c_api.h
@@ -76,7 +76,7 @@ typedef enum TFE_ContextDevicePlacementPolicy {
 // Sets the default execution mode (sync/async). Note that this can be
 // overridden per thread using TFE_ContextSetAsyncForThread.
 TF_CAPI_EXPORT extern void TFE_ContextOptionsSetAsync(TFE_ContextOptions*,
-                                                      unsigned char async);
+                                                      unsigned char is_async);

 TF_CAPI_EXPORT extern void TFE_ContextOptionsSetDevicePlacementPolicy(
     TFE_ContextOptions*, TFE_ContextDevicePlacementPolicy);
@@ -125,7 +125,7 @@ TFE_ContextGetDevicePlacementPolicy(TFE_Context*);

 // Overrides the execution mode (sync/async) for the current thread.
 TF_CAPI_EXPORT extern void TFE_ContextSetAsyncForThread(TFE_Context*,
-                                                        unsigned char async,
+                                                        unsigned char is_async,
                                                         TF_Status* status);

 // Causes the calling thread to block till all ops dispatched in async mode
diff --git a/tensorflow/core/platform/windows/port.cc b/tensorflow/core/platform/windows/port.cc
index 174f41a993..b06434620e 100644
--- a/tensorflow/core/platform/windows/port.cc
+++ b/tensorflow/core/platform/windows/port.cc
@@ -57,6 +57,11 @@ int NumSchedulableCPUs() {
   return system_info.dwNumberOfProcessors;
 }

+int NumHyperthreadsPerCore() {
+  static const int ht_per_core = tensorflow::port::CPUIDNumSMT();
+  return (ht_per_core > 0) ? ht_per_core : 1;
+}
+
 void* AlignedMalloc(size_t size, int minimum_alignment) {
 #ifdef TENSORFLOW_USE_JEMALLOC
   void* ptr = NULL;
diff --git a/tensorflow/python/eager/pywrap_tfe_src.cc b/tensorflow/python/eager/pywrap_tfe_src.cc
index 6c9481c3af..13edbb07db 100644
--- a/tensorflow/python/eager/pywrap_tfe_src.cc
+++ b/tensorflow/python/eager/pywrap_tfe_src.cc
@@ -813,7 +813,7 @@ char* TFE_GetPythonString(PyObject* o) {
   }
 #if PY_MAJOR_VERSION >= 3
   if (PyUnicode_Check(o)) {
-    return PyUnicode_AsUTF8(o);
+    return (char *)PyUnicode_AsUTF8(o);
   }
 #endif
   return nullptr;
diff --git a/tensorflow/python/lib/core/ndarray_tensor.cc b/tensorflow/python/lib/core/ndarray_tensor.cc
index 9df38d464c..4150fbfdd4 100644
--- a/tensorflow/python/lib/core/ndarray_tensor.cc
+++ b/tensorflow/python/lib/core/ndarray_tensor.cc
@@ -154,7 +154,7 @@ Status PyBytesArrayMap(PyArrayObject* array, F f) {
     if (PyUnicode_Check(item.get())) {
 #if PY_VERSION_HEX >= 0x03030000
       // Accept unicode by converting to UTF-8 bytes.
-      ptr = PyUnicode_AsUTF8AndSize(item.get(), &len);
+      ptr = (char *)PyUnicode_AsUTF8AndSize(item.get(), &len);
       if (!ptr) {
         return errors::Internal("Unable to get element as UTF-8.");
       }
diff --git a/tensorflow/python/lib/core/py_func.cc b/tensorflow/python/lib/core/py_func.cc
index 30c1a9c759..231a66de59 100644
--- a/tensorflow/python/lib/core/py_func.cc
+++ b/tensorflow/python/lib/core/py_func.cc
@@ -322,7 +322,7 @@ Status ConvertNdarrayToTensor(PyObject* obj, Tensor* ret) {
         Py_ssize_t el_size;
         if (PyBytes_AsStringAndSize(input_data[i], &el, &el_size) == -1) {
 #if PY_MAJOR_VERSION >= 3
-          el = PyUnicode_AsUTF8AndSize(input_data[i], &el_size);
+          el = (char *)PyUnicode_AsUTF8AndSize(input_data[i], &el_size);
 #else
           el = nullptr;
           if (PyUnicode_Check(input_data[i])) {

PyUnicode_AsUTF8AndSize() ์˜ ๊ฒฐ๊ณผ์—์„œ ์ œ๊ฑฐํ•˜๋Š” ๋Œ€์‹  const ํ•œ์ •์ž๋ฅผ ๋Œ€์ƒ์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ƒ์ˆ˜ ๋ฌธ์ž์—ด์ด๋ฉฐ ์ˆ˜์ •ํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค.

@asimshankar ๋Š” ์ด ์ฃผ์ œ๋ฅผ ๊ฒ€ํ† ํ•˜๊ณ  PR์„ ๋ณด๋ƒˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๊ทธ๋ฅผ ํ• ๋‹นํ• ๊ฒŒ.

Arch Linux์—์„œ python 3.7์„ ์‚ฌ์šฉํ•˜์—ฌ ์†Œ์Šค์—์„œ ๋นŒ๋“œํ•  ๋•Œ๋„ ๋น„์Šทํ•œ ๋ฌธ์ œ์— ์ง๋ฉดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

ERROR: /home/rharish/.cache/bazel/_bazel_rharish/5d4d7b1255c710f6c814ab2f3f084405/external/protobuf_archive/BUILD:659:1: C++ compilation of rule '@protobuf_archive//:python/google/protobuf/pyext/_message.so' failed (Exit 1): crosstool_wrapper_driver_is_not_gcc failed: error executing command 
  (cd /home/rharish/.cache/bazel/_bazel_rharish/5d4d7b1255c710f6c814ab2f3f084405/execroot/org_tensorflow && \
  exec env - \
    LD_LIBRARY_PATH=:/usr/local/lib:/opt/cuda/lib64 \
    PATH=/home/rharish/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/opt/cuda/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl \
    PWD=/proc/self/cwd \
  external/local_config_cuda/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -MD -MF bazel-out/host/bin/external/protobuf_archive/_objs/python/google/protobuf/pyext/_message.so/descriptor_containers.pic.d '-frandom-seed=bazel-out/host/bin/external/protobuf_archive/_objs/python/google/protobuf/pyext/_message.so/descriptor_containers.pic.o' -iquote external/protobuf_archive -iquote bazel-out/host/genfiles/external/protobuf_archive -iquote bazel-out/host/bin/external/protobuf_archive -iquote external/bazel_tools -iquote bazel-out/host/genfiles/external/bazel_tools -iquote bazel-out/host/bin/external/bazel_tools -iquote external/local_config_python -iquote bazel-out/host/genfiles/external/local_config_python -iquote bazel-out/host/bin/external/local_config_python -isystem external/protobuf_archive/python -isystem bazel-out/host/genfiles/external/protobuf_archive/python -isystem bazel-out/host/bin/external/protobuf_archive/python -isystem external/protobuf_archive/src -isystem bazel-out/host/genfiles/external/protobuf_archive/src -isystem bazel-out/host/bin/external/protobuf_archive/src -isystem external/local_config_python/python_include -isystem bazel-out/host/genfiles/external/local_config_python/python_include -isystem bazel-out/host/bin/external/local_config_python/python_include '-std=c++11' -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' -fPIC -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -Wall -fno-omit-frame-pointer -no-canonical-prefixes -DNDEBUG -g0 -O2 -ffunction-sections -fdata-sections -g0 '-march=native' -g0 -DHAVE_PTHREAD -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -Wno-unused-function -Wno-writable-strings '-DGOOGLE_PROTOBUF_HAS_ONEOF=1' '-DPROTOBUF_PYTHON_ALLOW_OVERSIZE_PROTOS=1' -c external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc -o bazel-out/host/bin/external/protobuf_archive/_objs/python/google/protobuf/pyext/_message.so/descriptor_containers.pic.o)
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc: In function 'bool google::protobuf::python::descriptor::_GetItemByKey(google::protobuf::python::PyContainer*, PyObject*, const void**)':
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:69:45: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
        ((*(charpp) = PyUnicode_AsUTF8AndSize(ob, (sizep))) == NULL? -1: 0): \
                      ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:172:13: note: in expansion of macro 'PyString_AsStringAndSize'
         if (PyString_AsStringAndSize(key, &name, &name_size) < 0) {
             ^~~~~~~~~~~~~~~~~~~~~~~~
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:69:45: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
        ((*(charpp) = PyUnicode_AsUTF8AndSize(ob, (sizep))) == NULL? -1: 0): \
                      ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
external/protobuf_archive/python/google/protobuf/pyext/descriptor_containers.cc:189:13: note: in expansion of macro 'PyString_AsStringAndSize'
         if (PyString_AsStringAndSize(key, &camelcase_name, &name_size) < 0) {
             ^~~~~~~~~~~~~~~~~~~~~~~~
At global scope:
cc1plus: warning: unrecognized command line option '-Wno-writable-strings'
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 63.634s, Critical Path: 9.08s
INFO: 464 processes: 464 local.
FAILED: Build did NOT complete successfully

๋‚ด ์‹œ์Šคํ…œ ๊ตฌ์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
OS ํ”Œ๋žซํผ ๋ฐ ๋ฐฐํฌ: ์•„์น˜ ๋ฆฌ๋ˆ…์Šค
ํŒŒ์ด์ฌ: ํŒŒ์ด์ฌ 3.7.0
TensorFlow ์„ค์น˜: ์†Œ์Šค(https://github.com/tensorflow/tensorflow.git), ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜
TensorFlow ๋ฒ„์ „: TensorFlow 1.9.0
๋ฐ”์ ค ๋ฒ„์ „: 0.16.0
CUDA/cuDNN ๋ฒ„์ „: CUDA 9.2
GPU ๋ชจ๋ธ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ: NVIDIA GeForce GTX 960M, 4GB

@bstriner ๊ฐ€ #21202 ์—…๋ฐ์ดํŠธ์— ์ž์›ํ•˜์—ฌ ํ•œ ๊ฑธ์Œ ๋” ๋‚˜์•„๊ฐ”์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Python 3.7์„ ์ง€์›ํ•˜๋Š” protobuf ๋ฆด๋ฆฌ์Šค๋ฅผ ๊ธฐ๋‹ค๋ฆฐ ๋‹ค์Œ ์ƒˆ protobuf ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋„๋ก TensorFlow ์ข…์†์„ฑ์„ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@rharish101
Arch Linux๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ pacman-S python-tensorflow ๋กœ Tensorflow๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@rharish101
CUDA ์ง€์›์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ pacman-S python-tensorflow-cuda ๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@hzxie ์˜ˆ, ์ด์ œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค! Arch์˜ ์‚ฌ๋žŒ๋“ค์€ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๊นŒ?

์•„์ง 3.7์„ ์ง€์›ํ•˜๋Š” protobuf ๋ฆด๋ฆฌ์Šค๋Š” ์—†์ง€๋งŒ ๋งˆ์Šคํ„ฐ์˜ ์Šค๋ƒ…์ƒท์„ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ 3.7์šฉ TF๋ฅผ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@bstriner
์—ฌ์ „ํžˆ ์ตœ์‹  ๋งˆ์Šคํ„ฐ๋ฅผ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋นŒ๋“œ๊ฐ€ ์˜ค๋ฅ˜์™€ ํ•จ๊ป˜ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

OS ํ”Œ๋žซํผ ๋ฐ ๋ฐฐํฌ: Mac OS X 10.13.5
ํŒŒ์ด์ฌ: ํŒŒ์ด์ฌ 3.7.0
TensorFlow ์„ค์น˜: ์†Œ์Šค(https://github.com/tensorflow/tensorflow.git)
TensorFlow ๋ฒ„์ „: TensorFlow 1.10
Bazel ๋ฒ„์ „: 0.15.2-homebrew
CUDA/cuDNN ๋ฒ„์ „: ์—†์Œ
GPU ๋ชจ๋ธ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ: ์—†์Œ
์žฌํ˜„ํ•  ์ •ํ™•ํ•œ ๋ช…๋ น:
bazel ๋นŒ๋“œ --config=opt //tensorflow/tools/pip_ ํŒจํ‚ค์ง€:build_pip_package

ERROR: /Users/zardoz/Projects/tensorflow/tensorflow/python/eager/BUILD:10:1: C++ compilation of rule '//tensorflow/python/eager:pywrap_tfe_lib' failed (Exit 1)
tensorflow/python/eager/pywrap_tfe_src.cc:219:11: error: cannot initialize a variable of type 'char *' with an rvalue of type 'const char *'
    char* buf = PyUnicode_AsUTF8AndSize(py_value, &size);
          ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tensorflow/python/eager/pywrap_tfe_src.cc:834:12: error: cannot initialize return object of type 'char *' with an rvalue of type 'const char *'
    return PyUnicode_AsUTF8(o);
           ^~~~~~~~~~~~~~~~~~~
2 errors generated.
Target //tensorflow/tools/pip_package:build_pip_package failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 5896.213s, Critical Path: 267.71s
INFO: 2883 processes: 2883 local.
FAILED: Build did NOT complete successfully

@cgohlke python 3.7์šฉ tensorflow-gpu๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

@homofortis ๋Š” ์ด ํ™๋ณด๊ฐ€ ์•„์ง ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ง์ ‘ ์žก์•„ ๋‹น๊ฒจ์•ผ ํ•ฉ๋‹ˆ๋‹ค. https://github.com/tensorflow/tensorflow/pull/21202

py37 ์ˆ˜์ • ์‚ฌํ•ญ์„ ํ˜„์žฌ ์ €์žฅ์†Œ๋กœ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•˜์‹ญ์‹œ์˜ค.

git remote add bstriner https://github.com/bstriner/tensorflow.git
git fetch bstriner
git merge bstriner/py37

๊ธฐ๋ณธ์ ์œผ๋กœ const char * ๊ฐ€ char * ๋˜๋Š” ์ด์™€ ์œ ์‚ฌํ•œ ๊ฒƒ์œผ๋กœ ์บ์ŠคํŠธ๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด py37์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ๋งํฌ๋œ PR์—์„œ ์ˆ˜์ • ๋ฐ ํ† ๋ก .

@bstriner python 3.7์šฉ tensorflow gpu์˜ ํœ  ํŒŒ์ผ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜ ํ˜ผ์ž์„œ๋Š” ์ง€์„ ์ˆ˜ ์—†์–ด

์ด ๋ฌธ์ œ๋Š” ์–ธ์ œ ์ˆ˜์ •๋˜๋‚˜์š”??

@bstriner ์˜ ๊ธฐ์—ฌ(PR #21202) ๋•๋ถ„์— ์ด์ œ Python 3.7์šฉ์œผ๋กœ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฐ€ PR์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด eigen ๋ฐ protobuf ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” Windows์—์„œ ์ปดํŒŒ์ผํ•˜๋ ค๋ฉด ์—ฌ์ „ํžˆ ์ˆ˜์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

@gunan @angersson ์€ TensorFlow 1.11์˜ ๊ณต์‹ ๋ฆด๋ฆฌ์Šค๊ฐ€ Python 3.7์„ ์ง€์›ํ•˜๋Š”์ง€ ์•„๋‹ˆ๋ฉด ์†Œ์Šค์—์„œ ์ปดํŒŒ์ผํ•ด์•ผ ํ•˜๋Š”์ง€์— ๋Œ€ํ•ด ์•Œ๊ณ  ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ์šฐ๋ฆฌ๊ฐ€ ํŒŒ์•…ํ•ด์•ผ ํ•  ์ธํ”„๋ผ ์ธก๋ฉด์—์„œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
์šฐ๋ฆฌ์˜ ๋ชจ๋“  ๋นŒ๋“œ ์ธํ”„๋ผ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ ์š”์ฒญ(์šฐ๋ถ„ํˆฌ 14์™€ ํ˜ธํ™˜ ๊ฐ€๋Šฅ)์œผ๋กœ ์ธํ•ด ์šฐ๋ถ„ํˆฌ 14๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ python 3.7์€ ์šฐ๋ถ„ํˆฌ์™€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์—…๋ฐ์ดํŠธ๋œ ๋ฒ„์ „์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ถ„ํˆฌ 14์—์„œ ๋นŒ๋“œํ•˜๊ธฐ๊ฐ€ ๊ฐ„๋‹จํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Windows์—์„œ eigen ๋ฐ protobuf ์ˆ˜์ •์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋™์•ˆ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ 1.11์— python 3.7์šฉ์œผ๋กœ ๋ฏธ๋ฆฌ ๋นŒ๋“œ๋œ ํŒจํ‚ค์ง€๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

@SukeshP1995 ์ด URL์„ ์‚ฌ์šฉํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://www.lfd.uci.edu/~gohlke/pythonlibs/#tensorflow

Python 3.7์šฉ Ubuntu 16.04 TensorFlow GPU ํœ ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋˜๋Š” ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ง์ ‘ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ„๋‹จํ•œ ๊ฐ€์ด๋“œ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์†์„ ์žก์•„์ฃผ๋Š” ์‚ฌ๋žŒ ์—†์ด ๊ทธ๋ƒฅ ๋‚˜๊ฐ€์„œ ํ•ด ๋ณธ ๊ฒฝํ—˜์ด ์—†์–ด์š” :)

@bjtho08 https://www.tensorflow.org/install/install_linux#python_36 ์„ ๋ณด์…จ์Šต๋‹ˆ๊นŒ?

@morenoh149 python 3.6 ์ „์šฉ์ž…๋‹ˆ๋‹ค. ๋ฐฉ๊ธˆ ์ƒˆ๋กœ ์„ค์น˜ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— 3.7์ด ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -418442189 ์—ฌ์ „ํžˆ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
์ธํ”„๋ผ ๋ฌธ์ œ(์šฐ๋ถ„ํˆฌ 14์˜ python 3.7) ์™ธ์—๋„ ๋ชจ๋“  ์ข…์†์„ฑ์ด ์•„์ง python 3.7์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ํŒŒ์ด์ฌ 3.7๋กœ ์ด๋™ํ•˜๊ธฐ ์œ„ํ•ด ๊ทธ๋“ค๊ณผ ํ˜‘๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์•„ ์•„๋‹ˆ์š”, ๊ทธ๊ฑด @bjtho08 tensorflow๊ฐ€ 3.7์—์„œ ์ƒˆ๋กœ์šด python ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ์„ ์ค‘๋‹จํ•ด์•ผ ํ•˜๋Š” ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋ฐ”๋กœ ์ด ์Šค๋ ˆ๋“œ์— ๋Œ€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ๋™์•ˆ ๋ณด๋ฅ˜ ์ค‘์ธ ํฌํฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ 3.6์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@morenoh149 ๊ทธ๋ž˜์„œ ๋‚ด ์˜ต์…˜์€ ์ด์ „ ๋ฒ„์ „์˜ python์„ ๋นŒ๋“œํ•˜๊ฑฐ๋‚˜ git/master์—์„œ tensorflow๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๊นŒ?

์˜ค๋Š˜๋ถ€๋กœ ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค. ์ด PR https://github.com/tensorflow/tensorflow/pull/21202 ๋Š” ๋งˆ์Šคํ„ฐ์— ์žˆ์ง€๋งŒ ๋ฆด๋ฆฌ์Šค๋Š” ์•„์ง ์ž๋ฅด์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. FWIW์—์„œ๋Š” pyenv ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ์Šคํ…œ์— ๋งŽ์€ ํŒŒ์ด์ฌ ๋ฒ„์ „์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „๋ฌธ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋Š” ํ”„๋กœ์ ํŠธ์— ๋”ฐ๋ผ ์ข…์†์„ฑ๊ณผ ๋„๊ตฌ๋ฅผ ๊ณ ์ •ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@morenoh149 @bjtho08 ๋งˆ์Šคํ„ฐ ๋ธŒ๋žœ์น˜์—์„œ tensorflow๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋Š” ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€ ์ข…์† ํ•ญ๋ชฉ์€ ์•„์ง 3.7์„ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@adrianodennanni ์ข…์†์„ฑ์€ 3.7์„ ์ง€์›ํ•˜์ง€๋งŒ ๋ฆด๋ฆฌ์Šค๋œ ๋ฒ„์ „์—์„œ๋Š” ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž‘์—… ๊ณต๊ฐ„์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ˜„์žฌ ๋งˆ์Šคํ„ฐ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค๊ฐ€ ์žˆ์„ ๋•Œ๊นŒ์ง€ tensorflow์˜ ์ข…์†์„ฑ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ํ˜„์žฌ protobuf์˜ ๊ฒฝ์šฐ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

    PROTOBUF_URLS = [
        "https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz",
        "https://github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz",
    ]
    PROTOBUF_SHA256 = "f785d2009ea7c8484cb0443d9db8fe55f73cfdb6e112bfa659a8a5cdaf664ccd"
    PROTOBUF_STRIP_PREFIX = "protobuf-a6e1cc7e328c45a0cb9856c530c8f6cd23314163"

์ตœ์‹  ๊ณ ์œ ๊ฐ’์ด ํ•„์š”ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

@rharish101
CUDA ์ง€์›์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ pacman-S python-tensorflow-cuda ๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž˜ํ–ˆ์–ด ๊ณ ๋งˆ์›Œ

์˜ค๋Š˜๋ถ€๋กœ ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค. ์ด PR #21202๋Š” ๋งˆ์Šคํ„ฐ์— ์žˆ์ง€๋งŒ ๋ฆด๋ฆฌ์Šค๋Š” ์•„์ง ์ž๋ฅด์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. FWIW์—์„œ๋Š” pyenv ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ์Šคํ…œ์— ๋งŽ์€ ํŒŒ์ด์ฌ ๋ฒ„์ „์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „๋ฌธ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋Š” ํ”„๋กœ์ ํŠธ์— ๋”ฐ๋ผ ์ข…์†์„ฑ๊ณผ ๋„๊ตฌ๋ฅผ ๊ณ ์ •ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@morenoh149 ํŒ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! pyenv ๋ฐ CUDA 9.0์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜์—ฌ ์ž‘๋™ํ•˜๊ฒŒ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. :)

@gunan

๊ทธ๋Ÿฌ๋‚˜ python 3.7์€ ์šฐ๋ถ„ํˆฌ์™€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์—…๋ฐ์ดํŠธ๋œ ๋ฒ„์ „์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ถ„ํˆฌ 14์—์„œ ๋นŒ๋“œํ•˜๊ธฐ๊ฐ€ ๊ฐ„๋‹จํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Ubuntu 12์—์„œ Python-3.7์„ ๋นŒ๋“œํ•œ ๊ฒฝํ—˜์„ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์•„์ง ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ๋‹ค๋ฉด ๋„์›€์ด ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋‹ค์Œ ๊ตฌ์„ฑ ํ”Œ๋ž˜๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค.

    --prefix=... \
    --enable-ipv6 \
    --with-dbmliborder=gdbm \
    --with-system-expat \
    --with-computed-gotos \
    --with-system-ffi \
    --with-ensurepip=no

๊ทธ๋ฆฌ๊ณ  Python์— ๋„ˆ๋ฌด ์˜ค๋ž˜๋œ ์‹œ์Šคํ…œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” OpenSSL๋ฟ์ด๋ฏ€๋กœ ssl ๋ชจ๋“ˆ์„ ๋นŒ๋“œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์†Œ์Šค์—์„œ OpenSSL์„ ๋นŒ๋“œํ•˜๊ณ  cryptography ๋ ˆ์‹œํ”ผ(https://cryptography.io/en/latest/installation/#static-wheels)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ •์ ์œผ๋กœ ๋งํฌํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

  • ์ •์  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋งŒ ์‚ฌ์šฉํ•˜์—ฌ ์ ์ ˆํ•˜๊ฒŒ ๊ตฌ์„ฑ๋œ OpenSSL์„ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค.
OPENSSL_VERSION=1.0.2p
wget https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz
tar xf openssl-${OPENSSL_VERSION}.tar.gz
cd openssl-${OPENSSL_VERSION}
./config no-shared no-ssl2 no-ssl3 -fPIC --prefix=$(pwd)/_openssl
make && make install
  • configure ์Šคํฌ๋ฆฝํŠธ์— ํ”Œ๋ž˜๊ทธ๋ฅผ ์ „๋‹ฌํ•˜์—ฌ ํ•ด๋‹น OpenSSL์„ ์‚ฌ์šฉํ•˜์—ฌ Python์„ ๋นŒ๋“œํ•ฉ๋‹ˆ๋‹ค. --with-openssl=$(pwd)/openssl-${OPENSSL_VERSION}/_openssl configure ํ˜ธ์ถœ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
./configure
    --prefix=... \
    --enable-ipv6 \
    --with-dbmliborder=gdbm \
    --with-system-expat \
    --with-computed-gotos \
    --with-system-ffi \
    --with-ensurepip=no \
    --with-openssl=$(pwd)/openssl-${OPENSSL_VERSION}/_openssl

์˜ค๋ž˜๋œ OpenSSL ๋ฌธ์ œ ์™ธ์—๋„ ์ด์ „ Ubuntu์—์„œ Python-3.7์„ ๋นŒ๋“œํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋นŒ๋“œ๋ฅผ ํ…Œ์ŠคํŠธํ–ˆ๋Š”๋ฐ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. Python ์†Œ์Šค์˜ ํ…Œ์ŠคํŠธ๋Š” ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค.

์ž”์†Œ๋ฆฌํ•˜๋Š” ๋‹ด๋‹น์ž @gunan , @angersson : 14์ผ ๋™์•ˆ ํ™œ๋™์ด ์—†์—ˆ์œผ๋ฉฐ ์ด ๋ฌธ์ œ์—๋Š” ๋‹ด๋‹น์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ์— ๋”ฐ๋ผ ๋ ˆ์ด๋ธ” ๋ฐ/๋˜๋Š” ์ƒํƒœ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์‹ญ์‹œ์˜ค.

@bstriner PROTOBUF_URLS, PROTOBUF_SHA256 ๋ฐ PROTOBUF_STRIP_PREFIX ๋ณ€๊ฒฝ์„ ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค. tensorflow/workspace.bzl์—์„œ ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๊นŒ? ๋‹ค๋ฅธ ๊ณณ? ๊ฐ์‚ฌ ํ•ด์š”.

์‹ค์ œ๋กœ ์ด๊ฒƒ์„ ์‹œ๋„ํ•œ ํ›„ tensorflow 1.11์˜ bazel ๋นŒ๋“œ ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์˜ค๋ฅ˜: tensorflow/tensorflow/tools/pip_package/ BUILD:216 :1: 'tensorflow' ํŒจํ‚ค์ง€ ๋กœ๋“œ ์ค‘ ์˜ค๋ฅ˜: ํ™•์žฅ ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. '@bazel_skylib//:lib.bzl'์— ๋Œ€ํ•œ ํŒจํ‚ค์ง€๋ฅผ ๋กœ๋“œํ•  ์ˆ˜ ์—†์Œ: '//tensorflow/tools/pip_ package:build_pip_package '์—์„œ ์ €์žฅ์†Œ๋ฅผ ํ™•์ธํ•˜๊ณ  ์ฐธ์กฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

@jeffcbecker ๋‚˜๋„์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. URL https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz ์„(๋ฅผ) ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฌ๋“ ์ง€ ์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

Python 3.6์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
๊ฑด๋ฐฐ
์ œํ”„
๋‚ด T-Mobile 4G LTE ์žฅ์น˜์—์„œ ์ „์†ก๋จ
-------- ์›๋ณธ ๋ฉ”์‹œ์ง€ -------- ๋ณด๋‚ธ ์‚ฌ๋žŒ: Adriano Dennanni [email protected] ๋‚ ์งœ: 10/21/18 ์˜คํ›„ 1:40(GMT-08:00) ๋ฐ›๋Š” ์‚ฌ๋žŒ: tensorflow/tensorflow [email protected] ์ฐธ์กฐ: jeffcbecker [email protected] ,mentment@ noreply.github.com ์ œ๋ชฉ: Re: [tensorflow/tensorflow] Python 3.7 ํ˜ธํ™˜์„ฑ(#20517)
@jeffcbecker ๋‚˜๋„์ด ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. URL https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฌ๋“ ์ง€ ์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub์—์„œ ๋ณด๊ฑฐ๋‚˜ ์Šค๋ ˆ๋“œ๋ฅผ ์Œ์†Œ๊ฑฐํ•˜์„ธ์š”.
{"api_version":"1.0","๊ฒŒ์‹œ์ž":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/tensorflow/tensorflow","title ":"tensorflow/tensorflow","์ž๋ง‰":"GitHub ์ €์žฅ์†Œ","main_image_url":" https://assets-cdn.github.com/images/email/message_cards/header.png ","avatar_image_url":" https://assets-cdn.github.com/images/email/message_cards/avatar.png ","action":{"name":"GitHub์—์„œ ์—ด๊ธฐ","url":" https://github.com /tensorflow/tensorflow "}},"updates":{"snippets":[{"icon":"PERSON","message":" @adrianodennanni in #20517: @jeffcbecker ์ €๋„ ์ด ๋ฌธ์ œ๋ฅผ ๊ฒช์—ˆ์Šต๋‹ˆ๋‹ค. URL https://mirror.bazel.build/github.com/google/protobuf/archive/a6e1cc7e328c45a0cb9856c530c8f6cd23314163.tar.gz ์„(๋ฅผ) ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?"}],"action":{"name":"๋ฌธ์ œ ๋ณด๊ธฐ","url":" https://github.com/tensorflow /tensorflow/issues/20517#issuecomment -431701713"}}}
[
{
"@context": " http://schema.org ",
"@type": "์ด๋ฉ”์ผ ๋ฉ”์‹œ์ง€",
"potentialAction": {
"@type": "ViewAction",
"๋Œ€์ƒ": " https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -431701713",
"url": " https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -431701713",
"์ด๋ฆ„": "๋ฌธ์ œ ๋ณด๊ธฐ"
},
"์„ค๋ช…": "GitHub์—์„œ ์ด ๋ฌธ์ œ ๋ณด๊ธฐ",
"๊ฒŒ์‹œ์ž": {
"@type": "์กฐ์ง",
"์ด๋ฆ„": "GitHub",
"url": " https://github.com "
}
},
{
"@type": "๋ฉ”์‹œ์ง€ ์นด๋“œ",
"@context": " http://schema.org/extensions ",
"hideOriginalBody": "๊ฑฐ์ง“",
"๋ฐœ์‹ ์ž": "AF6C5A86-E920-430C-9C59-A73278B5EFEB",
"title": "Re: [tensorflow/tensorflow] Python 3.7 ํ˜ธํ™˜์„ฑ(#20517)",
"์„น์…˜": [
{
"ํ…์ŠคํŠธ": "",
"activityTitle": " ์•„๋“œ๋ฆฌ์•„๋…ธ ๋ฐ๋‚œ๋‹ˆ ",
"ํ™œ๋™ ์ด๋ฏธ์ง€": " https://assets-cdn.github.com/images/email/message_cards/avatar.png ",
"activitySubtitle": "@adrianodennanni",
"์‚ฌ์‹ค": [

]
}
],
"potentialAction": [
{
"์ด๋ฆ„": "๋Œ“๊ธ€ ์ถ”๊ฐ€",
"@type": "์•ก์…˜ ์นด๋“œ",
"์ž…๋ ฅ": [
{
"isMultiLine": ์ฐธ,
"@type": "ํ…์ŠคํŠธ ์ž…๋ ฅ",
"id": "IssueComment",
"isRequired": ๊ฑฐ์ง“
}
],
"๋™์ž‘": [
{
"์ด๋ฆ„": "๋Œ“๊ธ€",
"@์œ ํ˜•": "HttpPOST",
"๋Œ€์ƒ": " https://api.github.com ",
"๋ณธ๋ฌธ": "{n"commandName": "IssueComment",n"repositoryFullName": "tensorflow/tensorflow",n"issueId": 20517,n"IssueComment": "{{IssueComment.value}}"n}"
}
]
},
{
"์ด๋ฆ„": "๋ฌธ์ œ ์ข…๋ฃŒ",
"@์œ ํ˜•": "HttpPOST",
"๋Œ€์ƒ": " https://api.github.com ",
"๋ณธ๋ฌธ": "{n"commandName": "IssueClose",n"repositoryFullName": "tensorflow/tensorflow",n"issueId": 20517n}"
},
{
"๋Œ€์ƒ": [
{
"os": "๊ธฐ๋ณธ๊ฐ’",
"์šฐ๋ฆฌ": " https://github.com/tensorflow/tensorflow/issues/20517#issuecomment -431701713"
}
],
"@type": "OpenUri",
"์ด๋ฆ„": "GitHub์—์„œ ๋ณด๊ธฐ"
},
{
"์ด๋ฆ„": "๊ตฌ๋… ์ทจ์†Œ",
"@์œ ํ˜•": "HttpPOST",
"๋Œ€์ƒ": " https://api.github.com ",
"๋ณธ๋ฌธ": "{n"commandName": "MuteNotification",n"threadId": 352548653n}"
}
],
"themeColor": "26292E"
}
]

protobuf ํœ ์ด 3.7์„ ์ง€์› ํ•˜๋„๋ก ์—…๊ทธ๋ ˆ์ด๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค .

์ด์ œ 3.7 ์ง€์›์„ ์œ„ํ•ด tensorflow๋ฅผ ์ถœ์‹œํ•  ๋•Œ์ž…๋‹ˆ๋‹ค.

์ข‹์€ ์†Œ์‹!
์ž‘์—… ๊ณต๊ฐ„ ๋ฐ setup.py์—์„œ TF protobuf ์ข…์†์„ฑ์„ ๋ฒ”ํ”„ํ•˜๊ธฐ ์œ„ํ•ด PR์„ ๋ณด๋‚ด์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

Tensorflow๋Š” ๋ถ„๋ช…ํžˆ Python-3.7.1์—์„œ ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ˆ„๋ฝ๋œ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. Python-3.7์ด Python-3.6๋ณด๋‹ค ๋” ํšจ์œจ์ ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ผ๋ถ€ Cloud Electric ์ฒญ๊ตฌ์„œ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/fo40225/tensorflow-windows-wheel/tree/master/1.12.0/py37

Windows์—์„œ Python 3.7์„ ์‚ฌ์šฉํ•˜์—ฌ tensorflow 1.12.0์„ ํ…Œ์ŠคํŠธํ•˜๋ ค๋Š” ๋ชจ๋“  ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•ด.

protobuf v3.6.0 + ์ฒด๋ฆฌ ์„ ํƒ https://github.com/protocolbuffers/protobuf/commit/0a59054c30e4f0ba10f10acfc1d7f3814c63e1a7

Linux์šฉ์œผ๋กœ๋„ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค!

https://github.com/adrianodennanni/tensorflow-1.12.0-cp37-cp37m-linux_x86_64/

3.7 ๋ฆด๋ฆฌ์Šค ์ดํ›„ ๋ช‡ ๊ฐœ์›”์ด ์ง€๋‚ฌ๊ณ  TF์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ๊ณ„์† ๋ฐฐํฌ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ํ˜ธํ™˜์„ฑ์— ๋Œ€ํ•œ ๋‹จ์–ด/ETA๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๊ทธ๋ž˜์„œ 2018๋…„์ด ๋๋‚˜๊ฐ€๊ณ  ์žˆ๊ณ  ๊ณต์‹ Python 3.7 ์ง€์› ๋ฆด๋ฆฌ์Šค๋Š” ์—ฌ์ „ํžˆ ๊ฑฐํ’ˆ์ž…๋‹ˆ๊นŒ? :)

@adrianodennanni ๊ฐ€ ๊ฒŒ์‹œํ•œ ๋ฒ„์ „์ด ์ €์—๊ฒŒ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๋‚ด ์ฝ”๋“œ์—์„œ python3.7 ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ํ•ญ์ƒ ํ™˜๊ฒฝ์„ ์ „ํ™˜ํ•˜๋Š” ๊ฒƒ์€ ์ •๋ง ํž˜๋“  ์ผ์ž…๋‹ˆ๋‹ค.

๊ทธ๋งŒํ•œ ๊ฐ€์น˜๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— tf๋ฅผ ์ปดํŒŒ์ผํ•˜๊ณ  ํ˜„์žฌ ๋งˆ์Šคํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OSX์—์„œ Python3.7 ํœ ์„ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

3.7์šฉ์œผ๋กœ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ๋„๋ก https://github.com/tensorflow/tensorflow/commit/b0d7d8a477d3041e2d0ebd0cb1d35e4a7fa09663 ์„ ์ œ์ถœํ–ˆ์Šต๋‹ˆ๋‹ค. tf-nightly์—๋Š” ์ด์ œ Ubuntu16.04+์—์„œ๋งŒ ์ž‘๋™ํ•˜๋Š” CPU(Ubuntu ์ „์šฉ) ๋ฒ„์ „์ด ์žˆ์Šต๋‹ˆ๋‹ค. Ubuntu์šฉ GPU ๋ฒ„์ „์ด ๊ณง ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

@av8ramit

๋•๋ถ„์— python 3.7.1, cuda 10 ๋ฐ cudnn 7.4๋กœ tf๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๊ตฌ์ถ•ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ bazel 0.20 ์ง€์›๋งŒ ๋‚จ์•˜์Šต๋‹ˆ๋‹ค.

CUDA 10์„ ์‚ฌ์šฉํ•œ tf-nightly-gpu ๋นŒ๋“œ๋„ ์ด์ œ pypi์— ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณต์‹ Python3.7 ๋ฆด๋ฆฌ์Šค ๋นŒ๋“œ๊ฐ€ ์žˆ์„ ๋•Œ๊นŒ์ง€ ์ด ๋ฒ„๊ทธ๋ฅผ ์—ด์–ด ๋‘๊ฒ ์Šต๋‹ˆ๋‹ค.

@alanpurple ์ž์„ธํžˆ ์•Œ๋ ค์ฃผ์‹ค ์ˆ˜ ์žˆ๋‚˜์š”? Ubuntu 18 ๋ฐ python 3.7์—์„œ ์ƒ๋ช…์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด tf 1.12๋ฅผ ๋นŒ๋“œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

https://drive.google.com/open?id=16vXTOJHXCLDKMTqtxMLDugUsRhiZPriQ
1.12 AVX ํ™•์žฅ์ด ์—†๋Š” Python 3.7.

https://drive.google.com/open?id=1ni7ExGVb6-c6gvb4J0hohpT4Jj4Z4xxO
1.12 SSE, XLA๊ฐ€ ์žˆ๋Š” Python 3.7 ํœ .

์œˆ๋„์šฐ์—์„œ:
1.12-cpu๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๋นŒ๋“œํ•˜๊ณ  py3.7๋กœ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ GPU:
์ถ”์‹ : bazel 0.21 ์‚ฌ์šฉ

INFO: From Linking tensorflow/contrib/tpu/python/ops/_tpu_ops.so:
   Creating library bazel-out/x64_windows-opt/bin/tensorflow/contrib/tpu/python/ops/python/ops/lib_tpu_ops.so.ifso and object bazel-out/x64_windows-opt/bin/tensorflow/contrib/tpu/python/ops/python/ops/lib_tpu_ops.so.exp
INFO: From Linking tensorflow/contrib/tensor_forest/python/ops/_stats_ops.so:
   Creating library bazel-out/x64_windows-opt/bin/tensorflow/contrib/tensor_forest/python/ops/python/ops/lib_stats_ops.so.ifso and object bazel-out/x64_windows-opt/bin/tensorflow/contrib/tensor_forest/python/ops/python/ops/lib_stats_ops.so.exp
ERROR: C:/tensorflow/tensorflow/python/keras/api/BUILD:28:1: Executing genrule //tensorflow/python/keras/api:keras_python_api_gen_compat_v1 failed (Exit 1): bash.exe failed: error executing command
  cd C:/users/USER/_bazel_USER/xv6zejqw/execroot/org_tensorflow
  SET CUDA_TOOLKIT_PATH=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.0
    SET CUDNN_INSTALL_PATH=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.0
    SET PATH=C:\msys64\usr\bin;C:\msys64\bin
    SET PYTHON_BIN_PATH=C:/Program Files/Python37/python.exe
    SET PYTHON_LIB_PATH=C:/Program Files/Python37/lib/site-packages
    SET TF_CUDA_CLANG=0
    SET TF_CUDA_COMPUTE_CAPABILITIES=3.5,7.0
    SET TF_CUDA_VERSION=10.0
    SET TF_CUDNN_VERSION=7
    SET TF_NEED_CUDA=1
    SET TF_NEED_OPENCL_SYCL=0
    SET TF_NEED_ROCM=0
  C:/msys64/usr/bin/bash.exe -c source external/bazel_tools/tools/genrule/genrule-setup.sh; bazel-out/x64_windows-opt/bin/tensorflow/python/keras/api/create_tensorflow.python_api_1_keras_python_api_gen_compat_v1.exe  --apidir=bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api_v1/ --apiname=keras --apiversion=1  --package=tensorflow.python,tensorflow.python.keras --output_package=tensorflow.python.keras.api._v1 bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/activations/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/densenet/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/inception_resnet_v2/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/inception_v3/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/mobilenet/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/mobilenet_v2/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/nasnet/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/resnet50/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/vgg16/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/vgg19/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/applications/xception/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/backend/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/callbacks/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/constraints/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/boston_housing/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/cifar10/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/cifar100/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/fashion_mnist/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/imdb/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/mnist/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/datasets/reuters/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/estimator/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/experimental/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/initializers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/layers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/losses/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/metrics/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/models/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/optimizers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/image/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/sequence/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/preprocessing/text/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/regularizers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/utils/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/wrappers/__init__.py bazel-out/x64_windows-opt/genfiles/tensorflow/python/keras/api/_v1/keras/wrappers/scikit_learn/__init__.py
Execution platform: @bazel_tools//platforms:host_platform
Traceback (most recent call last):
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:\Program Files\Python37\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Program Files\Python37\lib\imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\tools\api\generator\create_python_api.py", line 27, in <module>
    from tensorflow.python.tools.api.generator import doc_srcs
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "\\?\C:\Users\USER\AppData\Local\Temp\Bazel.runfiles_ms8gr8rl\runfiles\org_tensorflow\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "C:\Program Files\Python37\lib\imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Program Files\Python37\lib\imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found.


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/errors

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 2602.108s, Critical Path: 565.09s
INFO: 4691 processes: 4691 local.
FAILED: Build did NOT complete successfully

์ œ๊ฐ€ ๊ฒช์—ˆ๋˜ ๋ฌธ์ œ์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋งฅ OS๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค

Tensorflow๋Š” ํŒŒ์ด์ฌ 3.7๊ณผ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ํŒŒ์ด์ฌ 3.6๊นŒ์ง€๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ €๋Š” python 3.7์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์‹ ์›น์‚ฌ์ดํŠธ์—์„œ python 3.6์„ ๋‹ค์šด๋กœ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค. ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  python 3.7์ด ์‹คํ–‰๊ธฐ์— ๋“ค์–ด๊ฐ€์ž๋งˆ์ž python 3.6 ์•ฑ์„ ๋„ํ‚น์— ๊ณ ์ •ํ•ฉ๋‹ˆ๋‹ค. Python 3.6์€ ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ํƒญ์— ๋ณด์กฐ ํด๋”๋กœ ํ‘œ์‹œ๋˜์ง€๋งŒ

์ด์ œ ํ„ฐ๋ฏธ๋„์„ ์—ด๊ณ  ๋‹ค์Œ์„ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค. nano .bash_profile
๊ทธ๋Ÿฐ ๋‹ค์Œ ๋‚˜๋…ธ ํŽธ์ง‘๊ธฐ๊ฐ€ python 3.6์˜ ๊ฒฝ๋กœ ์ฃผ์„์„ ํ•ด์ œํ•˜๊ณ  3.7์˜ ๊ฒฝ๋กœ๋ฅผ ์ฃผ์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ control+X๋ฅผ ๋ˆ„๋ฅด๊ณ  ์˜ˆ๋ฅผ ๋ณด๋ ค๋ฉด y๋ฅผ ๋ˆ„๋ฅธ ๋‹ค์Œ Enter๋ฅผ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค.

์ดํ›„ ํ„ฐ๋ฏธ๋„์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ณ  ๋‹ค์Œ์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. echo $PATH
์ฒซ ๋ฒˆ์งธ ๋งํฌ๊ฐ€ python 3.6์ธ์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์ด์ œ python3์„ ์ž…๋ ฅํ•˜๊ณ  Enter ํ‚ค๋ฅผ ๋ˆ„๋ฅด๊ณ  ์–ด๋–ค ๋ฒ„์ „์ด ์—ด๋ ค ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์—ฌ python 3.6์ธ์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์ด์ œ ๋‹ค์Œ์„ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค. python3 -m pip install tensorflow
๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋‹ค๋ฅธ ๋ชจ๋“ˆ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด์ œ Python 3.6์œผ๋กœ ์ž‘์—…ํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์—ฝ๋‹ˆ๋‹ค. ๋…์—์„œ ํŒŒ์ด์ฌ. ๊ทธ๋ฆฌ๊ณ  ์ผํ•˜์„ธ์š”. 3.7์—์„œ ์ž‘์—…ํ•˜๋ ค๋ฉด python 3.7์„ ์—ด ์ˆ˜ ์žˆ์œผ๋ฉฐ ์œ ์ฐฝํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

Python 3.7์— ๋ชจ๋“ˆ์„ ์„ค์น˜ํ•˜๋ ค๋ฉด. ๊ทธ๋ƒฅ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค: python3.7 -m pip install package namr

CUDA 10์ด ํฌํ•จ๋œ Windows์šฉ์œผ๋กœ ๋งค์šฐ ์ตœ๊ทผ์— ์ปดํŒŒ์ผ๋œ python3.7.2๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋งํฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
https://github.com/PlatinumLyfe/tf-windows-gpu/

์•ˆ๋…•ํ•˜์„ธ์š”, ์ด ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ์— ์ง„์ „์ด ์žˆ์Šต๋‹ˆ๊นŒ?

bbhattmaclap:~ bbhatt$ pip3 install --upgrade tensorflow
ํ…์„œํ”Œ๋กœ ์ˆ˜์ง‘
tensorflow ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” ๋ฒ„์ „์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค(๋ฒ„์ „์—์„œ: ).
tensorflow์— ๋Œ€ํ•ด ์ผ์น˜ํ•˜๋Š” ๋ถ„ํฌ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
bbhattmaclap:~ bbhatt$

@BhuvaneshBhatt ์ตœ์‹  tensorflow ๊ณต์‹ ํŒจํ‚ค์ง€์—๋Š” Python3.7 ์ง€์›์ด ์—†์Šต๋‹ˆ๋‹ค. tf-nightly-gpu ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” 1.13์„ ์œ„ํ•ด ๊ทธ๊ฒƒ์„ ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@PlatinumLyfe ๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
๊ท€ํ•˜์˜ ๋งํฌ์—๋Š” xxx-cp36-cp36m-... ์žˆ์Šต๋‹ˆ๋‹ค.
cp37 ๋ฐ -gpu- ๋ฒ„์ „์ด ์—†์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์ปดํŒŒ์ผ๋œ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์ œ๊ณตํ•˜๋„๋ก ์š”์ฒญํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ๊ณต์‹ Python 3.7 ์ง€์›์ด ์–ธ์ œ ์‹œ์ž‘๋˜๋Š”์ง€ ๊ด€์‹ฌ ์žˆ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ์ŠคํŒธ ๋ฉ”์ผ์„ ๋ณด๋‚ด๋Š” ๊ฒƒ ์™ธ์—๋„ ๊ณต๊ฐœ์ ์œผ๋กœ ๋Œ“๊ธ€์„ ๋‹ฌ ์ˆ˜ ์žˆ๋Š” ํŽ˜์ด์ง€์—์„œ ์‹คํ–‰ํ•  ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๋ณด๋‚ด๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•˜๋Š” ๊ฒƒ์€ ํŠนํžˆ ์•ˆ์ „ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Tensorflow 1.13-rc0์ด ์ถœ์‹œ๋˜์—ˆ์ง€๋งŒ(https://github.com/tensorflow/tensorflow/releases/tag/v1.13.0-rc0), PyPI(https://pypi.org/project)์— Python 3.7 ๋นŒ๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. /tensorflow/1.13.0rc0/#files). Tensorflow 1.13์ด Python 3.7์šฉ์œผ๋กœ ๊ณต์‹ ์ถœ์‹œ๋˜๋‚˜์š”?

์šฐ๋ฆฌ๋Š” rc2 ๋˜๋Š” ๊ณต์‹์—์„œ Windows ๋ฐ Ubuntu python ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‹œ๋„ํ•˜๊ณ  ๋ณด์œ ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Mac ์ง€์›์— ๋Œ€ํ•œ ์†Œ์‹์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ์ง€๊ธˆ Mac์— ๋ถ™์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
2019๋…„ 1์›” 24์ผ ์˜ค์ „ 6์‹œ 55๋ถ„ -0600์— Amit Patankar [email protected] ์ด ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” rc2 ๋˜๋Š” ๊ณต์‹์—์„œ Windows ๋ฐ Ubuntu python ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‹œ๋„ํ•˜๊ณ  ๋ณด์œ ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub์—์„œ ๋ณด๊ฑฐ๋‚˜ ์Šค๋ ˆ๋“œ๋ฅผ ์Œ์†Œ๊ฑฐํ•˜์„ธ์š”.

์ด์ œ Mac์šฉ tf-nightly CPU ํŒจํ‚ค์ง€ ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ๋„ํ•˜๊ณ  rc2์—๋„ ์‚ฌ์šฉํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ์Šค๋ ˆ๋“œ์— ์˜ค๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ๋Š” ์œ„์—์„œ ์–ธ๊ธ‰ํ•œ tf-nightly ํŒจํ‚ค์ง€๊ฐ€ ์ข‹์Šต๋‹ˆ๋‹ค. CPU ๋ฒ„์ „์— ๋Œ€ํ•ด pip3 install tf-nightly ๋กœ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค. ํ…Œ์ŠคํŠธ, MacOS Mojave 10.14.2์—์„œ Python 3.7.2 ์ž‘์—…

1.13.0rc1 ๋ฆด๋ฆฌ์Šค์—๋Š” cpu ๋ฐ gpu ์šฉ ๋ชจ๋“  OS-es์šฉ Python3.7 ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์น˜๊ฐ€ ์•ˆ๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋‹จ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?
ํŽธ์ง‘ : ๋ฌธ์ œ๋Š” 32๋น„ํŠธ ๋ฒ„์ „์˜ CPython์ด 64๋น„ํŠธ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉ๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@MagixInTheAir ์ผ๋ฐ˜์ ์ธ Python 3.7 ์ง€์›์— ๊ด€ํ•œ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์„ค์ •์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์ •๋ณด ๋ฐ ๋กœ๊ทธ๊ฐ€ ํฌํ•จ๋œ ์ƒˆ ๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ์—ฌ์‹ญ์‹œ์˜ค.

Tensorflow 1.13.1 ์€ ์ด์ œ Python 3.7์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

https://pypi.org/project/tensorflow/#files tensorflow==1.13.1์šฉ cp37 ๋ฆด๋ฆฌ์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™˜๊ฒฝ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3.7.2๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 1.31.1์— ๋Œ€ํ•ด ๋ณด๊ณ ๋œ ๋ฒ„์ „/ํƒœ๊ทธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

{('cp37', 'cp37m', 'manylinux1_x86_64')}

๋‚ด 3.7.2๋Š” ๋‹ค์Œ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

[('cp37', 'cp37m', 'linux_x86_64'), ('cp37', 'abi3', 'linux_x86_64'), ('cp37', 'none', 'linux_x86_64'), ('cp36', 'abi3', 'linux_x86_64'), ('cp35', 'abi3', 'linux_x86_64'), ('cp34', 'abi3', 'linux_x86_64'), ('cp33', 'abi3', 'linux_x86_64'), ('cp32', 'abi3', 'linux_x86_64'), ('py3', 'none', 'linux_x86_64'), ('cp37', 'none', 'any'), ('cp3', 'none', 'any'), ('py37', 'none', 'any'), ('py3', 'none', 'any'), ('py36', 'none', 'any'), ('py35', 'none', 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')]

(pep425tags.get_supported()์—์„œ)

๊ทธ๋ž˜์„œ ๋ฌธ์ œ๋Š” ํœ  ์ด๋ฆ„์— manylinux1 linux ์—ฌ์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฑฐ์˜ ๊ธฐ๋ณธ ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€ ์žˆ๋Š” ์†Œ์Šค์—์„œ ๊นจ๋—ํ•œ Python ๋นŒ๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

@dellelce ์•„์ฃผ ์˜ค๋ž˜๋œ ๋ฒ„์ „์˜ pip๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

import pip._internal; print(pip._internal.pep425tags.get_supported())

๋‚˜์—๊ฒŒ ๋งŽ์€ ๋ฆฌ๋ˆ…์Šค ํƒœ๊ทธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ ํ™•์ธํ–ˆ๋Š”๋ฐ ๋ฌธ์ œ๋Š” ์•ŒํŒŒ์ธ ๋นŒ๋“œ์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ๋นŒ๋“œ(dellelce/py-base) ๋ฐ ๊ณต์‹ docker ์•ŒํŒŒ์ธ ์ด๋ฏธ์ง€(python:alpine)์—๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์ง€๋งŒ ๋ฐ๋น„์•ˆ(python:latest)์— ๋นŒ๋“œ๋œ ์ด๋ฏธ์ง€๋Š” ์ œ๋Œ€๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
์‚ฌ์šฉ๋œ libc ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ(musl ๋Œ€ glibc)์™€ ๊ด€๋ จ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ? ๋”ฐ๋ผ์„œ glibc๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋‹ค๋ฅธ dist์—๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค...

๋ชจ๋‘ ์ตœ์‹  ํ•๊ณผ 3.7.3 ๋˜๋Š” 3.7.2๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค...

๋‚˜๋Š” ๋งŽ์€ ๋ฆฌ๋ˆ…์Šค๊ฐ€ ์ง€์›ํ•˜๋Š” ๋งŽ์€ ๋ฆฌ๋ˆ…์Šค์— ์•ŒํŒŒ์ธ์ด ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค๊ณ  ํ™•์‹ ํ•œ๋‹ค.

@ppwwyyxx glibc๊ฐ€ ์•„๋‹Œ Linux ๋ฐฐํฌํŒ์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•œ ๋˜ ๋‹ค๋ฅธ ํ‹ฐ์ผ“์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

PEP 571/PEP 513("manylinux")์€ glibc๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

@dellelce ์•ŒํŒŒ์ธ ๋ฆฌ๋ˆ…์Šค๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒƒ์€ ํฅ๋ฏธ๋กœ์šด ์•„์ด๋””์–ด์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ์‚ฌ์†Œํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ๋Œ€๋ถ€๋ถ„์˜ tensorflow ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” Ubuntu 14.04๋กœ ์ปดํŒŒ์ผ๋ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋‹ค๋ฅธ ํ”Œ๋žซํผ(์˜ˆ: CentOS)์—์„œ๋„ ๋•Œ๋•Œ๋กœ ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์•ŒํŒŒ์ธ ์ง€์›์ด ๋‹จ๊ธฐ์ ์œผ๋กœ๋Š” ์šฐ์„ ์ˆœ์œ„๊ฐ€ ์•„๋‹Œ ๊ฒƒ ๊ฐ™์•„์š”.

๋ฌธ์ œ๋ฅผ ์—ฌ๋Š” ๊ฒƒ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ํ•„์š”์™€ ๊ด€์‹ฌ์„ ์ธก์ •ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๊ณ  ํ•ญ์ƒ "๊ธฐ๋ถ€๊ธˆ ํ™˜์˜"์œผ๋กœ ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ•ญ์ƒ ์ข‹์€ ์ผ์ž…๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰