Список используемых сокращений 5
Введение 6
1. Обзор методов цифровой фильтрации 10
1.1 Традиционные методы цифровой фильтрации 10
1.2 Современные программные методы 11
1.2.1 Пороговая вейвлет-фильтрация 11
1.3 Выводы по первой главе 16
2. Решение задач классификации с использованием методов
машинного обучения 17
2.1 Методы решения задачи классификации 18
2.1.1 Постановка задачи классификации 18
2.1.2 Методы классификации 20
2.1.3 Выбор оптимального метода классификации 22
2.2 Описание объектов 23
2.2.1 Определение набора признаков 24
2.2.2 Выбор значимых признаков 28
2.2.3 Преобразование и нормирование признаков 28
2.2.4 Функции расстояния для метрических алгоритмов ... 29
2.3 Оценка качества классификации (функционалы качества) .... 30
2.4 Выводы по второй главе 32
3. Аппаратное ускорение вычислений на процессорах с ядром ARM
Cortex-M4 34
3.1 Инструкции аппаратного ускорения вычислений
процессорного ядра Cortex-M4 35
3.2 Блок вычислений с плавающей точкой 35
3.3 Библиотека функций по цифровой обработке сигналов
CMSIS-DSP 37
3.4 Выводы по третьей главе 38
4. Содержание исследований 39
4.1 Аппаратное обеспечение 39
4.1.1 Представление входных данных. Определение
граничных условий функционирования алгоритма .... 39
4.2 Используемые средства разработки 40
4.3 Общее описание системы обработки данных 41
4.4 Реализация модуля цифровой фильтрации 42
4.4.1 Модуль предварительной фильтрации в частотной области 43
4.4.2 Модуль пороговой вейвлет-фильтрации 45
4.4.3 Пример применения фильтров блока фильтрации .... 46
4.5 Описание алгоритмов обнаружения и классификации 48
4.5.1 Алгоритм выделения признаков из кадра данных .... 48
4.5.2 Вычисление признаков с использованием методов
аппаратного ускорения вычислений 49
4.5.3 Выделение оптимальных групп признаков для решения
задач обнаружения и классификации 53
4.5.4 Нормирование признаков 54
4.5.5 Модуль обнаружения воздействий 55
4.5.6 Модуль классификации воздействий 58
4.6 Выводы по четвертой главе 59
5. Обсуждение результатов 61
5.1 Тестирование производительности разработанной системы ... 61
5.1.1 Время выполнения алгоритмов с использованием
средств аппаратного ускорения 61
5.1.2 Время выполнения алгоритмов без использования
средств аппаратного ускорения 62
5.1.3 Сравнительный анализ времени выполнения алгоритмов 62
5.2 Тестирование качества модуля обнаружения воздействий .... 63
5.3 Тестирование качества модуля классификации воздействий ... 66
5.4 Выводы по пятой главе 68
Заключение 69
Список литературы 71
Приложение А. Тексты программ 77
А.1 Тексты программ модуля цифровой фильтрации 77
А.2 Тексты программ модулей обнаружения и классификации .... 82
Список текстов программ 89
В настоящее время всё большую актуальность приобретает концепция встраиваемых систем и интернета вещей — компактных и энергоэффективных устройств, производящих сбор при помощи сенсоров и обработку информации и обеспечивающих передачу данных по телекоммуникационным сетям (для взаимодействия между устройствами и для передачи информации конечным пользователям). Основными направлениями развития систем подобного рода являются: 1) развитие систем передачи данных для достижения больших энергоэффективности и пропускной способности, упрощения взаимодействия между устройствами, в частности, актуальна идея децентрализации (технологии самоорганизующихся сетей: mesh-сети, ad-hoc); 2) обеспечение достаточных вычислительных мощностей для обработки данных с множества подключенных устройств, решаемое обычно средствами облачных вычислений [1].
Однако, объемы получаемых на устройствах данных постоянно растут (увеличение разрешения и частоты кадров камер, усложнение сенсорных систем), а требования по скорости обработки становятся все строже. В связи с этим наблюдается тенденция переноса вычислений из удаленных вычислительных центров ближе к производителям данных (на устройства, подключенные к одному сегменту сети с производителями, либо проведение обработки на самих устройствах «интернета вещей»). В частности, в 2012 году были заложены основы концепции так называемых «туманных вычислений» [2; 3] («fog computing», приближение «облака» к «земле», т.е. к производителям и потребителям данных). Но даже в этом случае требуется построение инфраструктуры вычислительных узлов и подключение конечных устройств к сети с использованием каналов связи с высокой пропускной способностью.
В настоящее время встраиваемые системы получают достаточные вычислительные мощности для проведения вычислений на самих конечных устройствах. Современные встраиваемые микропроцессоры общего назначения содержат в своем составе блоки аппаратного ускорения вычислений, что позволяет применять их для построения энергоэффективных систем, производящих сбор и ресурсозатратную обработку данных (сигналов) с передачей по сети только результата обработки. В частности, семейство микроконтроллеров (МК) общего назначения STM32F407 построено на базе процессорного ядра ARM Cortex-M4, содержащего в своем составе блок цифровой обработки сигналов (DSP, Digital Signal Processing) и математический сопроцессор (FPU, Floating Point Unit — блок вычислений с плавающей запятой) [4].
Одной из задач, для которых актуально и востребовано получение реализации на базе встраиваемых микропроцессоров, является задача распознавания образов (классификации сигналов) [5]. С использованием методов классификации сигналов возможно определить наступление события и задать необходимую реакцию системы на него. При отсутствии четких критериев разделения множества входных сигналов по классам такие задачи могут быть решены с использованием методов машинного обучения.
Для решения задачи классификации с использованием методов машинного обучения необходимо выделить характерные особенности сигнала (признаки), по которым возможно разбиение множества сигналов на классы. При этом входной сигнал обычно бывает подвержен помеховым воздействиям, из-за чего особенности сигнала могут искажаться или теряться на фоне шума. Чтобы этого избежать, необходимо использовать механизмы фильтрации, которые могут быть как аппаратными, так и программными. Использование программных методов дает большую гибкость при эксплуатации разрабатываемой системы, позволяя адаптировать контур фильтрации к меняющимся условиям среды и помеховой обстановке.
Целью данной работы является разработка системы обнаружения и классификации сигналов акустического типа заданного вида (воздействий) и её эффективная реализация на базе МК общего назначения STM32F407.
Для достижения поставленной цели необходимо было решить следующие задачи:
1. исследовать актуальные методы и техники цифровой фильтрации сигналов;
2. исследовать современные наработки в области машинного обучения по классификации событий;
3. реализовать механизмы предварительной цифровой фильтрации входного сигнала, включая контур пороговой вейвлет-фильтрации;
4. разработать подсистему обнаружения воздействий заданного типа;
5. разработать подсистему классификации зафиксированных воздействий;
6. реализовать полученные алгоритмы с применением средств аппаратного ускорения процессорного ядра Cortex-M4 для обеспечения требуемой скорости вычислений на выбранном МК.
7. провести оценку качества подсистем обнаружения и классификации.
Объект исследования — алгоритмы цифровой фильтрации сигналов и
алгоритмы машинного обучения в задачах классификации сигналов.
Предмет исследования — применение механизмов аппаратного ускорения процессорного ядра Cortex-M4 для эффективной реализации алгоритмов цифровой фильтрации и машинного обучения в задачах классификации сигналов на микроконтроллерах общего назначения.
Решаемой в работе проблемой является низкая применимость существующих алгоритмов для непосредственного переноса на встраиваемые системы.
Научная новизна работы состоит в получении эффективной реализации алгоритмов цифровой фильтрации, включая контур вейвлет-фильтрации, и адаптированных алгоритмов машинного обучения для решения задачи обнаружения и классификации сигналов для архитектуры ARM Cortex-M4.
Практическая значимость работы состоит в применимости разработанной системы в целом и отдельных алгоритмов в частности в широком спектре задач обнаружения и классификации сигналов с минимальной адаптацией.
В первой главе работы производится обзор существующих методов цифровой фильтрации, изучается и описывается аппарат пороговой вейвлетфильтрации.
Во второй главе рассматриваются актуальные алгоритмы машинного обучения в задачах классификации, определяется формат описания объектов для алгоритмов, рассматривается задача подбора оптимального набора признаков и их нормирования, а также способы оценки качества модели.
В третьей главе производится анализ возможностей процессорного ядра выбранного микроконтроллера по аппаратному ускорению вычислений, приводятся распространенные высокоуровневые библиотеки, использующие данные возможности.
Четвертая глава включает описание разрабатываемой системы, производится выбор алгоритмически оптимальных реализаций алгоритмов, приводится вычислительно эффективная конечная реализация блоков цифровой фильтрации, выделения и нормирования признаков, обнаружения и классификации сигналов. Также описана методология тестирования полученной системы на достижение требуемых показателей по быстродействию и качеству обнаружения и классификации; вводятся требования, предъявляемые к системе. Приводятся результаты тестирования системы, произведен анализ полученных результатов.
В ходе работы был выполнен анализ современных направлений развития в областях цифровой фильтрации сигналов и классификации сигналов с использованием методов машинного обучения, были изучены возможности процессорного ядра ARM Cortex-M4 по аппаратному ускорению вычислений.
По результатам обзора разработана и эффективно реализована с использованием средств аппаратного ускорения система обнаружения и классификации воздействий, включающая модуль цифровой фильтрации сигналов, модуль обнаружения воздействий и классификации воздействий.
Модуль фильтрации включает самостоятельно разработанные алгоритмы частотной фильтрации — адаптивный частотный эквалайзер и модуль автоматической фильтрации спектральных пиков. Также разработана оптимальная реализация алгоритма пороговой вейвлет-фильтрации с использованием семи уровней разложения, минимаксного порога и мягкого трешолдинга. Полученный алгоритм вариативен в части выбора длин векторов входных данных и базиса вейвлет-преобразования.
Для модулей обнаружения и классификации разработан и реализован алгоритм извлечения признаков из временного представления анализируемого сигнала. Реализованный алгоритм оптимизирован в части вычислительной сложности, конечная реализация производилась с использованием средств аппаратного ускорения вычислений.
Разработан и реализован алгоритм обнаружения воздействий в виде модифицированного алгоритма бинарной классификации метрического типа с пороговым определением принадлежности либо непринадлежности объекта к единственному классу — состоянию покоя системы.
Разработан и реализован алгоритм классификации воздействий в виде модифицированного алгоритма ближайшего соседа, где представителями классов выступают усредненные вектора признаков группы объектов данного класса.
Реализованные алгоритмы протестированы на соответствие требованиям по времени выполнения, по результатам тестов было определено, что алгоритмы требованиям удовлетворяют, полученная конечная реализация в значительной мере использует возможности аппаратного ускорения, в частности, блока вычислений с плавающей точкой.
Для алгоритмов обнаружения и классификации были проведены исследования по определению качества обнаружения и классификации соответственно. По результатам исследований показано, что разработанный алгоритм обнаружения обладает точностью, достаточной для применения системы в практических приложениях (точность обнаружения 99.8-99.9%, полнота (недопущение пропусков) — 97.7-99.3% в зависимости от настроек). Разработанный алгоритм классификации также показывает высокий уровень качества (показана точность классификации 98.8%).
Результаты работы внедрены в ряде НИРОКР, проводимых ООО «Меркурий» и внесены в научно-технический задел по предприятию для создания перспективных систем периметральной охраны.
Перспективным направлением развития разработанной системы является применение скрытых Марковских моделей (Hidden Markov Model, HMM) и гауссовых смесей (Gaussian Mixture Model, GMM) в контуре классификации.
По теме работы выпущена одна публикация:
1. Чикрин Д.Е., Голоусов С.В., Главацкий Н.В., Ермаков Д.В., Степанов А.Н., Кокунин П.А. Нахождение оптимальных наборов признаков в задачах классификации воздействий на вибрационных датчиках // Современная наука: актуальные проблемы теории и практики. Серия «Естественные и технические науки» — статья подписана в печать в №7 (Июль 2018). Издание входит в перечень ВАК.
1. Buyya R., Dastjerdi A. V Internet of Things: Principles and paradigms. — Cambridge, MA : Elsevier, 2016. — ISBN 978-0-12-805395-9.
2. Fog computing and its role in the internet of things / F. Bonomi [et al.] // Proceedings of the first edition of the MCC workshop on Mobile cloud computing. — ACM. 2012. —P. 13-16.
3. Key ingredients in an IoT recipe: Fog Computing, Cloud computing, and more Fog Computing / M. Yannuzzi [et al.] // 2014 IEEE 19th International Workshop on Computer Aided Modeling and Design of Communication Links and Networks (CAMAD). — 12/2014. — P. 325-329.
4. ARM® Cortex®-M4 Processor. Technical Reference Manual. — ARM Limited, 2015.
5. Бархатов В. А. Обнаружение сигналов и их классификация с помощью распознавания образов // Дефектоскопия. — 2006. — Т 4. — С. 14—27.
6. AN2834 Application note. How to get the best ADC accuracy in STM32 microcontrollers. — 3rd ed. — ST Microelectronics, 2017. — 49 p.
7. Rajni R., Anutam A. Image denoising techniques-An overview // International Journal of Computer Applications. — 2014. — Vol. 86, no. 16. — P. 13-17.
8. Tan L., Jiang J. Digital signal processing: fundamentals and applications. — Academic Press, 2013.
9. Астафьева Н. М. Вейвлет-анализ: основы теории и примеры применения // Успехи физических наук. — 1996. — Т. 166, № 11. — С. 1145—1170.
10. Lakshmanan M. K., Nikookar H. A review of wavelets for digital wireless communication // Wireless personal communications. — 2006. — Vol. 37, no. 3/4. — P. 387-420.
11. Воскобойников Ю., Гочаков А., Колкер А. Фильтрация сигналов и изображений: фурье и вейвлет алгоритмы (с примерами в Mathcad) : монография. — Новосибирск : НГАСУ (Сибстрин), 2010. — 188 с.
12. Mallat S. A Wavelet Tour of Signal Processing. — 3rd ed. — Academic Press, 2009. — 832 p. — ISBN 0123743702.
13. Luo G., Zhang D. Wavelet denoising // Advances in wavelet theory and their applications in engineering, physics and technology. — InTech, 2012.
14. Майстренко В. А., Комаров И. Э. Выбор порога в задачах вейвлетфильтрации вибрационных сигналов // Омский научный вестник. — 2009. — 1 (77).
15. Donoho D. L., Johnstone J.M. Ideal spatial adaptation by wavelet shrinkage // biometrika. — 1994. — Vol. 81, no. 3. —P. 425-455.
16. Donoho D. L., Johnstone I. M. Adapting to unknown smoothness via wavelet shrinkage // Journal of the american statistical association. — 1995. — Vol. 90, no. 432.—P. 1200-1224.
17. Maglogiannis I. Emerging artificial intelligence applications in computer engineering : real word AI systems with applications in eHealth, HCI, information retrieval and pervasive technologies. — Amsterdam Washington, DC : IOS Press, 2007. — ISBN 9781586037802.
18. Draper N. R., Smith H. Applied regression analysis. Vol. 326. — 3rd ed. — John Wiley & Sons, 2014. — 736 p. — (Wiley Series in Probability and Statistics Ser.) — ISBN 9780471170822.
19. Daniel T. Larose C. D. L. Discovering Knowledge in Data: An Introduction to Data Mining. —John Wiley & Sons Inc, 2014. — 316 p. —ISBN 0470908742.
20. Загоруйко Н. Г. Гипотезы компактности и А-компактности в методах анализа данных // Сибирский журнал индустриальной математики. — 1998. — Т 1,№ 1. —С. 114—126.
21. Alpaydin E. Introduction to machine learning. — 3rd ed. — Cambridge, Massachusetts : The MIT Press, 2014. — ISBN 978-0-262-02818-9.
22. Рузибаев О. Б., Эшметов С. Д. Исследование и анализ алгоритмов на основе нечеткого метода k ближайших соседей с применением различных метрик при диагностике рака молочной железы // Science and world. — 2013. —С. 102.
23. Tian Y., Qi H., Wang X. Target detection and classification using seismic signal processing in unattended ground sensor systems // IEEE International Conference on Acoustics Speech and Signal Processing. Vol. 4. — Citeseer. 2002. — P. 4172-4172.
24. Bano S., Kumar K. R. Decoding Baby Talk: Basic Approach for Normal Classification of Infant Cry Signal // International Conference on Current Trends in Advanced Computing (ICCTAC-2015). — 2015. — Vol. ICCTAC 2015, no. 1.—P.24-26.
25. Wang JNeskovic P, Cooper L. N.Improving nearest neighbor rule with a simple adaptive distance measure // Pattern Recognition Letters. — 2007. — Vol. 28, no. 2. — P 207-213.
26. Keller J. M., Gray M. R., Givens J. A. A fuzzy k-nearest neighbor algorithm // IEEE transactions on systems, man, and cybernetics. — 1985. — No. 4. — P. 580-585.
27. Alickovic E., Kevric J., Subasi A. Performance evaluation of empirical mode decomposition, discrete wavelet transform, and wavelet packed decomposition for automated epileptic seizure detection and prediction // Biomedical Signal Processing and Control. — 2018. — Vol. 39. — P. 94-102.
28. Bashir S., Doolan D., Petrovski A. ClusterNN: A hybrid classification approach to mobile activity recognition // Proceedings of the 13th International Conference on Advances in Mobile Computing and Multimedia. — ACM.
2015. —P.263-267.
29. Jayasree T., Bobby M., Muttan S. Sensor data classification for renal dysfunction patients using support vector machine // Journal of Medical and Biological Engineering. — 2015. — Vol. 35, no. 6. — P. 759-764.
30. Choosing the right estimator [Электронный ресурс] / Scikit-learn 0.19.1 documentation. — URL: http: // scikit- learn. org/ stable/tutorial/machine_ learning_map/index.html (дата обр. 16.03.2018).
31. Нахождение оптимальных наборов признаков в задачах классификации воздействий на вибрационных датчиках / Д. Е. Чикрин [и др.] // Современная наука: актуальные проблемы теории и практики. Серия: Естественные и технические науки. — 2018. — Т 7. — статья подписана в печать в №7 (Июль 2018).
32. Guyon I., Elisseeff A. Feature extraction: foundations and applications. — Berlin : Springer-Verlag, 2006. —ISBN 3-540-35487-5.
33. Time series feature extraction on basis of scalable hypothesis tests (tsfresh-A Python package) / M. Christ [et al.] // Neurocomputing. — 2018.
34. Evidence theoretic classification of ballistic missiles / A. Bhattacharyya [et al.] // Applied Soft Computing. — 2015. — Vol. 37. — P. 479-489.
35. Robotic pilot study for analysing spasticity: clinical data versus healthy controls / N. Seth [et al.] // Journal of neuroengineering and rehabilitation. —
2015. — Vol. 12, no. 1.—P. 109.
36. Fast time series classification using numerosity reduction / X. Xi [et al.] // Proceedings of the 23rd international conference on Machine learning. — ACM.
2006. — P. 1033-1040.
37. Kumar M. M., Puhan N. B. Off-line signature verification: upper and lower envelope shape analysis using chord moments // IET Biometrics. — 2014. — Vol. 3, no. 4. — P. 347-354.
38. A novel olfactory neural network for classification of Chinese liquors using electronic nose / Y.-Q. Jing [et al.] // SENSORS, 2015 IEEE. — IEEE. 2015. — P. 1-4.
39. Bump W. M. The Normal Curve Takes Many Forms: A Review of Skewness and Kurtosis. // Annval Meeting of the Southwest Educational Research Assoclation. —ERIC, 1991. —P. 17.
40. The statistical meaning of kurtosis and its new application to identification of persons based on seismic signals / Z. Liang [et al.] // Sensors. — 2008. — Vol. 8, no. 8. — P. 5106-5119.
41. A wavelet packet algorithm for classification and detection of moving vehicles / A. Averbuch [et al.] // Multidimensional Systems and Signal Processing. — 2001. —Vol. 12, no. 1.—P. 9-31.
42. Classification fusion in wireless sensor networks / C. Liu [et al.] // Acta Automatica Sinica. — 2006. — Vol. 32, no. 6. — P. 947.
43. Barkana B., Zhou J. A new pitch-range based feature set for a speaker’s age and gender classification // Applied Acoustics. — 2015. — Vol. 98. — P. 52-61.
44. Data-point and feature selection of motor imagery EEG signals for neural classification of cognitive tasks in car-driving / A. Saha [et al.] // Neural Networks (IJCNN), 2015 International Joint Conference on. — IEEE. 2015. — P. 1-8.
45. Yang BLei Y. Vehicle detection and classification for low-speed congested traffic with anisotropic magnetoresistive sensor // IEEE Sensors Journal. — 2015. — Vol. 15, no. 2. — P. 1132-1138.
46. Barras C., Gauvain J.-L. Feature and score normalization for speaker verification of cellular data // Acoustics, Speech, and Signal Processing, 2003. Proceedings.(ICASSP’03). 2003 IEEE International Conference on. Vol. 2. — IEEE. 2003. — P. II-49-II-52.
47. Al Shalabi L., Shaaban Z. Normalization as a preprocessing engine for data mining and the approach of preference matrix // Dependability of Computer Systems, 2006. DepCos-RELCOMEX’06. International Conference on. — IEEE. 2006. — P. 207-214.
48. Black P E. Manhattan distance // Dictionary of Algorithms and Data Structures. — 2006. — Vol. 18. — P. 2012.
49. Weinberger K. Q., Blitzer J., Saul L. K. Distance metric learning for large margin nearest neighbor classification // Advances in neural information processing systems. — 2006. — P. 1473-1480.
50. Short R., Fukunaga K. The optimal distance measure for nearest neighbor classification // IEEE transactions on Information Theory. — 1981. — Vol. 27, no. 5. — P. 622-627.
51. Caruana R., Niculescu-Mizil A. An Empirical Comparison of Supervised Learning Algorithms // Proceedings of the 23rd International Conference on Machine Learning. — Pittsburgh, Pennsylvania, USA : ACM, 2006. — P. 161168. — (ICML ’06). — ISBN 1-59593-383-2.
52. Frantz G. Signal core: A short history of the digital signal processor // IEEE Solid-State Circuits Magazine. — 2012. — Vol. 4, no. 2. — P. 16-20.
53. Yiu J. The Definitive Guide to ARM Cortex-M3 and Cortex-M4 Processors. — 3rd ed. — Newnes, 2013. — 864 p. — ISBN 978-0-12-408082-9.
54. RM0090 Reference manual. STM32F405/415, STM32F407/417,
STM32F427/437 and STM32F429/439 advanced Arm®-based 32-bit MCUs. — 16th ed. — ST Microelectronics, 2018. — P. 1749.
55. Wavelet denoising of the electrocardiogram signal based on the corrupted noise estimation / S. Chouakri [et al.] // Computers in Cardiology, 2005. — IEEE.
2005. —P. 1021-1024.
56. OsgoodB. The Fourier transform and its applications // Lecture Notes for EE. — 2009. — Vol. 261.—P. 20.