Skip to main content

SAFER package

Project description

SAFER

This guide provides SAFER model module

Baseline

  • Baseline
    • data_processing_m1
      • init.py
      • crf_data.py
      • location_data.py
      • sensor_data.py
    • data_processing_m2
      • init.py
      • crf_data.ppy
      • location_data.py
      • sensor_data.py
    • model1
      • init.py
      • model
        • tft_model.pkl
      • dataloader.py
      • model.py
      • predictor.py
    • model2
      • model
        • final_model.pkl
      • dataloader.py
      • model.py
      • preictor.py
    • setup.py
    • init.py
    • README.md

How To Use

Start pip install

!pip install saferx

m1

m1 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M1LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  
  1. sensor data
    # saferx 패키지에서 M1SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M1SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M1DataProcessor()
  # 데이터 로드
  location_data, sensor_data, crf_data, trait_data = processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )
  # 위치와 센서 데이터 병합
  merged_data = processor.merge_location_and_sensor()

  # CRF 데이터 병합
  merged_data_with_crf = processor.process_crf_data()

  # 성향 데이터 병합
  merged_data_with_traits = processor.merge_trait_data()

  # 자살 플래그 설정
  suicide_flags = [('John Doe', pd.Timestamp('2024-01-15 08:00:00'))]
  merged_data_with_flags = processor.clean_and_set_suicide_flag(suicide_flags)

  # 자해 발생 데이터 필터링
  filtered_data = processor.filter_data_for_self_harm_and_random()

  # 결과 확인
  print(filtered_data.head())
      

m1 model

  import torch
  import saferx
    # 데이터 경로 설정
    data_paths = ['merged_data_m1.csv']

    # PredictionHandler 객체 생성 (모델 경로는 고정)
    predictor = saferx.PredictionHandler(data_paths, batch_size=16, device='cpu')
   
    # 예측 수행
    predictions = predictor.predict()

    print(predictions)

m2

m2 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M2LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  1. sensor data
      # saferx 패키지에서 M2SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M2SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M2DataProcessor()

  # 데이터 로드
  processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )

  # 위치와 센서 데이터 병합
  processor.merge_location_and_sensor()

  # CRF 데이터 처리 및 병합
  processor.process_crf_data()

  # 성향 데이터 병합
  merged_data = processor.merge_trait_data()

  # 최종 결과 확인
  print(merged_data.head())

m2 model

   import torch
   import saferx

   data_path = 'merged_data_m2.csv'  # 데이터 경로 (CRF, sensor, location 등 합친 상태)

   device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')

   # Predictor 객체 생성
   predictor = saferx.Predictor(device=device)

   # 데이터 로드 및 전처리
   data_loader = predictor.preprocess_data(data_path)

   # 예측 수행
   predictions = predictor.predict(data_loader)

   # 예측 결과 출력
   print(predictions)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

saferx-0.5.6.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

saferx-0.5.6-py3-none-any.whl (2.1 MB view details)

Uploaded Python 3

File details

Details for the file saferx-0.5.6.tar.gz.

File metadata

  • Download URL: saferx-0.5.6.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.5.6.tar.gz
Algorithm Hash digest
SHA256 9651dd652cfe04ab7f3208e731a6a89e93f3c56cd62659cd51ff088c8af120e0
MD5 786803a046fd147514b8c075db495885
BLAKE2b-256 1a05976a44311800e24e79a1168e02b6c2ef4efd126c3e78a017ea03a06e0512

See more details on using hashes here.

File details

Details for the file saferx-0.5.6-py3-none-any.whl.

File metadata

  • Download URL: saferx-0.5.6-py3-none-any.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 f832abc00bd6e93baf4410e5fffd85e55269b0ba700dcedf064ff7f95fb96245
MD5 5b3c08ce83f6bfde6400f018cea85656
BLAKE2b-256 58e37392a7614b805f2a684500b6b573d8752ce348a0a745f537a7ee0ffa5118

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page