?? libsvm程序學習筆記之一--講個故事聽聽吧.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0040)http://mirrorlake.bokee.com/5133582.html -->
<HTML><HEAD><TITLE>LIBSVM程序學習筆記之一--講個故事聽聽吧</TITLE>
<META http-equiv=Content-Type content="text/html; charset=GBK">
<META http-equiv=Pragma content=no-cache>
<META http-equiv=Cache-Control content=no-cache>
<META http-equiv=Expires content=0>
<META
content="電腦前的保健LIBSVM程序學習筆記之一LIBSVM程序學習筆記之二 博客 博客中國 博客動力 blog blogdriver blogger 中國"
name=description>
<META
content="講個故事聽聽吧 電腦前的保健LIBSVM程序學習筆記之一LIBSVM程序學習筆記之二 博客 博客中國 博客動力 blog blogdriver blogger 中國"
name=keywords><LINK href="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/diary.css" type=text/css
rel=stylesheet>
<SCRIPT language=JavaScript src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/UBB.js"></SCRIPT>
<SCRIPT src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/blog.js"
type=text/javascript></SCRIPT>
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY>
<DIV
style="FONT-SIZE: 12px; MARGIN-LEFT: auto; WIDTH: 750px; MARGIN-RIGHT: auto; TEXT-ALIGN: right"><A
href="http://www.bokee.com/" target=_blank>首頁</A> | <A
href="http://group.bokee.com/" target=_blank>博客群</A> | <A
href="http://blogs.bokee.com/" target=_blank>公社</A> | <A
href="http://column.bokee.com/" target=_blank>專欄</A> | <A
href="http://bbs.bokee.com/" target=_blank>論壇</A> | <A
href="http://photo.bokee.com/" target=_blank>圖片</A> | <A
href="http://mall.bokee.com/" target=_blank>商城</A> | <A
href="http://auto.bokee.com/" target=_blank>汽車</A> | <A
href="http://reg.bokee.com/account/web/register.jsp">注冊</A> | <A
href="http://help.bokee.com:8086/help/index.html" target=_blank>幫助</A> | <A
href="http://lianbo.booso.com/" target=_blank><FONT
color=#ff6600>博客聯播</FONT></A> | <A
href="http://ping.bokee.com:81/memcm/random.b"><FONT
color=#ff6600>隨機訪問</FONT></A> </DIV>
<DIV id=container>
<DIV id=header>
<H1 class=title><A
href="http://mirrorlake.bokee.com/index.html">講個故事聽聽吧</A></H1></DIV>
<DIV id=category><A title=上一篇
href="http://mirrorlake.bokee.com/5118173.html">電腦前的保健</A>- -| <A
href="http://mirrorlake.bokee.com/index.html">回首頁</A> | <A
href="http://mirrorlake.bokee.com/catalog_2006.html">2006年索引</A> | - -<A
title=下一篇
href="http://mirrorlake.bokee.com/5133633.html">LIBSVM程序學習筆記之二</A></DIV>
<DIV class=entity>
<H2 class=diaryTitle>LIBSVM程序學習筆記之一</H2><B>關鍵詞</B>: <A
href="http://tag.bokee.com/tag/LIBSVM" target=_blank>LIBSVM</A> <A
href="http://tag.bokee.com/tag/SVM" target=_blank>SVM</A> <A
href="http://tag.bokee.com/tag/»Ø¹é" target=_blank>回歸</A> <A
href="http://tag.bokee.com/tag/python" target=_blank>python</A>
<P>在用林智仁老師的LIBSVM-2.82做SVM回歸的過程中,深深得益于網上共享的學習筆記以及一些熱心網友的幫助(哪怕只是一句提醒),前面想著一定要寫個學習筆記。自己會用了之后,突然發現原來值得講出來的實在很少,甚至不想再寫什么。想到自己花大概兩個月才把一個程序跑明白,覺得還是因為其中有些讓自己頭疼的問題的,想必其他學習者未嘗不需要多花功夫琢磨這些,未免浪費時間(技術問題嘛),還是寫一個簡單的學習筆記,把自己覺得最要弄明白的難點記下來吧。<BR><BR>裝microsoft
Visualstudio 6.0(是裝python需要的,可能是需要c語言的環境吧)<BR>裝gnuplot
:gp400win32<BR>裝python<BR><BR>試運行程序中遇到的問題<BR><BR>讀PYTHON寫的GRID.PY程序<BR>問題1:程序的路徑指定問題
在程序的相關語句中指出調用的程序的路徑<BR>注意類似:<BR>D:\programm files\gnuplot.exe
這樣的路徑會報錯,因為程序在讀語句時在programm后面斷句,而不是把programm
files整體當作一個路徑<BR><BR>問題2:命令行運行PYTHON 以及輸入參數 <BR>E:\libsvm-2.82\tools>python
gridregcopy.py,首先進入到PYTHON程序的上一級路徑
然后用python接程序名稱以及參數<BR><BR>當時的問題是怎么也弄不明白PYTHON程序自帶的幾個操作窗口都不能進行程序的運行。呵呵,好像都只是腳本編輯器(反正我能用命令行運行就可以了——何況加一個"!"就可以在MATLAB中執行)。<BR>另外關于參數,讀原程序怎么也不懂,看了魏忠的學習筆記才明白的:<BR>OS.ARGV<BR>可以在命令行輸入,作為OS.ARGV列表的值。但是注意OS.ARGV[0]默認的就是所執行的程序本身,也就是除了輸入的N個參數,OS.ARGV列表實際上有N+1個值,其中輸入的第一個參數就是OS.ARGV[1],也就是它的第二個參數。<BR><BR>問題3:參數選擇程序跑不動
<BR>提示:<BR>worker local quit<BR>暈了幾天后面終于明白不是程序有問題,是因為數據量太大,程序直接溢出的緣故:注意有一個參數-M
用來選擇緩存的大小。<BR><BR>subset這個程序仍然運行不了——不知道自己的數據和程序包里給出的例子有什么區別。不過我的s數據量小,這個不能用不礙事。<BR><BR>注意:<BR>testing
data/training data(不同文件)
需要一起scale。<BR>也就是要把測試集和訓練集在一個框架下進行歸一化處理,很容易想見的道理(可是容易忽略)。<BR><BR>n-fold cross
validation<BR>n 就是要拆成幾組,像 n=3 就會拆成三組,然后先拿1和2來train model 并predict 3 以得到正確率;
再來拿2和3 train 并predict 1,最后用1和3 train并predict 2。其它以此類推。一般數據選5-或10 fold cross
validation就可以。<BR>不過n越大,數據浪費的就越少(用于訓練集的信息就多),但是運算量增加,極端的就是n等于數據的個數(叫做LEAVE-ONE
OUT)。<BR><BR>回歸的參數選擇程序:paiup的筆記里面說GRID程序只能用于分類的參數選擇,不過還好林智仁老師開發了專門用于回歸的參數選擇程序。<BR><BR>GRID程序的原理很簡單:就是<BR>把要選擇的參數當作一個坐標格子上的點,選擇的過程就是遍歷空間(當然可以有一定的范圍)中的各個方向的參數組合的空間點。如果是兩個參數,就是在二維的平面中找到一個合適的點(這種離散的選擇參數的方法,應該只是找到一個比較好的收斂的參數吧)。<BR>至于GRID選擇參數,在我做的回歸里頭還是相當要緊的。選好了參數R2會是0.99,但是參數(C,g,p)參數稍微變動一下,可能使R2降低到0.2。而參數v,即用來做cross
validation的數據組數對參數的選擇影響并不太大——就是說v選為5和10并不會導致最后選到的參數大相徑庭。<BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR><BR></P>
<P class=diaryFoot>【作者: <A
onclick="window.open('http://publishblog.blogchina.com/blog/postMessage.b?receiver=68762','發送短消息','width=520, height=455')"
href="javascript:void(0);">講個故事聽聽吧</A>】【訪問統計:
<SCRIPT language=JavaScript
src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/PageServlet"></SCRIPT>
】【2006年05月29日 星期一 21:15】【 <A
href="javascript:void(keyit=window.open('http://blogmark.blogchina.com/jsp/key/quickaddkey.jsp?k='+encodeURI('LIBSVM程序學習筆記之一')+'&u='+encodeURI('http://mirrorlake.blogchina.com/mirrorlake/5133582.html')+'&c='+encodeURI(''),'keyit','scrollbars=no,width=500,height=430,status=no,resizable=yes'));keyit.focus();">加入博采</A>】【<A
href="javascript:window.print();">打印</A>】 </TD></P></DIV>
<DIV class=operation><A name=trackback>
<H3>Trackback</H3></A>
<P class=trackback>你可以使用這個鏈接引用該篇文章
http://publishblog.blogchina.com/blog/tb.b?diaryID=5133582 </P></DIV>
<DIV class=operation><A name=relatedDiary>
<H3>博客手拉手</H3></A>
<TABLE>
<TBODY></TBODY></TABLE></DIV>
<DIV class=operation><A name=comment>
<H3>回復</H3></A>
<TABLE cellSpacing=0 cellPadding=0 width=700 border=0>
<TBODY>
<TR align=left>
<TD align=middle rowSpan=2></TD>
<TD colSpan=4>
<H4><A name=comment$(remark.remarkID)>- 評論人:zhoulanok</A>
<SPAN> 2007-01-03 09:11:49 <A> <IMG
src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/linkblog.jpg" border=0> </A>
</SPAN></H4></TD></TR>
<TR align=left>
<TD vAlign=top colSpan=4>
<P
class=comment>mirrorlake,你好,我正在學習svm,在參數選擇的時候遇到一些問題,看到你的libsvm學習筆記,真的很高興。但是,還是有些問題不明白,急切地需要你的指點和幫助。看到我的留言請聯系我好嗎?不勝感激!msn:
zhoulanok@hotmail.com<BR></P></TD></TR>
<TR align=left>
<TD align=middle rowSpan=2></TD>
<TD colSpan=4>
<H4><A name=comment$(remark.remarkID)>- 評論人:講個故事聽聽吧</A>
<SPAN> 2006-08-02 21:12:57 <A
href="http://mirrorlake.blogchina.com/" target=_blank> <IMG
alt=" 講個故事聽聽吧的博客 " src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/linkblog.jpg"
border=0> </A> </SPAN></H4></TD></TR>
<TR align=left>
<TD vAlign=top colSpan=4>
<P class=comment>不好意思,我不用的,怕病毒木馬:)給你發郵件,你告訴我具體什么問題吧。<BR></P></TD></TR>
<TR align=left>
<TD align=middle rowSpan=2></TD>
<TD colSpan=4>
<H4><A name=comment$(remark.remarkID)>- 評論人:anonymous</A>
<SPAN> 2006-08-02 16:56:19 <A> <IMG
src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/linkblog.jpg" border=0> </A>
</SPAN></H4></TD></TR>
<TR align=left>
<TD vAlign=top colSpan=4>
<P
class=comment>您好!看了您的文章,我深受啟發,但是還是有些問題不明白,可以加我嗎?想和你繼續討論下的應用。:305747424也可以給我發電子郵件。真誠的希望和你交流<BR></P></TD></TR></TBODY></TABLE></DIV>
<DIV class=operation>
<TABLE class=comment cellSpacing=0 cellPadding=0 width=700 border=0>
<FORM id=replyForm method=post><INPUT type=hidden value=65777 name=blogID>
<INPUT type=hidden value=5133582 name=diaryID> <INPUT type=hidden
value=mirrorlake name=blogDomino>
<SCRIPT>
if(getCookie('userID') == null){
document.write('<tr><td width="70">發布人:</td>');
document.write('<td width="150"> <input name="remark.authorNameFUI" type="text" size="20" class="inputStyle" maxlength="20"></td>');
document.write('<td width="70">郵箱:</td>');
document.write('<td width="435"> <input name="remark.authorEmail" type="text" size="20" class="inputStyle" maxlength="40"></td>');
document.write('</tr><tr><td>主 頁:</td>');
document.write('<td colspan="3"> <input name="remark.authorURL" type="text" class="inputStyle" value="HTTP://" size="63" maxlength="100"></td></tr>');
}else{
document.write('<input type="hidden" name="remark.authorNameFUI" value="Blogchina網友">');
}
</SCRIPT>
<TBODY>
<TR>
<TD width=70>驗證碼:</TD>
<TD><INPUT class=inputStyle maxLength=4 name=validateCode></TD>
<TD> <IMG
src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/getValidateImg.gif" border=0></TD></TR>
<TR align=left>
<TD colSpan=4>評論內容:<BR><TEXTAREA class=textStyle id=remark name=remark.remarkFUI rows=8 cols=60> </TEXTAREA>
</TD></TR>
<TR align=left>
<TD colSpan=4> <INPUT onclick=reply() type=button value=提交>
<INPUT type=reset value=重置> </TD></TR></FORM></TBODY></TABLE></DIV></DIV>
<SCRIPT src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/extend3.js"
type=text/javascript></SCRIPT>
<DIV id=footer><A href="http://blog.bokee.com/">2003-2004 BOKEE.COM All rights
reserved</A><BR><A href="http://www.blogdriver.com/">Powered by BlogDriver
2.1</A> </DIV>
<SCRIPT type=text/javascript>
<!--
Empty_show = "empty.gif";
TelSense_ad_output = "ZoneID";
TelSense_ad_format = "";
Product_zoneID = "167";
Web_userID = "193";
//-->
</SCRIPT>
<SCRIPT src="LIBSVM程序學習筆記之一--講個故事聽聽吧_files/show.htm" type=text/javascript>
</SCRIPT>
</BODY></HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -