Единици
1. Вовед во вештачката интелигенција во хемијата: улоги, граници, валидација и етика 2. Молекуларна претстава и хемиска структура: валидација со SMILES, InChI и RDKit 3. Предвидување и механизам на реакции: Предвидување на производот, состојбата и несаканите реакции 4. Поддршка за интерпретација на спектарот: NMR, IR и масовна спектрометрија 5. Преглед на литература и планирање на синтезата: извор, процедура и патоказ 6. Хемиска анализа на податоци и Пајтон: панди, стехиометрија и калибрација 7. Предвидување на молекуларни својства и QSAR: Резолуција, pKa и граници на моделот 8. Лабораториска документација: тетратка за експеримент, ELN и репродуктивност 9. Проценка на безбедност и опасност: GHS, SDS и границите на вештачката интелигенција 10. Потврда, халуцинација и научен интегритет 11. Човек во експериментот: етика, приватност, одговорност и работен тек од крај до крај
Единица 2 / 11

Молекуларна претстава и хемиска структура: валидација со SMILES, InChI и RDKit

Добивки:

  • Способност да се идентификуваат молекулите не по име, туку според застапеност на структурата (насмевки со луѓе, InChI/InChIKey со база на податоци)
  • Способност за откривање невалидни или неточни структури со парсирање, валидирање и канонизирање на секоја НАСМЕВКА дадена од вештачката интелигенција со RDKit
  • Да се биде во можност да се разбере дека детерминистичките величини како што се молекуларната тежина и формулата треба да се добијат од алатката заснована на правила, а не од јазичниот модел.

Првиот услов за безбедно користење на вештачката интелигенција во хемијата е да се напише молекулата на јазик што и машината и човекот можат да го разберат. Вие велите „фенол“, вештачката интелигенција го сфаќа правилно; но кога ќе кажеш „киселина“ има илјадници можности. Имињата се двосмислени; претставите на структурата се прецизни. Во оваа единица ќе ги научиме двете основни ознаки кои ја преведуваат молекулата во текст (SMILES и InChI) и алатката што ги потврдува детерминистички (RDKit). Нашата цел: да ја дадеме молекулата на вештачката интелигенција на начин што никогаш нема да ја разбере погрешно и да ја потврдиме структурата произведена од вештачката интелигенција со алатка.

Што е НАСМЕВКИ?

SMILES (Поедноставен систем за влез во молекуларна линија) е формат на пишување на молекула во една линија текст. Атомите се претставени со букви, врските со симболи, а прстените со бројки. Примери:

  • Етанол: CCO (јаглерод-јаглерод-кислород; имплицитно водород).
  • Бензен: c1cccccc1 (малите букви „c“ означува ароматичен јаглерод; 1 е затворање на прстенот).
  • Аспирин: CC(=O)Oc1ccccc1C(=O)O.
  • Кофеин: Cn1cnc2c1c(=O)n(C)c(=O)n2C.

Моќта на SMILES е што ја носи целата структура на врски во една линија; Неговата слабост е што истата молекула може да има повеќекратни валидни НАСМЕВКИ (ова се нарекува неканоничност). Ќе го решиме ова со RDKit за момент.

Совет: „канонските НАСМЕВКИ“ за молекула е единствениот, стандарден правопис за таа молекула. За да видите дали две НАСМЕВКИ се иста молекула, канонизирајте ги и споредете ги; Тие не треба да се еднакви текстуално, туку треба да бидат еднакви молекули.

Што е InChI?

InChI (Меѓународен хемиски идентификатор) е стандарден идентификатор развиен од IUPAC. Разликата од НАСМЕВКИТЕ е што истата молекула секогаш дава ист InChI; односно е од канонски карактер. Долг е и тежок за читање, но е идеален за усогласување на базата на податоци. За пребарување се користи скратеното „InChIKey“ (дигест со 27 знаци).

  • Аспирин InChIKey: BSYNRYMUTXBXSQ-UHFFFAOYSA-N.

Правило: Луѓето зборуваат НАСМЕВКИ (читај), машините и базите на податоци се совпаѓаат со InChI/InChIKey (точно). Подарете НАСМЕВКИ на вештачката интелигенција; Потврдете во базата на податоци со InChIKey.

RDKit: детерминистички мотор за верификација

RDKit е библиотека за хемиформатика со отворен код. За разлика од јазичниот модел, тој се заснова на правила: анализира SMILES, пресметува молекуларна тежина, генерира канонски SMILES, враќа InChI/InChIKey, црта молекула. Така, RDKit „пресметува“ што „предвидува“ вештачката интелигенција. Ова е срцето на работниот тек: AI генерира, RDKit потврдува.

Основен тек на верификација:

од rdkit увоз Chemfrom rdkit.Chem увоз дескриптори, Drawsmiles = "CC(=O)Oc1ccccc1C(=O)O" Chem.MolToSmiles(mol)) print("Молекуларна формула:", Chem.rdMolDescriptors.CalcMolFormula(mole)Descriptors: round(Mol)Descriptors: 2), "g/mol") печатење ("InChIKey:", Chem.MolToInchiKey(mol))

Ако MolFromSmiles врати None, вештачката интелигенција ви дала неважечка молекула; Само ова е многу вредно предупредување. Доколку е валидно, повеќе не треба да го прашувате јазичниот модел за молекуларната тежина; Детерминистички е во ваши раце.

Чекор по чекор: AI + RDKit интероперација

  1. Идентификувајте ја молекулата: Дајте ѝ го името на вештачката интелигенција, побарајте НАСМЕВКИ. На пример, „проверете ги канонските НАСМЕВКИ за парацетамол“.
  2. Потврдете: анализирајте ги дојдовните НАСМЕВКИ со MolFromSmiles. Ако нема, отфрлете.
  3. Канонилизирај: вратете го канонскиот правопис со MolToSmiles; Секогаш користете го ова од сега па натаму.
  4. Пресметајте ги броевите: Добијте молекуларна тежина, формула, број на прстени, број на донатори/прифаќачи на водородни врски итн. од RDKit, а не од AI.
  5. Поправете ID: генерирајте InChIKey, пребарувајте во базата на податоци (PubChem), потврдете дека молекулата е навистина соединението што го сакате.

Четири шаблони за копирање

1) Барање НАСМЕВКИ (од именка до структура):

Задача: Дајте ги канонските НАСМЕВКИ за следново соединение. Соединение: парацетамол (ацетаминофен). Правило: Дајте ги само стрингот SMILES и InChIKey, не додавајте дополнително објаснување. Ако не сте сигурни, напишете „НЕСИГУРНО“, не измислувајте.

2) Барање за валидација SMILES (од структура до контрола):

Испитајте ги НАСМЕВКИТЕ подолу: CC(=O)Nc1ccc(O)cc1Прашања:1) Дали е ова валидна НАСМЕВКА?2) На кое соединение одговара (заедничко име)?3) Која е молекуларната формула?Забелешка: Ќе ја пресметам точната молекуларна тежина со RDKit; Вие само давате интерпретација на вашата структура.

3) Споредување на две претстави:

Имам две НАСМЕВКИ:А) OCCB) CCOTЗадача: Дали се овие иста молекула или различни? Напишете го вашето размислување. Забелешка: ќе го проверам вашиот одговор со канонизирање во RDKit.

4) Објаснување на структурата (за цели на учење):

НАСМЕВКИ: Cn1cnc2c1c(=O)n(C)c(=O)n2CTЗадача: Прочитајте ја оваа НАСМЕВКА дел по дел и објаснете што значи секој симбол (атом, врска, прстен, ароматичност) на обичен турски. Кажи и за кое соединение се работи.

Слаб промпт / Силен промпт

Слаб:

Дајте ги својствата на ацетаминофен.

„Функцијата“ е нејасна; ВИ генерира случајни броеви од молекуларна тежина до точка на топење, од кои некои ќе бидат погрешни.

Силно:

Соединение: ацетаминофен.1) Canonical SMILES и InChIKey вер.2) Наведете ја молекуларната формула.Правило: НЕ ДАВАЈ НУМЕРИЧКИ вредности како молекуларна тежина, точка на топење итн.; Ќе ги земам со RDKit/PubChem. Само дајте го ID на изградбата.

Разлика: Ја насочивме вештачката интелигенција кон она во што е силна (идентитет на структурата) и подалеку од она во што е слабо (експериментални броеви).

Споредба на впечатоци

карактеристика

НАСМЕВКИ

InChI / InChIKey

Читливост

Високо (луѓе пријателски)

Ниско (погодно за машина)

каноничност

Предмет на промена (потребна е канонизација)

природно сингл

Употреба

човечка комуникација, цртање, внесување

Поклопување на базата на податоци, идентитет

стереохемија

Поддржува (@ симболи)

Поддржува (слоевит)

да се даде на АИ

идеален

Идеален за потврда

мини случаи

Случај 1 - Две имиња, една молекула. Еден студент мислел дека „N-ацетил-пара-аминофенол“ и „парацетамол“ се различни соединенија и планирал два посебни експерименти. Кога ги канонизираа нивните НАСМЕВКИ во RDKit, се покажа дека и двајцата се CC(=O)Nc1ccc(O)cc1; Тоа беше истата молекула. Изгубено: половина ден планирање; добивка: можеше да се избегне со 2-минутна проверка на канонализација.

Случај 2 - Невалидно снимање НАСМЕВКИ. Вештачката интелигенција врати CC(=O)Nc1ccc(O)cc1C( за варијанта (заградите не се затворени). Студентот истрча MolFromSmiles, го врати Никој, веднаш ја виде грешката и побара поправени НАСМЕВКИ. Без потврда, неисправната структура ќе се прошири на сите сметки.

Случај 3 - Неправилна молекуларна тежина. YZ рече „молекуларна тежина 214,3 g/mol“ за ибупрофен (C13H18O2). Пресметката на RDKit даде 206,28 g/mol. Разлика за 0,1 mol: 21,43 g со YZ, всушност 20,63 g. Оваа разлика од 3,9% би ја нарушила стехиометријата и пресметката на приносот. Донесе детерминистичка пресметка.

Вообичаени грешки

  • Давање на молекулата по име. Синонимите/заштитните имиња се збунети. Секогаш вклучувајте НАСМЕВКИ или InChI.
  • Споредување НАСМЕВКИ без канонизирање. OCC и CCO се различни во текстот, но исти во молекулите.
  • Прашање на молекуларната тежина на моделот на јазикот. Ова е детерминистичка пресметка; Се прави од RDKit или рачно од формулата.
  • Не забележувајќи невалидни НАСМЕВКИ. Непроверување на враќањето на MolFromSmiles None и продолжување со погрешна структура.
  • Занемарување на стереохемијата. Двата енантиомери (изомери на огледална слика) може да покажат различни биолошки ефекти; Прескокнување на знаците @/@@ во SMILES.
Внимание: Истата молекуларна формула не значи различни молекули. C2H6O е и етанол (CCO) и диметил етер (COC). Еднаквоста на формулата не е еднаквост на идентитетот; Користете InChIKey за идентификација.

Сумирано

  • Идентификувајте ги молекулите според нотација на структурата, а не по име: НАСМЕВКИ со човек, InChI/InChIKey со база на податоци.
  • RDKit е детерминистички; ВИ предвидува, RDKit пресметува и проверува.
  • Анализирајте го секој AI SMILES со MolFromSmiles и проверете за None, а потоа канонизирајте.
  • Добијте бројки како молекуларна тежина и формула од RDKit, а не од јазичниот модел.
  • Формула еднаквост не значи молекуларен идентитет; Користете InChIKey за идентификација.

Задача за апликација

Изберете три соединенија (на пример, кофеин, ибупрофен, глицин). Прашајте ја вештачката интелигенција за канонски НАСМЕВКИ за секој. Потоа напишете скрипта RDKit (користете го шаблонот погоре) и генерирајте: канонски НАСМЕВКИ, молекуларна формула, молекуларна тежина, InChIKey. Колку од насмевките дадени од вештачката интелигенција биле валидни? Ако YZ ја дал и молекуларната тежина, пресметајте ја разликата како процент со вредноста на RDKit. Запишете ги вашите наоди во мала маса.

листа за проверка

  • [ ] Знам што се SMILES и InChI/InChIKey и кога да ги користам.
  • [ ] Ги проверувам сите НАСМЕВКИ дадени од вештачката интелигенција со MolFromSmiles.
  • [ ] Ги канонизирам НАСМЕВКИТЕ пред да ги споредам.
  • [ ] Молекуларната тежина и формулата ги добивам од RDKit, а не од јазичниот модел.
  • [ ] Го потврдувам идентитетот на молекулата во базата на податоци со InChIKey.
  • [ ] Знам ситуации каде стереохемијата е важна.