ML 강화 애플리케이션 가이드 Mendix 그리고 Amazon SageMaker AI
우리가 AI 시대에 살고 있다는 데는 의심의 여지가 없습니다. 기업들은 더 빠르고, 더 스마트하고, 더 나은 애플리케이션을 만들기 위해 서로 경쟁하고 있으며, 머신 러닝은 오늘날 애플리케이션 시장에서 "필수"가 되었습니다. 이 블로그 게시물에서는 훈련된 머신 러닝 모델을 애플리케이션에 통합하는 데 있어 0에서 영웅으로 가는 것이 얼마나 더 빠르고 쉬워졌는지 보여드리겠습니다. Mendix 그리고 Amazon SageMaker AI.
머신 러닝이란 무엇입니까?
머신 러닝(ML)은 컴퓨터가 데이터에서 학습하고 명시적으로 프로그래밍되지 않고도 예측이나 결정을 내릴 수 있도록 하는 알고리즘과 모델을 개발하는 데 중점을 둔 인공 지능(AI)의 하위 집합입니다. 즉, 모델은 특정 부문이나 회사의 사용자 지정 데이터를 기반으로 학습할 수 있으며, 기본 모델보다 작업을 더 효율적으로 수행할 수 있습니다.
맞춤형 스마트 앱 - 와, 정말 좋은 것 같지 않나요? 그렇죠. 하지만 복잡할까요? 글쎄요, 10년 전만 해도 복잡성, 관련 도구에 대한 제한된 접근성, 그리고 물론 최종 사용자 애플리케이션에서 모델을 구현하는 어려움 때문에 대부분의 회사나 산업에서는 불가능했을 겁니다.
오늘날 과거의 투쟁과 걱정은 마침내 사라지기 시작했습니다. AI가 강화된 애플리케이션 개발로의 전환 덕분에 Mendix, 애플리케이션은 Amazon Textract, Rekognition 등과 같은 스마트 솔루션과 기능을 통합할 수 있습니다.
더 알고 싶다면 우리 사이트를 방문하십시오 또는 읽기 Mendix 평가 가이드.
필요한 도구
우선, 도구를 소개해드리겠습니다. 두려워하지 마세요. 몇 가지 도구만 있습니다.
- Amazon SageMaker AI: 모델을 만들고 학습시킵니다.
- Amazon SageMaker AI는 Amazon의 완전 관리형 머신 러닝 서비스로, 머신 러닝 모델을 신속하게 구축, 학습 및 배포할 수 있도록 지원합니다. Jupyter 노트북, 파이프라인, SageMaker Studio, Canvas, RStudio를 비롯한 다양한 기능을 제공합니다. 더 자세한 내용은 Amazon SageMaker AI 사이트를 참조하세요. 여기에서 확인하세요 or 여기에서 확인하세요.
- Python 3.0: 코드를 작성합니다.
- Mendix Studio Pro 10: 최신 버전 Mendix 맞춤형 스마트 최종 사용자 앱을 만드는 데 필요한 ML 키트가 포함되어 있습니다.
Studio Pro 10의 최신 버전을 사용하면 Mendix 플랫폼에 많은 멋지고 스마트한 기능을 포함시켜 애플리케이션 개발의 기준을 높였습니다. 그 중 하나이자 제가 개인적으로 가장 좋아하는 기능은 다음과 같습니다. Mendix 머신 러닝 키트(Mendix ML 키트). ML Kit을 사용하면 추가 통합이나 조정 없이 ONNX 모델을 Studio Pro로 직접 가져와서 더 빠르고 스마트하며 협업적인 앱을 만들 수 있습니다.
자세한 내용은 다음을 참조하십시오. 전용 블로그 게시물 그리고 자세한 내용은 공식 문서에서 확인하세요..
머신러닝과 나, 투쟁의 간략한 역사
아마존 세이지메이커 AI
머신 러닝 여정을 시작하는 모든 사람에게 SageMaker는 다소 복잡하고 압도적으로 보일 수 있습니다. 개인적인 경험으로 말씀드리자면, 처음 몇 번 시도해 보았지만 완전히 재앙이었습니다. 여러 커널이 실행 중이고, 메뉴에서 모든 선택 항목을 클릭했고, 여러 노트북이 무슨 일을 하는지 알 수 없었고, 도메인과 프로필이 사방에 있었고, 무슨 일이 일어날지 보기 위해 끊임없이 재생 버튼을 눌렀습니다. 완전하고 궁극적인 재앙이었습니다. 하지만 포기할 준비가 되어 있지 않았기 때문에 몇 번의 시도와 몇 시간의 독서 끝에 저는 "모든 것이 모든 것에 사용되는 것은 아니다"라는 결론을 내렸습니다.
Amazon SageMaker AI는 머신 러닝 모델을 만들고, 훈련시키고, 통합하고, 배포하고, 원하는 거의 모든 작업을 수행하는 데 도움이 되는 다양한 옵션을 제공하지만 실제로 대부분의 경우 Jupyter 노트북과 약간의 Python 지식, 그리고 물론 데이터 세트만 있으면 됩니다.
기계 학습 라이브러리
머신 러닝 여정에서 제가 배운 것 중 하나는 ONNX, Scikit-learn, Tensorflow, Pytorch 등과 같이 다양한 ''모델링 프레임워크''가 있다는 것입니다. 각각은 다양한 종류의 AI를 수행하고 생성하기 위해 고유한 방식으로 전문화되어 있습니다.
ONNX
몇 줄 앞서 언급했듯이 ML 키트는 Mendix 10은 ONNX 모델링 프레임워크와 호환됩니다. 왜 ONNX인가?라고 스스로에게 물어볼 수 있습니다.
글쎄요, ONNX(또는 Open Neural Network Exchange)는 프레임워크 간 상호 운용성을 지원하는 AI 모델을 위한 오픈 소스 포맷으로, 한 프레임워크에서 모델을 학습하고 ONNX로 변환한 다음 다른 프레임워크에서 사용할 수 있습니다. 조금 더 명확하게 말하자면, ONNX 모델로 변환할 수 있는 모든 프레임워크는 Mendix 10.
이 블로그 게시물에서는 Scikit-learn 모델을 ONNX 모델로 변환하고 가져오는 방법에 대해 간략히 설명하겠습니다. Mendix 10.1.1, 그리고 이를 중심으로 테스트 앱을 만듭니다. ONNX에 대해 더 알고 싶고 ONNX 모델을 변환하거나 사용하는 방법을 알고 싶다면, 이 웹 사이트 방문.
출근 시간
소매를 걷어붙이고 동참하고 싶은 독자라면 다음 사항이 필요합니다.
이 블로그 게시물의 시작 부분에서 말했듯이 Amazon SageMaker AI의 도움으로 데모 스팸 필터를 만드는 과정을 안내하여 빠르고 간편하게 스마트 앱을 만들 것입니다. Mendix.
좀 더 쉽게 이해하기 위해, 이 여정에 동참하고 싶으시다면 다음 링크에서 예제 파일을 다운로드하실 수 있습니다.
1단계 – 우선 순위: Amazon SageMaker Studio로 시작
SageMaker Studio를 사용하려면 AWS 계정에 로그인하고 SageMaker 서비스로 이동합니다. SageMaker 대시보드의 왼쪽 메뉴에서 다음을 선택합니다. 신규 개발 SageMaker Studio 인터페이스로 이동합니다.

이미 사용자 프로필이 있는 경우 사용자 프로필을 선택하고 Studio를 엽니다. 프로필이나 도메인이 없는 경우 다음을 선택하여 만듭니다. 도메인 왼쪽 메뉴에서 지시를 따르세요.
2단계 – SageMaker Studio: Jupyter Lab Notebook
스튜디오를 사용할 준비가 되면 홈 화면으로 이동하여 화면을 확인하는 데 시간을 들이고 클릭하십시오. jJ계속하려면 upyterLab 아이콘을 클릭하세요. ''JupyterLab은 노트북, 코드 및 데이터를 위한 최신 웹 기반 대화형 개발 환경입니다. 유연한 인터페이스를 통해 사용자는 데이터 과학, 과학 컴퓨팅, 계산 저널리즘 및 머신 러닝에서 워크플로를 구성하고 정리할 수 있습니다.'' 자세히 알아보기 여기에서 확인하세요.
선택 주피터랩 그때 만들기 주피터랩 공간.

이름 선택, 에 지정하다 공간의 이름 과 충돌 공간 만들기 버튼을 클릭합니다.


당신은로 리디렉션됩니다 주피터랩 개요 공간, 그러면 s선출 달리기 공간 새로 만든 공간을 실행하려면, 한번 읽다 엽니다 그것.
3단계 – 재미를 시작하세요
왼쪽 메뉴를 확인하고 파일(폴더) 아이콘을 선택합니다. 그러면 파일 섹션이 열리고 스튜디오에서 사용 가능한 모든 파일이 표시됩니다. 아래 스크린샷에 표시된 대로 나타나는 업로드 버튼을 찾아 예제 파일을 업로드합니다.


폴더에 파일이 표시되면 다음을 엽니다. spam_nb.ipynb 공책.

스튜디오가 커널을 시작합니다. 몇 분 정도 걸릴 수 있으며, 준비가 되면 노트북이 나타납니다.
스팸을 더블클릭하세요 선택 전에, '아이피커널' 처럼 커널 팝업창에서.

4단계 – 노트북의 스팸 코드 설명
스팸 예는 매우 간단하며 세 부분으로 구성되어 있습니다.
- 1부: 필요한 라이브러리
- 2부: 교육 및 수출
- 3부: 테스트
이 블로그 게시물에서는 처음 두 부분을 설명합니다.
1 부
첫 번째 부분에서는 라이브러리를 가져옵니다.
- 따라서 SYS 모듈은 환경 런타임을 제어하고 변경하는 데 도움이 됩니다.
- 따라서 스클2온엑스 모듈. sklearn-onnx에는 scikit-learn 툴킷의 모델을 ONNX로 변환하는 기능이 포함되어 있습니다.
- 따라서 ONNX 기준 치수.
- 따라서 온엑스런타임 기준 치수.

두 번째 부분
이 부분에서는 모델을 훈련하고 ONNX로 변환한 다음 ONNX 파일로 내보냅니다. 아래 예는 훈련 세트를 사용하여 모델에 예측을 가르치는 것입니다.

훈련 세트는 알려진 결과(y_train)와 연관된 훈련 데이터(X_train)로 구성됩니다. 모델은 어떤 패턴이 1(참)로 레이블이 지정될지 학습합니다. 예를 들어, 스팸, 또는 0(거짓), 예를 들어, 햄. 이 과정은 또한 다음과 같이 불립니다. 입어 보기테스트 세트(X_test, y_test)도 포함됩니다.
위의 그림에서 두 번째 부분도 일부 메서드(1-10행)의 가져오기로 시작한다는 것을 알 수 있습니다. 지금은 이러한 메서드에 대한 설명을 깊이 파고들 필요가 없습니다. 함수가 행별로 더 자세히 설명될 것이기 때문입니다.
다음 줄에서는 12개의 데이터 세트를 가져왔습니다.
(df = pd.read_csv("spam.csv", encoding="L1")), and the attributes X and y are defied (X = df["v2"].values, y = df["v1"].values)
그런 다음, 값을 맞추고 예측하는 데 사용될 4개의 데이터 부분이 생성됩니다.
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=345)
(sklearn.model_selection.train_test_split은 배열을 무작위의 훈련 및 테스트 하위 집합으로 나눕니다.)
다음 줄에서는 파이프라인 객체가 생성됩니다.
pipe = make_pipeline(
CountVectorizer(binary=True),
MultinomialNB()
)
따라서 가장 중요한 부분은 다음 줄에서 발생합니다. 여기서 모델의 ''적합''이 시작되기 때문입니다.
pipe.fit (X_train, y_train)
이제 끝났습니다! 남은 것은 모델을 ONNX 파일로 변환하는 것입니다. “to_onnx” 기능을 사용한 다음 다음을 사용하여 노트북의 파일에 파일을 내보냅니다. "쓰다" 기능.
>
onxx_pipeline = to_onnx(pipe, initial_types=[('message', StringTensorType([None, 1]))])
with open("spam_nb.onnx", "wb") as f:
f.write(onxx_pipeline.SerializeToString())
파이프라인을 ONNX로 변환하는 것에 대한 더 많은 예와 정보는 다음을 확인하세요. ONNX 문서.
마지막으로, 코드를 실행하려면 노트북을 실행해야 합니다.
- 커서를 첫 번째 줄에 놓으세요.
- 상단의 재생 아이콘을 클릭하세요.
- 노트북에 몇 줄이 더 나타나고, 커서는 다음 부분에 다시 나타납니다.
- 재생 아이콘을 한 번 더 클릭하여 교육을 실행하세요.
- 몇 개의 추가 줄이 다시 나타나고 ONNX 파일이 생성됩니다.

파일 폴더를 확인하고 마우스 오른쪽 버튼을 클릭하세요 스팸_nb.onnx 파일을 다운로드합니다.

중요! 모델 훈련 및 테스트를 마친 후 실행 중인 터미널 아이콘을 클릭하세요…
![]()
…왼쪽 메뉴에서 실행 중인 모든 인스턴스를 종료하여 추가 요금을 피하세요.
5단계 – 가져오기 Mendix 광택
이제 ML 키트를 테스트해 볼 시간이 되었습니다.
귀하의 Mendix 10 스튜디오와 새로운 빈 앱을 만듭니다. 모듈을 선택합니다. 나의첫모듈 탐색기 탭에서 마우스 오른쪽 버튼을 클릭하여 팝업 메뉴를 엽니다.

ML 모델 매핑을 선택하세요.

를 클릭하십시오 가져오기 모델 왼쪽 상단 모서리에서 ONNX 파일을 가져옵니다. Mendix 자동으로 입력 및 출력 객체를 생성합니다.
ML 모델 입력에서 오류 메시지가 표시되면 엔터티를 열고 정적 텐서 모양으로 "1"을 선택하여 문제를 해결합니다.


도메인 모델은 다음과 같아야 합니다.

앱 탐색기에서 도메인 모델로 이동하여 추가 엔터티를 추가하고 이름을 지정합니다. 이메일. 이메일 엔터티에 두 개의 문자열 속성을 추가합니다. Payload (무제한 문자) 및 예측 (기본값을 유지합니다).

이메일 엔터티를 선택하고 마우스 오른쪽 버튼을 클릭하여 측면 메뉴를 연 다음 선택하세요. 개요 페이지 생성.

Mendix 자동으로 생성됩니다 이메일 개요 이메일_새로편집 페이지를 만들어 다음 위치에 배치합니다. 개요 페이지 의 폴더 블록체인 탐색기 메뉴를 선택합니다.

찾기 이메일_새로편집 페이지를 더블클릭하여 엽니다. 찜하기 속성을 열기 위한 작업입니다.

. 이벤트 섹션에서 선택 마이크로플로우를 호출하다 > 클라임웍스와 함께 하늘과 닿는 여정을 시작하세요 > New.

새로운 마이크로플로우의 이름을 지정하세요 예측 스팸 (또는 PredictSpam). 새 마이크로플로가 열리면 다음 작업을 추가합니다.

- 이메일 엔터티에 대한 매개변수입니다.
- ML 모델의 입력 객체에 대한 객체 생성 작업입니다.

- ML 모델 호출 작업: 사용 가능한 ML 모델 매핑 및 입력 개체를 선택한 다음 클릭하세요. OK.
- 이메일 변경 작업(설정) 커밋 새로 고침 에 가능.) 멤버로서 예측을 선택하고 값으로 출력 레이블을 설정합니다. 출력객체.

- 마지막으로 페이지 닫기 액션.

이 애플리케이션은 두 가지 조정만 남고 거의 준비가 되었으며, 이제 스마트 이메일 스팸 감지 앱을 실행하고 사용할 수 있습니다.
메뉴의 탐색 옵션으로 이동합니다.

선택 이메일 개요 이 페이지를 기본 페이지로 사용하고 홈페이지로도 사용합니다.

완료! 마침내 그 시간이 왔습니다…
지원
프로젝트를 실행하려면 오른쪽 상단 모서리에 있는 재생 아이콘을 클릭하세요. 준비가 되면 앱 보기 버튼을 클릭하여 신청서로 이동하세요.
![]()
홈페이지는 다음과 같이 보여야 합니다.

클릭하여 테스트를 시작하세요 New메시지를 페이로드로 추가합니다.

다음과 같이 스팸 메시지를 추가하여 테스트해 볼 수 있습니다.
"축하합니다!
당신은 Microsoft Lottery 2023의 행운의 당첨자 중 한 명으로 선정되었습니다. 당신은 10,000,000달러의 상금과 새로운 노트북을 받았습니다.
상품을 청구하려면 다음 정보와 함께 당사 담당자에게 연락해야 합니다.
에이전트에게 문의하세요.
해당 이메일이 스팸으로 인식되면 예측 항목에 "스팸"이 표시됩니다.

…그렇지 않으면 "햄"이라고 합니다.

그리고 그게 전부였습니다. 한 시간도 안 걸려서 ML이 주입된 작은 앱을 만들었습니다! 과정을 즐겼고 더 많은 것을 배우고 싶다면 다음을 따르세요. 이 링크 추가 예 또는 Mendix ML 키트 예제 애플리케이션.
무엇 향후 계획
두 가지 강력한 기술의 융합, Mendix 10 ML 키트와 Amazon SageMaker AI는 AI 애플리케이션 개발의 세계에 흥미진진한 가능성을 열어줍니다. 직관적인 시각적 개발 기능을 활용하여 Mendix SageMaker의 고급 머신 러닝 기능을 이용하면 개발자는 사용자 친화적일 뿐만 아니라 매우 지능적인 AI 기반 애플리케이션을 만들 수 있습니다.
AI에 대해 계속 알아보고 싶으신가요?
생성적 AI와 ChatGPT와 같은 도구에 대한 과장된 광고가 많지만, 이것이 엔터프라이즈 앱 개발의 미래에 어떤 의미를 갖는가? 그저 반짝이는 새 장난감인가, 아니면 실제 ROI를 제공할 수 있는 획기적인 도구인가? 생성형 AI: 더 스마트한 앱 구축, 더 스마트한 앱 구축이라는 주제의 웨비나에 등록하세요., 28년 2023월 9일(동부 표준시 오전 3시 | 중부 표준시 오후 XNUMX시)!