Печалби:
- Възможност за базиране на числени резултати на изпълнен код на Python, а не на вербално отгатване на езиковия модел
- Възможност за писане на код за стехиометрия, калибриране и почистване на данни на изкуствен интелект и тестване с проби с известни отговори
- Възможност за предотвратяване на грешки при анализа на данни чрез винаги посочване на единици и проверка на техния ред
Химията е пълна с числа: претегляния, обеми, стойности на абсорбция, добиви, концентрации. Ръчната обработка на тези данни е бавна и податлива на грешки. AI предоставя две основни услуги тук: (1) пише код на Python, който обработва данните, (2) изпълнява този код (в среда, която може да изпълнява кода) и дава детерминистичен резултат. Критичният принцип е следният: оставете изчислението на изхода на изпълнения код, а не на „вербалното предвиждане“ на езиковия модел. Езиков модел "Какво е 142 × 0,05?" понякога може да отговори неправилно на въпроса; но линията на Python, която той пише, винаги изчислява правилно. В този модул ще научим анализ на химически данни с AI с тази философия.
Защо кодът е по-добър от устното отгатване?
Един езиков модел прави аритметика чрез „предсказване на възможния резултат“; така че може да е грешно с големи числа или многоетапно смятане. Докато в Python изразът 142 * 0.05 е детерминистичен: винаги връща 7.1. Така че стратегия: не карайте изкуствения интелект да прави изчислението, отпечатайте КОДА на изчислението и стартирайте кода. Така че използвате креативността на AI (изграждане на кода) и деактивирате ненадеждната страна (аритметика на главата).
Съвет: Когато получите числен резултат от AI, кажете „представете това с линия на Python“. Самият код едновременно проверява акаунта и ви позволява да го стартирате и потвърдите. Ако не виждате код, не се доверявайте на номера.
Типични задачи за анализ на данни по химия
- Стехиометрия: мол, маса, ограничаващ реагент, теоретичен добив, изчисляване на процента на добива.
- Концентрация: моларност, разреждане (M1V1 = M2V2), ppm конверсии.
- Калибриране: Начертаване на калибрационна линия със закона на Beer-Lambert (абсорбция ∝ концентрация) и изчисляване на неизвестното.
- Почистване на данни: четене на таблици за измерване с панди, маркиране на отклонения, средно/стандартно отклонение.
- Визуализация: чертане на калибровъчна крива, кинетична графика, крива на титруване.
Стъпка по стъпка: Безопасен анализ на данни с AI
- Дефинирайте данни: Ясно дайте колони, единици, примерни редове. Ако няма единица, AI прави предположения.
- Поискайте код, а не резултати: кажете „Напишете кода на pandas/NumPy, който изчислява това“.
- Стартирайте кода: Стартирайте го сами или в среда, която може да изпълнява код.
- Тествайте с прост случай: Тествайте кода с малък пример, където знаете отговора.
- Проверка на единица и ред: единицата и величината на резултата физически разумни ли са?
- Документ: Добавете кода и изхода към бележника за експерименти (раздел 8).
Четири копируеми шаблона
1) Стехиометрия и процентен добив:
Реакция: салицилова киселина (MA 138.12) + оцетен анхидрид -> аспирин (MA 180.16). Данни: Използвани са 2,00 g салицилова киселина, оцетен анхидрид е в излишък. Получен е аспирин: 2,15 g. Задача: Напишете код на Python, който изчислява теоретичен добив и процентен добив. Определете молекулни тегла като променливи, отпечатайте резултата в единици. Не изчислявайте в главата; просто дайте изпълним код.
2) Калибриране на Beer-Lambert:
Данни за калибриране (концентрация mol/L -> абсорбция): 0.00->0.02, 0.02->0.21, 0.04->0.40, 0.06->0.62, 0.08->0.79. Абсорбция на неизвестна проба: 0,50. Задача: Извършете линейно калибриране с numpy.polyfit, наклон/отсечка и изчислете R^2, намерете неизвестната концентрация. Начертайте данните + линията за напасване с matplotlib.
3) диаграма за измерване с панди:
Имам CSV: колони = проба, тегло_g, обем_mL, абсорбция. Задача: прочетете с pandas, изчислете концентрацията (g/L) за всяка проба, маркирайте редовете с абсорбция < 0 като неправилни, дайте код за отпечатване на средното и стандартното отклонение на групите. Посочете единиците с ред за коментар.
4) Проверка на сметката за разреждане:
Искам да приготвя 100 mL 0,05 М разтвор от 0,5 М изходен разтвор. Задача: Напишете реда на Python, който изчислява необходимия обем на склад с M1V1=M2V2. Отпечатайте резултата в mL и проверете като коментар, че се очаква 10-кратно разреждане за логическа проверка.
Слаба подкана / Силна подкана
Слаб:
Колко аспирин идва от 2 грама салицилова киселина?
AI дава число от главата; Ако запомни молекулните тегла неправилно, резултатът ще бъде изкривен и как е изчислен няма да се вижда.
Силен:
Да приемем, че салицилова киселина MA=138.12, аспирин MA=180.16, маса=2.00 g, добив 100%. Задача: Напишете код на Python, който изчислява теоретичната маса на аспирина; коментирайте всяка стъпка (мол -> мол -> маса), отпечатайте резултата в g.
Разлика: дадени молекулни тегла, поискан код, коментирани стъпки, посочена единица. Резултатът е едновременно точен и подлежащ на проверка.
Вербална прогноза и т.н. изпълнен код
Размер
Езиков модел вербална прогноза
Изпълнение на Python
Аритметична точност
Променлива, може да възникне грешка
Детерминиран, сигурен
Проверяемост
Спонтанен аборт (не е ясно как се появи)
Високо (кодът се вижда)
повторяемост
ниско
високо
Проследяване на единици
слаб
Може да се държи отворено в код
Правилна употреба
Идея, строителна конструкция
Краен числен резултат
мини калъфи
Случай 1 — Вербална аритметична грешка. Студент пита AI „0,0145 mol × 180,16 g/mol?“ попита той; „2,72 g“, каза AI. Всъщност е 2.61гр. Когато ученикът каза „покажи това на Python“, YZ написа 0,0145 * 180,16 и излезе 2612; Първият устен отговор беше неправилен. Урок: предпочитайте код дори за много просто умножение.
Случай 2 — Проверка на R² при калибриране. На един потребител беше направено калибриране на Beer-Lambert; Оказва се, че R² = 0,981. AI каза „линеен, надежден“, но точката на най-високата концентрация беше под линията (насищане). Когато потребителят видя графиката, тя премести най-високата точка извън линейния диапазон, R² се увеличи до 0,999. Урок: само R² не е достатъчно; вижте остатъците/парцел.
Случай 3 — Объркване на единиците. При един анализ не беше ясно дали концентрацията е mg/L или g/L; AI прие g/L и резултатите бяха 1000 пъти погрешни. Беше коригирано, когато потребителят изрично посочи колонната единица. Урок: винаги подменяйте единицата, ако приемете, че AI е скъп.
Често срещани грешки
- Разчитане на устно число. Винаги изисквайте и изпълнявайте код, вместо да правите умствена аритметика.
- Без уточняване на единицата. Смесването на mg/L с g/L, mL с L причинява 1000-кратна грешка.
- Не тества кода. Прилагане към големи данни без тестване с малък пример, където отговорът е известен.
- Като се има предвид R² като единствен критерий. Доверяване на точките на нелинейност, без да ги виждате графично.
- Пропуснете реагента на тестера. Изчисляване на теоретичния добив без определяне на ограничаващия реагент в стехиометрията.
- Значително стъпало изливане. Отчитане на резултата до 8 цифри, когато измерването е 3 значещи цифри.
Внимание: Дори кодът, който AI пише, може да е дефектен (грешно име на колона, грешна формула). Изпълнението на кода прави резултата детерминистичен, но трябва да потвърдите с известен пример, че кодът изчислява правилното нещо.
В обобщение
- Оставете числените резултати на изпълнения код на Python, а не на словесното предположение на езиковия модел.
- AI бързо пише код за стехиометрия, калибриране, почистване на данни и визуализация при анализ на химически данни.
- Винаги поставяйте единици; Объркването на единиците е най-скъпата грешка.
- Разгледайте остатъците и графиката в допълнение към R² в калибрирането.
- Тествайте кода с прост пример с известен отговор; Човекът проверява точността на кода.
Задача за приложение
Имате набор от данни за калибриране или стехиометрия (ако не, използвайте данните на Beer-Lambert по-горе). Попитайте AI за кода на Python, който прави анализа (кода, не резултата). Стартирайте кода; след това го тествайте с малка извадка от известни отговори. Попитайте AI устно за същото изчисление и сравнете двата резултата: има ли разлика? Интерпретирайте графиката на R² и остатъка при калибриране. Поставете кода, изхода и краткия коментар в документ.
контролен списък
- [ ] Получавам числените резултати от кода, а не от словесното предположение.
- [ ] Ясно посочвам единицата на всяка колона с данни.
- [ ] Тествам кода с малка извадка, чийто отговор е известен.
- [ ] Извършвам остатъчен/графичен анализ до R² при калибриране.
- [ ] Определям ограничаващия реагент в стехиометрията.
- [ ] Отчитам резултатите със съответната значима цифра.