ලාභ:
- නමෙන් නොව ව්යුහ නිරූපණයෙන් අණු හඳුනා ගැනීමේ හැකියාව (මිනිසුන් සමඟ සිනහව, දත්ත සමුදාය සමඟ InChI/InChIKey)
- RDKit සමඟ කෘත්රිම බුද්ධිය මඟින් ලබා දෙන එක් එක් SMILES විග්රහ කිරීම, වලංගු කිරීම සහ කැනොනිකල් කිරීම මගින් වලංගු නොවන හෝ වැරදි ව්යුහයන් හඳුනා ගැනීමේ හැකියාව
- අණුක බර සහ සූත්රය වැනි නිර්ණායක ප්රමාණ ලබා ගත යුත්තේ භාෂා ආකෘතියෙන් නොව රීති මත පදනම් වූ මෙවලමෙන් බව තේරුම් ගැනීමට හැකි වීම.
රසායන විද්යාවේදී AI ආරක්ෂිතව භාවිතා කිරීමේ පළමු කොන්දේසිය වන්නේ යන්ත්රයට සහ මිනිසාට තේරුම් ගත හැකි භාෂාවකින් අණු ලිවීමයි. ඔබ "ෆීනෝල්" කියනවා, AI එය නිවැරදිව තේරුම් ගනී; නමුත් ඔබ "ඇසිඩ්" කී විට දහස් ගණනක් හැකියාවන් ඇත. නම් අපැහැදිලි ය; ව්යුහ නිරූපණයන් නිරවද්ය වේ. මෙම ඒකකය තුළ, අපි අණුව පෙළ බවට පරිවර්තනය කරන මූලික අංක දෙක (SMILES සහ InChI) සහ ඒවා නියත වශයෙන්ම සත්යාපනය කරන මෙවලම (RDKit) ඉගෙන ගනිමු. අපගේ ඉලක්කය: අණුව කිසිදා වරදවා වටහා නොගන්නා ආකාරයෙන් AI වෙත ලබා දීම සහ AI විසින් නිපදවන ලද ව්යුහය මෙවලමක් මගින් තහවුරු කිරීම.
SMILES යනු කුමක්ද?
SMILES (Simplified Molecular-Input Line-Entry System) යනු අණුවක් තනි පේළියක ලිවීමේ ආකෘතියකි. පරමාණු අකුරු මගින්ද බන්ධන සංකේත මගින්ද මුදු සංඛ්යා මගින්ද නිරූපණය කෙරේ. උදාහරණ:
- එතනෝල්: CCO (කාබන්-කාබන්-ඔක්සිජන්; හයිඩ්රජන් ව්යංග).
- බෙන්සීන්: c1ccccc1 (කුඩා අකුරු "c" යනු ඇරෝමැටික කාබන්; 1 වලල්ල වසන්න).
- ඇස්පිරින්: CC(=O)Oc1ccccc1C(=O)O.
- කැෆේන්: Cn1cnc2c1c(=O)n(C)c(=O)n2C.
SMILES හි බලය වන්නේ එය සම්පූර්ණ සම්බන්ධක ව්යුහයම තනි පේළියකින් ගෙන යාමයි; එහි දුර්වලතාවය වන්නේ එකම අණුවකට බහු වලංගු සිනහවක් තිබිය හැකි වීමයි (මෙය කැනොනිකල් නොවන බව ලෙස හැඳින්වේ). අපි මෙය RDKit සමඟ මොහොතකින් විසඳන්නෙමු.
ඉඟිය: අණුවක් සඳහා "කැනොනිකල් SMILES" යනු එම අණු සඳහා තනි, සම්මත අක්ෂර වින්යාසයයි. SMILES දෙකක් එකම අණුවක් දැයි බැලීමට, ඒවා කැනොනිකල් කර සංසන්දනය කරන්න; ඒවා පාඨමය වශයෙන් සමාන නොවිය යුතුය, නමුත් ඒවා සමාන අණු විය යුතුය.
InChI යනු කුමක්ද?
InChI (International Chemical Identifier) යනු IUPAC විසින් වැඩි දියුණු කරන ලද සම්මත හඳුනාගැනීමකි. SMILES හි වෙනස වන්නේ එකම අණුව සෑම විටම එකම InChI ලබා දීමයි; එනම්, එය කැනොනිකල් ස්වභාවයයි. එය දිගු හා කියවීමට අපහසු වේ, නමුත් දත්ත සමුදාය ගැලපීම සඳහා සුදුසු වේ. සංක්ෂිප්ත "InChIKey" (අක්ෂර 27 ඩීජස්ට්) සෙවීම සඳහා භාවිතා වේ.
- Aspirin InChIKey: BSYNRYMUTXBXSQ-UHFFFAOYSA-N.
රීතිය: මිනිසුන් කතා කරන්නේ SMILES (කියවීම), යන්ත්ර සහ දත්ත සමුදායන් InChI/InChIKey (නිශ්චිත). AI වෙත SMILES දෙන්න; InChIKey සමඟ දත්ත සමුදාය තුළ තහවුරු කරන්න.
RDKit: නිර්ණායක සත්යාපන එන්ජිම
RDKit යනු විවෘත මූලාශ්ර රසායන විද්යා පුස්තකාලයකි. භාෂා ආකෘතිය මෙන් නොව, එය රීති මත පදනම් වේ: SMILES විග්රහ කරයි, අණුක බර ගණනය කරයි, කැනොනිකල් SMILES උත්පාදනය කරයි, InChI/InChIKey ආපසු ලබා දෙයි, අණුව අඳියි. එබැවින් RDKit AI "අනුමාන කරන" දේ "ගණනය කරයි". කාර්ය ප්රවාහයේ හදවත මෙයයි: AI ජනනය කරයි, RDKit සත්යාපනය කරයි.
මූලික සත්යාපන ප්රවාහයක්:
rdkit import Chemfrom rdkit.Chem import Descriptors, Drawsmiles = "CC(=O)Oc1ccccc1C(=O)O" Chem.MolToSmiles(mol)) මුද්රණය("අණුක සූත්රය:", Chem.rdMolDescriptors.CalcMol)) බර,මුද්රණ"(Mole) වටය(Descriptors.MolWt(mol), 2), "g/mol") මුද්රණය("InChIKey:", Chem.MolToInchiKey(mol))
MolFromSmiles කිසිවක් ආපසු ලබා දෙන්නේ නම්, AI ඔබට වලංගු නොවන අණුවක් ලබා දී ඇත; මෙය පමණක් ඉතා වටිනා අනතුරු ඇඟවීමකි. වලංගු නම්, ඔබට තවදුරටත් අණුක බර සඳහා භාෂා ආකෘතිය විමසීමට අවශ්ය නොවේ; එය නියත වශයෙන්ම ඔබගේ අතේ ඇත.
පියවරෙන් පියවර: AI + RDKit අන්තර් ක්රියාකාරිත්වය
- අණුව හඳුනා ගන්න: AI නම දෙන්න, SMILES ඉල්ලන්න. උදාහරණයක් ලෙස, "පැරසිටමෝල් සඳහා කැනොනිකල් සිනහව තහවුරු කරන්න."
- සත්යාපනය කරන්න: MolFromSmiles සමඟින් එන SMILES විග්රහ කරන්න. කිසිවක් නොමැති නම්, ප්රතික්ෂේප කරන්න.
- Canonicalize: MolToSmiles සමඟ කැනොනිකල් අක්ෂර වින්යාසය ලබා ගන්න; මෙතැන් සිට සෑම විටම මෙය භාවිතා කරන්න.
- සංඛ්යා ගණනය කරන්න: AI වෙතින් නොව RDKit වෙතින් අණුක බර, සූත්රය, මුදු ගණන, හයිඩ්රජන් බන්ධන පරිත්යාග කරන්නන්/ප්රතිග්රාහක සංඛ්යාව ආදිය ලබා ගන්න.
- නිවැරදි හැඳුනුම්පත: InChIKey ජනනය කරන්න, දත්ත සමුදාය තුළ සොයන්න (PubChem), අණුව ඔබට අවශ්ය සංයෝගය බව තහවුරු කරන්න.
පිටපත් කළ හැකි සැකිලි හතරක්
1) SMILES ඉල්ලීම (නාම පදයේ සිට ව්යුහය දක්වා):
කාර්යය: පහත සංයෝගය සඳහා කැනොනිකල් SMILES දෙන්න. සංයෝගය: පැරසිටමෝල් (ඇසිටමිනොෆෙන්). රීතිය: SMILES තන්තුව සහ InChIKey පමණක් දෙන්න, වැඩිදුර පැහැදිලි කිරීමක් එක් නොකරන්න. ඔබට විශ්වාස නැත්නම්, "UnSURE" ලියන්න, හදන්න එපා.
2) SMILES වලංගු කිරීමේ ඉල්ලීම (ව්යුහයේ සිට පාලනය දක්වා):
පහත SMILES පරීක්ෂා කරන්න: CC(=O)Nc1ccc(O)cc1ප්රශ්න:1) මෙය වලංගු SMILES එකක්ද?2) එය කුමන සංයෝගයට අනුරූප වේ (පොදු නම)?3) අණුක සූත්රය කුමක්ද?සටහන: මම RDKit සමඟ නිශ්චිත අණුක බර ගණනය කරන්නෙමි; ඔබ ඔබේ ව්යුහයේ අර්ථ නිරූපණය පමණක් ලබා දෙයි.
3) නිරූපණයන් දෙකක් සංසන්දනය කිරීම:
මට සිනහ දෙකක් තිබේ:A) OCCB) CCOTask: මේවා එකම අණු හෝ වෙනස්ද? ඔබේ තර්කය ලියන්න. සටහන: මම ඔබේ පිළිතුර RDKit හි කැනොනිකල් කිරීම මගින් හරස් පරීක්ෂා කරමි.
4) ව්යුහය පැහැදිලි කිරීම (ඉගෙනීමේ අරමුණු සඳහා):
සිනහව: Cn1cnc2c1c(=O)n(C)c(=O)n2CTask: මෙම SMILES කෑල්ල කියවා එක් එක් සංකේතයේ තේරුම (පරමාණුව, බන්ධනය, මුද්ද, ඇරෝමැටික බව) පැහැදිලි තුර්කි භාෂාවෙන්. එය කුමන සංයෝගයක්දැයි කියන්න.
දුර්වල ක්ෂණික / ශක්තිමත් විමසුම
දුර්වල:
ඇසිටමිනොෆෙන් වල ගුණ දෙන්න.
"විශේෂාංගය" නොපැහැදිලි ය; AI අණුක බර සිට ද්රවාංකය දක්වා අහඹු සංඛ්යා ජනනය කරයි, සමහර ඒවා වැරදි වනු ඇත.
ශක්තිමත්:
සංයෝගය: acetaminophen.1) Canonical SMILES සහ InChIKey ver.2) අණුක සූත්රය ලබා දෙන්න. රීතිය: අණුක බර, ද්රවාංකය යනාදී සංඛ්යා අගයන් ලබා නොදෙන්න; මම ඒවා RDKit/PubChem සමඟ ලබා ගන්නම්. බිල්ඩ් ID එක දෙන්න.
වෙනස: අපි AI එය ශක්තිමත් (ව්යුහාත්මක අනන්යතාවය) සහ දුර්වල දේ (පරීක්ෂණාත්මක සංඛ්යා) වෙත යොමු කළෙමු.
හැඟීම් සංසන්දනය කිරීම
ලක්ෂණය
සිනහව
InChI / InChIKey
කියවීමේ හැකියාව
ඉහළ (ජනහිතකාමී)
අඩු (යන්ත්ර හිතකාමී)
කැනොනික් බව
වෙනස් වීමට යටත් (කැනොනීකරණය අවශ්යයි)
ස්වභාවිකවම තනිකඩ
භාවිතය
මානව සන්නිවේදනය, ඇඳීම, ආදානය
දත්ත සමුදාය ගැලපීම, අනන්යතාවය
ස්ටීරියෝ රසායන විද්යාව
ආධාරක (@ සංකේත)
ආධාරක (ස්ථර සහිත)
AI එකට දෙන්න
පරමාදර්ශී
තහවුරු කිරීම සඳහා වඩාත් සුදුසුය
කුඩා නඩු
නඩුව 1 - නම් දෙකක්, එක් අණුවක්. ශිෂ්යයෙක් "N-acetyl-para-aminophenol" සහ "පැරසිටමෝල්" එකිනෙකට වෙනස් සංයෝග යැයි සිතූ අතර වෙනම අත්හදා බැලීම් දෙකක් සැලසුම් කළේය. RDKit හි ඔවුන්ගේ SMILES කැනොනිකල් කළ විට, ඔවුන් දෙදෙනාම CC(=O)Nc1ccc(O)cc1 බවට පත් විය; එය එකම අණුවක් විය. නැතිවූ: සැලසුම් කිරීමේ දින භාගයක්; ලාභය: මිනිත්තු 2ක කැනොනිකල්කරණ පරීක්ෂාවකින් වළක්වා ගත හැකිව තිබුණි.
සිද්ධිය 2 - වලංගු නොවන SMILES ග්රහණය. AI විසින් ප්රභේදයක් සඳහා CC(=O)Nc1ccc(O)cc1C (වරහන් වසා නැත) ආපසු ලබා දෙන ලදී. ශිෂ්යයා MolFromSmiles ධාවනය කළේය, එය කිසිවක් නැත, වහාම දෝෂය දැක නිවැරදි කළ SMILES ඉල්ලා සිටියේය. සත්යාපනය නොමැතිව, දෝෂ ව්යුහය සියලුම ගිණුම් වෙත පැතිරෙනු ඇත.
නඩුව 3 - වැරදි අණුක බර. YZ ibuprofen (C13H18O2) සඳහා "අණුක බර 214.3 g/mol" පැවසීය. RDKit ගණනය 206.28 g/mol ලබා දුන්නේය. 0.1 mol සඳහා වෙනස: YZ සමඟ 21.43 g, ඇත්ත වශයෙන්ම 20.63 g. මෙම 3.9% වෙනස ස්ටෝචියෝමිතිය සහ අස්වැන්න ගණනය කිරීම කඩාකප්පල් කරයි. එය නියතිවාදී කලනය ගෙන ආවේය.
පොදු වැරදි
- නමින් අණුව ලබා දීම. සමාන පද/වෙළඳ නාම ව්යාකූල වේ. සෑම විටම SMILES හෝ InChI ඇතුළත් කරන්න.
- එය කැනොනිකල් කිරීමකින් තොරව SMILES සංසන්දනය කිරීම. OCC සහ CCO පෙළෙහි වෙනස් නමුත් අණු වල සමාන වේ.
- දිව ආකෘතියට අණුක බර ඇසීම. මෙය නියතිවාදී ගණනය කිරීමකි; එය RDKit වෙතින් හෝ සූත්රයෙන් අතින් සිදු කෙරේ.
- වලංගු නොවන SMILES නොදැනේ. MolFromSmiles None හි ප්රතිලාභය පරීක්ෂා නොකිරීම සහ වැරදි ව්යුහය දිගටම කරගෙන යාම.
- ඒකාකෘතික රසායන විද්යාව නොසලකා හැරීම. එන්ටියෝමර් දෙක (කැඩපත් රූප සමාවයවික) විවිධ ජීව විද්යාත්මක බලපෑම් ප්රදර්ශනය කළ හැකිය; SMILES හි @/@@ සලකුණු මඟ හැරීම.
අවධානය: එකම අණුක සූත්රය විවිධ අණු අදහස් නොවේ. C2H6O යනු එතනෝල් (CCO) සහ ඩයිමීතයිල් ඊතර් (COC) යන දෙකම වේ. සූත්රයේ සමානාත්මතාවය අනන්යතාවයේ සමානාත්මතාවය නොවේ; හඳුනා ගැනීම සඳහා InChIKey භාවිතා කරන්න.
සාරාංශයක් ලෙස
- නමෙන් නොව ව්යුහ අංකනය මගින් අණු හඳුනා ගන්න: SMILES with human, InChI/InChIKey දත්ත සමුදාය සමඟ.
- RDKit නියතයි; AI පුරෝකථනය කරයි, RDKit ගණනය කර සත්යාපනය කරයි.
- MolFromSmiles සමඟ එක් එක් AI SMILES විග්රහ කර None සඳහා පරීක්ෂා කරන්න, පසුව canonicalize.
- භාෂා ආකෘතියෙන් නොව RDKit වෙතින් අණුක බර සහ සූත්රය වැනි සංඛ්යා ලබා ගන්න.
- සූත්ර සමානාත්මතාවය යනු අණුක අනන්යතාවය නොවේ; හඳුනා ගැනීම සඳහා InChIKey භාවිතා කරන්න.
යෙදුම් කාර්යය
සංයෝග තුනක් තෝරන්න (උදා: කැෆේන්, ibuprofen, glycine). එක් එක් සඳහා කැනොනිකල් SMILES සඳහා AI ගෙන් විමසන්න. ඉන්පසු RDKit පිටපතක් ලියා (ඉහත අච්චුව භාවිතා කරන්න) සහ උත්පාදනය කරන්න: කැනොනිකල් SMILES, අණුක සූත්රය, අණුක බර, InChIKey. AI විසින් ලබා දුන් SMILES කීයක් වලංගුද? YZ ද අණුක බර ලබා දුන්නේ නම්, RDKit අගය සමඟ වෙනස ප්රතිශතයක් ලෙස ගණනය කරන්න. ඔබේ සොයාගැනීම් කුඩා වගුවකට ලියන්න.
පිරික්සුම් ලැයිස්තුව
- [ ] SMILES සහ InChI/InChIKey යනු මොනවාද සහ ඒවා භාවිතා කළ යුත්තේ කවදාද යන්න මම දනිමි.
- [ ] මම AI විසින් ලබා දෙන සෑම SMILES එකක්ම MolFromSmiles සමඟින් සත්යාපනය කරමි.
- [ ] මම ඒවා සංසන්දනය කිරීමට පෙර SMILES කැනොනිකල් කරමි.
- [ ] මම අණුක බර සහ සූත්රය ලබා ගන්නේ RDKit වෙතින් මිස භාෂා ආකෘතියෙන් නොවේ.
- [ ] මම InChIKey සමඟ දත්ත ගබඩාවේ අණු අනන්යතාවය තහවුරු කරමි.
- [ ] ස්ටීරියෝ රසායනය වැදගත් වන අවස්ථා මම දනිමි.