Смекни!
smekni.com

«ит в радиофизике» (стр. 2 из 2)

На примере реализации двух методов сортировки было показано, как информационные технологии применяются в радиофизике.

Список литературы

1. Воронцов К.В. Лекции по методу опорных векторов [Электронный ресурс]. – www.ccas.ru/voron/download/SVM.pdf.

2. Mozina M, Demsar J, Kattan M, & Zupan B. Nomograms for Visualization of Naive Bayesian Classifier // In Proc. of PKDD. – 2004. – С.337—348.

3. Гончаров М. Модифицированный древовидный алгоритм Байеса для решения задач классификации: [Электронный ресурс]. – http://www.spellabs.ru/download/AugmentedNaiveBayes.pdf.

4. Лекции курса общей физики МГУ. [Электронный ресурс]. Уровень доступа: публичный http://www.osc.phys.msu.ru/mediawiki/upload/d/d6/Lecture_1-RF-historic_intro_04-03-09.pdf

Приложение А. Класс сортировщика.

class spam { protected $_source; /** * Constructor * * Because the Spam Class do not know the source, you must * define a function that return an array of token and values. * * @param string $Callback Function name */ public function __construct($callback='') {

} /** * Returns the the posibility to text belogs to "spams" * * @param $text Text to analize * @access public * @return true */ public function isItSpam($text,$type) { $ngram = new ngram; $ngram->setText($text); for($i=3; $i <= 5;$i++) { $ngram->setLength($i); $ngram->extract(); } $fnc = $this->_source; $ngrams = $ngram->getnGrams(); $knowledge = $fnc( $ngrams,$type ); $total=0; $acc=0; foreach($ngrams as $k => $v) { if ( isset($knowledge[$k]) ) { $acc += $knowledge[$k] * $v; $total++; } } $percent = ($acc/$total); $percent = $percent > 1.0 ? 1.0 : $percent; return $percent * 100; } public function isItSpam_v2($text,$type) { $ngram = new ngram; $ngram->setText($text); for($i=3; $i <= 5;$i++) { $ngram->setLength($i); $ngram->extract(); } $ngrams = $ngram->getnGrams();

$knowledge = $this->getNgramsFromDB( $ngrams,$type ); $total=0; $acc=0; /** * N = total number of n-grams used. * K = product of all n-grams (values are extracted from knowledge base) * * H = chi2Q( -2N K, 2N); * S = chi2Q( -2N ( (1.0 - ngram(1)) ( 1.0 - ngram(2)) .. ( 1.0 - ngram(N)) ), 2N) * I = ( 1 + H - S ) / 2 * */ $N = 0; $H = $S = 1; // var_dump($ngrams); exit; foreach($ngrams as $k => $v) { if (($index = ngram::staticCheckIfValueExists($knowledge, $v['ngram'])) === false) continue;// if ( !isset($knowledge[$k]) ) continue; $N++; $value = $knowledge[$index]['percent'] * $v['weight']; $H *= $value; $S *= (float)( 1 - ( ($value>=1) ? 0.99 : $value) ); }

$H = $this->chi2Q( -2 * log( $N * $H), 2 * $N); $S = (float)$this->chi2Q( -2 * log( $N * $S), 2 * $N); $percent = (( 1 + $H - $S ) / 2) * 100; return is_finite($percent) ? $percent : 100; } /** * get ngrams * * This is function is called by the classifier class, and it must * return all the n-grams. * * @param Array $ngrams N-grams. * @param String $type Type of set to compare */ public function getNgramsFromDB($ngrams, $type){

// var_dump($ngrams); exit; $info = array(); foreach ($ngrams as $ngram){ $info[] = $ngram['ngram']; }

$q = Doctrine::getTable('KnowledgeBase')->createQuery('kb')->where('kb.belongs = ?', $type) ->andWhereIn('kb.ngram', $info);

foreach ($q->fetchArray() as $item){ $t[] = array('ngram' => $item['ngram'], 'percent' => $item['percent']); }

$q->free();

return $t; } public function chi2Q( $x, $v) { $m = (double)$x / 2.0; $s = exp(-$m); $t = $s; for($i=1; $i < ($v/2);$i++) { $t *= $m/$i; $s += $t; } return ( $s < 1.0) ? $s : 1.0; }}

Действующий личный сайт

http://lifeline.su/mag

Тестовые вопросы

Какие из перечисленных web-броузеров работают на базе HTML рендер машины Webkit?

1. Internet Explorer

2. Google Chrome

3. Netscape

4. Safari

5. Mozilla Firefox

6. Opera

Список литературы

Список идентичен списку литературы реферата.

Презентация

Презентация магистерской работы указана в приложении А.

Приложение А