работа с питоном

ЦЕЛЬ -

Целью эксперимента является изучение ДНК человека и шимпанзе и классификация семи различных типов белков, общих как для людей, так и для шимпанзе, с использованием данных о последовательности белков.

МОТИВАЦИЯ

Сравнение генома человека с геномами других организмов, таких как шимпанзе, невероятно полезно для понимания нашей собственной биологии. Геномы шимпанзе и человека удивительно похожи и содержат очень похожие белки.

Когда мы напрямую сравниваем последовательности ДНК между двумя геномами, они идентичны почти на 99 процентов. Даже когда мы рассматриваем вставки и делеции ДНК, люди и шимпанзе по-прежнему имеют 96-процентную идентичность последовательностей.

В этом исследовании мы сосредоточились на шести различных типах белков, которые обнаруживаются как у людей, так и у шимпанзе: рецепторы, связанные с G-белком, тирозинкиназа, тирозинфосфатаза, синтазы, синтетазы, ионные каналы и факторы транскрипции.

Наша главная цель — классифицировать эти семь классов белков на основе информации об их последовательностях. Анализируя последовательности белков, мы стремимся выявить закономерности и характеристики, отличающие один класс белков от другого. Эта классификация может дать ценную информацию о роли и функциях этих белков как у людей, так и у шимпанзе.

Что такое ДНК?

Дезоксирибонуклеиновая кислота или ДНК – это особая молекула, несущая важные инструкции или коды для всех живых существ, таких как животные, растения и крошечные организмы. Это похоже на книгу рецептов, которая сообщает клеткам нашего тела, какие белки нужно производить. Белки подобны маленьким работникам, выполняющим важную работу в нашем организме.

В каждой клетке нашего тела есть ДНК, и эта ДНК сообщает клетке, какие белки ей нужно производить. Мы наследуем нашу ДНК от наших родителей, поэтому у нас есть некоторые сходства с ними, например, цвет наших глаз или цвет волос.

Наша ДНК состоит из комбинации ДНК нашей мамы и папы. Некоторые части нашей ДНК называются «некодирующей ДНК». Эти части не сообщают нашим клеткам напрямую, какие белки нужно производить. Вместо этого некоторые некодирующие ДНК используются для создания особых типов молекул РНК, которые по-разному помогают нашему телу.

Разные организмы имеют разное количество некодирующей ДНК. У людей, например, много некодирующей ДНК. На самом деле, более 98% нашей ДНК напрямую не производит белки. Но у некоторых крошечных организмов, таких как бактерии, только около 2% их ДНК не кодирует.

Есть также крошечные существа, называемые вирусами, которые могут сделать нас больными. У них есть собственный генетический материал, либо ДНК, либо РНК, который они используют для заражения наших клеток. Когда они заражают наши клетки, они могут создавать копии самих себя. ДНК-вирусы обычно копируют себя внутри ядра клетки, а РНК-вирусы обычно делают это в цитоплазме.

Итак, ДНК — это как особый код, который говорит нашим клеткам, что делать, и он унаследован от наших родителей. Некоторые части нашей ДНК не производят белки напрямую, но у них есть другие важные роли в нашем организме. А у вирусов есть собственный генетический материал, который они используют для заражения наших клеток и создания собственных копий.

Трехмерная структура ДНК:

Открытие ДНК

Впервые ДНК наблюдал немецкий биохимик Фредерих Мишер в 1869 году. Он обнаружил присутствие пуриновых и пиримидиновых оснований в нуклеиновых кислотах. Levene (1910) обнаружил, что нуклеиновая кислота дезоксирибозы содержит фосфорную кислоту, а также сахар дезоксирибозы. Он охарактеризовал четыре типа нуклеотидов, присутствующих в ДНК. В 1950 году Чаргафф обнаружил, что содержание пуринов и пиримидинов в ДНК одинаково. К этому времени У. Т. Эстбери с помощью рентгеновской дифракции обнаружил, что ДНК представляет собой полинуклеотид, в котором нуклеотиды расположены перпендикулярно длинной оси молекулы и отделены друг от друга на расстоянии 0,34 нм. В 1953 году Уилкинс и Франклин получили очень хорошие рентгеновские снимки ДНК. На фотографиях видно, что ДНК представляет собой спираль шириной 2,0 нм. Один виток спирали составлял 3,4 нм, в нем укладывались 10 слоев оснований. Уотсон и Крик (1953) разработали первую правильную модель двойной спирали на основе рентгеновских снимков Уилкинса и Франклина. Уилкинс, Уотсон и Крик были удостоены Нобелевской премии за то же самое в 1962 году. Уотсон и Крик (1953) построили трехмерную молекулярную модель ДНК, которая удовлетворяла всем деталям, полученным из рентгеновских снимков. Они предположили, что ДНК состоит из двойной спирали с двумя цепями, состоящими из сахарофосфата снаружи и азотистых оснований с внутренней стороны.

Джеймс Уотсон и Фрэнсис Крик предложили структуру двойной спирали ДНК:

Структура ДНК с использованием рентгеновской дифракции, предложенная Розалинд Франклин:

Классификация ДНК:

Семь критериев, которые обычно используются для классификации ДНК, включают: (1) количество пар оснований на виток (2) рисунок спирали (3) местоположение (4) структуру (5) нуклеотидные последовательности (6) кодирующую и некодирующую ДНК (7) количество цепей.

Типы ДНК: модель дуплекса ДНК, предложенная Уотсоном и Криком, представляет собой правостороннюю спираль и называется B-DNA (Balanced DNA). В модели пары оснований лежат почти под прямым углом к ​​оси спирали. Другая правосторонняя дуплексная модель - это A-DNA (альтернативная ДНК). Здесь один виток спирали имеет 11 пар оснований.

Пары оснований лежат на расстоянии 20° от перпендикуляра к оси. C-ДНК имеет 9 пар оснований на виток спирали, в то время как в D-ДНК всего 8 пар оснований. Оба праворукие. Z-ДНК (зигзагообразная ДНК) представляет собой левозакрученную двойную спираль с зигзагообразным остовом, чередующимися пуриновыми и пиримидиновыми основаниями, одним витком длиной 45 А с 12 парами оснований и одной бороздкой.

В-ДНК более гидратирована и чаще всего встречается в живых клетках. Является физиологически и биологически активной формой. Однако его можно преобразовать в другие формы. Известно, что правосторонняя ДНК временно превращается в левовращающую форму, по крайней мере, на короткое время. Такие изменения могут вызывать изменения в экспрессии генов.

Синтез белка из ДНК

Участок ДНК, содержащий инструкции по созданию белка, называется геном. Каждый ген имеет последовательность по крайней мере для одного полипептида. Белки образуют структуры, а также образуют ферменты. Ферменты выполняют большую часть работы в клетках. Белки состоят из более мелких полипептидов, которые состоят из аминокислот. Чтобы заставить белок выполнять определенную работу, нужные аминокислоты должны быть соединены в правильном порядке. Белки производятся крошечными машинами в клетке, называемыми рибосомами. Рибосомы находятся в основном теле клетки, а ДНК — только в ядре клетки. Кодон является частью ДНК, но ДНК никогда не покидает ядро. Поскольку ДНК не может покинуть ядро, клетка копирует последовательность ДНК в РНК. Он меньше и может проникать через отверстия — поры — в мембране ядра и наружу в клетку. Гены, закодированные в ДНК, транскрибируются в информационную РНК (мРНК) белками, такими как РНК-полимераза. Затем зрелая мРНК используется в качестве матрицы для синтеза белка рибосомой. Рибосомы считывают кодоны, «слова», состоящие из трех пар оснований, которые сообщают рибосоме, какую аминокислоту добавить. Рибосома сканирует мРНК, считывая код, в то время как она производит белок. Другая РНК, называемая тРНК, помогает подобрать правильную аминокислоту для каждого кодона.

Анимация синтеза белка:

Что такое хромосомы?

Хромосомы представляют собой нитевидные структуры, в которых ДНК плотно упакована внутри ядра. ДНК свернута вокруг белков, называемых гистонами, которые обеспечивают структурную поддержку. Хромосомы помогают гарантировать, что ДНК реплицируется и распределяется надлежащим образом во время клеточного деления. Каждая хромосома имеет центромеру, которая делит хромосому на две части — p (короткое) плечо и q (длинное) плечо. Центромера расположена в точке сужения клетки, которая может быть или не быть центром хромосомы.

На конце каждой хромосомы находится повторяющаяся последовательность нуклеотидов, называемая теломерой. У позвоночных теломер представляет собой последовательность TTAGGG, повторяющуюся примерно до 15 000 пар оснований. Эти области ДНК играют решающую роль в сохранении геномной последовательности, защищая геном от деградации и ингибируя слияние и рекомбинацию хромосом. Эти регионы также участвуют в организации хромосом внутри ядра.

ДНК человека и шимпанзе:

Шимпанзе и другая обезьяна, бонобо, являются ближайшими живыми родственниками человека. Эти три вида во многом похожи, как телом, так и поведением. Но для четкого понимания того, насколько тесно они связаны, ученые сравнивают их ДНК, важную молекулу, которая является инструкцией по созданию каждого вида. ДНК людей и шимпанзе на удивление совпадают на 98,8%. Как мы можем быть такими похожими и в то же время такими разными?

Почему так много похожей ДНК? ДНК человека и шимпанзе так похожи, потому что эти два вида очень тесно связаны между собой. Люди, шимпанзе и бонобо произошли от одного предка, который жил шесть или семь миллионов лет назад. По мере того как люди и шимпанзе постепенно эволюционировали от общего предка, их ДНК, передаваемая из поколения в поколение, тоже менялась. Фактически, многие из этих изменений ДНК привели к различиям между внешним видом и поведением человека и шимпанзе.

Табличное сравнение:

Так похожи, но такие разные? Если ДНК человека и шимпанзе совпадают на 98,8%, почему мы такие разные? Цифры рассказывают часть истории. Каждая человеческая клетка содержит примерно три миллиарда пар оснований или битов информации. Всего 1,2 процента от этого числа равняются примерно 35 миллионам различий. Некоторые из них имеют большое влияние, другие — нет. И даже два одинаковых участка ДНК могут работать по-разному — их можно «включить» в разном количестве, в разных местах или в разное время.

ПРИЧИНЫ-

Одинаковые гены ведут себя по-разному Хотя у людей и шимпанзе много одинаковых генов, они часто используют их по-разному. Активность или экспрессия гена может быть увеличена или уменьшена, как громкость на радио. Таким образом, один и тот же ген может быть активен у людей, но очень низко у шимпанзе. Одни и те же гены экспрессируются в одних и тех же областях мозга у человека, шимпанзе и гориллы, но в разном количестве. Тысячи подобных различий влияют на развитие и функции мозга и помогают объяснить, почему человеческий мозг больше и умнее.

Немного разные гены Иммунная система шимпанзе удивительно похожа на нашу — большинство вирусов, вызывающих такие заболевания, как СПИД и гепатит, могут заразить и шимпанзе. Но шимпанзе не заражаются малярийным паразитом Plasmodium falciparum, который комар может передать через укус в кровь человека. Небольшая разница в ДНК делает эритроциты человека уязвимыми для этого паразита, в то время как клетки крови шимпанзе устойчивы.

Что такое белки?

Белки представляют собой большие сложные молекулы, которые играют множество важных функций в организме. Они выполняют большую часть работы в клетках и необходимы для структуры, функционирования и регуляции тканей и органов организма. Белки состоят из сотен или тысяч более мелких единиц, называемых аминокислотами, которые соединены друг с другом в виде длинных цепочек. Существует 20 различных типов аминокислот, которые можно комбинировать для получения белка. Последовательность аминокислот определяет уникальную трехмерную структуру каждого белка и его специфическую функцию.

Функции белка:

Структура белков. Ниже описаны четыре различных типа белковых структур:

  1. Первичная структура Первичная структура описывает уникальный порядок, в котором аминокислоты соединяются друг с другом, образуя белок. Белки построены из набора из 20 аминокислот. Как правило, аминокислоты обладают следующими структурными свойствами: Углерод (альфа-углерод), связанный с четырьмя группами, указанными ниже: Атом водорода (Н) Карбоксильная группа (-СООН) Аминогруппа (-NH2) «Вариабельная» группа или группа «R» Все аминокислоты имеют альфа-углерод, связанный с атомом водорода, карбоксильной группой и аминогруппой. Группа «R» варьируется среди аминокислот и определяет различия между этими белковыми мономерами. Аминокислотная последовательность белка определяется информацией, содержащейся в клеточном генетическом коде. Порядок аминокислот в полипептидной цепи уникален и специфичен для конкретного белка. Изменение одной аминокислоты вызывает генную мутацию, которая чаще всего приводит к нефункционирующему белку.
  2. Вторичная структура Вторичная структура относится к скручиванию или сворачиванию полипептидной цепи, которая придает белку его трехмерную форму. В белках наблюдаются два типа вторичных структур. Один тип представляет собой структуру альфа-спирали (α). Эта структура напоминает спиральную пружину и закреплена водородными связями в полипептидной цепи. Второй тип вторичной структуры в белках представляет собой бета (β) складчатый лист. Эта структура кажется складчатой ​​или складчатой ​​и удерживается вместе за счет водородных связей между полипептидными единицами свернутой цепи, которые лежат рядом друг с другом.
  3. Третичная структура Третичная структура относится к всеобъемлющей трехмерной структуре полипептидной цепи белка. Существует несколько типов связей и сил, которые удерживают белок в его третичной структуре. Гидрофобные взаимодействия в значительной степени способствуют сворачиванию и формированию белка. Группа «R» аминокислоты является либо гидрофобной, либо гидрофильной. Аминокислоты с гидрофильными группами «R» будут стремиться к контакту с водной средой, в то время как аминокислоты с гидрофобными группами «R» будут стремиться избегать воды и располагаться ближе к центру белка. Водородные связи в полипептидной цепи и между группами «R» аминокислот помогают стабилизировать структуру белка, удерживая белок в форме, установленной гидрофобными взаимодействиями. Из-за сворачивания белка между положительно и отрицательно заряженными группами «R», которые находятся в тесном контакте друг с другом, может возникать ионная связь. Сворачивание также может привести к ковалентной связи между группами «R» цистеиновых аминокислот. Этот тип связи образует так называемый дисульфидный мостик. Взаимодействия, называемые силами Ван-дер-Ваальса, также способствуют стабилизации структуры белка. Эти взаимодействия относятся к силам притяжения и отталкивания, возникающим между молекулами, которые поляризуются. Эти силы способствуют образованию связи между молекулами.
  4. Четверичная структура Четвертичная структура относится к структуре макромолекулы белка, образованной взаимодействием между несколькими полипептидными цепями. Каждая полипептидная цепь называется субъединицей. Белки с четвертичной структурой могут состоять из более чем одной белковой субъединицы одного типа. Они также могут состоять из различных субъединиц. Гемоглобин является примером белка с четвертичной структурой. Гемоглобин, обнаруженный в крови, представляет собой железосодержащий белок, связывающий молекулы кислорода. Он состоит из четырех субъединиц: двух альфа-субъединиц и двух бета-субъединиц.

Рецепторы, связанные с G-белком (GPCR)

Рецепторы, связанные с G-белком (GPCR), также известные как рецепторы с семью (проходными) трансмембранными доменами, рецепторы 7TM, гептаспиральные рецепторы, серпентиновые рецепторы и рецепторы, связанные с G-белком (GPLR), составляют большое семейство белковых рецепторов, которые обнаруживают молекулы вне клетки и активируют внутренние пути передачи сигнала и, в конечном счете, клеточные ответы. Связываясь с G-белками, они называются семитрансмембранными рецепторами, поскольку проходят через клеточную мембрану семь раз. Рецепторы, связанные с G-белком, обнаружены только у эукариот, включая дрожжи, хоанофлагеллят и животных. Лиганды, которые связывают и активируют эти рецепторы, включают светочувствительные соединения, запахи, феромоны, гормоны и нейротрансмиттеры и различаются по размеру от небольших молекул до пептидов и крупных белков. Рецепторы, связанные с G-белком, участвуют во многих заболеваниях.

Тирозинкиназа

Тирозинкиназа представляет собой фермент, который может переносить фосфатную группу от АТФ к белку в клетке. Он функционирует как переключатель «вкл.» или «выкл.» во многих функциях сотовой связи. Тирозинкиназы являются подклассом протеинкиназ. Фосфатная группа присоединена к аминокислоте тирозину в белке. Тирозинкиназы представляют собой подгруппу более крупного класса протеинкиназ, которые присоединяют фосфатные группы к другим аминокислотам (серин и треонин). Фосфорилирование белков киназами является важным механизмом передачи сигналов внутри клетки (передача сигналов) и регуляции клеточной активности, такой как клеточное деление. Протеинкиназы могут мутировать, застревать в положении «включено» и вызывать нерегулируемый рост клетки, что является необходимым этапом для развития рака. Поэтому ингибиторы киназы, такие как иматиниб, часто являются эффективными средствами лечения рака. Большинство тирозинкиназ имеют ассоциированную протеинтирозинфосфатазу, удаляющую фосфатную группу.

Структура:

Тирозинфосфатаза

Протеиновые тирозинфосфатазы представляют собой группу ферментов, которые удаляют фосфатные группы из фосфорилированных остатков тирозина в белках. Фосфорилирование белкового тирозина (pTyr) является распространенной посттрансляционной модификацией, которая может создавать новые мотивы распознавания для белковых взаимодействий и клеточной локализации, влиять на стабильность белков и регулировать активность ферментов. Как следствие, поддержание соответствующего уровня фосфорилирования белка тирозина необходимо для многих клеточных функций. Тирозин-специфические протеинфосфатазы (PTPase; EC 3.1.3.48) катализируют удаление фосфатной группы, присоединенной к остатку тирозина, с использованием промежуточного фермента цистеин-фосфата. Эти ферменты являются ключевыми регуляторными компонентами в путях передачи сигнала (таких как путь MAP-киназы) и контроле клеточного цикла, а также важны для контроля клеточного роста, пролиферации, дифференцировки, трансформации и синаптической пластичности.

Структура:

Синтетаза В биохимии лигаза — это фермент, который может катализировать соединение двух больших молекул путем образования новой химической связи, обычно с сопутствующим гидролизом небольшой боковой химической группы на одной из больших молекул, или фермент, катализирующий соединение двух соединений, например, ферменты, которые катализируют соединение CO, CS, CN и т. д. В общем, лигаза катализирует следующую реакцию:

Ab + C → A–C + b

или иногда

Ab + cD → A–D + b + c + d + e + f

где строчные буквы обозначают маленькие, зависимые группы. Лигаза может соединять два комплементарных фрагмента нуклеиновой кислоты и восстанавливать одноцепочечные разрывы, возникающие в двухцепочечной ДНК во время репликации.

Синтаза Синтаза представляет собой фермент, который катализирует процесс синтеза. По классификации номеров ЕС они принадлежат к группе лиаз. первоначально биохимическая номенклатура различала синтетазы и синтазы. Согласно исходному определению, синтазы не используют энергию нуклеозидтрифосфатов (таких как АТФ, ГТФ, ЦТФ, ТТР и УТФ), тогда как синтетазы используют нуклеозидтрифосфаты. Тем не менее, Объединенная комиссия по биохимической номенклатуре (JCBN) диктует, что «синтаза» может использоваться с любым ферментом, который катализирует синтез (независимо от того, использует он нуклеозидтрифосфаты или нет), тогда как «синтетаза» должна использоваться как синоним «лигазы».

Пример различия между ферментами синтазы и синтетазы:

Ионные каналы

Ионные каналы представляют собой порообразующие мембранные белки, которые позволяют ионам проходить через поры канала. Их функции включают установление мембранного потенциала покоя, формирование потенциалов действия и других электрических сигналов путем управления потоком ионов через клеточную мембрану, контролирование потока ионов через секреторные и эпителиальные клетки и регулирование клеточного объема. Ионные каналы присутствуют в мембранах всех возбудимых клеток. Ионные каналы представляют собой один из двух классов ионофорных белков, второй из которых является переносчиками ионов. Изучение ионных каналов часто включает биофизику, электрофизиологию и фармакологию с использованием таких методов, как зажим напряжения, зажим патча, иммуногистохимия, рентгеновская кристаллография, рентгеноскопия и ОТ-ПЦР. Их классификация как молекул называется каналомикой.

Структура:

Факторы транскрипции

Фактор транскрипции (TF) (или ДНК-связывающий фактор, специфичный для последовательности) представляет собой белок, который контролирует скорость транскрипции генетической информации из ДНК в информационную РНК путем связывания с определенной последовательностью ДНК. Функция TF состоит в том, чтобы регулировать — включать и выключать — гены, чтобы убедиться, что они экспрессируются в нужной клетке в нужное время и в нужном количестве на протяжении всей жизни клетки и организма. Группы TF функционируют скоординированным образом, управляя клеточным делением, ростом и гибелью клеток на протяжении всей жизни; миграция и организация клеток (план тела) во время эмбрионального развития; и периодически в ответ на сигналы извне клетки, такие как гормон. В геноме человека насчитывается до 1600 ТФ. ТФ работают сами по себе или в комплексе с другими белками, способствуя (как активатор) или блокируя (как репрессор) привлечение РНК-полимеразы (фермента, осуществляющего транскрипцию генетической информации с ДНК на РНК) к специфическим генам. Отличительной чертой TF является то, что они содержат по крайней мере один ДНК-связывающий домен (DBD), который присоединяется к определенной последовательности ДНК, прилегающей к генам, которые они регулируют. TF сгруппированы в классы на основе их DBD. Другие белки, такие как коактиваторы, ремоделеры хроматина, гистоновые ацетилтрансферазы, гистоновые деацетилазы, киназы и метилазы, также необходимы для регуляции генов, но не имеют ДНК-связывающих доменов и, следовательно, не являются TF. с.

Структура:

ТРЕБУЕТСЯ БИБЛИОТЕКА-

NumPy

NumPy — это универсальный пакет для обработки массивов. Он предоставляет высокопроизводительный объект многомерного массива и инструменты для работы с этими массивами. Это основной пакет для научных вычислений с Python. Он содержит различные функции, включая такие важные, как мощный объект N-мерного массива, сложные (широковещательные) функции, инструменты для интеграции кода C/C++ и Fortran, а также полезную линейную алгебру, преобразование Фурье и возможности случайных чисел.

Помимо очевидного научного применения, NumPy также можно использовать в качестве эффективного многомерного контейнера общих данных. Произвольные типы данных могут быть определены с помощью NumPy, что позволяет NumPy легко и быстро интегрироваться с широким спектром баз данных.

Нажмите здесь для работы с Python.

Панды

Pandas — одна из лучших библиотек Python. Он поддерживает чтение и запись электронных таблиц Excel, CVS и множество манипуляций. Это больше похоже на обязательную библиотеку, которую вам нужно знать, если вы имеете дело с наборами данных из файлов Excel и файлов CSV. то есть для машинного обучения и науки о данных. Он обеспечивает высокооптимизированную производительность, а исходный код серверной части написан исключительно на C или Python.

Pandas DataFrame — Pandas DataFrame представляет собой двумерную, изменяемую по размеру, потенциально гетерогенную табличную структуру данных с помеченными осями (строки и столбцы). Фрейм данных — это двумерная структура данных, т. е. данные выровнены в виде таблицы в строках и столбцах.

Pandas_profiling — профилирование Panda обеспечивает такие анализы, как тип, уникальные значения, отсутствующие значения, квантильная статистика, среднее значение, мода, медиана, стандартное отклонение, сумма, асимметрия, частые значения, гистограммы, корреляция между переменными, количество, визуализация тепловой карты и т. д. Мы используем профилирование Pandas, чтобы ускорить EDA за очень короткое время и всего с одной строкой кода.

Нажмите здесь для работы с Python.

Матплотлиб

Matplotlib — это библиотека визуализации на Python для двумерных графиков массивов. Matplotlib — это многоплатформенная библиотека визуализации данных, построенная на массивах NumPy и предназначенная для работы с более широким стеком SciPy. Он был представлен Джоном Хантером в 2002 году. Matplotlib пытается сделать простые вещи простыми, а сложные возможными. Вы можете создавать графики, гистограммы, спектры мощности, гистограммы, диаграммы ошибок, диаграммы рассеивания и т. д., написав всего несколько строк кода. Для простого построения графиков модуль pyplot предоставляет интерфейс, подобный MATLAB, особенно в сочетании с IPython. Для опытного пользователя у вас есть полный контроль над стилями линий, свойствами шрифта, свойствами осей и т. д. через объектно-ориентированный интерфейс или набор функций, знакомых пользователям MATLAB.

Нажмите здесь для работы с Python.

IPython-

IPython — альтернативный интерпретатор Python. Это интерактивная оболочка, используемая для вычислений в Python. Он предоставляет гораздо больше полезных функций по сравнению с более популярным интерпретатором Python по умолчанию. Ipython.display — создает объект изображения PNG/JPEG/GIF с исходными данными. Когда этот объект возвращается входной ячейкой или передается в функцию отображения, это приводит к отображению изображения во внешнем интерфейсе.

Нажмите здесь для работы с Python.

Sklearn-

Scikit-learn предоставляет ряд контролируемых и неконтролируемых алгоритмов обучения через согласованный интерфейс в Python. Он распространяется под разрешающей упрощенной лицензией BSD и распространяется во многих дистрибутивах Linux, что способствует академическому и коммерческому использованию. Библиотека построена на основе SciPy (Scientific Python), которую необходимо установить, прежде чем вы сможете использовать scikit-learn. Расширения или модули для ухода за SciPy условно называются SciKits. Таким образом, модуль предоставляет алгоритмы обучения и называется scikit-learn. Видение библиотеки — это уровень надежности и поддержки, необходимый для использования в производственных системах. Это означает глубокое внимание к таким проблемам, как простота использования, качество кода, совместная работа, документация и производительность. Хотя интерфейс — это Python, c-библиотеки — это рычаги для повышения производительности, такие как numpy для массивов и матричных операций, LAPACK, LibSVM и осторожное использование python. Модуль sklearn.feature_extraction можно использовать для извлечения функций в формате, поддерживаемом алгоритмами машинного обучения, из наборов данных, состоящих из таких форматов, как текст и изображение. CountVectorizer предоставляет простой способ токенизации коллекции текстовых документов, т. е. токенизации строк и присвоения целочисленного идентификатора каждому возможному токену, например, с помощью пробелов и знаков препинания в качестве разделителей токенов и создания словаря известных слов, а также для кодирования новых документов с использованием этого словаря. train_test_split Используя это, мы можем легко разделить набор данных на наборы данных для обучения и тестирования в различных пропорциях.

Нажмите здесь для работы с Python.

Расширить

Mlxtend (расширения для машинного обучения) — это библиотека Python с полезными инструментами для повседневных задач по обработке и анализу данных. он включает в себя функции для построения красивых графиков и графиков.

Нажмите здесь для работы с Python.

Используемые алгоритмы -

НАИВ-БАЙЕС-

Наивный байесовский классификатор — это контролируемый алгоритм машинного обучения, использующий теорему Байеса, которая предполагает, что признаки статистически независимы. Теорема основана на наивном предположении, что входные переменные независимы друг от друга, т. е. невозможно узнать что-либо о других переменных, если задана дополнительная переменная. Независимо от этого предположения, он зарекомендовал себя как классификатор с хорошими результатами.

Что такое теорема Байеса?

Наивные байесовские классификаторы опираются на теорему Байеса, основанную на условной вероятности или, проще говоря, вероятности того, что событие (А) произойдет при условии, что другое событие (В) уже произошло. По сути, теорема позволяет обновлять гипотезу каждый раз, когда вводятся новые доказательства. Приведенное ниже уравнение выражает теорему Байеса на языке вероятностей:

Поясним, что означает каждый из этих терминов.

«P» является символом обозначения вероятности.
p (a | b) = вероятность события A (гипотеза), возникающего с учетом того, что B (доказательства) произошла. (доказательства) встречается.

Различные наивные байесовские алгоритмы — Многочленный наивный байесовский алгоритм:

Он оценивает условную вероятность конкретного слова данного класса как относительную частоту термина t в документах, принадлежащих классу (c). Вариация учитывает количество вхождений термина t в обучающих документах из класса ©, в том числе многократное вхождение.

Булев полиномиальный наивный байесовский метод:

Он работает так же, как полиномиальный наивный байес, только изменяется вместо измерения всех вхождений в термине (t) в документе, он измеряет вхождение только один раз.

Наивная байесовская модель Бернулли:

Он генерирует логическое значение/индикатор о каждом термине словаря, равном 1, если термин принадлежит исследуемому документу, если нет, то он помечает 0. Ненарастающие термины в документе берутся в документ и учитываются при вычислении условных вероятностей, и, таким образом, учитывается отсутствие терминов.

Наивная байесовская модель Гаусса. Наивный байесовский алгоритм Гаусса — это особый тип алгоритма NB. Он специально используется, когда функции имеют непрерывные значения. Также предполагается, что все функции подчиняются гауссовскому распределению, то есть нормальному распределению.

Зачем использовать мультиномиальный наивный байесовский метод?

Нажмите здесь для работы с Python.

XGBOOST-

XGBoost расшифровывается как eXtreme Gradient Boosting. В частности, Gradient Boosting — это подход, при котором новые модели обучаются прогнозировать невязки (то есть ошибки) предыдущих моделей.

XGBoost — это библиотека с открытым исходным кодом, обеспечивающая высокопроизводительную реализацию деревьев решений с градиентным усилением. Базовая кодовая база C++ в сочетании с интерфейсом Python, расположенным сверху, создает чрезвычайно мощный, но простой в реализации пакет. Производительность XGBoost не шутка — она стала популярной библиотекой для победы во многих соревнованиях Kaggle. Его реализация повышения градиента не имеет себе равных, и это еще не все, поскольку библиотека продолжает получать похвалы. Две причины использовать XGBoost также являются двумя целями проекта:

1-Execution Speed.
2-Model Performance.

Это ансамблевый алгоритм машинного обучения на основе дерева решений, в котором используется структура повышения градиента. В задачах прогнозирования, связанных с неструктурированными данными (изображениями, текстом и т. д.), искусственные нейронные сети, как правило, превосходят все другие алгоритмы или платформы. Однако, когда речь идет о структурированных/табличных данных малого и среднего размера, алгоритмы на основе дерева решений в настоящее время считаются лучшими в своем классе. Пожалуйста, смотрите диаграмму ниже, чтобы увидеть эволюцию древовидных алгоритмов на протяжении многих лет.

Нажмите здесь для работы с Python.

Древо решений -

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

Дерево решений — это один из подходов к прогнозному моделированию, используемых в статистике, интеллектуальном анализе данных и машинном обучении. Деревья решений строятся с помощью алгоритмического подхода, который определяет способы разделения набора данных на основе различных условий. Это один из наиболее широко используемых и практичных методов обучения с учителем. Деревья решений — это непараметрический контролируемый метод обучения, используемый как для задач классификации, так и для задач регрессии. Модели деревьев, в которых целевая переменная может принимать дискретный набор значений, называются деревьями классификации. Деревья решений, в которых целевая переменная может принимать непрерывные значения (обычно действительные числа), называются деревьями регрессии.

Нажмите здесь для работы с Python.

RandomForest -

Случайный лес — это контролируемый алгоритм обучения, который используется как для классификации, так и для регрессии. Но, тем не менее, он в основном используется для задач классификации. Как мы знаем, лес состоит из деревьев, а чем больше деревьев, тем крепче лес. Точно так же алгоритм случайного леса создает деревья решений для выборок данных, затем получает прогноз от каждой из них и, наконец, выбирает лучшее решение посредством голосования. Это метод ансамбля, который лучше, чем одиночное дерево решений, потому что он уменьшает переобучение за счет усреднения результата. Работа алгоритма случайного леса

Мы можем понять работу алгоритма случайного леса с помощью следующих шагов — Шаг 1 — Сначала начнем с выбора случайных выборок из заданного набора данных.

Step 1 − First, start with the selection of random samples from a given dataset. 
Step 2 − Next, this algorithm will construct a decision tree for every sample. Then it will get the prediction result from every decision tree.
Step 3 − In this step, voting will be performed for every predicted result.
Step 4 − At last, select the most voted prediction result as the final prediction result.

Нажмите здесь для работы с Python.

Используемые показатели оценки -

Точность классификации

Точность классификации — это то, что мы обычно имеем в виду, когда используем термин «точность». Это отношение количества правильных прогнозов к общему количеству входных выборок.

Это работает хорошо, только если есть равное количество образцов, принадлежащих каждому классу. Например, предположим, что в нашем обучающем наборе есть 98 % образцов класса A и 2 % образцов класса B. Тогда наша модель может легко получить точность обучения 98%, просто предсказывая каждую обучающую выборку, принадлежащую классу A. Когда та же модель тестируется на тестовом наборе с 60% выборками класса A и 40% выборками класса B, точность теста упадет до 60%. Точность классификации велика, но дает нам ложное ощущение достижения высокой точности. Настоящая проблема возникает, когда цена неправильной классификации выборок второстепенных классов очень высока. Если мы имеем дело с редким, но смертельным заболеванием, цена невозможности диагностировать болезнь у больного человека намного выше, чем стоимость направления здорового человека на дополнительные анализы.

Нажмите здесь для работы с Python.

Оценка F1

Оценка F1 используется для измерения точности теста. Оценка F1 — это среднее гармоническое между точностью и полнотой. Диапазон для F1 Score: [0, 1]. Он говорит нам, насколько точен наш классификатор (сколько экземпляров он классифицирует правильно), а также насколько он надежен (он не пропускает значительное количество экземпляров). Высокая точность, но более низкая полнота, дает нам чрезвычайно точную информацию, но затем пропускает большое количество случаев, которые трудно классифицировать. Чем выше показатель F1, тем лучше производительность нашей модели. Математически это можно выразить так:

F1 Score пытается найти баланс между точностью и отзывом.

Нажмите здесь для работы с Python.

Точность

Это количество правильных положительных результатов, деленное на количество положительных результатов, предсказанных классификатором.

Отзывать :

Это количество правильных положительных результатов, деленное на количество всех соответствующих образцов (всех образцов, которые должны были быть идентифицированы как положительные).

Нажмите здесь для работы с Python.

Матрица путаницы

Матрица путаницы, как следует из названия, дает нам матрицу в качестве выходных данных и описывает полную производительность модели. Предположим, у нас есть проблема бинарной классификации. У нас есть несколько образцов, принадлежащих к двум классам: ДА или НЕТ. Кроме того, у нас есть собственный классификатор, который предсказывает класс для данной входной выборки. При тестировании нашей модели на 165 образцах мы получаем следующий результат.

Есть 4 важных термина: Истинные положительные результаты: случаи, в которых мы предсказали ДА, и фактический результат также был ДА. True Negatives: случаи, в которых мы предсказывали НЕТ, а фактический результат был НЕТ. Ложные срабатывания: случаи, в которых мы прогнозировали ДА, а фактический результат был НЕТ. Ложноотрицательные результаты: случаи, в которых мы прогнозировали НЕТ, а фактический результат был ДА. Точность матрицы можно рассчитать, взяв среднее значение значений, лежащих поперек «главной диагонали», т.е.

Матрица путаницы формирует основу для других типов метрик.

Нажмите здесь для работы с Python.