/**
  * add Parameter for ngram
  *
  * @param NaiveBayesianStorage $nbs
  * @param ngram's N $n
  * @return boolean
  */
 function __construct($nbs, $n = 2)
 {
     parent::__construct($nbs);
     $this->N = $n;
     return true;
 }
Esempio n. 2
0
 function showArticleStats()
 {
     $article_id = (int) $_REQUEST["article_id"];
     $result = $this->dbh->query("SELECT score, guid, title, content FROM ttrss_entries, ttrss_user_entries WHERE ref_id = id AND id = " . $article_id . " AND owner_uid = " . $_SESSION["uid"]);
     if ($this->dbh->num_rows($result) != 0) {
         $guid = $this->dbh->fetch_result($result, 0, "guid");
         $title = $this->dbh->fetch_result($result, 0, "title");
         $content = mb_substr(mb_strtolower($title . " " . strip_tags($this->dbh->fetch_result($result, 0, "content"))), 0, $this->max_document_length);
         print "<h2>" . $title . "</h2>";
         $nbs = new NaiveBayesianStorage($_SESSION["uid"]);
         $nb = new NaiveBayesian($nbs);
         $categories = $nbs->getCategories();
         $ref = $nbs->getReference($guid, false);
         $current_cat = isset($ref["category_id"]) ? $categories[$ref["category_id"]]["category"] : "N/A";
         print "<p>" . T_sprintf("Currently stored as: %s", $current_cat) . "</p>";
         $result = $nb->categorize($content);
         print "<h3>" . __("Classifier result") . "</h3>";
         print "<table>";
         print "<tr><th>Category</th><th>Probability</th></tr>";
         foreach ($result as $k => $v) {
             print "<tr>";
             print "<td>" . $categories[$k]["category"] . "</td>";
             print "<td>" . $v . "</td>";
             print "</tr>";
         }
         print "</table>";
     } else {
         print_error("Article not found");
     }
     print "<div align='center'>";
     print "<button dojoType=\"dijit.form.Button\" onclick=\"return dijit.byId('bayesShowDlg').hide()\">" . __('Close this window') . "</button>";
     print "</div>";
 }