當前位置:首頁 » 編程語言 » pythonleveldb

pythonleveldb

發布時間: 2023-02-21 19:17:36

A. Caffe訓練自己的imagenet,ubuntu提示killed

1、准備數據。
假設已經下載好數據集和驗證集,存儲路徑為:
/path/to/imagenet/train/n01440764/n01440764_10026.JPEG
/path/to/imagenet/val/ILSVRC2012_val_00000001.JPEG
首選需要創建一個txt文件,列舉出所有圖像以及對應的lable,caffe包「python/caffe/imagenet/ilsvrc_2012_train.txt」和「ilsvrc_2012_val.txt」兩個文件分別是標好的訓練集和驗證集的文件,共分為1000類。
還需要注意的是,所有的圖像都需要歸一到同樣的尺寸。

2、轉化生成訓練集。
運行下面的命令:
GLOG_logtostderr=1 examples/convert_imageset.bin /path/to/imagenet/train/ python/caffe/imagenet/ilsvrc_2012_train.txt /path/to/imagenet-train-leveldb
生成文件存儲在「/path/to/imagenet-train_leveldb」路徑下。

3、計算圖像均值。
執行命令:
examples/demo_compute_image_mean.bin /path/to/imagenet-train-leveldb /path/to/mean.binaryproto
第一個參數是執行腳本代碼,第二個參數是上一步生成的數據集,第三個參數是存儲圖像均值的目錄路徑。

4、定義網路。
ImageNet的網路定義在「examples/imagenet.prototxt」文件中,使用時需要修改裡面source和meanfile變數的值,指向自己文件的路徑。
仔細觀察imagenet.prototxt和imagenet_val.prototxt文件可以發現,訓練和驗證的參數大部分都相同,不同之處在於初始層和最後一層。訓練時,使用softmax_loss層來計算損失函數和初始化後向傳播,驗證時,使用accuracy層來預測精確度。
在文件「examples/imagenet_solver.prototxt」中定義solver協議,同樣需要修改train_net和test_net的路徑。

5、訓練網路。
執行命令:
GLOG_logtostderr=1 examples/train_net.bin examples/imagenet_solver.prototxt

6、在python中使用已經訓練好的模型。
Caffe只提供封裝好的imagenet模型,給定一副圖像,直接計算出圖像的特徵和進行預測。首先需要下載模型文件。
Python代碼如下:

[python] view plain print?
from caffe import imagenet
from matplotlib import pyplot
# Set the right path to your model file, pretrained model
# and the image you would like to classify.
MODEL_FILE = 'examples/imagenet_deploy.prototxt'
PRETRAINED = '/home/jiayq/Downloads/caffe_reference_imagenet_model』
IMAGE_FILE = '/home/jiayq/lena.png'

net = imagenet.ImageNetClassifier(MODEL_FILE, PRETRAINED)
#預測
prediction = net.predict(IMAGE_FILE)
#繪制預測圖像
print 'prediction shape:', prediction.shape
pyplot.plot(prediction)
prediction shape: (1000,)
[<matplotlib.lines.Line2D at 0x8faf4d0>] #結果如圖所示

圖上的橫軸表示的label,縱軸表示在該類別上的概率,有圖我們看到,lena.jpg被分到了」sombrero」這組,結果還算準確。

B. python 大牛 用什麼web框架

Pyramid, Django, 和 Flask都是優秀的框架,為項目選擇其中的哪一個都是傷腦筋的事。我們將會用三種框架實現相同功能的應用來更容易的對比三者。也可以直接跳到框架實戰

簡介
Flask是一個面向簡單需求小型應用的「微框架(microframework)」。Pyramid和Django都是面向大型應用的,但是有不同的拓展性和靈活性。Pyramid的目的是更靈活,能夠讓開發者為項目選擇合適的工具。這意味著開發者能夠選擇資料庫、URL結構、模板類型等等。Django目的是囊括web應用的所有內容,所以開發者只需要打開箱子開始工作,將Django的模塊拉進箱子中。
Django包括一個開箱即用的 ORM ,而Pyramid和 Flask讓開發者自己選擇如何或者是否存儲他們的數據。到目前為止對於非Django的web應用來說最流行的ORM是SQLAlchemy,同時還有多種其他選擇,從 DynamoDB和MongoDB 到簡單本地存儲的LevelDB 或朴實的SQLite。Pyramid被設計為可使用任何數據持久層,甚至是還沒有開發出來的。
關於框架
Django已經內建了模板、表單、路由、認證、基本資料庫管理等等。比較起來,Pyramid包括路由和認證,但是模板和資料庫管理需要額外的庫。
Flask歷史相對更短,但它能夠學習之前出現的框架並且把注意力放在了微小項目上。它大多數情況被使用在一些只有一兩個功能的小型項目上。例如 httpbin,一個簡單的(但很強大的)調試和測試HTTP庫的項目。
Flask
Flask的hello world應用非常的簡單,僅僅單個Python文件的7行代碼就夠了。

Django
Django 也有自己的 bootstrap 工具, 內置在 django-admin 中.

Django 默認只在項目中創建 空白的 model 和模板文件, 供新手參考的示範代碼不多
模板
1、Django

C. 求問大神們,windows下應該怎麼安裝python的依賴庫h5py,leveldb等

leveldb 需要從googlecode上下載源碼,然後編譯

D. python 怎麼安裝leveldb

安裝Python包,的確是pip最為方便了,簡單快捷,因為它直接是從pypi上面下載文件,保證文件的安全性和可靠性,並且資源豐富;下面是安裝步驟:

  1. 下載 setuptools,注意對應 Python 的版本,完成後運行 exe 即可完成安裝

    setuptools-1.4.1.win32-py2.6.exe

  2. 下載 pip

    pip-1.4.1.tar.gz

  3. 安裝 pip

    3.1 解壓pip-1.4.1.tar.gz

    3.2 運行CMD,進入命令行

    3.3 用CD命令進入 pip 解壓目錄

    3.4 輸入 "python setup.py install"

    3.5 添加環境變數 path = C:Python26ArcGIS10.0Scripts

  4. 驗證是否安裝成功,運行CMD,進入命令行,輸入pip;

    如果出現pip的用法介紹,說明安裝成功。

  5. 進入命令行,輸入 "pip install package",package為安裝包名稱,就可以隨意使用了;

  6. 如果pip安裝不成功的話,建議去PYPI上下載文件,然後自行安裝。

E. python 爬蟲 ip池怎麼做

無論是爬取IP,都能在本地設計動態代理IP池。這樣既方便使用,又可以提升工作效率。那麼怎麼在本地設計一個代理IP池呢?IPIDEA為大家簡述本地代理IP池的設計和日常維護。
代理IP獲取介面,如果是普通代理IP,使用ProxyGetter介面,從代理源網站抓取最新代理IP;如果是需耗費代理IP,一般都有提供獲取IP的API,會有一定的限制,比如每次提取多少個,提取間隔多少秒。

代理IP資料庫,用以存放在動態VPS上獲取到的代理IP,建議選擇SSDB。SSDB的性能很突出,與Redis基本相當了,Redis是內存型,容量問題是弱項,並且內存成本太高,SSDB針對這個弱點,使用硬碟存儲,使用Google高性能的存儲引擎LevelDB,適合大數據量處理並把性能優化到Redis級別。

代理IP檢驗計劃,代理IP具備時效性,過有效期就會失效,因此 需要去檢驗有效性。設置一個定時檢驗計劃,檢驗代理IP有效性,刪除無效IP、高延時IP,同時預警,當IP池裡的IP少於某個閾值時,根據代理IP獲取介面獲取新的IP。

代理IP池外部介面除代理撥號伺服器獲取的代理IP池,還需要設計一個外部介面,通過這個介面調用IP池裡的IP給爬蟲使用。代理IP池功能比較簡單,使用Flask就可以搞定。功能可以是給爬蟲提供get/delete/refresh等介面,方便爬蟲直接使用。

F. win7配置caffe,import caffe時提示No mole named caffe

這種情況一般是沒有把caffe中的和python相關的內容的路徑添加到python的編譯路徑中。

G. 想學爬蟲就一定要學Python嗎

學python不一定要學爬蟲。python的應用范圍很廣泛,如軟體開發、科學計算、自動化運維、雲計算、web開發、網路爬蟲、人工智慧等。爬蟲不僅僅可以用python寫,很多語言都可以實現爬蟲。例C,C++、C#、Perl、 Python、Java、 Ruby都可以寫爬蟲,原理其實相差不大,只不過是平台問題。網路爬蟲是一個自動提取網頁的程序,它為搜索引擎從萬維網上下載網頁,是搜索引擎的重要組成。

傳統爬蟲從一個或若干初始網頁的URL開始,獲得初始網頁上的URL,在抓取網頁的過程中,不斷從當前頁面上抽取新的URL放入隊列,直到滿足系統的一定停止條件;爬蟲主要的工作就是根據一定的規則去抓取網路上我們想要的數據的程序,這里大家要注意的是爬蟲不一定非要使用Python才可以實現的,使用JavaScript、Java等語言都是可以實現的。千鋒教育擁有多年Python培訓服務經驗,採用全程面授高品質、高體驗培養模式,擁有國內一體化教學管理及學員服務,助力更多學員實現高薪夢想。

H. 如何在Windows下安裝配置python介面的caffe

整了一晚上加一上午。網上關於python的記錄較少,這里寫一下。
這里的環境是WIN10+cuda v7.5 +cudnn v4 + opencv + pycharm+VS2013
使用的是GPU,我的GPU是titan16G+內存32G
首先是caffe的文件以及第三方庫的編譯,這里提供一個已經編譯好的的連接,我就是從那裡下好然後編譯完畢的。
點擊打開鏈接 happynear的
然後就是如何編譯python介面。
1、首先先生成兩個python文件,在src/caffe/proto/extract_proto.bat 里生成caffe_pb2.py 這個之後有用。
2、然後打開已經給好的caffe/buildVS2013,打開裡面已經有的工程文件,正常的情況下應該是有7個工程,選中pycaffee單獨作為要編譯的項目。如圖所示:

把pycaffe作為單啟動。注意需要在release x64位下編譯。
如果沒有這個的話,就將這個文件夾里python文件夾中的項目加入即可。如果沒有python項目,就自己建一個,將python文件夾里的cpp文件加入就可以了。
3、選擇pycaffe的屬性,將配置屬性下的VC++目錄中的包含目錄和庫目錄填上你python所在的include和libs 再在C/C++的目錄下的附加包含目錄一項中添加
以我的python為例。D:/python27/Lib;D:/python/include/ 以及D:/Python27/Lib/site-packages/numpy/core/include 如果你安裝了CUDNN這里可以在預處理器那裡把USE_CUDNN加上,同時在LINKER的輸入目錄下的附加依賴庫中加入cudnn的lib文件。

3、開始編譯即可。這里要注意一定要和caffe、caffelib在一個項目里編譯,否則會報錯。
4、編譯成功後會在caffe/python/caffe下生成_caffe.pyd 是打不開的
5、配置python環境:需要幾個額外庫
Cython>=0.19.2
numpy>=1.7.1
scipy>=0.13.2
scikit-image>=0.9.3
matplotlib>=1.3.1
ipython>=3.0.0
h5py>=2.2.0
leveldb>=0.191
networkx>=1.8.1
nose>=1.3.0
pandas>=0.12.0
python-dateutil>=1.4,<2
protobuf>=2.5.0
python-gflags>=2.0
pyyaml>=3.10
Pillow>=2.3.0
six>=1.1.0
其中numpy要裝MKL版本的,不然scipy裝上了BLAS不能用
leveldb沒有windows版本的,不過我找到了可以使用的辦法。見這個博客:
點擊打開鏈接
如果有pip install 裝不上的,可以上這個網站找 wheel文件安裝就可以了
點擊打開鏈接
6、最後把目錄中python下的caffe文件夾復制到python27/Lib/site-packages就可以了。
測試的時候只需要在控制台下輸入import caffe 看能載入就知道成功了:)

熱點內容
cwebservice文件上傳 發布:2024-11-08 09:09:18 瀏覽:583
王牌戰爭有沒有什麼和平的伺服器 發布:2024-11-08 09:01:36 瀏覽:374
centos7刪除文件夾 發布:2024-11-08 09:00:58 瀏覽:990
伺服器可以分成多個獨立的電腦嗎 發布:2024-11-08 08:56:15 瀏覽:202
如何運行gcc編譯的文件 發布:2024-11-08 08:51:49 瀏覽:498
javaztree 發布:2024-11-08 08:50:55 瀏覽:510
蘋果手機怎麼能玩安卓版騰訊游戲 發布:2024-11-08 08:50:55 瀏覽:523
ftp推送 發布:2024-11-08 08:49:46 瀏覽:751
linuxarm版 發布:2024-11-08 08:48:28 瀏覽:544
tar解壓覆蓋 發布:2024-11-08 08:46:20 瀏覽:727