АвторТема: yFarseer - ПО для построения карт таксономического разнообразия  (Прочитано 104 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Daemon2017Автор темы

  • Сообщений: 1204
  • Страна: ru
  • Рейтинг +461/-16
  • Y-ДНК: R1a-Y35177/BY82934
  • мтДНК: V7-a2a2a2b*
Привет, соратники!

Вдохновленный деятельностью уважаемого ТК по созданию карт таксономического разнообразия, я решил внести свой вклад и забабахал набор модулей на Python для автоматического построения этих самых карт.
Репозиторий: https://github.com/Daemon2017/yFarseer
Примеры живых карт: https://daemon2017.github.io/yFarseer/

Сокращенная копипаста из README
yFarseer - это программа, позволяющая в автоматическом режиме строить карты таксономического разнообразия выбранного Y-SNP на основании открытых данных всех общедоступных проектов FTDNA. Результатом работы кода является топографическая карта Stamen, на которую нанесен слой с сеткой из шестиугольных ячеек, при наведении на любую из которых появляется всплывающая подсказка, содержащая информацию о том, какие именно подветви выбранного Y-SNP присутствуют в ней присутствуют. Также, используется зрительное отражение уровня таксономического разнообразия: чем оно выше, тем ниже прозрачность ячейки, а те из них, в которых наблюдается наибольшее разнообразие подветвей, подсвечиваются градиентным ореолом. Карта может состоять из множества слоев с различными размерами ячеек, что позволяет отражать сведения о разнообразии подветвей в различных приближениях.
Ниже приведен пример карты таксономического разнообразия SNP R-CTS1211, построенной с помощью yFarseer, а на живые карты Вы можете взглянуть здесь.


Для чего всё это?
Существует 2 критерия, по которым можно предсказать область происхождения Y-SNP, а значит и всей генетической популяции, являющейся его носителем:
* критерий частоты - SNP образовался в том регионе, в котором он встречается чаще всего;
* критерий разнообразия - SNP образовался в том регионе, где наблюдается наибольшее разнообразие его подветвей.
Таким образом, данная программа позволяет строить наглядные карты по критерию разнообразия, которые могут быть использованы в определении области происхождения того или иного SNP.

Благодарности
Хочу поблагодарить форумчанина TK за то, что он объяснил мне основные тонкости построения карт таксономического разнообразия: спасибище и низкий поклон - дело, начатое Вами, дало мне заряд на многие вечера и ночи! :)

Оффлайн Daemon2017Автор темы

  • Сообщений: 1204
  • Страна: ru
  • Рейтинг +461/-16
  • Y-ДНК: R1a-Y35177/BY82934
  • мтДНК: V7-a2a2a2b*
Сейчас проблемы 2:
1) я далеко не спец в области генетики и потому мне не ясно, как быть с палиндромами. Например, если в DYS464 находится 4 значения (a,b,c,d), то понятно, как с этим жить, но ведь бывает и 6, и 8 значений! У меня есть догадка, что можно брать только 2 наименьших и 2 наибольших значения, предварительно выставив их в порядке возрастания, но уверенности в своей правоте у меня нет и, пока что, все столбцы с палиндромами не учитываются при предсказании SNP в Максимальном варианте. Также, я не знаю, как поступать со строками, где палиндром оказался там, где его не ждут - например, в DYS393. Думаю брать наибольшее из значений, но пока я просто удаляю такие строки. Буду очень благодарен, если подскажете, как сделать правильно;
2) и в Минимальном, и в Максимальном вариантах перебор строк (их больше 100к) с тестовыми наборами занимает много времени - надо бы распараллелить, но пока сил нет.
« Последнее редактирование: 04 Апрель 2020, 01:17:05 от Daemon2017 »

Оффлайн Daemon2017Автор темы

  • Сообщений: 1204
  • Страна: ru
  • Рейтинг +461/-16
  • Y-ДНК: R1a-Y35177/BY82934
  • мтДНК: V7-a2a2a2b*
Пока искал способ определения наличия BigY у тестового набора, сделал довольно интересное открытие - вот как выглядит упорядоченный по убыванию график количества сделанных положительных SNP (не включая наборы как с 0 затестированных SNP, так и с только отрицательными SNP).

Ступенька в районе 26к - переход от BigY500 к SNP-Pack'ам (их легко опознать, т.к. FTDNA выводит у них в столбце SNP не только положительные, но и отрицательные SNP).

К слову, сейчас алгоритм такой: если положительных SNP > 200, значит у этого набора есть сделанный BigY и его можно использовать как эталон при обучении.
« Последнее редактирование: 04 Апрель 2020, 01:18:07 от Daemon2017 »

Оффлайн Daemon2017Автор темы

  • Сообщений: 1204
  • Страна: ru
  • Рейтинг +461/-16
  • Y-ДНК: R1a-Y35177/BY82934
  • мтДНК: V7-a2a2a2b*
Еще интересные факты:
1) В среднем, за счет применения машинного обучения и предсказания SNP по 111 STR, удается получить количественный прирост 10-25%. Почему так мало? - на самом деле, прирост больше, просто очень немногие тестируемые проставляют геометку наиболее давнего известного предка по отцу, вот и приходится удалять такие тестовые наборы;
2) Градиентный бустинг на 111 STR дает точность 85-95% на негомоплазирующих ветвях и лишь 65-70% на гомоплазирующих (это с учетом того, что все палиндромные STR я отбрасываю - если научиться их учитывать, то точность должна возрасти);
3) Хорошей мыслью оказалось открыть Y-древо FTDNA https://www.familytreedna.com/public/y-dna-haplotree/ и смотреть количество подветвей интересующего SNP + количество протестированных в каждой подветви. Строить карту разнообразия для SNP, у которого всего 2 подветви, смысла мало - как такового "ядра" не будет, а будет прямая/ломанная линия. Пытаться построить что-то для SNP, который положителен менее чем у 50 человек тоже безнадежно: из этих 50, в лучшем случае, только 50% будут состоять хоть в одном проекте, да и высока вероятность несбалансированности выборки (когда на 50 человек приходится 35 носителей подветви А, 13 носителей подветви Б и 2 носителя подветви В).
« Последнее редактирование: 04 Апрель 2020, 01:38:21 от Daemon2017 »

 

© 2007 Молекулярная Генеалогия (МолГен)

Внимание! Все сообщения отражают только мнения их авторов.
Все права на материалы принадлежат их авторам (владельцам) и сетевым изданиям, с которых они взяты.


Rambler's Top100