導航:首頁 > 編程語言 > python沒有內網怎麼使用庫

python沒有內網怎麼使用庫

發布時間:2024-02-08 09:35:37

python機器學習庫怎麼使用

1. Scikit-learn(重點推薦)
www .github .com/scikit-learn/scikit-learn
Scikit-learn 是基於Scipy為機器學習建造的的一個Python模塊,他的特色就是多樣化的分類,回歸和聚類的演算法包括支持向量機,邏輯回歸,樸素貝葉斯分類器,隨機森林,Gradient Boosting,聚類演算法和DBSCAN。而且也設計出了Python numerical和scientific libraries Numpy and Scipy2、Keras(深度學習)
https://github.com/fchollet/keras
Keras是基於Theano的一個深度學習框架,它的設計參考了Torch,用Python語言編寫,是一個高度模塊化的神經網路庫,支持GPU和CPU。
3、Lasagne(深度學習)
不只是一個美味的義大利菜,也是一個和Keras有著相似功能的深度學習庫,但其在設計上與它們有些不同。
4.Pylearn2
www .github .com/lisa-lab/pylearn2
Pylearn是一個讓機器學習研究簡單化的基於Theano的庫程序。它把深度學習和人工智慧研究許多常用的模型以及訓練演算法封裝成一個單一的實驗包,如隨機梯度下降。
5.NuPIC
www .github .com/numenta/nupic
NuPIC是一個以HTM學習演算法為工具的機器智能平台。HTM是皮層的精確計算方法。HTM的核心是基於時間的持續學習演算法和儲存和撤銷的時空模式。NuPIC適合於各種各樣的問題,尤其是檢測異常和預測的流數據來源。
6. Nilearn
www .github .com/nilearn/nilearn
Nilearn 是一個能夠快速統計學習神經影像數據的Python模塊。它利用Python語言中的scikit-learn 工具箱和一些進行預測建模,分類,解碼,連通性分析的應用程序來進行多元的統計。
7.PyBrain
www .github .com/pybrain/pybrain
Pybrain是基於Python語言強化學習,人工智慧,神經網路庫的簡稱。 它的目標是提供靈活、容易使用並且強大的機器學習演算法和進行各種各樣的預定義的環境中測試來比較你的演算法。
8.Pattern
www .github .com/clips/pattern
Pattern 是Python語言下的一個網路挖掘模塊。它為數據挖掘,自然語言處理,網路分析和機器學習提供工具。它支持向量空間模型、聚類、支持向量機和感知機並且用KNN分類法進行分類。
9.Fuel
www .github .com/mila-udem/fuel
Fuel為你的機器學習模型提供數據。他有一個共享如MNIST, CIFAR-10 (圖片數據集), Google's One Billion Words (文字)這類數據集的介面。你使用他來通過很多種的方式來替代自己的數據。
10.Bob
www .github .com/idiap/bob
Bob是一個免費的信號處理和機器學習的工具。它的工具箱是用Python和C++語言共同編寫的,它的設計目的是變得更加高效並且減少開發時間,它是由處理圖像工具,音頻和視頻處理、機器學習和模式識別的大量軟體包構成的。
11.Skdata
www .github .com/jaberg/skdata
Skdata是機器學習和統計的數據集的庫程序。這個模塊對於玩具問題,流行的計算機視覺和自然語言的數據集提供標準的Python語言的使用。
12.MILK
www .github .com/luispedro/milk
MILK是Python語言下的機器學習工具包。它主要是在很多可得到的分類比如SVMS,K-NN,隨機森林,決策樹中使用監督分類法。 它還執行特徵選擇。 這些分類器在許多方面相結合,可以形成不同的例如無監督學習、密切關系金傳播和由MILK支持的K-means聚類等分類系統。
13.IEPY
www .github .com/machinalis/iepy
IEPY是一個專注於關系抽取的開源性信息抽取工具。它主要針對的是需要對大型數據集進行信息提取的用戶和想要嘗試新的演算法的科學家。
14.Quepy
www .github .com/machinalis/quepy
Quepy是通過改變自然語言問題從而在資料庫查詢語言中進行查詢的一個Python框架。他可以簡單的被定義為在自然語言和資料庫查詢中不同類型的問題。所以,你不用編碼就可以建立你自己的一個用自然語言進入你的資料庫的系統。
現在Quepy提供對於Sparql和MQL查詢語言的支持。並且計劃將它延伸到其他的資料庫查詢語言。
15.Hebel
www .github .com/hannes-brt/hebel
Hebel是在Python語言中對於神經網路的深度學習的一個庫程序,它使用的是通過PyCUDA來進行GPU和CUDA的加速。它是最重要的神經網路模型的類型的工具而且能提供一些不同的活動函數的激活功能,例如動力,涅斯捷羅夫動力,信號丟失和停止法。
16.mlxtend
www .github .com/rasbt/mlxtend
它是一個由有用的工具和日常數據科學任務的擴展組成的一個庫程序。
17.nolearn
www .github .com/dnouri/nolearn
這個程序包容納了大量能對你完成機器學習任務有幫助的實用程序模塊。其中大量的模塊和scikit-learn一起工作,其它的通常更有用。
18.Ramp
www .github .com/kvh/ramp
Ramp是一個在Python語言下制定機器學習中加快原型設計的解決方案的庫程序。他是一個輕型的pandas-based機器學習中可插入的框架,它現存的Python語言下的機器學習和統計工具(比如scikit-learn,rpy2等)Ramp提供了一個簡單的聲明性語法探索功能從而能夠快速有效地實施演算法和轉換。
19.Feature Forge
www .github .com/machinalis/featureforge
這一系列工具通過與scikit-learn兼容的API,來創建和測試機器學習功能。
這個庫程序提供了一組工具,它會讓你在許多機器學習程序使用中很受用。當你使用scikit-learn這個工具時,你會感覺到受到了很大的幫助。(雖然這只能在你有不同的演算法時起作用。)20.REP
www .github .com/yandex/rep
REP是以一種和諧、可再生的方式為指揮數據移動驅動所提供的一種環境。
它有一個統一的分類器包裝來提供各種各樣的操作,例如TMVA, Sklearn, XGBoost, uBoost等等。並且它可以在一個群體以平行的方式訓練分類器。同時它也提供了一個互動式的情節。
21.Python 學習機器樣品
www .github .com/awslabs/machine-learning-samples用亞馬遜的機器學習建造的簡單軟體收集。
22.Python-ELM
www .github .com/dclambert/Python-ELM
這是一個在Python語言下基於scikit-learn的極端學習機器的實現。
23.gensim
主題模型python實現
Scalable statistical semantics
Analyze plain-text documents for semantic structureRetrieve semantically similar documents

⑵ python 怎麼使用第三方庫

這是關於Python的第13篇文章,也是關於《編程小白的第1本Python入門書》內容的最後一篇,主要介紹下如何使用第三方庫。
1. 第三方庫
Python相當於一個手機,第三方庫相當於手機里各種各樣的APP。
當我們想搭建網站時,可以選擇功能全面的Django、輕量的Flask等web框架;當我們想做一個爬蟲時,可以使用Scrapy框架;當我們想做數據分析時,可以選擇Pandas數據框架等,這些都是一些很成熟的第三方庫。
那麼,如何根據自己的需求找到相應的庫呢?
可以在 這個網站上按照分類去查找需要的庫。
2. 安裝第三方庫
這里主要介紹如何在PyCharm中安裝第三方庫。
1)打開PyCharm——頂部菜單File——選擇Default Settings;
2)搜索project interpreter,選擇當前Python環境,然後底部點擊「+」號添加庫;
3)搜索資料庫名稱——選中該庫後點擊底部的Install Package,在安裝成功後會出現成功提示,此時可以返回到之前的Project Interpreter中查看自己安裝的庫,點擊「-」號可以卸載掉不需要的庫。
3. 使用第三方庫
使用第三方庫時,只要在在PyCharm中輸入庫之後就可以使用了。輸入庫用import,比如輸入requests庫為:import requests。
第一階段關於Python的基礎知識大致先到這里,第二階段的分享會以Python爬蟲為主。

⑶ python怎麼連接mysql資料庫

1、和資料庫建立連接
2、執行sql語句,接收返回值
3、關閉資料庫連接

1、MySQL資料庫要用MySQLdb模塊,但Python用來鏈接MySQL的第三方庫MySQLdb不支持Python3.x
特別說明:我在我的電腦上實驗時,我的python是2.7.2版本,安裝對應版本的MySQLdb之後直接可以運行,並與資料庫連接成功,所以如果大家也像我一樣順利的話,下面的就不需要看了,直接跳過,看第2點如何執行sql語句即可!如果安裝之後出現異常,可以參考一下下面的解決辦法。

連接的關鍵是安裝MySQLdb模塊要下載與Python相對應的版本:
下載好後安裝,它會自動檢測到計算機Python的安裝路徑,並自動填寫模塊解壓路徑(我的是:D:\ProgramFiles\ActivePython 2.6.6.17\Lib\site-packages\)。
但解壓完成後並不能使用,還要修改MySQLdb模塊下的一些文件:
①.在MySQLdb目錄下(我的是:D:\ProgramFiles\ActivePython 2.6.6.17\Lib\site-packages\MySQLdb)找到__init__.py:
注釋第34、35行的from setsimport ImmutableSet、class DBAPISet(ImmutableSet):,在後面添加class DBAPISet(frozenset):

# from sets import ImmutableSet
# class DBAPISet(ImmutableSet):
class DBAPISet(frozenset):

②.打開converters.py:
注釋第37行的from sets import BaseSet, Set,將第45行的return Set([ i for i in s.split(',') ifi ])中的Set改為set;同樣將第129行的Set: Set2Str,中的Set改為set(不要修改Set2Str),到這里就修改完畢了
2.建立資料庫連接
import MySQLdb
conn=MySQLdb.connect(host="localhost",user="root",passwd="sa",db="mytable")

比較常用的參數包括
host: 連接的資料庫伺服器主機名,默認為本地主機(localhost)。
user:資料庫登陸名.默認是當前用戶.
passwd:資料庫登陸的秘密.默認為空.
db:要使用的資料庫名.沒有默認值.
port:MySQL服務使用的TCP埠.默認是3306.
conn連接有兩個重要的方法commit【提交新增和修改】,rollback【撤銷新增或修改】
3、執行資料庫操作
n=cursor.execute(sql,param)
我們要使用連接對象獲得一個cursor對象,接下來,我們會使用cursor提供的方法來進行工作.
這些方法包括兩大類:1.執行命令,2.接收返回值
cursor用來執行命令的方法:
callproc(self, procname, args):用來執行存儲過程,接收的參數為存儲過程名和參數列表,返回值為受影響的行數
execute(self, query, args):執行單條sql語句,接收的參數為sql語句本身和使用的參數列表,返回值為受影響的行數
executemany(self, query, args):執行單挑sql語句,但是重復執行參數列表裡的參數,返回值為受影響的行數
nextset(self):移動到下一個結果集
cursor用來接收返回值的方法:
fetchall(self):接收全部的返回結果行.
fetchmany(self, size=None):接收size條返回結果行.如果size的值大於返回的結果行的數量,則會返回cursor.arraysize條數據.
fetchone(self):返回一條結果行.
scroll(self, value, mode='relative'):移動指針到某一行.如果mode='relative',則表示從當前所在行移動value條,如果mode='absolute',則表示從結果集的第一行移動value條.
下面的代碼是一個完整的例子.
#使用sql語句,這里要接收的參數都用%s佔位符.要注意的是,無論你要插入的數據是什麼類型,佔位符永遠都要用%s
sql="insert into cdinfo values(%s,%s,%s,%s,%s)"
#param應該為tuple或者list
param=(title,singer,imgurl,url,alpha)
#執行,如果成功,n的值為1
n=cursor.execute(sql,param)
#再來執行一個查詢的操作
cursor.execute("select * from cdinfo")
#我們使用了fetchall這個方法.這樣,cds里保存的將會是查詢返回的全部結果.每條結果都是一個tuple類型的數據,這些tuple組成了一個tuple
cds=cursor.fetchall()
#因為是tuple,所以可以這樣使用結果集
print cds[0][3]
#或者直接顯示出來,看看結果集的真實樣子
print cds
#如果需要批量的插入數據,就這樣做
sql="insert into cdinfo values(0,%s,%s,%s,%s,%s)"
#每個值的集合為一個tuple,整個參數集組成一個tuple,或者list
param=((title,singer,imgurl,url,alpha),(title2,singer2,imgurl2,url2,alpha2))
#使用executemany方法來批量的插入數據.這真是一個很酷的方法!
n=cursor.executemany(sql,param)
需要注意的是(或者說是我感到奇怪的是),在執行完插入或刪除或修改操作後,需要調用一下conn.commit()方法進行提交.這樣,數據才會真正保存在資料庫中.我不清楚是否是我的mysql設置問題,總之,今天我在一開始使用的時候,如果不用commit,那數據就不會保留在資料庫中,但是,數據確實在資料庫呆過.因為自動編號進行了累積,而且返回的受影響的行數並不為0.
4、關閉資料庫連接
需要分別的關閉指針對象和連接對象.他們有名字相同的方法
cursor.close()
conn.close()
5、
5 編碼(防止亂碼)
需要注意的點:
1 Python文件設置編碼 utf-8 (文件前面加上 #encoding=utf-8)
2 MySQL資料庫charset=utf-8
3 Python連接MySQL是加上參數 charset=utf8
4 設置Python的默認編碼為 utf-8 (sys.setdefaultencoding(utf-8)
#encoding=utf-8
import sys
import MySQLdb

reload(sys)
sys.setdefaultencoding('utf-8')

db=MySQLdb.connect(user='root',charset='utf8')
註:MySQL的配置文件設置也必須配置成utf8

6.模塊功能演示
#!/usr/bin/python
import MySQLdb
Con= MySQLdb.connect(host='localhost',user='root',passwd='root',db='abc')
cursor =con.cursor()
sql ="select * from myt"
cursor.execute(sql)
row=cursor.fetchone()
print row
cursor.close()
con.close()

執行以下SQL語句獲取返回值:
//獲取連接的游標
cursor=conn.cursor()
//查詢
sql = "select * from 【table】"
//新增
sql = "insert into 【table】(欄位,欄位) values(值,值)"
//修改
sql = "update 【table】 set 欄位 =『值』where 條件 "
//刪除
sql = "delete from 【table】where 條件"
cursor.execute(sql)
返回值
cur.execute('select * from tables')
其返回值為SQL語句得到的行數,如:2L,表示2行。
然後,可以從該對象的fetchone或fetchall方法得到行信息。
獲取行信息
指針對象的fetchone()方法,是每次得到一行的tuple返回值:
引用
>>> row=cur.fetchone()
>>> print row
('user1', '', 1000L, 1000L, '/home/FTP/user1','')
指針對象的fetchall()方法,可取出指針結果集中的所有行,返回的結果集一個元組(tuples):
引用
>>> cur.scroll(0,'absolute')
>>> row=cur.fetchall()
>>> print row
(('user1', '', 1000L, 1000L, '/home/FTP/user1',''), ('user2', '', 1000L, 1000L,'/home/FTP/user2', None))
移動指針
當使用fetchone()方法是,指針是會發生移動的。所以,若不重置指針,那麼使用fetchall的信息將只會包含指針後面的行內容。
手動移動指針使用:
cur.scroll(int,parm)
含義為:
引用
int:移動的行數,整數;在相對模式下,正數向下移動,負值表示向上移動。
parm:移動的模式,默認是relative,相對模式;可接受absoulte,絕對模式。
修改數據
修改數據,包括插入、更新、刪除。它們都是使用指針對象的execute()方法執行:
cur.execute("insert into table (row1, row2) values ('111', '222')")
cur.execute("update table set row1 = 'test' where row2 = 'row2' ")
cur.execute("delete from table where row1 = 'row1' ")
因單引號「'」用於SQL語句中的標識,所以,python中的字元串需使用雙引號括住。
此外,也可以使用python的「格式化字元串」寫法,簡化命令,例如:
cur.execute("update table set row1 = '%s' where row2 = '%s' "%('value1','value2'))
※請注意,'%s'的單引號是SQL語句的間隔符,'value1'的單引號是python的字元串間隔符,其含義是不同的。是否需要間隔符,以及使用雙引號還是單引號作為間隔,需根據其含義決定。例如,還有:
cur.execute("update FTPUSERS set passwd=%s where userid='%s' "%("md5('123')",'user2'))
這里,paswd=%s是因SQL的md5()函數是不需要單引號間隔的;"md5('123')"是python的字元串中含有單引號,所以用雙引號括住。
提交修改
一般情況下,MySQLdb模塊會自動提交修改。但我們在更新數據後,手動運行一次:
conn.commit()
關閉資料庫連接
需要分別的關閉指針對象和連接對象.他們有名字相同的方法
cursor.close()
conn.close()

⑷ python 如何遠程連接內網的mysql資料庫

1、進入mysql,創建一個新用戶test:
格式:grant 許可權 on 資料庫名.表名 用戶@登錄主機 identified by "用戶密碼";
grant all privileges on *.* to [email protected] identified by "123456";
或者
grant select,update,insert,delete on *.* to [email protected] identified by "123456";
2、 ./mysqladmin -uroot -ppwd reload
記住:對授權表的任何修改都需要重新reload
這時我們應該可以從192.168.0.2來遠程管理192.168.0.1的資料庫了
下面就是該腳本radius.py,其中出現三個日期:10天以後的日期future、今天的日期now、用戶到期時間userdate,如果userdate <= future 並且 userdate >= now,那麼向radreply表中插入一行,向用戶提示到期時間,及時繳費;如果userdate < now,那麼將該用戶的狀態設為停機,不允許其再登陸。
#! /usr/local/python/bin/python
# -*- coding: UTF-8 -*-
#引入模塊
import MySQLdb
import datetime
#格式化日期,只有相同格式的日期才能進行比較
future = (datetime.date.today() + datetime.timedelta(10)).strftime("%Y-%m-%d")
now = (datetime.date.today()).strftime("%Y-%m-%d")
#這里就是連接遠端資料庫了
conn = MySQLdb.connect (host = "192.168.0.1",
user = "test",
passwd = "123456",
db = "radius")
cursor = conn.cursor ()
cursor.execute ("SELECT login_name,id,last_date FROM customer where last_date!='' and type='包月' and status='開通'")

閱讀全文

與python沒有內網怎麼使用庫相關的資料

熱點內容
程序員qq表白代碼編輯 瀏覽:890
聯想伺服器怎麼進後台 瀏覽:112
安卓定製rom怎麼刷 瀏覽:537
三層交換機的配置命令 瀏覽:108
49演算法公式 瀏覽:788
求最小生成樹演算法代碼及運行圖片 瀏覽:930
python掃雷計數 瀏覽:879
什麼安卓手機品牌最保值 瀏覽:843
編程貓買房子 瀏覽:134
c語言系列編程 瀏覽:742
符合國標加密標准技術 瀏覽:496
加密狗介面會壞嗎 瀏覽:625
javame開發 瀏覽:380
python3偽裝瀏覽器 瀏覽:242
信息聯想伺服器專班是干什麼的 瀏覽:99
python獲取cpu個數 瀏覽:864
命令提示符查網速 瀏覽:229
對於某個理論演算法可以直接抄嗎 瀏覽:188
如何訪問ftp伺服器下載文件 瀏覽:392
呼蘭程序員吐槽剪輯 瀏覽:493