В вашем HTML
<ion-searchbar type="text" debounce="500" (ionInput)="getItems($event)"></ion-searchbar>
<ion-list *ngIf="isItemAvailable">
<ion-item *ngFor="let item of items">
{{ item }}
</ion-item>
</ion-list>
в вашем файле
this.isItemAvailable = false; // initialize the items with false
initializeItems(){
this.items = ["Ram","gopi", "dravid"];
}
getItems(ev: any) {
// Reset items back to all of the items
this.initializeItems();
// set val to the value of the searchbar
const val = ev.target.value;
// if the value is an empty string don't filter the items
if (val && val.trim() != '') {
this.isItemAvailable = true;
this.items = this.items.filter((item) => {
return (item.toLowerCase().indexOf(val.toLowerCase()) > -1);
})
}
}
Если вы настаиваете на NN ... Я бы рассчитал некоторые функции для каждого электронного письма
И символьные, и текстовые, и словарные функции (примерно 97, как я их считаю):
Вы также можете добавить некоторые дополнительные функции, основанные на форматировании: цвета, шрифты, размеры, ... используется.
Большинство из этих мер можно найти в Интернете в документах или даже в Википедии (все они простые вычисления, вероятно, основанные на других функциях).
Итак, для примерно 100 объектов вам нужно 100 входов, некоторое количество узлов в скрытом слое и один выходной узел
Входные данные должны быть нормализованы в соответствии с вашим текущим предварительно классифицированным корпусом.
Я бы разделил его на две группы, используя одну в качестве учебной группы, а другой как группа тестирования, никогда не смешивая их. Может быть, при соотношении 50/50 в группах «поезд / тест» с аналогичными показателями «спам / не спам».
Вы настроены делать это с нейронной сетью? Похоже, вы настроены довольно хорошо, чтобы использовать байесовскую классификацию , которая хорошо описана в нескольких очерках Пола Грэма:
Засекреченная история, к которой у вас есть доступ, создаст очень сильные тела для подачи по байесовскому алгоритму, и вы, вероятно, получите довольно эффективный результат.
Generally, my experience has led me to believe that neural networks will show mediocre performance at best in this task, and I'd definitely recommend something Bayesian as Chad Birch suggests, if this is something other than a toy problem for exploring neural nets.
Чад, ответы, которые вы получили до сих пор, являются разумными, но я отвечу на ваше обновление так:
Я настроен на использование нейронных сетей в качестве основного аспекта Проект состоит в том, чтобы проверить, как NN-подход будет работать для обнаружения спама.
Ну, тогда у вас есть проблема: подобный эмпирический тест не может доказать непригодность.
Возможно, вам лучше узнать немного о что NN на самом деле делает и не делает, чтобы понять, почему они не особенно хорошая идея для такого рода проблем классификации. Вероятно, полезный способ думать о них как об универсальных аппроксиматорах функций. Но для некоторой идеи о том, как все это сочетается в области классификации (именно в этом и заключается проблема фильтрации спама), может быть полезен просмотр вступительного текста, такого как классификация шаблонов .
Если вы не можете увидеть, как он работает, просто используйте любую общую библиотеку NN для самой сети. Большая часть вашей проблемы будет в том, как представлять входные данные в любом случае. «Лучшая» структура неочевидна, и, вероятно, это не так уж важно. Входные данные должны быть рядом (нормализованных) измерений (характеристик) самого корпуса. Некоторые из них очевидны (количество слов «спам» и т. Д.), А некоторые - гораздо менее. Это та часть, с которой вы действительно можете играть, но вы должны ожидать, что она будет работать плохо по сравнению с байесовскими фильтрами (у которых здесь есть свои проблемы) из-за характера проблемы.
и это, вероятно, не так важно. Входные данные должны быть рядом (нормализованных) измерений (характеристик) самого корпуса. Некоторые из них очевидны (количество слов «спам» и т. Д.), А некоторые - гораздо менее. Это та часть, с которой вы действительно можете играть, но вы должны ожидать, что она будет работать плохо по сравнению с байесовскими фильтрами (у которых здесь есть свои проблемы) из-за характера проблемы. и это, вероятно, не так важно. Входные данные должны быть рядом (нормализованных) измерений (характеристик) самого корпуса. Некоторые из них очевидны (количество слов «спам» и т. Д.), А некоторые - гораздо менее. Это та часть, с которой вы действительно можете играть, но вы должны ожидать, что она будет работать плохо по сравнению с байесовскими фильтрами (у которых здесь есть свои проблемы) из-за характера проблемы.