rxbrains with brain.js - Neural Network
[ 클라우드 Rx (https://rxapis.com) ]에서 제공합니다.
Rx Brain Node는 brain.js (https://brain.js.org/)의 동적 사용에 관한 라이브러리 입니다.
- 해당 연도 말까지 테스트 가능합니다.
const emotions = {
networks : [
{
model : 'gladness',
version : '0.1',
},
{
model : 'aggro',
version : '0.1',
},
{
model : 'dolor',
version : '0.1',
},
{
model : 'joy',
version : '0.1',
},
],
};
const netNode = new RxFramework.RxBrainNodeC(emotions);
- brain.js의 Neural Networks의 동적사용
- 데이터의 개수와 상관없이 빠른 사용 가능
- 모델별 사용이 용이
-
new 생성자를 통해 초기 모델 전달
-
function getModels : 준비되어 있는 모델 명 호출
-
function addData : (모델 명, 학습 데이터) 준비되어 있는 모델에 학습시킬 데이터 넣기
-
addData는 기존에 있는 데이터 + 다음 호출 때 부르는 데이터로 더해서 학습함
-
학습에 따르는 기본값들은 동적으로 자동 설정됨.
-
function run : (모델 명, input 데이터) 값을 통한 수행값 리턴
-
run은 해당 노드가 준비되어 있을 때 값 리턴, 아직 준비중이면 undefined 리턴
brain.NeuralNetwork : O
brain.recurrent.RNN : X
brain.recurrent.GRU : X
brain.recurrent.LSTM : X
brain.recurrent.RNNTimeStep : X
brain.recurrent.GRUTimeStep : X
brain.recurrent.LSTMTimeStep : X
- Rx RockPaperScissors Visit https://github.com/search27/RxRockPaperScissors
- 해당 연도 말까지 테스트 가능합니다.
const rx = new RxFramework.RxMeansAL();
rx.SetDistanceWay(true);
rx.SetStaticCentroids(centroids);
rx.SetPoints(points);
const cluster = rx.ExecRxCluster();
- 다중 차원 좌표값 클러스터링
- (선택) 유클리드 또는 맨해튼 거리 측정법 사용
- 라벨별 사용 용이
- new 생성자 - 전달 옵션 없음
- function SetDistanceWay : (boolean) true : 유클리드 거리 측정, false : 멘해튼 거리 측정 - default : true
- function SetStaticCentroids : (centroids)
// Sample Centroids
// const target = document.body;
const target = document.getElementById('targetDom');
const targetRect = target.getBoundingClientRect();
const targetMinX = targetRect.x;
const targetMaxX = targetRect.x + targetRect.width;
const targetMinY = targetRect.y;
const targetMaxY = targetRect.y + targetRect.height;
const targetMiddle = [ targetMinX + (targetRect.width / 2), targetMinY + (targetRect.height / 2)];
const centroids = [
{ points : [targetMinX, targetMinY] , label : 'topLeft'},
{ points : [targetMiddle[0], targetMinY], label : 'topMiddle'},
{ points : [targetMaxX, targetMinY], label : 'topRight'},
{ points : [targetMinX, targetMiddle[1]], label : 'middleLeft' },
{ points : [targetMiddle[0], targetMiddle[1]], label : 'middleMiddle' },
{ points : [targetMaxX, targetMiddle[1]], label : 'middleRight' },
{ points : [targetMinX, targetMaxY], label : 'bottomLeft' },
{ points : [targetMiddle[0], targetMaxY], label : 'bottomMiddle' },
{ points : [targetMaxX, targetMaxY], label : 'bottomRight' },
];
- function SetPoints : (points) key(points) into Object
const x = Math.round(Math.random() * document.body.offsetWidth);
const y = Math.round(Math.random() * document.body.offsetHeight);
// Object into 'points'
points.push({ points : [x, y], ...etc });
- function ExecRxCluster : () 클러스터링. 결과물 반환
- function Clear : () 세팅 데이터 초기화
- 해당 연도 말까지 테스트 가능합니다.
const rxGridSearcher = new RxFramework.RxHtmlGridSearcher();
rxGridSearcher.SearchGrid(document.getElementById('targetDom'));
- Rx Means Algorithm을 통한 깊이 탐색 및 그리드 판별
- 홈페이지별 정확도 테스트 중