近幾年,信息時(shí)代的快速發(fā)展產(chǎn)生了海量數(shù)據(jù),誕生了無(wú)數(shù)前沿的大數(shù)據(jù)技術(shù)與應(yīng)用。在當(dāng)今大數(shù)據(jù)時(shí)代的產(chǎn)業(yè)界,商業(yè)決策日益基于數(shù)據(jù)的分析作出。當(dāng)數(shù)據(jù)膨脹到一定規(guī)模時(shí),基于機(jī)器學(xué)習(xí)對(duì)海量復(fù)雜數(shù)據(jù)的分析更能產(chǎn)生較好的價(jià)值,而深度學(xué)習(xí)在大數(shù)據(jù)場(chǎng)景下更能揭示數(shù)據(jù)內(nèi)部的邏輯關(guān)系。本文就以大數(shù)據(jù)作為場(chǎng)景,通過(guò)自底向上的教程詳述在大數(shù)據(jù)架構(gòu)體系中如何應(yīng)用深度學(xué)習(xí)這一技術(shù)。大數(shù)據(jù)架構(gòu)中采用的是hadoop系統(tǒng)以及Kerberos安全認(rèn)證,深度學(xué)習(xí)采用的是分布式的Tensorflow架構(gòu),hadoop解決了大數(shù)據(jù)的存儲(chǔ)問(wèn)題,而分布式Tensorflow解決了大數(shù)據(jù)訓(xùn)練的問(wèn)題。本教程是我們團(tuán)隊(duì)在開(kāi)發(fā)基于深度學(xué)習(xí)的實(shí)時(shí)欺詐預(yù)警服務(wù)時(shí),部署深度學(xué)習(xí)這一模塊時(shí)總結(jié)出的經(jīng)驗(yàn),感興趣的歡迎深入交流。
安裝Tensorflow
我們安裝Tensorflow選擇的是Centos7,因?yàn)門ensorflow需要使用GNU發(fā)布的1.5版本的libc庫(kù),Centos6系統(tǒng)并不適用該版本庫(kù)而被拋棄。對(duì)于如何聯(lián)網(wǎng)在線安裝Tensorflow,官網(wǎng)有比較詳盡的教程。本教程著重講一下網(wǎng)上資料較少的離線安裝方式,系統(tǒng)的安裝更需要在意的是各軟件版本的一致性,下面教程也是解決了很多版本不一致的問(wèn)題后給出的一個(gè)方案。首先我們先將整個(gè)系統(tǒng)搭建起來(lái)吧。
1.安裝編程語(yǔ)言Python3.5:在官網(wǎng)下載軟件并解壓后執(zhí)行如下安裝命令:
./configure make make testsudo make install
2.安裝基于Python的科學(xué)計(jì)算包python-numpy:在官網(wǎng)下載軟件并解壓后執(zhí)行如下安裝命令:
python setup.py install
3.安裝Python模塊管理的工具wheel:在官網(wǎng)下載軟件后執(zhí)行如下安裝命令:
pip install wheel-0.30.0a0-py2.py3-none-any.whl
4.安裝自動(dòng)下載、構(gòu)建、安裝和管理 python 模塊的工具setuptools:在官網(wǎng)下載軟件并解壓后執(zhí)行如下安裝命令:
python setup.py install
5.安裝Python開(kāi)發(fā)包python-devel:在官網(wǎng)下載軟件后執(zhí)行如下安裝命令:
sudo rpm -i --nodeps python3-devel-3.5.2-4.fc25.x86_64.rpm
6.安裝Python包安裝管理工具six:在官網(wǎng)下載軟件后執(zhí)行如下安裝命令:
sudo pip install six-1.10.0-py2.py3-none-any.whl
7.安裝Java 開(kāi)發(fā)環(huán)境JDK8:在官網(wǎng)下載軟件并解壓后執(zhí)行如下移動(dòng)命令:
mv java1.8 /usr/local/software/jdk
設(shè)置JDK的環(huán)境變量,編輯文件 .bashrc,加入下面內(nèi)容
export JAVA_HOME=/usr/local/software/jdkexport JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=$CLASSPATH:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=$PATH:${JAVA_HOME}/bin
進(jìn)行Java版本的切換,選擇對(duì)應(yīng)的版本
sudo update-alternatives --config javasudo update-alternatives --config javac
8.安裝Bazel:Bazel是一個(gè)類似于Make的工具,是Google為其內(nèi)部軟件開(kāi)發(fā)的特點(diǎn)量身定制的工具,構(gòu)建Tensorflow項(xiàng)目。在官網(wǎng)下載后執(zhí)行如下安裝命令: