Python2025. 3. 10. 18:26

AI (인공지능) 머신러닝을 쉽게 구현할 수 있도록 도와주는 사이킷런(Scikit-Learn) 에 대해 알아보자.

주요 특징

  • 다양한 머신러닝 알고리즘 제공: 지도 학습(Supervised Learning)과 비지도 학습(Unsupervised Learning) 모두 지원
  • 데이터 전처리 기능: 스케일링, 정규화, 결측값 처리 등 제공
  • 모델 평가 및 선택 도구 제공: 교차 검증, 하이퍼파라미터 튜닝(GridSearchCV, RandomizedSearchCV) 등 지원
  • 사용이 간편한 API: 일관된 인터페이스로 쉽게 학습 및 예측 가능

설치 방법

pip install scikit-learn

간단한 예제: 로지스틱 회귀(Logistic Regression)

from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_iris
from sklearn.metrics import accuracy_score

# 데이터 로드
iris = load_iris()
X, y = iris.data, iris.target

# 데이터 분할
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 데이터 정규화
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)

# 모델 학습
model = LogisticRegression()
model.fit(X_train, y_train)

# 예측 및 평가
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy:.2f}")

 

자주 사용되는 기능

  • 지도 학습 (Supervised Learning)
    • 회귀: LinearRegression, Ridge, Lasso
    • 분류: LogisticRegression, SVC, RandomForestClassifier
  • 비지도 학습 (Unsupervised Learning)
    • 클러스터링: KMeans, DBSCAN
    • 차원 축소: PCA, t-SNE
  • 모델 평가 및 선택
    • train_test_split, cross_val_score
    • GridSearchCV, RandomizedSearchCV

 

 

 

 

ChatGPT  맞습니다 ^^

Posted by 비니미니파파
Database/Oracle2025. 3. 10. 18:14

말그대로 Not Null 컬럼에 Null 을 입력 해서 발생 한다.

NVL( #{colId}, 'default' ) 로 처리 하던지 넣지 말자.

 

Posted by 비니미니파파
Java&Jsp&Servlet2025. 2. 25. 10:58

오랜만에 하드코딩 할려니 모든것이 혼란 스럽다. 정리가 필요하다.

구분 사용법 설명
<% %> 스크립틀릿 (Scriptlet) JSP에서 Java 코드 실행 (service() 메서드 내부)
<%! %> 선언문 (Declaration) JSP의 멤버 변수 또는 메서드 선언 (service() 메서드 외부)
<%@ %> 디렉티브 (Directive) JSP 페이지의 설정 (page, include, taglib)

 

<% %> (스크립틀릿, Scriptlet)

  • JSP 내부에서 Java 코드를 실행할 때 사용됩니다.
  • JSP가 실행될 때 서블릿 코드로 변환되며, service() 메서드 안에 들어갑니다.
  • JSP 페이지 내에서 동적인 처리를 할 때 사용됩니다.
<%
    String message = "Hello, JSP!";
    out.println(message);
%>

변환된 서블릿 코드

public void _jspService(HttpServletRequest request, HttpServletResponse response) throws IOException {
    String message = "Hello, JSP!";
    out.println(message);
}

 

<%! %> (선언문, Declaration)

  • JSP 페이지에서 멤버 변수 또는 메서드를 선언할 때 사용됩니다.
  • service() 메서드 바깥에서 선언되므로, 전역 변수 또는 메서드 정의가 가능합니다.
<%! 
    int count = 0;  // 멤버 변수 선언
    public int getNextCount() { 
        return ++count; 
    }
%>

변환된 서블릿 코드

public class MyJspServlet extends HttpServlet {
    int count = 0;  // 클래스 멤버 변수

    public int getNextCount() {
        return ++count;
    }

    public void _jspService(HttpServletRequest request, HttpServletResponse response) throws IOException {
        out.println("다음 번호: " + getNextCount());
    }
}

 

<%@ %> (디렉티브, Directive)

  • JSP 페이지의 설정 및 서블릿 변환 방식을 정의하는 데 사용됩니다.
  • JSP 페이지에 대한 메타정보를 지정합니다.
  • 주요 디렉티브:
    • page: JSP 페이지의 속성 설정 (예: 인코딩, 오류 페이지 등)
    • include: 다른 JSP 파일 포함
    • taglib: 커스텀 태그 라이브러리 선언
<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<%@ page import="java.util.Date" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:forEach var="i" begin="1" end="5">
    <p>번호: ${i}</p>
</c:forEach>

 

정리가 깔끔하죠! 맞습니다. ChatGPT 님이 정리해 주셨습니다.

Posted by 비니미니파파
JavaScript&Platform/jQuery2025. 1. 21. 14:07

[jquery] select on change / jquery value/text 가져오기

HTML

<select id="example">
  <option value="1">Option 1</option>
  <option value="2">Option 2</option>
  <option value="3">Option 3</option>
</select>

Jquery

$('#example').on('change', function () {
  const selectedVal = $(this).val();  // 선택된 option 의 value
  console.log('Selected Value:', selectedVal);
  const selectedText = $(this).find('option:selected').text(); // 선택된 option 의 text
  console.log('Selected Text:', selectedText);
});
Posted by 비니미니파파
Database/Oracle2025. 1. 10. 17:13

TEST 스키마가 기본

TEST2 스키마에 SP_TEST 프로시져를 생성 후 실행 했더니 오류 발생

ORA-00900 권한이 없어 오류가 발생 함.

GRANT EXECUTE ON TEST2.SP_TEST TO TEST;

권한 부여

문제 해결

끝!

 

Posted by 비니미니파파