﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-杰 &amp; C++-随笔分类-数据挖掘</title><link>http://www.cppblog.com/jaysoon/category/15907.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 21 Jan 2011 16:16:07 GMT</lastBuildDate><pubDate>Fri, 21 Jan 2011 16:16:07 GMT</pubDate><ttl>60</ttl><item><title>数据挖掘中的指数函数</title><link>http://www.cppblog.com/jaysoon/archive/2011/01/21/139062.html</link><dc:creator>jaysoon</dc:creator><author>jaysoon</author><pubDate>Fri, 21 Jan 2011 15:40:00 GMT</pubDate><guid>http://www.cppblog.com/jaysoon/archive/2011/01/21/139062.html</guid><wfw:comment>http://www.cppblog.com/jaysoon/comments/139062.html</wfw:comment><comments>http://www.cppblog.com/jaysoon/archive/2011/01/21/139062.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/jaysoon/comments/commentRss/139062.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/jaysoon/services/trackbacks/139062.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font size="4">最近做数据时，使用神经网络建模。在神经网络中，会用到激发函数（activation function）。</font></p> <p><font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 典型的激发函数有Sigmod函数：</font></p> <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://www.cppblog.com/images/cppblog_com/jaysoon/WindowsLiveWriter/f31f2d8e6286_14CDF/image_2.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.cppblog.com/images/cppblog_com/jaysoon/WindowsLiveWriter/f31f2d8e6286_14CDF/image_thumb.png" width="188" height="75"></a> </p> <p><font size="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><font size="4">双曲正切函数：</font></p> <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://www.cppblog.com/images/cppblog_com/jaysoon/WindowsLiveWriter/f31f2d8e6286_14CDF/image_4.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.cppblog.com/images/cppblog_com/jaysoon/WindowsLiveWriter/f31f2d8e6286_14CDF/image_thumb_1.png" width="244" height="88"></a> </p> <p></p> <p></p> <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <font size="4">这两个都涉及到指数函数，在C中，为求指数函数，使用exp()函数。</font></p> <p><font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在数次出错后找到问题，原来是我的指数值过大，数据中有时会出现超过1000的数字，这导致在求值过程中，即使使用double型，也使得结果溢出。</font></p> <p><font size="4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 解决方法是定义一个指数函数，当指数值超过一定界限便指定一个相对无穷大的值，这样也符合数学定义。在我的处理中，将界限设定为15，当该值大于15时，返回3000000；当界限值小于-15时，返回0。</font></p><img src ="http://www.cppblog.com/jaysoon/aggbug/139062.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/jaysoon/" target="_blank">jaysoon</a> 2011-01-21 23:40 <a href="http://www.cppblog.com/jaysoon/archive/2011/01/21/139062.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>