Перейти к содержанию
Форум химиков на XuMuK.ru
β

Оцените мою прогу по многомерному анализу


Рекомендуемые сообщения

🚑 Решение задач, контроши, рефераты, курсовые и другое! Онлайн сервис помощи учащимся. Цены в 2-3 раза ниже!

Здравствуйте, уважаемые аццкие)) химики и химички!!! Представляю вашему вниманию маленький кусок большого софта. Речь идет про многомерный анализ, распознавание образов и теорию вероятности в приложении к количественному химическому анализу всего-всего-всего.

 

Сразу отмечу! Многие из нас, химиков, с утра до ночи успешно владеют (а кто-то и ночью) дорогущей аппаратурой, безумных денег реактивами, знаниями статистики и химометрики и т.д. Так как рисую сейчас для ученых всех возрастов и степеней эрудированности: ХИМОЗАВРЫ – улыбнитесь, а новички – наслаждайтесь))), может будет интересно.

Постановка задачи. Есть серия или несколько серий однотипных образцов исследования: водка, минералка, гуталин, бензин, грунт, крысиная отрава и т.д. Цель – выявить среди образцов разные партии, единую массу, фальсификат, источник загрязнения и т.д.

Образец, как правило – это сложная смесь органики и минералки. Пусть совокупность признаков объекта исследования (для человека: большой, красный, пьяный, с двумя руками, доктор наук; для образца: рН 6, концентрация спирта 40% масс, бутилацетата 0,02 мг/мл, мальтозы 0,01 мг/мл, мутность по формазину 0,001 ЕМФ) – это вектор-строка из величин показателей, измеренных в тугриках или попугаях на декалитр.

Тогда, имея результаты анализа 10 образцов в трех параллельных испытаниях по 5 показателям получаем спектральную матрицу размером 30 строк на 5 столбов.

Обрабатываем алгоритмом NIPALS и получаем первые два вектора счетов: главные компоненты 1 и 2. Это координаты по абсциссе и ординате.

Три параллельных исследования на плоскости (три точки) – это доверительный интервал двумерно распределенной непрерывной случайной величины. Описываем его эллипсом рассеяния, например, для вероятности 0,95.

Эллипсы, находящиеся на значительном расстоянии друг от друга свидетельствуют о разном химическом составе (в смысле тех показателей, которые мы анализировали) объектов. Наложенные друг на друга – состав крайне близок.

Вкратце как-то вот так. Я не открыл ничего нового, все описано у Шарафа, Эсбенсена, Дерффеля, Бреретона, Вентцель и др. Только отработал математику, объединил несколько отраслей воедино и записал в коде на Дельфях. Точнее первые две версии. Последнюю третью писал мой дружище дьявольский программер Юра Киселев.

 

Интерфейс очень дружественный.

1. Открываем.

2. Кнопаем «Добавить группу». Группа – это совокупность образцов.

3. Выделяем левой лапой мыши область с фразой «Новая группа», если через полсекунды опять кнопнуть туда же, появляется возможность редактирования имени. Теперь клацаем туда же правой кнопкой: магически появляется менюха и вполне недвусмысленно спрашивает что ей делать))).

4. После добавления образца или группы образцов таким же макером правой кнопкой клацаем на образец и добавляем анализ. Функция анализа – это параллельное исследование.

 

Иерархия в принципе понятна. Методом научного тыка все вскоре становится понятно. Зачем образцы и группы образцов? Просто для того, чтобы строить отдельно эллипсы рассеяния на каждый образец и на всю группу.

 

Пока есть ограничения по количеству образцов и групп. Образцов максимально на группу можно 30, групп можно 100. Анализ пока проводится по семи переменным (вектор-строка напротив каждого «Новый анализ»), по умолчанию выставленным на ноль.

Птички слева от названий это участие в расчетах. Стоит птичка напротив образца – он участвует в расчетах, не стоит – понятно.

Птичка в самом низу – отображать или нет эллипсы каждого образца.

Порог – чисто алгоритмный параметр, не меняйте (знаю, все равно поменяете))))

Вместо нулей в векторах ставьте свои тугрики подержав на области полсекунды и потом левой лапой, можно клавишей F2.

Нажав на область «Параметр 1» или другую появляется серый столб. Это значит, что этот параметр не будет учитываться в расчетах.

То есть после ввода всех данных можно играться с переменными и образцами.

 

Готово! Нажимаем кнопку расчитать и нарисовать эллипсы. Мы попадаем в волшебный мир пониженного до плоскости пространства. Приближать и удалять скролом мыши, двигать левой кнопкой. Одна единственная кнопка в окне понятно зачем.

 

Да!!! Чуть не забыл. Так как первоначально я это разрабатывал для ввода площадей пиков ГХ-МС, значения эбанденс были интежер (целочисленные). Пардон за неудобства. Вскоре все поправим. Если кому-то мало 30 образцов и 100 групп – напишите, сделаем сколько надо. Пока в статике, скоро перейдем на динамику.

 

Прога абсолютно ШАРОВАРНАЯ. Эта софтинка – маленькая шестеренка в разрабатываемом нами большом и злом механизме обработки данных, включая много ценных незаменимых фишек и автоматов обработки хроматограмм ГХ и ВЭЖХ. Сколько можно терпеть пустой софт, который за 30 лет так ничему и не научился, кроме интегрирования и вызова коммерческой или своей библиотеки?

 

Буду ждать вашу критику и предложения. Прога третьей версии написана с нуля, так что могут быть баги. По возможности мы с Юрой отработаем все замечания и предложения. Это не наша прямая работа, всё на энтузиазме и увлеченности. Посмотрим как пойдет дело по многомерщине. У всех задачи разные, для кого-то прогу надо где-то подкрутить)))). По мере отработки багов буду выбрасывать новые версии.

Будут вопросы – опять же пишите в тему или Вадимычу на repeller()bk.ru

Прога висит здесь http://turbobit.net/u8v4e8meh8m8.html

 

Желаю всем успехов и счастья от всего моего химического сердца!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 

Ё-моё, какой МНОГАБУКФ.

Изменено пользователем Вадимыч
Ссылка на комментарий

...

Ё-моё, какой МНОГАБУКФ.

Букафф действительно - слишком много. Вы бы изложили суть - без литературщины, а то так и не понятно осталось - чем Ваша прога лучше пакетов, где процедура факторного анализа реализуется?

Ей-богу, Ваше сообщение невозможно прочитать более, чем до половины - с души воротит...

Ссылка на комментарий

Обычно, программу описывают так

1. Назначение

2. Применяемые методы (на сколько я понял у вас PCA, реализуемый с помощью итерационного NIPALS)

3. Отличия и недостатки перед существующими программами (которые реализуют тот же метод)

 

Подобные (литературного содержания) тексты обычно размещают (если вообще размещают) в отдельных файлах - для тех кому интересно.

Мануал - так же в отдельной файле

 

Непонятен выбор файлообменника - я бы с такого скачивать не рискнул.

Изменено пользователем Wergilius
Ссылка на комментарий

Обычно, программу описывают так

1. Назначение

2. Применяемые методы (на сколько я понял у вас PCA, реализуемый с помощью итерационного NIPALS)

3. Отличия и недостатки перед существующими программами (которые реализуют тот же метод)

 

Подобные (литературного содержания) тексты обычно размещают (если вообще размещают) в отдельных файлах - для тех кому интересно.

Мануал - так же в отдельной файле

 

Непонятен выбор файлообменника - я бы с такого скачивать не рискнул.

Всем привет!

1. Назначение - разделение по группам серий образцов.

2. Понижение пространства пока до двухмерного методом главных компонент. Построение эллипсов рассеяния для вероятности 0,95.

3. Коммерческая программа - это универсальный черный ящик, который порой сам не знает своих настроек или знает, но никому не говорит. И что самое важное - ему нельзя верить, пока не понял его алгоритмы и сам не проверил. Также он не позволяет одним кнопом отбросить ненужные переменные, образцы и описать разброс в параллельных исследованиях.

 

Касаемо файлообменника - рекомендуйте!

 

Букафф действительно - слишком много. Вы бы изложили суть - без литературщины, а то так и не понятно осталось - чем Ваша прога лучше пакетов, где процедура факторного анализа реализуется?

Ей-богу, Ваше сообщение невозможно прочитать более, чем до половины - с души воротит...

Самое главное не волноваться))) Я думаю все будет хорошо)))

Ссылка на комментарий

Чтобы немного расшевелить тему предлагаю немного химического юмора.

 

Следующая картинка называется "А под каким углом Вы в инжектор колете?"

 

epo5xc5qcd.jpg

 

Всё было бы здорово, да только это не фотошоп.

То, что в телевизоре, то и в файле http://letitbit.net/...мелись.rar.html

Это традиционная EVALDEMO.d, только с элементами троллинга Хьюлетта.

 

ЗЫ Учимся читать машинные коды

Изменено пользователем Вадимыч
Ссылка на комментарий

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...